Aaron Ballman | 1c606c2 | 2018-02-12 13:38:25 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -fsyntax-only -fdouble-square-bracket-attributes -triple x86_64-apple-macosx10.10.0 -verify %s
|
| 2 | // expected-no-diagnostics
|
| 3 |
|
| 4 | @interface NSObject
|
| 5 | @end
|
| 6 |
|
| 7 | [[clang::objc_exception]]
|
| 8 | @interface Foo {
|
| 9 | [[clang::iboutlet]] NSObject *h;
|
| 10 | }
|
| 11 | @property (readonly) [[clang::objc_returns_inner_pointer]] void *i, *j;
|
| 12 | @property (readonly) [[clang::iboutlet]] NSObject *k;
|
| 13 | @end
|
| 14 |
|
| 15 | [[clang::objc_runtime_name("name")]] @protocol Bar;
|
| 16 |
|
| 17 | [[clang::objc_protocol_requires_explicit_implementation]]
|
| 18 | @protocol Baz
|
| 19 | @end
|
| 20 |
|
| 21 | @interface Quux
|
| 22 | -(void)g1 [[clang::ns_consumes_self]];
|
| 23 | -(void)g2 __attribute__((ns_consumes_self));
|
| 24 | -(void)h1: (int)x [[clang::ns_consumes_self]];
|
| 25 | -(void)h2: (int)x __attribute__((ns_consumes_self));
|
| 26 | -(void) [[clang::ns_consumes_self]] i1;
|
| 27 | -(void) __attribute__((ns_consumes_self)) i2;
|
| 28 | @end
|