diff options
Diffstat (limited to 'test/Lexer/objc_macros.m')
-rw-r--r-- | test/Lexer/objc_macros.m | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test/Lexer/objc_macros.m b/test/Lexer/objc_macros.m new file mode 100644 index 0000000..0223bed --- /dev/null +++ b/test/Lexer/objc_macros.m @@ -0,0 +1,22 @@ +// RUN: %clang_cc1 -fsyntax-only "-triple" "x86_64-apple-macosx10.10.0" -fobjc-runtime-has-weak -fobjc-weak %s -verify %s + +#define __strong +// expected-warning@-1 {{ignoring redefinition of Objective-C qualifier macro}} +#define __weak +// expected-warning@-1 {{ignoring redefinition of Objective-C qualifier macro}} +#define __unsafe_unretained +// expected-warning@-1 {{ignoring redefinition of Objective-C qualifier macro}} +#define __autoreleased +// No warning because this is the default expansion anyway. + +// Check that this still expands to the right text. +void test() { + goto label; // expected-error {{cannot jump from this goto statement to its label}} + __weak id x; // expected-note {{jump bypasses initialization of __weak variable}} +label: + return; +} + +#undef __strong +#define __strong +// No warning. |