Douglas Gregor | 5948ae1 | 2012-01-03 18:04:46 +0000 | [diff] [blame^] | 1 | @import redecl_merge_top; |
Douglas Gregor | a1be278 | 2011-12-17 23:38:30 +0000 | [diff] [blame] | 2 | |
3 | @class A; | ||||
4 | |||||
5 | @class A; | ||||
6 | |||||
Douglas Gregor | ecb1938 | 2011-12-19 15:27:36 +0000 | [diff] [blame] | 7 | @interface B |
Douglas Gregor | adafc2e | 2011-12-19 16:14:14 +0000 | [diff] [blame] | 8 | + (B*) create_a_B; |
Douglas Gregor | ecb1938 | 2011-12-19 15:27:36 +0000 | [diff] [blame] | 9 | @end |
10 | |||||
Douglas Gregor | a1be278 | 2011-12-17 23:38:30 +0000 | [diff] [blame] | 11 | @class A; |
Douglas Gregor | ecb1938 | 2011-12-19 15:27:36 +0000 | [diff] [blame] | 12 | |
Douglas Gregor | 27c6da2 | 2012-01-01 20:30:41 +0000 | [diff] [blame] | 13 | @protocol P1; |
14 | @protocol P2 | ||||
15 | - (void)protoMethod2; | ||||
16 | @end | ||||
17 | |||||
Douglas Gregor | 0f75323 | 2011-12-22 01:48:48 +0000 | [diff] [blame] | 18 | // Test declarations in different modules with no common initial |
19 | // declaration. | ||||
20 | @class C; | ||||
21 | void accept_a_C(C*); | ||||
22 | |||||
23 | @class C2; | ||||
24 | void accept_a_C2(C2*); | ||||
25 | |||||
26 | @class C3; | ||||
27 | void accept_a_C3(C3*); | ||||
28 | @class C3; | ||||
29 | |||||
Douglas Gregor | c3cfd2a | 2011-12-22 21:40:42 +0000 | [diff] [blame] | 30 | @class C4; |
31 | |||||
Douglas Gregor | 2ccd89c | 2011-12-20 18:11:52 +0000 | [diff] [blame] | 32 | @class Explicit; |
33 | |||||
34 | int *explicit_func(void); | ||||
35 | |||||
36 | struct explicit_struct; | ||||
37 | |||||
Douglas Gregor | dba9361 | 2012-01-01 21:47:52 +0000 | [diff] [blame] | 38 | @protocol P3, P4; |
39 | |||||
40 | @protocol P3; | ||||
41 | |||||
Douglas Gregor | f63b0a5 | 2011-12-19 18:19:24 +0000 | [diff] [blame] | 42 | #ifdef __cplusplus |
43 | template<typename T> class Vector; | ||||
44 | |||||
45 | template<typename T> class Vector; | ||||
46 | #endif |