1 | // RUN: %clang_cc1 -verify %s |
2 | |
3 | @interface Object |
4 | @end |
5 | |
6 | @protocol ProtocolObject |
7 | @property int class; |
8 | @property (copy) id MayCauseError; |
9 | @end |
10 | |
11 | @protocol ProtocolDerivedGCObject <ProtocolObject> |
12 | @property int Dclass; |
13 | @end |
14 | |
15 | @interface GCObject : Object <ProtocolDerivedGCObject> { |
16 | int ifield; |
17 | int iOwnClass; |
18 | int iDclass; |
19 | } |
20 | @property int OwnClass; |
21 | @end |
22 | |
23 | @interface ReleaseObject : GCObject <ProtocolObject> { |
24 | int newO; |
25 | int oldO; |
26 | } |
27 | @property (retain) id MayCauseError; // expected-warning {{'copy' attribute on property 'MayCauseError' does not match the property inherited from 'ProtocolObject'}} |
28 | @end |
29 | |
30 | |