| Sebastian Redl | 51c79d8 | 2010-08-04 22:21:29 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -fsyntax-only -verify %s -Wselector -include %S/Inputs/chain-selectors1.h -include %S/Inputs/chain-selectors2.h | 
|  | 2 |  | 
|  | 3 | // RUN: %clang_cc1 -x objective-c -emit-pch -o %t1 %S/Inputs/chain-selectors1.h | 
|  | 4 | // RUN: %clang_cc1 -x objective-c -emit-pch -o %t2 %S/Inputs/chain-selectors2.h -include-pch %t1 -chained-pch | 
|  | 5 | // RUN: %clang_cc1 -fsyntax-only -verify %s -Wselector -include-pch %t2 | 
|  | 6 |  | 
|  | 7 | @implementation X | 
|  | 8 | -(void)f {} | 
|  | 9 | -(void)f2 {} | 
|  | 10 | -(void)g: (int)p {} | 
|  | 11 | -(void)h: (int)p1 foo: (int)p2 {} | 
|  | 12 | @end | 
|  | 13 |  | 
|  | 14 | void bar() { | 
|  | 15 | id a = 0; | 
|  | 16 | [a nothing]; // expected-warning {{method '-nothing' not found}} | 
|  | 17 | [a f]; | 
|  | 18 | // FIXME: Can't verify notes in headers | 
|  | 19 | //[a f2]; | 
|  | 20 |  | 
|  | 21 | (void)@selector(x); // expected-warning {{unimplemented selector}} | 
|  | 22 | (void)@selector(y); // expected-warning {{unimplemented selector}} | 
|  | 23 | (void)@selector(e); // expected-warning {{unimplemented selector}} | 
|  | 24 | } | 
| Douglas Gregor | 3022037 | 2010-10-02 21:06:43 +0000 | [diff] [blame^] | 25 |  | 
|  | 26 | @implementation X (Blah) | 
|  | 27 | - (void)test_Blah { | 
|  | 28 | [self blah_method]; | 
|  | 29 | } | 
|  | 30 |  | 
|  | 31 | - (void)blah_method { } | 
|  | 32 | @end | 
|  | 33 |  | 
|  | 34 | @implementation X (Blarg) | 
|  | 35 | - (void)test_Blarg { | 
|  | 36 | [self blarg_method]; | 
|  | 37 | } | 
|  | 38 |  | 
|  | 39 | - (void)blarg_method { } | 
|  | 40 | @end |