|
1 | 1 | // RUN: env CLANG_COMPILER_OBJC_MESSAGE_TRACE_PATH=%t.txt %clang_cc1 -fsyntax-only -triple arm64-apple-macosx15.0.0 -I %S/Inputs %s
|
2 | 2 | // RUN: cat %t.txt | FileCheck %s
|
3 | 3 |
|
| 4 | +#include "objc-method-tracing.h" |
| 5 | + |
| 6 | +@interface B(Cat1) |
| 7 | +-(void)m2; |
| 8 | +@end |
| 9 | + |
| 10 | +@interface B() |
| 11 | +-(void)m6; |
| 12 | +@end |
| 13 | + |
| 14 | +@implementation B |
| 15 | +-(void)m7:(int)i arg1:(float)f { |
| 16 | +} |
| 17 | +@end |
| 18 | + |
| 19 | +@implementation B(Cat1) |
| 20 | +-(void)m8 { |
| 21 | +} |
| 22 | +@end |
| 23 | + |
| 24 | +void test0(A *a) { |
| 25 | + [a m0]; |
| 26 | +} |
| 27 | + |
| 28 | +void test1(B *b) { |
| 29 | + [b m0]; |
| 30 | +} |
| 31 | + |
| 32 | +void test2(B *b) { |
| 33 | + [B m1]; |
| 34 | +} |
| 35 | + |
| 36 | +void test3(B *b) { |
| 37 | + [b m2]; |
| 38 | +} |
| 39 | + |
| 40 | +void test4(C *c) { |
| 41 | + [c m4]; |
| 42 | +} |
| 43 | + |
| 44 | +void test5(id<P0> p0) { |
| 45 | + [p0 m5]; |
| 46 | +} |
| 47 | + |
| 48 | +void test6(B *b) { |
| 49 | + [b m6]; |
| 50 | +} |
| 51 | + |
| 52 | +void test7(B *b) { |
| 53 | + [b m7:123 arg1:4.5f]; |
| 54 | +} |
| 55 | + |
| 56 | +void test8(B *b) { |
| 57 | + [b m8]; |
| 58 | +} |
| 59 | + |
4 | 60 | // CHECK: {
|
| 61 | +// CHECK-NEXT: "clang-compiler-version": "clang version |
5 | 62 | // CHECK-NEXT: "format-version": 1,
|
6 | 63 | // CHECK-NEXT: "target": "arm64-apple-macosx15.0.0",
|
7 | 64 | // CHECK-NEXT: "references": [
|
|
27 | 84 | // CHECK-NEXT: "interface_type": "B",
|
28 | 85 | // CHECK-NEXT: "category_type": "Cat1",
|
29 | 86 | // CHECK-NEXT: "instance_method": "-[B(Cat1) m2]",
|
30 |
| -// CHECK-NEXT: "declared_at": "[[SOURCE_FILE:.*]]:12:1", |
| 87 | +// CHECK-NEXT: "declared_at": "[[SOURCE_FILE:.*]]:7:1", |
31 | 88 | // CHECK-NEXT: "referenced_at_file_id": 1
|
32 | 89 | // CHECK-NEXT: },
|
33 | 90 | // CHECK-NEXT: {
|
|
46 | 103 | // CHECK-NEXT: "interface_type": "B",
|
47 | 104 | // CHECK-NEXT: "category_type": "",
|
48 | 105 | // CHECK-NEXT: "instance_method": "-[B() m6]",
|
49 |
| -// CHECK-NEXT: "declared_at": "[[SOURCE_FILE]]:16:1", |
| 106 | +// CHECK-NEXT: "declared_at": "[[SOURCE_FILE]]:11:1", |
50 | 107 | // CHECK-NEXT: "referenced_at_file_id": 1
|
51 | 108 | // CHECK-NEXT: },
|
52 | 109 | // CHECK-NEXT: {
|
53 | 110 | // CHECK-NEXT: "implementation_type": "B",
|
54 | 111 | // CHECK-NEXT: "instance_method": "-[B m7:arg1:]",
|
55 |
| -// CHECK-NEXT: "declared_at": "[[SOURCE_FILE]]:20:1", |
| 112 | +// CHECK-NEXT: "declared_at": "[[SOURCE_FILE]]:15:1", |
56 | 113 | // CHECK-NEXT: "referenced_at_file_id": 1
|
57 | 114 | // CHECK-NEXT: },
|
58 | 115 | // CHECK-NEXT: {
|
59 | 116 | // CHECK-NEXT: "interface_type": "B",
|
60 | 117 | // CHECK-NEXT: "category_implementation_type": "Cat1",
|
61 | 118 | // CHECK-NEXT: "instance_method": "-[B(Cat1) m8]",
|
62 |
| -// CHECK-NEXT: "declared_at": "[[SOURCE_FILE]]:25:1", |
| 119 | +// CHECK-NEXT: "declared_at": "[[SOURCE_FILE]]:20:1", |
63 | 120 | // CHECK-NEXT: "referenced_at_file_id": 1
|
64 | 121 | // CHECK-NEXT: }
|
65 | 122 | // CHECK-NEXT: ],
|
|
70 | 127 | // CHECK-NEXT: }
|
71 | 128 | // CHECK-NEXT: ]
|
72 | 129 | // CHECK-NEXT: }
|
73 |
| - |
74 |
| -#include "objc-method-tracing.h" |
75 |
| - |
76 |
| -@interface B(Cat1) |
77 |
| --(void)m2; |
78 |
| -@end |
79 |
| - |
80 |
| -@interface B() |
81 |
| --(void)m6; |
82 |
| -@end |
83 |
| - |
84 |
| -@implementation B |
85 |
| --(void)m7:(int)i arg1:(float)f { |
86 |
| -} |
87 |
| -@end |
88 |
| - |
89 |
| -@implementation B(Cat1) |
90 |
| --(void)m8 { |
91 |
| -} |
92 |
| -@end |
93 |
| - |
94 |
| -void test0(A *a) { |
95 |
| - [a m0]; |
96 |
| -} |
97 |
| - |
98 |
| -void test1(B *b) { |
99 |
| - [b m0]; |
100 |
| -} |
101 |
| - |
102 |
| -void test2(B *b) { |
103 |
| - [B m1]; |
104 |
| -} |
105 |
| - |
106 |
| -void test3(B *b) { |
107 |
| - [b m2]; |
108 |
| -} |
109 |
| - |
110 |
| -void test4(C *c) { |
111 |
| - [c m4]; |
112 |
| -} |
113 |
| - |
114 |
| -void test5(id<P0> p0) { |
115 |
| - [p0 m5]; |
116 |
| -} |
117 |
| - |
118 |
| -void test6(B *b) { |
119 |
| - [b m6]; |
120 |
| -} |
121 |
| - |
122 |
| -void test7(B *b) { |
123 |
| - [b m7:123 arg1:4.5f]; |
124 |
| -} |
125 |
| - |
126 |
| -void test8(B *b) { |
127 |
| - [b m8]; |
128 |
| -} |
|
0 commit comments