Fariborz Jahanian | ae6f6fd | 2008-12-05 22:32:48 +0000 | [diff] [blame] | 1 | // RUN: clang -fsyntax-only -verify %s |
2 | |||||
3 | @interface I { | ||||
4 | int Y; | ||||
5 | } | ||||
6 | @property int X; | ||||
7 | @property int Y; | ||||
8 | @property int Z; | ||||
9 | @end | ||||
10 | |||||
11 | @implementation I | ||||
12 | @dynamic X; // expected-note {{previous declaration is here}} | ||||
13 | @dynamic X; // expected-error {{property 'X' is already implemented}} | ||||
14 | @synthesize Y; // expected-note {{previous use is here}} | ||||
15 | @synthesize Z=Y; // expected-error {{synthesized properties 'Z' and 'Y' both claim ivar 'Y'}} | ||||
16 | @end |