35 lines · plain
1// RUN: %clang_cc1 -verify %s2 3@protocol P1 @end4@protocol P2 @end5@protocol P3 @end6 7@interface NSData @end8 9@interface MutableNSData : NSData @end10 11@interface Base : NSData <P1> // expected-note {{receiver is instance of class declared here}}12@property(readonly) id ref;13@property(readonly) Base *p_base;14@property(readonly) NSData *nsdata;15@property(readonly) NSData * m_nsdata;16@end17 18@interface Data : Base <P1, P2>19@property(readonly) NSData *ref; 20@property(readonly) Data *p_base; 21@property(readonly) MutableNSData * m_nsdata; 22@end23 24@interface MutedData: Data25@property(readonly) id p_base; 26@end27 28@interface ConstData : Data <P1, P2, P3>29@property(readonly) ConstData *p_base;30@end31 32void foo(Base *b, id x) {33 [ b setRef: x ]; // expected-warning {{method '-setRef:' not found}}34}35