llvm-project/clang/test/SemaObjCXX/objc-decls-inside-namespace.mm
Patrick Beard acfbe9e1f2 Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared.
The warning this inhibits, -Wobjc-root-class, is opt-in for now. However, all clang unit tests that would trigger
the warning have been updated to use -Wno-objc-root-class. <rdar://problem/7446698>

llvm-svn: 154187
2012-04-06 18:12:22 +00:00

33 lines
1.1 KiB
XML

// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s
namespace C {
@protocol P; //expected-error{{Objective-C declarations may only appear in global scope}}
@class Bar; //expected-error{{Objective-C declarations may only appear in global scope}}
@compatibility_alias Foo Bar; //expected-error{{Objective-C declarations may only appear in global scope}}
@interface A //expected-error{{Objective-C declarations may only appear in global scope}}
@end
@implementation A //expected-error{{Objective-C declarations may only appear in global scope}}
@end
@protocol P //expected-error{{Objective-C declarations may only appear in global scope}}
@end
@interface A(C) //expected-error{{Objective-C declarations may only appear in global scope}}
@end
@implementation A(C) //expected-error{{Objective-C declarations may only appear in global scope}}
@end
@interface B @end //expected-error{{Objective-C declarations may only appear in global scope}}
@implementation B //expected-error{{Objective-C declarations may only appear in global scope}}
+ (void) foo {}
@end
}