// RUN: clang -fsyntax-only -verify %s | |
@interface A | |
-(int) x; | |
@property (readonly) int x; | |
@property int ok; | |
@end | |
@interface B | |
-(void) setOk:(int)arg; | |
-(int) x; | |
-(int) ok; | |
@end | |
void f0(A *a, B* b) { | |
a.x = 10; // expected-error {{assigning to property with 'readonly' attribute not allowed}} | |
a.ok = 20; | |
b.x = 10; // expected-error {{setter method is needed to assign to object using property assignment syntax}} | |
b.ok = 20; | |
} | |