diff options
Diffstat (limited to 'clang/test/SemaObjC/method-undef-extension-warn-1.m')
-rw-r--r-- | clang/test/SemaObjC/method-undef-extension-warn-1.m | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/clang/test/SemaObjC/method-undef-extension-warn-1.m b/clang/test/SemaObjC/method-undef-extension-warn-1.m new file mode 100644 index 0000000..c092f24 --- /dev/null +++ b/clang/test/SemaObjC/method-undef-extension-warn-1.m @@ -0,0 +1,24 @@ +// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s + +@interface MyClass // expected-note {{required for direct or indirect protocol 'P'}} +@end + +@protocol P +- (void)Pmeth; +- (void)Pmeth1; // expected-note {{method 'Pmeth1' declared here}} +@end + +// Class extension +@interface MyClass () <P> +- (void)meth2; // expected-note {{method definition for 'meth2' not found}} +@end + +// Add a category to test that clang does not emit warning for this method. +@interface MyClass (Category) +- (void)categoryMethod; +@end + +@implementation MyClass // expected-warning {{incomplete implementation}} \ + // expected-warning {{method 'Pmeth1' in protocol not implemented}} +- (void)Pmeth {} +@end |