comparison clang/test/PCH/chain-selectors.m @ 150:1d019706d866

LLVM10
author anatofuz
date Thu, 13 Feb 2020 15:10:13 +0900
parents
children c4bab56944e8
comparison
equal deleted inserted replaced
147:c2174574ed3a 150:1d019706d866
1 // RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s -Wselector -include %S/Inputs/chain-selectors1.h -include %S/Inputs/chain-selectors2.h
2
3 // RUN: %clang_cc1 -x objective-c -Wno-objc-root-class -emit-pch -o %t1 %S/Inputs/chain-selectors1.h
4 // RUN: %clang_cc1 -x objective-c -Wno-objc-root-class -emit-pch -o %t2 %S/Inputs/chain-selectors2.h -include-pch %t1
5 // RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %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 {{no method with selector 'x' is implemented in this translation unit}}
22 (void)@selector(y); // expected-warning {{no method with selector 'y' is implemented in this translation unit}}
23 (void)@selector(e); // expected-warning {{no method with selector 'e' is implemented in this translation unit}}
24 }
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