blob: 748b151fde41e558c33a8322773d171e1aa6aecf [file] [log] [blame]
Fariborz Jahanian4b6df3f2007-10-04 00:22:33 +00001// RUN: clang -fsyntax-only -verify %s
2
Fariborz Jahanian00ae8d52007-09-28 17:40:07 +00003@protocol P1
4- (void) P1proto; // expected-warning {{method definition for 'P1proto' not found}}
5+ (void) ClsP1Proto; // expected-warning {{method definition for 'ClsP1Proto' not found}}
6- (void) DefP1proto;
7@end
8@protocol P2
9- (void) P2proto; // expected-warning {{method definition for 'P2proto' not found}}
10+ (void) ClsP2Proto; // expected-warning {{method definition for 'ClsP2Proto' not found}}
11@end
12
13@protocol P3<P2>
14- (void) P3proto; // expected-warning {{method definition for 'P3proto' not found}}
15+ (void) ClsP3Proto; // expected-warning {{method definition for 'ClsP3Proto' not found}}
16+ (void) DefClsP3Proto;
17@end
18
19@protocol PROTO<P1, P3>
Fariborz Jahanian4b6df3f2007-10-04 00:22:33 +000020- (void) meth; // expected-warning {{method definition for 'meth' not found}}
21- (void) meth : (int) arg1; // expected-warning {{method definition for 'meth:' not found}}
22+ (void) cls_meth : (int) arg1; // expected-warning {{method definition for 'cls_meth:' not found}}
Fariborz Jahanian00ae8d52007-09-28 17:40:07 +000023@end
24
25@interface INTF <PROTO>
26@end
27
Fariborz Jahanian4b6df3f2007-10-04 00:22:33 +000028@implementation INTF // expected-warning {{incomplete implementation of class 'INTF'}}
Fariborz Jahanian00ae8d52007-09-28 17:40:07 +000029- (void) DefP1proto{}
30
31+ (void) DefClsP3Proto{}
32
Fariborz Jahanian4b6df3f2007-10-04 00:22:33 +000033@end