1 // RUN: %clang_cc1 -fsyntax-only -verify %s 2 3 @interface MyClass // expected-note {{required for direct or indirect protocol 'P'}} 4 @end 5 6 @protocol P 7 - (void)Pmeth; 8 - (void)Pmeth1; // expected-note {{method declared here}} 9 @end 10 11 // Class extension 12 @interface MyClass () <P> 13 - (void)meth2; // expected-note {{method definition for 'meth2' not found}} 14 @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 21 @implementation MyClass // expected-warning {{incomplete implementation}} \ 22 // expected-warning {{method in protocol not implemented [-Wprotocol]}} 23 - (void)Pmeth {} 24 @end 25