forked from OSchip/llvm-project
32 lines
781 B
Objective-C
32 lines
781 B
Objective-C
// RUN: %clang_cc1 -fsyntax-only -verify %s
|
|
|
|
/* This test is for categories which don't implement the accessors but some accessors are
|
|
implemented in their base class implementation. In this case,no warning must be issued.
|
|
*/
|
|
|
|
@interface MyClass
|
|
{
|
|
int _foo;
|
|
}
|
|
@property(readonly) int foo;
|
|
@end
|
|
|
|
@implementation MyClass
|
|
- (int) foo { return _foo; }
|
|
@end
|
|
|
|
@interface MyClass (private)
|
|
@property(readwrite) int foo;
|
|
@end
|
|
|
|
@implementation MyClass (private)
|
|
- (void) setFoo:(int)foo { _foo = foo; }
|
|
@end
|
|
|
|
@interface MyClass (public)
|
|
@property(readwrite) int foo; // expected-warning {{property 'foo' requires method 'setFoo:' to be defined }}
|
|
@end
|
|
|
|
@implementation MyClass (public)// expected-note {{implementation is here}}
|
|
@end
|