llvm-project/clang/test/SemaObjC/property-category-2.m
Fariborz Jahanian 83aa8ab3ae objective-c - Make warning on unimplemented protocols point
to class implementation where it is supposed to be
implemented. // rdar://10009982.

llvm-svn: 138714
2011-08-27 21:55:47 +00:00

21 lines
699 B
Objective-C

// 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