xref: /aosp_15_r20/external/clang/test/Analysis/diagnostics/undef-value-param.m (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li// RUN: %clang_cc1 -analyze -analyzer-checker=core,osx -analyzer-output=text -verify %s
2*67e74705SXin Li// RUN: %clang_cc1 -analyze -analyzer-checker=core,osx -analyzer-output=plist-multi-file -analyzer-config path-diagnostics-alternate=false %s -o %t.plist
3*67e74705SXin Li// RUN: FileCheck --input-file=%t.plist %s
4*67e74705SXin Li
5*67e74705SXin Litypedef signed char BOOL;
6*67e74705SXin Li@protocol NSObject  - (BOOL)isEqual:(id)object; @end
7*67e74705SXin Li@interface NSObject <NSObject> {}
8*67e74705SXin Li+(id)alloc;
9*67e74705SXin Li+(id)new;
10*67e74705SXin Li-(id)init;
11*67e74705SXin Li-(id)autorelease;
12*67e74705SXin Li-(id)copy;
13*67e74705SXin Li- (Class)class;
14*67e74705SXin Li-(id)retain;
15*67e74705SXin Li@end
16*67e74705SXin Litypedef const void * CFTypeRef;
17*67e74705SXin Liextern void CFRelease(CFTypeRef cf);
18*67e74705SXin Li
19*67e74705SXin Li@interface Cell : NSObject
20*67e74705SXin Li- (void)test;
21*67e74705SXin Li@end
22*67e74705SXin Li
23*67e74705SXin Li@interface SpecialString
24*67e74705SXin Li+ (id)alloc;
25*67e74705SXin Li- (oneway void)release;
26*67e74705SXin Li@end
27*67e74705SXin Li
28*67e74705SXin Litypedef SpecialString* SCDynamicStoreRef;
29*67e74705SXin Listatic void CreateRef(SCDynamicStoreRef *storeRef, unsigned x);
30*67e74705SXin Listatic void CreateRefUndef(SCDynamicStoreRef *storeRef, unsigned x);
31*67e74705SXin LiSCDynamicStoreRef anotherCreateRef(unsigned *err, unsigned x);
32*67e74705SXin Li
33*67e74705SXin Li@implementation Cell
34*67e74705SXin Li- (void) test {
35*67e74705SXin Li    SCDynamicStoreRef storeRef = 0;
36*67e74705SXin Li    CreateRef(&storeRef, 4);
37*67e74705SXin Li                             //expected-note@-1{{Calling 'CreateRef'}}
38*67e74705SXin Li                             //expected-note@-2{{Returning from 'CreateRef'}}
39*67e74705SXin Li    CFRelease(storeRef); //expected-warning {{Null pointer argument in call to CFRelease}}
40*67e74705SXin Li                         //expected-note@-1{{Null pointer argument in call to CFRelease}}
41*67e74705SXin Li}
42*67e74705SXin Li
43*67e74705SXin Li- (void)test2 {
44*67e74705SXin Li    SCDynamicStoreRef storeRef; // expected-note {{'storeRef' declared without an initial value}}
45*67e74705SXin Li    CreateRefUndef(&storeRef, 4);
46*67e74705SXin Li                             //expected-note@-1{{Calling 'CreateRefUndef'}}
47*67e74705SXin Li                             //expected-note@-2{{Returning from 'CreateRefUndef'}}
48*67e74705SXin Li    CFRelease(storeRef); //expected-warning {{Function call argument is an uninitialized value}}
49*67e74705SXin Li                         //expected-note@-1{{Function call argument is an uninitialized value}}
50*67e74705SXin Li}
51*67e74705SXin Li@end
52*67e74705SXin Li
53*67e74705SXin Listatic void CreateRef(SCDynamicStoreRef *storeRef, unsigned x) {
54*67e74705SXin Li    unsigned err = 0;
55*67e74705SXin Li    SCDynamicStoreRef ref = anotherCreateRef(&err, x);
56*67e74705SXin Li    if (err) {
57*67e74705SXin Li               //expected-note@-1{{Assuming 'err' is not equal to 0}}
58*67e74705SXin Li               //expected-note@-2{{Taking true branch}}
59*67e74705SXin Li        CFRelease(ref);
60*67e74705SXin Li        ref = 0; // expected-note{{nil object reference stored to 'ref'}}
61*67e74705SXin Li    }
62*67e74705SXin Li    *storeRef = ref; // expected-note{{nil object reference stored to 'storeRef'}}
63*67e74705SXin Li}
64*67e74705SXin Li
65*67e74705SXin Listatic void CreateRefUndef(SCDynamicStoreRef *storeRef, unsigned x) {
66*67e74705SXin Li  unsigned err = 0;
67*67e74705SXin Li  SCDynamicStoreRef ref = anotherCreateRef(&err, x);
68*67e74705SXin Li  if (err) {
69*67e74705SXin Li             //expected-note@-1{{Assuming 'err' is not equal to 0}}
70*67e74705SXin Li             //expected-note@-2{{Taking true branch}}
71*67e74705SXin Li    CFRelease(ref);
72*67e74705SXin Li    return;
73*67e74705SXin Li  }
74*67e74705SXin Li  *storeRef = ref;
75*67e74705SXin Li}
76*67e74705SXin Li
77*67e74705SXin Li// CHECK:  <key>diagnostics</key>
78*67e74705SXin Li// CHECK-NEXT:  <array>
79*67e74705SXin Li// CHECK-NEXT:   <dict>
80*67e74705SXin Li// CHECK-NEXT:    <key>path</key>
81*67e74705SXin Li// CHECK-NEXT:    <array>
82*67e74705SXin Li// CHECK-NEXT:     <dict>
83*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
84*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
85*67e74705SXin Li// CHECK-NEXT:       <array>
86*67e74705SXin Li// CHECK-NEXT:        <dict>
87*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
88*67e74705SXin Li// CHECK-NEXT:          <array>
89*67e74705SXin Li// CHECK-NEXT:           <dict>
90*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>35</integer>
91*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
92*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
93*67e74705SXin Li// CHECK-NEXT:           </dict>
94*67e74705SXin Li// CHECK-NEXT:           <dict>
95*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>35</integer>
96*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>21</integer>
97*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
98*67e74705SXin Li// CHECK-NEXT:           </dict>
99*67e74705SXin Li// CHECK-NEXT:          </array>
100*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
101*67e74705SXin Li// CHECK-NEXT:          <array>
102*67e74705SXin Li// CHECK-NEXT:           <dict>
103*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>36</integer>
104*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
105*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
106*67e74705SXin Li// CHECK-NEXT:           </dict>
107*67e74705SXin Li// CHECK-NEXT:           <dict>
108*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>36</integer>
109*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>13</integer>
110*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
111*67e74705SXin Li// CHECK-NEXT:           </dict>
112*67e74705SXin Li// CHECK-NEXT:          </array>
113*67e74705SXin Li// CHECK-NEXT:        </dict>
114*67e74705SXin Li// CHECK-NEXT:       </array>
115*67e74705SXin Li// CHECK-NEXT:     </dict>
116*67e74705SXin Li// CHECK-NEXT:     <dict>
117*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
118*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
119*67e74705SXin Li// CHECK-NEXT:      <dict>
120*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>36</integer>
121*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>5</integer>
122*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
123*67e74705SXin Li// CHECK-NEXT:      </dict>
124*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
125*67e74705SXin Li// CHECK-NEXT:      <array>
126*67e74705SXin Li// CHECK-NEXT:        <array>
127*67e74705SXin Li// CHECK-NEXT:         <dict>
128*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>36</integer>
129*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>5</integer>
130*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
131*67e74705SXin Li// CHECK-NEXT:         </dict>
132*67e74705SXin Li// CHECK-NEXT:         <dict>
133*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>36</integer>
134*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>27</integer>
135*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
136*67e74705SXin Li// CHECK-NEXT:         </dict>
137*67e74705SXin Li// CHECK-NEXT:        </array>
138*67e74705SXin Li// CHECK-NEXT:      </array>
139*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>0</integer>
140*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
141*67e74705SXin Li// CHECK-NEXT:      <string>Calling &apos;CreateRef&apos;</string>
142*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
143*67e74705SXin Li// CHECK-NEXT:      <string>Calling &apos;CreateRef&apos;</string>
144*67e74705SXin Li// CHECK-NEXT:     </dict>
145*67e74705SXin Li// CHECK-NEXT:     <dict>
146*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
147*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
148*67e74705SXin Li// CHECK-NEXT:      <dict>
149*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>53</integer>
150*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>1</integer>
151*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
152*67e74705SXin Li// CHECK-NEXT:      </dict>
153*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>1</integer>
154*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
155*67e74705SXin Li// CHECK-NEXT:      <string>Entered call from &apos;test&apos;</string>
156*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
157*67e74705SXin Li// CHECK-NEXT:      <string>Entered call from &apos;test&apos;</string>
158*67e74705SXin Li// CHECK-NEXT:     </dict>
159*67e74705SXin Li// CHECK-NEXT:     <dict>
160*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
161*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
162*67e74705SXin Li// CHECK-NEXT:       <array>
163*67e74705SXin Li// CHECK-NEXT:        <dict>
164*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
165*67e74705SXin Li// CHECK-NEXT:          <array>
166*67e74705SXin Li// CHECK-NEXT:           <dict>
167*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>53</integer>
168*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>1</integer>
169*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
170*67e74705SXin Li// CHECK-NEXT:           </dict>
171*67e74705SXin Li// CHECK-NEXT:           <dict>
172*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>53</integer>
173*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>6</integer>
174*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
175*67e74705SXin Li// CHECK-NEXT:           </dict>
176*67e74705SXin Li// CHECK-NEXT:          </array>
177*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
178*67e74705SXin Li// CHECK-NEXT:          <array>
179*67e74705SXin Li// CHECK-NEXT:           <dict>
180*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>54</integer>
181*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
182*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
183*67e74705SXin Li// CHECK-NEXT:           </dict>
184*67e74705SXin Li// CHECK-NEXT:           <dict>
185*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>54</integer>
186*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>12</integer>
187*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
188*67e74705SXin Li// CHECK-NEXT:           </dict>
189*67e74705SXin Li// CHECK-NEXT:          </array>
190*67e74705SXin Li// CHECK-NEXT:        </dict>
191*67e74705SXin Li// CHECK-NEXT:       </array>
192*67e74705SXin Li// CHECK-NEXT:     </dict>
193*67e74705SXin Li// CHECK-NEXT:     <dict>
194*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
195*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
196*67e74705SXin Li// CHECK-NEXT:       <array>
197*67e74705SXin Li// CHECK-NEXT:        <dict>
198*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
199*67e74705SXin Li// CHECK-NEXT:          <array>
200*67e74705SXin Li// CHECK-NEXT:           <dict>
201*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>54</integer>
202*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
203*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
204*67e74705SXin Li// CHECK-NEXT:           </dict>
205*67e74705SXin Li// CHECK-NEXT:           <dict>
206*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>54</integer>
207*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>12</integer>
208*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
209*67e74705SXin Li// CHECK-NEXT:           </dict>
210*67e74705SXin Li// CHECK-NEXT:          </array>
211*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
212*67e74705SXin Li// CHECK-NEXT:          <array>
213*67e74705SXin Li// CHECK-NEXT:           <dict>
214*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>56</integer>
215*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
216*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
217*67e74705SXin Li// CHECK-NEXT:           </dict>
218*67e74705SXin Li// CHECK-NEXT:           <dict>
219*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>56</integer>
220*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>6</integer>
221*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
222*67e74705SXin Li// CHECK-NEXT:           </dict>
223*67e74705SXin Li// CHECK-NEXT:          </array>
224*67e74705SXin Li// CHECK-NEXT:        </dict>
225*67e74705SXin Li// CHECK-NEXT:       </array>
226*67e74705SXin Li// CHECK-NEXT:     </dict>
227*67e74705SXin Li// CHECK-NEXT:     <dict>
228*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
229*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
230*67e74705SXin Li// CHECK-NEXT:       <array>
231*67e74705SXin Li// CHECK-NEXT:        <dict>
232*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
233*67e74705SXin Li// CHECK-NEXT:          <array>
234*67e74705SXin Li// CHECK-NEXT:           <dict>
235*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>56</integer>
236*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
237*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
238*67e74705SXin Li// CHECK-NEXT:           </dict>
239*67e74705SXin Li// CHECK-NEXT:           <dict>
240*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>56</integer>
241*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>6</integer>
242*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
243*67e74705SXin Li// CHECK-NEXT:           </dict>
244*67e74705SXin Li// CHECK-NEXT:          </array>
245*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
246*67e74705SXin Li// CHECK-NEXT:          <array>
247*67e74705SXin Li// CHECK-NEXT:           <dict>
248*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>56</integer>
249*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>9</integer>
250*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
251*67e74705SXin Li// CHECK-NEXT:           </dict>
252*67e74705SXin Li// CHECK-NEXT:           <dict>
253*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>56</integer>
254*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>11</integer>
255*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
256*67e74705SXin Li// CHECK-NEXT:           </dict>
257*67e74705SXin Li// CHECK-NEXT:          </array>
258*67e74705SXin Li// CHECK-NEXT:        </dict>
259*67e74705SXin Li// CHECK-NEXT:       </array>
260*67e74705SXin Li// CHECK-NEXT:     </dict>
261*67e74705SXin Li// CHECK-NEXT:     <dict>
262*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
263*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
264*67e74705SXin Li// CHECK-NEXT:      <dict>
265*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>56</integer>
266*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>9</integer>
267*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
268*67e74705SXin Li// CHECK-NEXT:      </dict>
269*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
270*67e74705SXin Li// CHECK-NEXT:      <array>
271*67e74705SXin Li// CHECK-NEXT:        <array>
272*67e74705SXin Li// CHECK-NEXT:         <dict>
273*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>56</integer>
274*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>9</integer>
275*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
276*67e74705SXin Li// CHECK-NEXT:         </dict>
277*67e74705SXin Li// CHECK-NEXT:         <dict>
278*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>56</integer>
279*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>11</integer>
280*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
281*67e74705SXin Li// CHECK-NEXT:         </dict>
282*67e74705SXin Li// CHECK-NEXT:        </array>
283*67e74705SXin Li// CHECK-NEXT:      </array>
284*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>1</integer>
285*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
286*67e74705SXin Li// CHECK-NEXT:      <string>Assuming &apos;err&apos; is not equal to 0</string>
287*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
288*67e74705SXin Li// CHECK-NEXT:      <string>Assuming &apos;err&apos; is not equal to 0</string>
289*67e74705SXin Li// CHECK-NEXT:     </dict>
290*67e74705SXin Li// CHECK-NEXT:     <dict>
291*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
292*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
293*67e74705SXin Li// CHECK-NEXT:       <array>
294*67e74705SXin Li// CHECK-NEXT:        <dict>
295*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
296*67e74705SXin Li// CHECK-NEXT:          <array>
297*67e74705SXin Li// CHECK-NEXT:           <dict>
298*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>56</integer>
299*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>9</integer>
300*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
301*67e74705SXin Li// CHECK-NEXT:           </dict>
302*67e74705SXin Li// CHECK-NEXT:           <dict>
303*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>56</integer>
304*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>11</integer>
305*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
306*67e74705SXin Li// CHECK-NEXT:           </dict>
307*67e74705SXin Li// CHECK-NEXT:          </array>
308*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
309*67e74705SXin Li// CHECK-NEXT:          <array>
310*67e74705SXin Li// CHECK-NEXT:           <dict>
311*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>59</integer>
312*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>9</integer>
313*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
314*67e74705SXin Li// CHECK-NEXT:           </dict>
315*67e74705SXin Li// CHECK-NEXT:           <dict>
316*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>59</integer>
317*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>17</integer>
318*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
319*67e74705SXin Li// CHECK-NEXT:           </dict>
320*67e74705SXin Li// CHECK-NEXT:          </array>
321*67e74705SXin Li// CHECK-NEXT:        </dict>
322*67e74705SXin Li// CHECK-NEXT:       </array>
323*67e74705SXin Li// CHECK-NEXT:     </dict>
324*67e74705SXin Li// CHECK-NEXT:     <dict>
325*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
326*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
327*67e74705SXin Li// CHECK-NEXT:       <array>
328*67e74705SXin Li// CHECK-NEXT:        <dict>
329*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
330*67e74705SXin Li// CHECK-NEXT:          <array>
331*67e74705SXin Li// CHECK-NEXT:           <dict>
332*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>59</integer>
333*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>9</integer>
334*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
335*67e74705SXin Li// CHECK-NEXT:           </dict>
336*67e74705SXin Li// CHECK-NEXT:           <dict>
337*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>59</integer>
338*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>17</integer>
339*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
340*67e74705SXin Li// CHECK-NEXT:           </dict>
341*67e74705SXin Li// CHECK-NEXT:          </array>
342*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
343*67e74705SXin Li// CHECK-NEXT:          <array>
344*67e74705SXin Li// CHECK-NEXT:           <dict>
345*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>60</integer>
346*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>9</integer>
347*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
348*67e74705SXin Li// CHECK-NEXT:           </dict>
349*67e74705SXin Li// CHECK-NEXT:           <dict>
350*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>60</integer>
351*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>11</integer>
352*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
353*67e74705SXin Li// CHECK-NEXT:           </dict>
354*67e74705SXin Li// CHECK-NEXT:          </array>
355*67e74705SXin Li// CHECK-NEXT:        </dict>
356*67e74705SXin Li// CHECK-NEXT:       </array>
357*67e74705SXin Li// CHECK-NEXT:     </dict>
358*67e74705SXin Li// CHECK-NEXT:     <dict>
359*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
360*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
361*67e74705SXin Li// CHECK-NEXT:      <dict>
362*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>60</integer>
363*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>9</integer>
364*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
365*67e74705SXin Li// CHECK-NEXT:      </dict>
366*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
367*67e74705SXin Li// CHECK-NEXT:      <array>
368*67e74705SXin Li// CHECK-NEXT:        <array>
369*67e74705SXin Li// CHECK-NEXT:         <dict>
370*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>60</integer>
371*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>9</integer>
372*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
373*67e74705SXin Li// CHECK-NEXT:         </dict>
374*67e74705SXin Li// CHECK-NEXT:         <dict>
375*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>60</integer>
376*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>15</integer>
377*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
378*67e74705SXin Li// CHECK-NEXT:         </dict>
379*67e74705SXin Li// CHECK-NEXT:        </array>
380*67e74705SXin Li// CHECK-NEXT:      </array>
381*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>1</integer>
382*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
383*67e74705SXin Li// CHECK-NEXT:      <string>nil object reference stored to &apos;ref&apos;</string>
384*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
385*67e74705SXin Li// CHECK-NEXT:      <string>nil object reference stored to &apos;ref&apos;</string>
386*67e74705SXin Li// CHECK-NEXT:     </dict>
387*67e74705SXin Li// CHECK-NEXT:     <dict>
388*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
389*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
390*67e74705SXin Li// CHECK-NEXT:       <array>
391*67e74705SXin Li// CHECK-NEXT:        <dict>
392*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
393*67e74705SXin Li// CHECK-NEXT:          <array>
394*67e74705SXin Li// CHECK-NEXT:           <dict>
395*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>60</integer>
396*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>9</integer>
397*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
398*67e74705SXin Li// CHECK-NEXT:           </dict>
399*67e74705SXin Li// CHECK-NEXT:           <dict>
400*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>60</integer>
401*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>11</integer>
402*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
403*67e74705SXin Li// CHECK-NEXT:           </dict>
404*67e74705SXin Li// CHECK-NEXT:          </array>
405*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
406*67e74705SXin Li// CHECK-NEXT:          <array>
407*67e74705SXin Li// CHECK-NEXT:           <dict>
408*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>62</integer>
409*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
410*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
411*67e74705SXin Li// CHECK-NEXT:           </dict>
412*67e74705SXin Li// CHECK-NEXT:           <dict>
413*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>62</integer>
414*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
415*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
416*67e74705SXin Li// CHECK-NEXT:           </dict>
417*67e74705SXin Li// CHECK-NEXT:          </array>
418*67e74705SXin Li// CHECK-NEXT:        </dict>
419*67e74705SXin Li// CHECK-NEXT:       </array>
420*67e74705SXin Li// CHECK-NEXT:     </dict>
421*67e74705SXin Li// CHECK-NEXT:     <dict>
422*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
423*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
424*67e74705SXin Li// CHECK-NEXT:      <dict>
425*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>62</integer>
426*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>5</integer>
427*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
428*67e74705SXin Li// CHECK-NEXT:      </dict>
429*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
430*67e74705SXin Li// CHECK-NEXT:      <array>
431*67e74705SXin Li// CHECK-NEXT:        <array>
432*67e74705SXin Li// CHECK-NEXT:         <dict>
433*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>62</integer>
434*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>5</integer>
435*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
436*67e74705SXin Li// CHECK-NEXT:         </dict>
437*67e74705SXin Li// CHECK-NEXT:         <dict>
438*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>62</integer>
439*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>19</integer>
440*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
441*67e74705SXin Li// CHECK-NEXT:         </dict>
442*67e74705SXin Li// CHECK-NEXT:        </array>
443*67e74705SXin Li// CHECK-NEXT:      </array>
444*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>1</integer>
445*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
446*67e74705SXin Li// CHECK-NEXT:      <string>nil object reference stored to &apos;storeRef&apos;</string>
447*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
448*67e74705SXin Li// CHECK-NEXT:      <string>nil object reference stored to &apos;storeRef&apos;</string>
449*67e74705SXin Li// CHECK-NEXT:     </dict>
450*67e74705SXin Li// CHECK-NEXT:     <dict>
451*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
452*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
453*67e74705SXin Li// CHECK-NEXT:      <dict>
454*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>36</integer>
455*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>5</integer>
456*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
457*67e74705SXin Li// CHECK-NEXT:      </dict>
458*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
459*67e74705SXin Li// CHECK-NEXT:      <array>
460*67e74705SXin Li// CHECK-NEXT:        <array>
461*67e74705SXin Li// CHECK-NEXT:         <dict>
462*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>36</integer>
463*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>5</integer>
464*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
465*67e74705SXin Li// CHECK-NEXT:         </dict>
466*67e74705SXin Li// CHECK-NEXT:         <dict>
467*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>36</integer>
468*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>27</integer>
469*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
470*67e74705SXin Li// CHECK-NEXT:         </dict>
471*67e74705SXin Li// CHECK-NEXT:        </array>
472*67e74705SXin Li// CHECK-NEXT:      </array>
473*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>0</integer>
474*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
475*67e74705SXin Li// CHECK-NEXT:      <string>Returning from &apos;CreateRef&apos;</string>
476*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
477*67e74705SXin Li// CHECK-NEXT:      <string>Returning from &apos;CreateRef&apos;</string>
478*67e74705SXin Li// CHECK-NEXT:     </dict>
479*67e74705SXin Li// CHECK-NEXT:     <dict>
480*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
481*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
482*67e74705SXin Li// CHECK-NEXT:       <array>
483*67e74705SXin Li// CHECK-NEXT:        <dict>
484*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
485*67e74705SXin Li// CHECK-NEXT:          <array>
486*67e74705SXin Li// CHECK-NEXT:           <dict>
487*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>36</integer>
488*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
489*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
490*67e74705SXin Li// CHECK-NEXT:           </dict>
491*67e74705SXin Li// CHECK-NEXT:           <dict>
492*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>36</integer>
493*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>13</integer>
494*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
495*67e74705SXin Li// CHECK-NEXT:           </dict>
496*67e74705SXin Li// CHECK-NEXT:          </array>
497*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
498*67e74705SXin Li// CHECK-NEXT:          <array>
499*67e74705SXin Li// CHECK-NEXT:           <dict>
500*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>39</integer>
501*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
502*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
503*67e74705SXin Li// CHECK-NEXT:           </dict>
504*67e74705SXin Li// CHECK-NEXT:           <dict>
505*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>39</integer>
506*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>13</integer>
507*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
508*67e74705SXin Li// CHECK-NEXT:           </dict>
509*67e74705SXin Li// CHECK-NEXT:          </array>
510*67e74705SXin Li// CHECK-NEXT:        </dict>
511*67e74705SXin Li// CHECK-NEXT:       </array>
512*67e74705SXin Li// CHECK-NEXT:     </dict>
513*67e74705SXin Li// CHECK-NEXT:     <dict>
514*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
515*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
516*67e74705SXin Li// CHECK-NEXT:      <dict>
517*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>39</integer>
518*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>5</integer>
519*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
520*67e74705SXin Li// CHECK-NEXT:      </dict>
521*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
522*67e74705SXin Li// CHECK-NEXT:      <array>
523*67e74705SXin Li// CHECK-NEXT:        <array>
524*67e74705SXin Li// CHECK-NEXT:         <dict>
525*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>39</integer>
526*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>15</integer>
527*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
528*67e74705SXin Li// CHECK-NEXT:         </dict>
529*67e74705SXin Li// CHECK-NEXT:         <dict>
530*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>39</integer>
531*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>22</integer>
532*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
533*67e74705SXin Li// CHECK-NEXT:         </dict>
534*67e74705SXin Li// CHECK-NEXT:        </array>
535*67e74705SXin Li// CHECK-NEXT:      </array>
536*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>0</integer>
537*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
538*67e74705SXin Li// CHECK-NEXT:      <string>Null pointer argument in call to CFRelease</string>
539*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
540*67e74705SXin Li// CHECK-NEXT:      <string>Null pointer argument in call to CFRelease</string>
541*67e74705SXin Li// CHECK-NEXT:     </dict>
542*67e74705SXin Li// CHECK-NEXT:    </array>
543*67e74705SXin Li// CHECK-NEXT:    <key>description</key><string>Null pointer argument in call to CFRelease</string>
544*67e74705SXin Li// CHECK-NEXT:    <key>category</key><string>API Misuse (Apple)</string>
545*67e74705SXin Li// CHECK-NEXT:    <key>type</key><string>null passed to CF memory management function</string>
546*67e74705SXin Li// CHECK-NEXT:    <key>check_name</key><string>osx.coreFoundation.CFRetainRelease</string>
547*67e74705SXin Li// CHECK-NEXT:    <!-- This hash is experimental and going to change! -->
548*67e74705SXin Li// CHECK-NEXT:    <key>issue_hash_content_of_line_in_context</key><string>102c9a15c089fdc618a4c209bd5560bc</string>
549*67e74705SXin Li// CHECK-NEXT:   <key>issue_context_kind</key><string>Objective-C method</string>
550*67e74705SXin Li// CHECK-NEXT:   <key>issue_context</key><string>test</string>
551*67e74705SXin Li// CHECK-NEXT:   <key>issue_hash_function_offset</key><string>5</string>
552*67e74705SXin Li// CHECK-NEXT:   <key>location</key>
553*67e74705SXin Li// CHECK-NEXT:   <dict>
554*67e74705SXin Li// CHECK-NEXT:    <key>line</key><integer>39</integer>
555*67e74705SXin Li// CHECK-NEXT:    <key>col</key><integer>5</integer>
556*67e74705SXin Li// CHECK-NEXT:    <key>file</key><integer>0</integer>
557*67e74705SXin Li// CHECK-NEXT:   </dict>
558*67e74705SXin Li// CHECK-NEXT:   </dict>
559*67e74705SXin Li// CHECK-NEXT:   <dict>
560*67e74705SXin Li// CHECK-NEXT:    <key>path</key>
561*67e74705SXin Li// CHECK-NEXT:    <array>
562*67e74705SXin Li// CHECK-NEXT:     <dict>
563*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
564*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
565*67e74705SXin Li// CHECK-NEXT:      <dict>
566*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>44</integer>
567*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>5</integer>
568*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
569*67e74705SXin Li// CHECK-NEXT:      </dict>
570*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
571*67e74705SXin Li// CHECK-NEXT:      <array>
572*67e74705SXin Li// CHECK-NEXT:        <array>
573*67e74705SXin Li// CHECK-NEXT:         <dict>
574*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>44</integer>
575*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>5</integer>
576*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
577*67e74705SXin Li// CHECK-NEXT:         </dict>
578*67e74705SXin Li// CHECK-NEXT:         <dict>
579*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>44</integer>
580*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>30</integer>
581*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
582*67e74705SXin Li// CHECK-NEXT:         </dict>
583*67e74705SXin Li// CHECK-NEXT:        </array>
584*67e74705SXin Li// CHECK-NEXT:      </array>
585*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>0</integer>
586*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
587*67e74705SXin Li// CHECK-NEXT:      <string>&apos;storeRef&apos; declared without an initial value</string>
588*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
589*67e74705SXin Li// CHECK-NEXT:      <string>&apos;storeRef&apos; declared without an initial value</string>
590*67e74705SXin Li// CHECK-NEXT:     </dict>
591*67e74705SXin Li// CHECK-NEXT:     <dict>
592*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
593*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
594*67e74705SXin Li// CHECK-NEXT:       <array>
595*67e74705SXin Li// CHECK-NEXT:        <dict>
596*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
597*67e74705SXin Li// CHECK-NEXT:          <array>
598*67e74705SXin Li// CHECK-NEXT:           <dict>
599*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>44</integer>
600*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
601*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
602*67e74705SXin Li// CHECK-NEXT:           </dict>
603*67e74705SXin Li// CHECK-NEXT:           <dict>
604*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>44</integer>
605*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>21</integer>
606*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
607*67e74705SXin Li// CHECK-NEXT:           </dict>
608*67e74705SXin Li// CHECK-NEXT:          </array>
609*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
610*67e74705SXin Li// CHECK-NEXT:          <array>
611*67e74705SXin Li// CHECK-NEXT:           <dict>
612*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>45</integer>
613*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
614*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
615*67e74705SXin Li// CHECK-NEXT:           </dict>
616*67e74705SXin Li// CHECK-NEXT:           <dict>
617*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>45</integer>
618*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>18</integer>
619*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
620*67e74705SXin Li// CHECK-NEXT:           </dict>
621*67e74705SXin Li// CHECK-NEXT:          </array>
622*67e74705SXin Li// CHECK-NEXT:        </dict>
623*67e74705SXin Li// CHECK-NEXT:       </array>
624*67e74705SXin Li// CHECK-NEXT:     </dict>
625*67e74705SXin Li// CHECK-NEXT:     <dict>
626*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
627*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
628*67e74705SXin Li// CHECK-NEXT:      <dict>
629*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>45</integer>
630*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>5</integer>
631*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
632*67e74705SXin Li// CHECK-NEXT:      </dict>
633*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
634*67e74705SXin Li// CHECK-NEXT:      <array>
635*67e74705SXin Li// CHECK-NEXT:        <array>
636*67e74705SXin Li// CHECK-NEXT:         <dict>
637*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>45</integer>
638*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>5</integer>
639*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
640*67e74705SXin Li// CHECK-NEXT:         </dict>
641*67e74705SXin Li// CHECK-NEXT:         <dict>
642*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>45</integer>
643*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>32</integer>
644*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
645*67e74705SXin Li// CHECK-NEXT:         </dict>
646*67e74705SXin Li// CHECK-NEXT:        </array>
647*67e74705SXin Li// CHECK-NEXT:      </array>
648*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>0</integer>
649*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
650*67e74705SXin Li// CHECK-NEXT:      <string>Calling &apos;CreateRefUndef&apos;</string>
651*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
652*67e74705SXin Li// CHECK-NEXT:      <string>Calling &apos;CreateRefUndef&apos;</string>
653*67e74705SXin Li// CHECK-NEXT:     </dict>
654*67e74705SXin Li// CHECK-NEXT:     <dict>
655*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
656*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
657*67e74705SXin Li// CHECK-NEXT:      <dict>
658*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>65</integer>
659*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>1</integer>
660*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
661*67e74705SXin Li// CHECK-NEXT:      </dict>
662*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>1</integer>
663*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
664*67e74705SXin Li// CHECK-NEXT:      <string>Entered call from &apos;test2&apos;</string>
665*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
666*67e74705SXin Li// CHECK-NEXT:      <string>Entered call from &apos;test2&apos;</string>
667*67e74705SXin Li// CHECK-NEXT:     </dict>
668*67e74705SXin Li// CHECK-NEXT:     <dict>
669*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
670*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
671*67e74705SXin Li// CHECK-NEXT:       <array>
672*67e74705SXin Li// CHECK-NEXT:        <dict>
673*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
674*67e74705SXin Li// CHECK-NEXT:          <array>
675*67e74705SXin Li// CHECK-NEXT:           <dict>
676*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>65</integer>
677*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>1</integer>
678*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
679*67e74705SXin Li// CHECK-NEXT:           </dict>
680*67e74705SXin Li// CHECK-NEXT:           <dict>
681*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>65</integer>
682*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>6</integer>
683*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
684*67e74705SXin Li// CHECK-NEXT:           </dict>
685*67e74705SXin Li// CHECK-NEXT:          </array>
686*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
687*67e74705SXin Li// CHECK-NEXT:          <array>
688*67e74705SXin Li// CHECK-NEXT:           <dict>
689*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>66</integer>
690*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>3</integer>
691*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
692*67e74705SXin Li// CHECK-NEXT:           </dict>
693*67e74705SXin Li// CHECK-NEXT:           <dict>
694*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>66</integer>
695*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>10</integer>
696*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
697*67e74705SXin Li// CHECK-NEXT:           </dict>
698*67e74705SXin Li// CHECK-NEXT:          </array>
699*67e74705SXin Li// CHECK-NEXT:        </dict>
700*67e74705SXin Li// CHECK-NEXT:       </array>
701*67e74705SXin Li// CHECK-NEXT:     </dict>
702*67e74705SXin Li// CHECK-NEXT:     <dict>
703*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
704*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
705*67e74705SXin Li// CHECK-NEXT:       <array>
706*67e74705SXin Li// CHECK-NEXT:        <dict>
707*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
708*67e74705SXin Li// CHECK-NEXT:          <array>
709*67e74705SXin Li// CHECK-NEXT:           <dict>
710*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>66</integer>
711*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>3</integer>
712*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
713*67e74705SXin Li// CHECK-NEXT:           </dict>
714*67e74705SXin Li// CHECK-NEXT:           <dict>
715*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>66</integer>
716*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>10</integer>
717*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
718*67e74705SXin Li// CHECK-NEXT:           </dict>
719*67e74705SXin Li// CHECK-NEXT:          </array>
720*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
721*67e74705SXin Li// CHECK-NEXT:          <array>
722*67e74705SXin Li// CHECK-NEXT:           <dict>
723*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>68</integer>
724*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>3</integer>
725*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
726*67e74705SXin Li// CHECK-NEXT:           </dict>
727*67e74705SXin Li// CHECK-NEXT:           <dict>
728*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>68</integer>
729*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>4</integer>
730*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
731*67e74705SXin Li// CHECK-NEXT:           </dict>
732*67e74705SXin Li// CHECK-NEXT:          </array>
733*67e74705SXin Li// CHECK-NEXT:        </dict>
734*67e74705SXin Li// CHECK-NEXT:       </array>
735*67e74705SXin Li// CHECK-NEXT:     </dict>
736*67e74705SXin Li// CHECK-NEXT:     <dict>
737*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
738*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
739*67e74705SXin Li// CHECK-NEXT:       <array>
740*67e74705SXin Li// CHECK-NEXT:        <dict>
741*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
742*67e74705SXin Li// CHECK-NEXT:          <array>
743*67e74705SXin Li// CHECK-NEXT:           <dict>
744*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>68</integer>
745*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>3</integer>
746*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
747*67e74705SXin Li// CHECK-NEXT:           </dict>
748*67e74705SXin Li// CHECK-NEXT:           <dict>
749*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>68</integer>
750*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>4</integer>
751*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
752*67e74705SXin Li// CHECK-NEXT:           </dict>
753*67e74705SXin Li// CHECK-NEXT:          </array>
754*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
755*67e74705SXin Li// CHECK-NEXT:          <array>
756*67e74705SXin Li// CHECK-NEXT:           <dict>
757*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>68</integer>
758*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>7</integer>
759*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
760*67e74705SXin Li// CHECK-NEXT:           </dict>
761*67e74705SXin Li// CHECK-NEXT:           <dict>
762*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>68</integer>
763*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>9</integer>
764*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
765*67e74705SXin Li// CHECK-NEXT:           </dict>
766*67e74705SXin Li// CHECK-NEXT:          </array>
767*67e74705SXin Li// CHECK-NEXT:        </dict>
768*67e74705SXin Li// CHECK-NEXT:       </array>
769*67e74705SXin Li// CHECK-NEXT:     </dict>
770*67e74705SXin Li// CHECK-NEXT:     <dict>
771*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
772*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
773*67e74705SXin Li// CHECK-NEXT:      <dict>
774*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>68</integer>
775*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>7</integer>
776*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
777*67e74705SXin Li// CHECK-NEXT:      </dict>
778*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
779*67e74705SXin Li// CHECK-NEXT:      <array>
780*67e74705SXin Li// CHECK-NEXT:        <array>
781*67e74705SXin Li// CHECK-NEXT:         <dict>
782*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>68</integer>
783*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>7</integer>
784*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
785*67e74705SXin Li// CHECK-NEXT:         </dict>
786*67e74705SXin Li// CHECK-NEXT:         <dict>
787*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>68</integer>
788*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>9</integer>
789*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
790*67e74705SXin Li// CHECK-NEXT:         </dict>
791*67e74705SXin Li// CHECK-NEXT:        </array>
792*67e74705SXin Li// CHECK-NEXT:      </array>
793*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>1</integer>
794*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
795*67e74705SXin Li// CHECK-NEXT:      <string>Assuming &apos;err&apos; is not equal to 0</string>
796*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
797*67e74705SXin Li// CHECK-NEXT:      <string>Assuming &apos;err&apos; is not equal to 0</string>
798*67e74705SXin Li// CHECK-NEXT:     </dict>
799*67e74705SXin Li// CHECK-NEXT:     <dict>
800*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
801*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
802*67e74705SXin Li// CHECK-NEXT:       <array>
803*67e74705SXin Li// CHECK-NEXT:        <dict>
804*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
805*67e74705SXin Li// CHECK-NEXT:          <array>
806*67e74705SXin Li// CHECK-NEXT:           <dict>
807*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>68</integer>
808*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>7</integer>
809*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
810*67e74705SXin Li// CHECK-NEXT:           </dict>
811*67e74705SXin Li// CHECK-NEXT:           <dict>
812*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>68</integer>
813*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>9</integer>
814*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
815*67e74705SXin Li// CHECK-NEXT:           </dict>
816*67e74705SXin Li// CHECK-NEXT:          </array>
817*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
818*67e74705SXin Li// CHECK-NEXT:          <array>
819*67e74705SXin Li// CHECK-NEXT:           <dict>
820*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>71</integer>
821*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
822*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
823*67e74705SXin Li// CHECK-NEXT:           </dict>
824*67e74705SXin Li// CHECK-NEXT:           <dict>
825*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>71</integer>
826*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>13</integer>
827*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
828*67e74705SXin Li// CHECK-NEXT:           </dict>
829*67e74705SXin Li// CHECK-NEXT:          </array>
830*67e74705SXin Li// CHECK-NEXT:        </dict>
831*67e74705SXin Li// CHECK-NEXT:       </array>
832*67e74705SXin Li// CHECK-NEXT:     </dict>
833*67e74705SXin Li// CHECK-NEXT:     <dict>
834*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
835*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
836*67e74705SXin Li// CHECK-NEXT:      <dict>
837*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>45</integer>
838*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>5</integer>
839*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
840*67e74705SXin Li// CHECK-NEXT:      </dict>
841*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
842*67e74705SXin Li// CHECK-NEXT:      <array>
843*67e74705SXin Li// CHECK-NEXT:        <array>
844*67e74705SXin Li// CHECK-NEXT:         <dict>
845*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>45</integer>
846*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>5</integer>
847*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
848*67e74705SXin Li// CHECK-NEXT:         </dict>
849*67e74705SXin Li// CHECK-NEXT:         <dict>
850*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>45</integer>
851*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>32</integer>
852*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
853*67e74705SXin Li// CHECK-NEXT:         </dict>
854*67e74705SXin Li// CHECK-NEXT:        </array>
855*67e74705SXin Li// CHECK-NEXT:      </array>
856*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>0</integer>
857*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
858*67e74705SXin Li// CHECK-NEXT:      <string>Returning from &apos;CreateRefUndef&apos;</string>
859*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
860*67e74705SXin Li// CHECK-NEXT:      <string>Returning from &apos;CreateRefUndef&apos;</string>
861*67e74705SXin Li// CHECK-NEXT:     </dict>
862*67e74705SXin Li// CHECK-NEXT:     <dict>
863*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>control</string>
864*67e74705SXin Li// CHECK-NEXT:      <key>edges</key>
865*67e74705SXin Li// CHECK-NEXT:       <array>
866*67e74705SXin Li// CHECK-NEXT:        <dict>
867*67e74705SXin Li// CHECK-NEXT:         <key>start</key>
868*67e74705SXin Li// CHECK-NEXT:          <array>
869*67e74705SXin Li// CHECK-NEXT:           <dict>
870*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>45</integer>
871*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
872*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
873*67e74705SXin Li// CHECK-NEXT:           </dict>
874*67e74705SXin Li// CHECK-NEXT:           <dict>
875*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>45</integer>
876*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>18</integer>
877*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
878*67e74705SXin Li// CHECK-NEXT:           </dict>
879*67e74705SXin Li// CHECK-NEXT:          </array>
880*67e74705SXin Li// CHECK-NEXT:         <key>end</key>
881*67e74705SXin Li// CHECK-NEXT:          <array>
882*67e74705SXin Li// CHECK-NEXT:           <dict>
883*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>48</integer>
884*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>5</integer>
885*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
886*67e74705SXin Li// CHECK-NEXT:           </dict>
887*67e74705SXin Li// CHECK-NEXT:           <dict>
888*67e74705SXin Li// CHECK-NEXT:            <key>line</key><integer>48</integer>
889*67e74705SXin Li// CHECK-NEXT:            <key>col</key><integer>13</integer>
890*67e74705SXin Li// CHECK-NEXT:            <key>file</key><integer>0</integer>
891*67e74705SXin Li// CHECK-NEXT:           </dict>
892*67e74705SXin Li// CHECK-NEXT:          </array>
893*67e74705SXin Li// CHECK-NEXT:        </dict>
894*67e74705SXin Li// CHECK-NEXT:       </array>
895*67e74705SXin Li// CHECK-NEXT:     </dict>
896*67e74705SXin Li// CHECK-NEXT:     <dict>
897*67e74705SXin Li// CHECK-NEXT:      <key>kind</key><string>event</string>
898*67e74705SXin Li// CHECK-NEXT:      <key>location</key>
899*67e74705SXin Li// CHECK-NEXT:      <dict>
900*67e74705SXin Li// CHECK-NEXT:       <key>line</key><integer>48</integer>
901*67e74705SXin Li// CHECK-NEXT:       <key>col</key><integer>5</integer>
902*67e74705SXin Li// CHECK-NEXT:       <key>file</key><integer>0</integer>
903*67e74705SXin Li// CHECK-NEXT:      </dict>
904*67e74705SXin Li// CHECK-NEXT:      <key>ranges</key>
905*67e74705SXin Li// CHECK-NEXT:      <array>
906*67e74705SXin Li// CHECK-NEXT:        <array>
907*67e74705SXin Li// CHECK-NEXT:         <dict>
908*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>48</integer>
909*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>15</integer>
910*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
911*67e74705SXin Li// CHECK-NEXT:         </dict>
912*67e74705SXin Li// CHECK-NEXT:         <dict>
913*67e74705SXin Li// CHECK-NEXT:          <key>line</key><integer>48</integer>
914*67e74705SXin Li// CHECK-NEXT:          <key>col</key><integer>22</integer>
915*67e74705SXin Li// CHECK-NEXT:          <key>file</key><integer>0</integer>
916*67e74705SXin Li// CHECK-NEXT:         </dict>
917*67e74705SXin Li// CHECK-NEXT:        </array>
918*67e74705SXin Li// CHECK-NEXT:      </array>
919*67e74705SXin Li// CHECK-NEXT:      <key>depth</key><integer>0</integer>
920*67e74705SXin Li// CHECK-NEXT:      <key>extended_message</key>
921*67e74705SXin Li// CHECK-NEXT:      <string>Function call argument is an uninitialized value</string>
922*67e74705SXin Li// CHECK-NEXT:      <key>message</key>
923*67e74705SXin Li// CHECK-NEXT:      <string>Function call argument is an uninitialized value</string>
924*67e74705SXin Li// CHECK-NEXT:     </dict>
925*67e74705SXin Li// CHECK-NEXT:    </array>
926*67e74705SXin Li// CHECK-NEXT:    <key>description</key><string>Function call argument is an uninitialized value</string>
927*67e74705SXin Li// CHECK-NEXT:    <key>category</key><string>Logic error</string>
928*67e74705SXin Li// CHECK-NEXT:    <key>type</key><string>Uninitialized argument value</string>
929*67e74705SXin Li// CHECK-NEXT:    <key>check_name</key><string>core.CallAndMessage</string>
930*67e74705SXin Li// CHECK-NEXT:    <!-- This hash is experimental and going to change! -->
931*67e74705SXin Li// CHECK-NEXT:    <key>issue_hash_content_of_line_in_context</key><string>fe2bb14813e15196c0180196fc1cce4c</string>
932*67e74705SXin Li// CHECK-NEXT:   <key>issue_context_kind</key><string>Objective-C method</string>
933*67e74705SXin Li// CHECK-NEXT:   <key>issue_context</key><string>test2</string>
934*67e74705SXin Li// CHECK-NEXT:   <key>issue_hash_function_offset</key><string>5</string>
935*67e74705SXin Li// CHECK-NEXT:   <key>location</key>
936*67e74705SXin Li// CHECK-NEXT:   <dict>
937*67e74705SXin Li// CHECK-NEXT:    <key>line</key><integer>48</integer>
938*67e74705SXin Li// CHECK-NEXT:    <key>col</key><integer>5</integer>
939*67e74705SXin Li// CHECK-NEXT:    <key>file</key><integer>0</integer>
940*67e74705SXin Li// CHECK-NEXT:   </dict>
941*67e74705SXin Li// CHECK-NEXT:   </dict>
942*67e74705SXin Li// CHECK-NEXT:  </array>
943