blob: 1addcf7df719cc7ed6483f6078943e5f795d8f7a [file] [log] [blame]
Daniel Dunbara5728872009-12-15 20:14:24 +00001// RUN: %clang_cc1 -fsyntax-only -verify %s
Chris Lattnercddc8882009-03-01 00:56:52 +00002
Fariborz Jahanian8822f7c2010-03-27 19:02:17 +00003@interface MyClass // expected-note {{required for direct or indirect protocol 'P'}}
Chris Lattnercddc8882009-03-01 00:56:52 +00004@end
5
6@protocol P
7- (void)Pmeth;
Fariborz Jahanian52146832010-03-31 18:23:33 +00008- (void)Pmeth1; // expected-warning {{method in protocol not implemented [-Wprotocol]}}
Chris Lattnercddc8882009-03-01 00:56:52 +00009@end
10
11// Class extension
12@interface MyClass () <P>
Fariborz Jahanian8822f7c2010-03-27 19:02:17 +000013- (void)meth2; // expected-note {{method definition for 'meth2' not found}}
Chris Lattnercddc8882009-03-01 00:56:52 +000014@end
15
16// Add a category to test that clang does not emit warning for this method.
17@interface MyClass (Category)
18- (void)categoryMethod;
19@end
20
Fariborz Jahanian8822f7c2010-03-27 19:02:17 +000021@implementation MyClass // expected-warning {{incomplete implementation}}
Chris Lattnercddc8882009-03-01 00:56:52 +000022- (void)Pmeth {}
23@end