diff options
Diffstat (limited to 'clang/test/SemaObjC/property-category-2.m')
-rw-r--r-- | clang/test/SemaObjC/property-category-2.m | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/clang/test/SemaObjC/property-category-2.m b/clang/test/SemaObjC/property-category-2.m new file mode 100644 index 0000000..ecc3681 --- /dev/null +++ b/clang/test/SemaObjC/property-category-2.m @@ -0,0 +1,20 @@ +// RUN: %clang_cc1 -fsyntax-only -verify %s +// Test that a property can be synthesize in a category +// implementation with no error. + +@protocol MyProtocol +@property float myFloat; +@property float anotherFloat; // expected-note 2 {{property declared}} +@end + +@interface MyObject { float anotherFloat; } +@end + +@interface MyObject (CAT) <MyProtocol> +@end + +@implementation MyObject (CAT) // expected-warning {{property 'anotherFloat' requires method}} \ + // expected-warning {{property 'anotherFloat' requires method 'setAnotherFloat:'}} +@dynamic myFloat; // OK +@synthesize anotherFloat; // expected-error {{@synthesize not allowed in a category's implementation}} +@end |