diff options
Diffstat (limited to 'test/Rewriter/objc-bool-literal-check-modern.mm')
-rw-r--r-- | test/Rewriter/objc-bool-literal-check-modern.mm | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/Rewriter/objc-bool-literal-check-modern.mm b/test/Rewriter/objc-bool-literal-check-modern.mm new file mode 100644 index 0000000..b28e594 --- /dev/null +++ b/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 signed char 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 ((signed char)1); +// CHECK: return ((signed char)0); +// CHECK: which (((signed char)1)); +// CHECK: which (((signed char)0)); +// CHECK: return ((signed char)1); |