diff options
Diffstat (limited to 'clang/test/Rewriter/objc-bool-literal-check-modern.mm')
-rw-r--r-- | clang/test/Rewriter/objc-bool-literal-check-modern.mm | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/clang/test/Rewriter/objc-bool-literal-check-modern.mm b/clang/test/Rewriter/objc-bool-literal-check-modern.mm new file mode 100644 index 0000000..3386197 --- /dev/null +++ b/clang/test/Rewriter/objc-bool-literal-check-modern.mm @@ -0,0 +1,29 @@ +// RUN: %clang_cc1 -E %s -o %t.mm +// RUN: %clang_cc1 -x objective-c++ -fblocks -fms-extensions -rewrite-objc %t.mm -o - | FileCheck %s +// rdar://11124775 + +typedef bool BOOL; + +BOOL yes() { + return __objc_yes; +} + +BOOL no() { + return __objc_no; +} + +BOOL which (int flag) { + return flag ? yes() : no(); +} + +int main() { + which (__objc_yes); + which (__objc_no); + return __objc_yes; +} + +// CHECK: return ((bool)1); +// CHECK: return ((bool)0); +// CHECK: which (((bool)1)); +// CHECK: which (((bool)0)); +// CHECK: return ((bool)1); |