reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | // RUN: %clang_cc1 -emit-llvm -fblocks -triple x86_64-apple-darwin -fstrict-return -o - %s | FileCheck %s // RUN: %clang_cc1 -emit-llvm -fblocks -triple x86_64-apple-darwin -fstrict-return -O -o - %s | FileCheck %s @interface I @end @implementation I - (int)method { } @end enum Enum { a }; int (^block)(Enum) = ^int(Enum e) { switch (e) { case a: return 1; } }; // Ensure that both methods and blocks don't use the -fstrict-return undefined // behaviour optimization. // CHECK-NOT: call void @llvm.trap // CHECK-NOT: unreachable |