1 | // RUN: %clang_cc1 -fsyntax-only -verify %s |
2 | |
3 | @protocol P // expected-note {{previous}} |
4 | -(void)meth1; |
5 | @end |
6 | |
7 | @interface I // expected-note {{previous}} |
8 | @end |
9 | |
10 | @interface I2 |
11 | @end |
12 | @interface I2(C) // expected-note {{previous}} |
13 | @end |
14 | |
15 | extern "C" { |
16 | @protocol P // expected-warning {{duplicate protocol definition of 'P' is ignored}} |
17 | -(void)meth2; |
18 | @end |
19 | |
20 | @interface I // expected-error {{duplicate}} |
21 | @end |
22 | |
23 | @interface I2(C) // expected-warning {{duplicate}} |
24 | @end |
25 | } |
26 | |
27 | void test(id<P> p) { |
28 | [p meth1]; |
29 | [p meth2]; // expected-warning {{not found}} |
30 | } |
31 | |