Argyrios Kyrtzidis | 94659e4 | 2011-01-31 21:34:11 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -fsyntax-only -Wcustom-atomic-properties -verify %s |
| 2 | |
| 3 | @interface Foo |
| 4 | @property (assign) Foo *myProp; // expected-note {{property declared here}} expected-note {{property declared here}} |
| 5 | @end |
| 6 | |
| 7 | @implementation Foo |
Argyrios Kyrtzidis | 293a45e | 2011-01-31 23:20:03 +0000 | [diff] [blame] | 8 | -(Foo*)myProp {return 0;} // expected-warning {{atomic by default property 'myProp' has a user defined getter (property should be marked 'atomic' if this is intended)}} |
| 9 | -(void)setMyProp:(Foo*)e {} // expected-warning {{atomic by default property 'myProp' has a user defined setter (property should be marked 'atomic' if this is intended)}} |
| 10 | @end |
| 11 | |
| 12 | @interface Foo2 { |
| 13 | Foo *myProp; |
| 14 | } |
| 15 | @property (assign) Foo *myProp; |
| 16 | @end |
| 17 | |
| 18 | @implementation Foo2 |
| 19 | @synthesize myProp; // no warnings. |
Argyrios Kyrtzidis | 94659e4 | 2011-01-31 21:34:11 +0000 | [diff] [blame] | 20 | @end |