1 | // RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s |
2 | |
3 | namespace C { |
4 | |
5 | @protocol P; //expected-error{{Objective-C declarations may only appear in global scope}} |
6 | |
7 | @class Bar; //expected-error{{Objective-C declarations may only appear in global scope}} |
8 | |
9 | @compatibility_alias Foo Bar; //expected-error{{Objective-C declarations may only appear in global scope}} |
10 | |
11 | @interface A //expected-error{{Objective-C declarations may only appear in global scope}} |
12 | @end |
13 | |
14 | @implementation A //expected-error{{Objective-C declarations may only appear in global scope}} |
15 | @end |
16 | |
17 | @protocol P //expected-error{{Objective-C declarations may only appear in global scope}} |
18 | @end |
19 | |
20 | @interface A(C) //expected-error{{Objective-C declarations may only appear in global scope}} |
21 | @end |
22 | |
23 | @implementation A(C) //expected-error{{Objective-C declarations may only appear in global scope}} |
24 | @end |
25 | |
26 | @interface B @end //expected-error{{Objective-C declarations may only appear in global scope}} |
27 | @implementation B //expected-error{{Objective-C declarations may only appear in global scope}} |
28 | + (void) foo {} |
29 | @end |
30 | |
31 | } |
32 | |
33 | |