1*f4a2713aSLionel Sambuc typedef int T;
2*f4a2713aSLionel Sambuc struct X { int a, b; };
f(int x)3*f4a2713aSLionel Sambuc void f(int x) {
4*f4a2713aSLionel Sambuc for (T y = x; T z = x; ++x) {
5*f4a2713aSLionel Sambuc }
6*f4a2713aSLionel Sambuc if (T *z2 = &x) { }
7*f4a2713aSLionel Sambuc while (T *z3 = &x) { }
8*f4a2713aSLionel Sambuc switch (T z4 = x) {
9*f4a2713aSLionel Sambuc case 17: break;
10*f4a2713aSLionel Sambuc }
11*f4a2713aSLionel Sambuc }
12*f4a2713aSLionel Sambuc
13*f4a2713aSLionel Sambuc // Test handling of C++ base specifiers.
14*f4a2713aSLionel Sambuc class A {
15*f4a2713aSLionel Sambuc void doA();
16*f4a2713aSLionel Sambuc };
17*f4a2713aSLionel Sambuc
18*f4a2713aSLionel Sambuc class B {
19*f4a2713aSLionel Sambuc void doB();
20*f4a2713aSLionel Sambuc };
21*f4a2713aSLionel Sambuc
22*f4a2713aSLionel Sambuc class C : public A, private B {
23*f4a2713aSLionel Sambuc void doC();
24*f4a2713aSLionel Sambuc };
25*f4a2713aSLionel Sambuc
26*f4a2713aSLionel Sambuc class D : virtual public C, virtual private A {};
27*f4a2713aSLionel Sambuc
28*f4a2713aSLionel Sambuc namespace std {
29*f4a2713aSLionel Sambuc class type_info { };
30*f4a2713aSLionel Sambuc }
31*f4a2713aSLionel Sambuc
test_exprs(C * c)32*f4a2713aSLionel Sambuc void test_exprs(C *c) {
33*f4a2713aSLionel Sambuc int typeid_marker;
34*f4a2713aSLionel Sambuc typeid(C);
35*f4a2713aSLionel Sambuc typeid(c);
36*f4a2713aSLionel Sambuc typedef int Integer;
37*f4a2713aSLionel Sambuc Integer *int_ptr;
38*f4a2713aSLionel Sambuc int_ptr->Integer::~Integer();
39*f4a2713aSLionel Sambuc }
40*f4a2713aSLionel Sambuc
41*f4a2713aSLionel Sambuc namespace N {
42*f4a2713aSLionel Sambuc int f(int);
43*f4a2713aSLionel Sambuc float f(float);
44*f4a2713aSLionel Sambuc
45*f4a2713aSLionel Sambuc template<typename T> T g(T);
46*f4a2713aSLionel Sambuc template<typename T> T g(T*);
47*f4a2713aSLionel Sambuc }
48*f4a2713aSLionel Sambuc
49*f4a2713aSLionel Sambuc template<typename T>
test_dependent_exprs(T t)50*f4a2713aSLionel Sambuc void test_dependent_exprs(T t) {
51*f4a2713aSLionel Sambuc N::f(t);
52*f4a2713aSLionel Sambuc typedef T type;
53*f4a2713aSLionel Sambuc N::g<type>(t);
54*f4a2713aSLionel Sambuc type::template f<type*>(t);
55*f4a2713aSLionel Sambuc t->type::template f<type*>();
56*f4a2713aSLionel Sambuc }
57*f4a2713aSLionel Sambuc
58*f4a2713aSLionel Sambuc struct Y {
59*f4a2713aSLionel Sambuc int f(int);
60*f4a2713aSLionel Sambuc float f(float);
61*f4a2713aSLionel Sambuc
62*f4a2713aSLionel Sambuc template<typename T> T g(T);
63*f4a2713aSLionel Sambuc template<typename T> T g(T*);
64*f4a2713aSLionel Sambuc };
65*f4a2713aSLionel Sambuc
66*f4a2713aSLionel Sambuc template<typename T>
test_more_dependent_exprs(T t,Y y)67*f4a2713aSLionel Sambuc void test_more_dependent_exprs(T t, Y y) {
68*f4a2713aSLionel Sambuc y.Y::f(t);
69*f4a2713aSLionel Sambuc typedef T type;
70*f4a2713aSLionel Sambuc y.g<type>(t);
71*f4a2713aSLionel Sambuc }
72*f4a2713aSLionel Sambuc
73*f4a2713aSLionel Sambuc struct Pair {
74*f4a2713aSLionel Sambuc Pair(int, int);
75*f4a2713aSLionel Sambuc };
76*f4a2713aSLionel Sambuc
77*f4a2713aSLionel Sambuc void *operator new(__SIZE_TYPE__, void*) throw();
78*f4a2713aSLionel Sambuc
test_more_exprs(void * mem,int i,int j)79*f4a2713aSLionel Sambuc void test_more_exprs(void *mem, int i, int j) {
80*f4a2713aSLionel Sambuc new (mem) Pair(i, j);
81*f4a2713aSLionel Sambuc typedef int Integer;
82*f4a2713aSLionel Sambuc (void)Integer(i);
83*f4a2713aSLionel Sambuc (Integer)i;
84*f4a2713aSLionel Sambuc Integer();
85*f4a2713aSLionel Sambuc }
86*f4a2713aSLionel Sambuc
87*f4a2713aSLionel Sambuc template<typename T>
test_even_more_dependent_exprs(T t,Y y)88*f4a2713aSLionel Sambuc void test_even_more_dependent_exprs(T t, Y y) {
89*f4a2713aSLionel Sambuc typedef T type;
90*f4a2713aSLionel Sambuc (void)type(t, y);
91*f4a2713aSLionel Sambuc (void)__has_nothrow_assign(type);
92*f4a2713aSLionel Sambuc }
93*f4a2713aSLionel Sambuc
94*f4a2713aSLionel Sambuc struct Base {
95*f4a2713aSLionel Sambuc Base(int);
96*f4a2713aSLionel Sambuc };
97*f4a2713aSLionel Sambuc
98*f4a2713aSLionel Sambuc struct Derived : public Base {
99*f4a2713aSLionel Sambuc Derived(int x);
100*f4a2713aSLionel Sambuc int member;
101*f4a2713aSLionel Sambuc };
102*f4a2713aSLionel Sambuc
Derived(int x)103*f4a2713aSLionel Sambuc Derived::Derived(int x)
104*f4a2713aSLionel Sambuc : member(x), Base(x) {
105*f4a2713aSLionel Sambuc }
106*f4a2713aSLionel Sambuc
considered_harmful(int x)107*f4a2713aSLionel Sambuc void considered_harmful(int x) {
108*f4a2713aSLionel Sambuc start_over:
109*f4a2713aSLionel Sambuc void *ptr = &&start_over;
110*f4a2713aSLionel Sambuc if (x > 17)
111*f4a2713aSLionel Sambuc goto *ptr;
112*f4a2713aSLionel Sambuc else
113*f4a2713aSLionel Sambuc goto start_over;
114*f4a2713aSLionel Sambuc }
115*f4a2713aSLionel Sambuc
casts(int * ip)116*f4a2713aSLionel Sambuc void casts(int *ip) {
117*f4a2713aSLionel Sambuc (void)reinterpret_cast<float *>(ip);
118*f4a2713aSLionel Sambuc }
119*f4a2713aSLionel Sambuc
120*f4a2713aSLionel Sambuc // RUN: c-index-test -test-load-source all -fno-delayed-template-parsing %s | FileCheck %s
121*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:1:13: TypedefDecl=T:1:13 (Definition) Extent=[1:1 - 1:14]
122*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:2:8: StructDecl=X:2:8 (Definition) Extent=[2:1 - 2:23]
123*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:2:16: FieldDecl=a:2:16 (Definition) Extent=[2:12 - 2:17]
124*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:2:19: FieldDecl=b:2:19 (Definition) Extent=[2:12 - 2:20]
125*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:3:6: FunctionDecl=f:3:6 (Definition) Extent=[3:1 - 11:2]
126*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:3:12: ParmDecl=x:3:12 (Definition) Extent=[3:8 - 3:13]
127*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:4:10: VarDecl=y:4:10 (Definition) Extent=[4:8 - 4:15]
128*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:4:8: TypeRef=T:1:13 Extent=[4:8 - 4:9]
129*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:4:14: DeclRefExpr=x:3:12 Extent=[4:14 - 4:15]
130*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:4:19: VarDecl=z:4:19 (Definition) Extent=[4:17 - 4:24]
131*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:4:17: TypeRef=T:1:13 Extent=[4:17 - 4:18]
132*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:4:23: DeclRefExpr=x:3:12 Extent=[4:23 - 4:24]
133*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:4:19: UnexposedExpr=z:4:19 Extent=[4:19 - 4:20]
134*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:4:19: DeclRefExpr=z:4:19 Extent=[4:19 - 4:20]
135*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:4:26: UnaryOperator= Extent=[4:26 - 4:29]
136*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:4:28: DeclRefExpr=x:3:12 Extent=[4:28 - 4:29]
137*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:6:10: VarDecl=z2:6:10 (Definition) Extent=[6:7 - 6:17]
138*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:6:7: TypeRef=T:1:13 Extent=[6:7 - 6:8]
139*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:6:15: UnaryOperator= Extent=[6:15 - 6:17]
140*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:6:16: DeclRefExpr=x:3:12 Extent=[6:16 - 6:17]
141*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:6:10: UnexposedExpr=z2:6:10 Extent=[6:10 - 6:12]
142*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:6:10: DeclRefExpr=z2:6:10 Extent=[6:10 - 6:12]
143*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:7:13: VarDecl=z3:7:13 (Definition) Extent=[7:10 - 7:20]
144*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:7:10: TypeRef=T:1:13 Extent=[7:10 - 7:11]
145*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:7:18: UnaryOperator= Extent=[7:18 - 7:20]
146*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:7:19: DeclRefExpr=x:3:12 Extent=[7:19 - 7:20]
147*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:7:13: UnexposedExpr=z3:7:13 Extent=[7:13 - 7:15]
148*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:7:13: DeclRefExpr=z3:7:13 Extent=[7:13 - 7:15]
149*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:8:13: VarDecl=z4:8:13 (Definition) Extent=[8:11 - 8:19]
150*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:8:11: TypeRef=T:1:13 Extent=[8:11 - 8:12]
151*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:8:18: DeclRefExpr=x:3:12 Extent=[8:18 - 8:19]
152*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:8:13: DeclRefExpr=z4:8:13 Extent=[8:13 - 8:15]
153*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:9:8: IntegerLiteral= Extent=[9:8 - 9:10]
154*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:14:7: ClassDecl=A:14:7 (Definition) Extent=[14:1 - 16:2]
155*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:15:8: CXXMethod=doA:15:8 Extent=[15:3 - 15:13]
156*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:18:7: ClassDecl=B:18:7 (Definition) Extent=[18:1 - 20:2]
157*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:19:8: CXXMethod=doB:19:8 Extent=[19:3 - 19:13]
158*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:22:7: ClassDecl=C:22:7 (Definition) Extent=[22:1 - 24:2]
159*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:22:18: C++ base class specifier=class A:14:7 [access=public isVirtual=false]
160*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:22:29: C++ base class specifier=class B:18:7 [access=private isVirtual=false]
161*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:23:8: CXXMethod=doC:23:8 Extent=[23:3 - 23:13]
162*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:26:7: ClassDecl=D:26:7 (Definition) Extent=[26:1 - 26:49]
163*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:26:26: C++ base class specifier=class C:22:7 [access=public isVirtual=true]
164*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:26:45: C++ base class specifier=class A:14:7 [access=private isVirtual=true]
165*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:33:7: VarDecl=typeid_marker:33:7 (Definition)
166*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:34:10: TypeRef=class C:22:7 Extent=[34:10 - 34:11]
167*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:35:10: DeclRefExpr=c:32:20 Extent=[35:10 - 35:11]
168*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:37:12: VarDecl=int_ptr:37:12 (Definition) Extent=[37:3 - 37:19]
169*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:37:3: TypeRef=Integer:36:15 Extent=[37:3 - 37:10]
170*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:38:3: DeclRefExpr=int_ptr:37:12 Extent=[38:3 - 38:10]
171*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:38:12: TypeRef=Integer:36:15 Extent=[38:12 - 38:19]
172*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:38:22: TypeRef=Integer:36:15 Extent=[38:22 - 38:29]
173*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:50:6: FunctionTemplate=test_dependent_exprs:50:6 (Definition)
174*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:51:3: CallExpr= Extent=[51:3 - 51:10]
175*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:51:3: NamespaceRef=N:41:11 Extent=[51:3 - 51:4]
176*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:51:8: DeclRefExpr=t:50:29 Extent=[51:8 - 51:9]
177*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:52:13: TypedefDecl=type:52:13 (Definition) Extent=[52:3 - 52:17]
178*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:53:3: CallExpr= Extent=[53:3 - 53:16]
179*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:53:3: NamespaceRef=N:41:11 Extent=[53:3 - 53:4]
180*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:53:8: TypeRef=type:52:13 Extent=[53:8 - 53:12]
181*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:53:14: DeclRefExpr=t:50:29 Extent=[53:14 - 53:15]
182*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:54:3: CallExpr= Extent=[54:3 - 54:29]
183*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:54:3: TypeRef=type:52:13 Extent=[54:3 - 54:7]
184*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:54:20: TypeRef=type:52:13 Extent=[54:20 - 54:24]
185*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:54:27: DeclRefExpr=t:50:29 Extent=[54:27 - 54:28]
186*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:55:3: CallExpr= Extent=[55:3 - 55:31]
187*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:55:3: DeclRefExpr=t:50:29 Extent=[55:3 - 55:4]
188*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:55:23: TypeRef=type:52:13 Extent=[55:23 - 55:27]
189*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:67:6: FunctionTemplate=test_more_dependent_exprs:67:6 (Definition)
190*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:68:3: CallExpr= Extent=[68:3 - 68:12]
191*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:68:3: DeclRefExpr=y:67:39 Extent=[68:3 - 68:4]
192*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:68:5: TypeRef=struct Y:58:8 Extent=[68:5 - 68:6]
193*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:68:10: DeclRefExpr=t:67:34 Extent=[68:10 - 68:11]
194*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:70:3: CallExpr= Extent=[70:3 - 70:15]
195*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:70:3: DeclRefExpr=y:67:39 Extent=[70:3 - 70:4]
196*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:70:7: TypeRef=type:69:13 Extent=[70:7 - 70:11]
197*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:70:13: DeclRefExpr=t:67:34 Extent=[70:13 - 70:14]
198*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:79:6: FunctionDecl=test_more_exprs:79:6 (Definition)
199*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:80:8: DeclRefExpr=mem:79:28 Extent=[80:8 - 80:11]
200*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:80:13: TypeRef=struct Pair:73:8 Extent=[80:13 - 80:17]
201*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:80:18: DeclRefExpr=i:79:37 Extent=[80:18 - 80:19]
202*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:80:21: DeclRefExpr=j:79:44 Extent=[80:21 - 80:22]
203*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:82:9: TypeRef=Integer:81:15 Extent=[82:9 - 82:16]
204*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:82:17: DeclRefExpr=i:79:37 Extent=[82:17 - 82:18]
205*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:83:3: CStyleCastExpr= Extent=[83:3 - 83:13]
206*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:83:4: TypeRef=Integer:81:15 Extent=[83:4 - 83:11]
207*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:83:12: UnexposedExpr=i:79:37 Extent=[83:12 - 83:13]
208*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:83:12: DeclRefExpr=i:79:37 Extent=[83:12 - 83:13]
209*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:84:3: UnexposedExpr= Extent=[84:3 - 84:12]
210*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:84:3: TypeRef=Integer:81:15 Extent=[84:3 - 84:10]
211*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:90:9: TypeRef=type:89:13 Extent=[90:9 - 90:13]
212*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:90:14: DeclRefExpr=t:88:39 Extent=[90:14 - 90:15]
213*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:90:17: DeclRefExpr=y:88:44 Extent=[90:17 - 90:18]
214*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:91:9: UnexposedExpr= Extent=[91:9 - 91:35]
215*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:91:30: TypeRef=type:89:13 Extent=[91:30 - 91:34]
216*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:103:10: CXXConstructor=Derived:103:10 (Definition)
217*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:103:1: TypeRef=struct Derived:98:8 Extent=[103:1 - 103:
218*f4a2713aSLionel Sambuc // FIXME: Missing TypeRef for constructor name.
219*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:103:22: ParmDecl=x:103:22 (Definition)
220*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:104:5: MemberRef=member:100:7 Extent=[104:5 - 104:11]
221*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:104:12: DeclRefExpr=x:103:22 Extent=[104:12 - 104:13]
222*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:104:16: TypeRef=struct Base:94:8 Extent=[104:16 - 104:2
223*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:104:16: CallExpr=Base:95:3 Extent=[104:16 - 104:23]
224*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:104:21: DeclRefExpr=x:103:22 Extent=[104:21 - 104:22]
225*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:107:6: FunctionDecl=considered_harmful:107:6 (Definition)
226*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:108:2: LabelStmt=start_over Extent=[108:2 - 109:28]
227*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:109:17: LabelRef=start_over:108:2 Extent=[109:17 - 109:27]
228*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:113:10: LabelRef=start_over:108:2 Extent=[113:10 - 113:20]
229*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:117:35: UnexposedExpr=ip:116:17 Extent=[117:35 - 117:37]
230*f4a2713aSLionel Sambuc // CHECK: load-stmts.cpp:117:35: DeclRefExpr=ip:116:17 Extent=[117:35 - 117:37]
231*f4a2713aSLionel Sambuc
232