| // RUN: %clang_analyze_cc1 -analyzer-checker=core,osx -analyzer-output=text -verify %s | 
 | // RUN: %clang_analyze_cc1 -analyzer-checker=core,osx -analyzer-output=plist-multi-file %s -o %t.plist | 
 | // RUN: FileCheck --input-file=%t.plist %s | 
 |  | 
 | typedef signed char BOOL; | 
 | @protocol NSObject  - (BOOL)isEqual:(id)object; @end | 
 | @interface NSObject <NSObject> {} | 
 | +(id)alloc; | 
 | +(id)new; | 
 | -(id)init; | 
 | -(id)autorelease; | 
 | -(id)copy; | 
 | - (Class)class; | 
 | -(id)retain; | 
 | @end | 
 | typedef const void * CFTypeRef; | 
 | extern void CFRelease(CFTypeRef cf); | 
 |  | 
 | @interface Cell : NSObject | 
 | - (void)test; | 
 | @end | 
 |  | 
 | @interface SpecialString | 
 | + (id)alloc; | 
 | - (oneway void)release; | 
 | @end | 
 |  | 
 | typedef SpecialString* SCDynamicStoreRef; | 
 | static void CreateRef(SCDynamicStoreRef *storeRef, unsigned x); | 
 | static void CreateRefUndef(SCDynamicStoreRef *storeRef, unsigned x); | 
 | SCDynamicStoreRef anotherCreateRef(unsigned *err, unsigned x); | 
 |  | 
 | @implementation Cell | 
 | - (void) test { | 
 |     SCDynamicStoreRef storeRef = 0; | 
 |     CreateRef(&storeRef, 4);  | 
 |                              //expected-note@-1{{Calling 'CreateRef'}} | 
 |                              //expected-note@-2{{Returning from 'CreateRef'}} | 
 |     CFRelease(storeRef); //expected-warning {{Null pointer argument in call to CFRelease}} | 
 |                          //expected-note@-1{{Null pointer argument in call to CFRelease}} | 
 | } | 
 |  | 
 | - (void)test2 { | 
 |     SCDynamicStoreRef storeRef; // expected-note {{'storeRef' declared without an initial value}} | 
 |     CreateRefUndef(&storeRef, 4); | 
 |                              //expected-note@-1{{Calling 'CreateRefUndef'}} | 
 |                              //expected-note@-2{{Returning from 'CreateRefUndef'}} | 
 |     CFRelease(storeRef); //expected-warning {{1st function call argument is an uninitialized value}} | 
 |                          //expected-note@-1{{1st function call argument is an uninitialized value}} | 
 | } | 
 | @end | 
 |  | 
 | static void CreateRef(SCDynamicStoreRef *storeRef, unsigned x) { | 
 |     unsigned err = 0; | 
 |     SCDynamicStoreRef ref = anotherCreateRef(&err, x); | 
 |     if (err) {  | 
 |                //expected-note@-1{{Assuming 'err' is not equal to 0}} | 
 |                //expected-note@-2{{Taking true branch}} | 
 |         CFRelease(ref); | 
 |         ref = 0; // expected-note{{nil object reference stored to 'ref'}} | 
 |     } | 
 |     *storeRef = ref; // expected-note{{nil object reference stored to 'storeRef'}} | 
 | } | 
 |  | 
 | static void CreateRefUndef(SCDynamicStoreRef *storeRef, unsigned x) { | 
 |   unsigned err = 0; | 
 |   SCDynamicStoreRef ref = anotherCreateRef(&err, x); | 
 |   if (err) { | 
 |              //expected-note@-1{{Assuming 'err' is not equal to 0}} | 
 |              //expected-note@-2{{Taking true branch}} | 
 |     CFRelease(ref); | 
 |     return; // expected-note{{Returning without writing to '*storeRef'}} | 
 |   } | 
 |   *storeRef = ref; | 
 | } | 
 |  | 
 | // CHECK:  <key>diagnostics</key> | 
 | // CHECK-NEXT:  <array> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>path</key> | 
 | // CHECK-NEXT:    <array> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>35</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>35</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>21</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>36</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>36</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>13</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>36</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>36</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>36</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>27</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Calling 'CreateRef'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Calling 'CreateRef'</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>53</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>1</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Entered call from 'test'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Entered call from 'test'</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>53</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>1</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>53</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>6</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>54</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>54</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>12</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>54</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>54</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>12</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>6</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>6</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>11</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>11</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Assuming 'err' is not equal to 0</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Assuming 'err' is not equal to 0</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>56</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>11</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>59</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>59</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>17</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>59</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>59</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>17</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>60</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>60</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>11</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>60</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>60</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>60</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>15</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>nil object reference stored to 'ref'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>nil object reference stored to 'ref'</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>60</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>60</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>11</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>62</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>62</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>62</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>62</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>62</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>19</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>nil object reference stored to 'storeRef'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>nil object reference stored to 'storeRef'</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>36</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>36</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>36</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>27</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Returning from 'CreateRef'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Returning from 'CreateRef'</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>36</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>36</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>13</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>39</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>39</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>13</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>39</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>39</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>15</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>39</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>22</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Null pointer argument in call to CFRelease</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Null pointer argument in call to CFRelease</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:    </array> | 
 | // CHECK-NEXT:    <key>description</key><string>Null pointer argument in call to CFRelease</string> | 
 | // CHECK-NEXT:    <key>category</key><string>API Misuse (Apple)</string> | 
 | // CHECK-NEXT:    <key>type</key><string>null passed to CF memory management function</string> | 
 | // CHECK-NEXT:    <key>check_name</key><string>osx.coreFoundation.CFRetainRelease</string> | 
 | // CHECK-NEXT:    <!-- This hash is experimental and going to change! --> | 
 | // CHECK-NEXT:    <key>issue_hash_content_of_line_in_context</key><string>102c9a15c089fdc618a4c209bd5560bc</string> | 
 | // CHECK-NEXT:   <key>issue_context_kind</key><string>Objective-C method</string> | 
 | // CHECK-NEXT:   <key>issue_context</key><string>test</string> | 
 | // CHECK-NEXT:   <key>issue_hash_function_offset</key><string>5</string> | 
 | // CHECK-NEXT:   <key>location</key> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>line</key><integer>39</integer> | 
 | // CHECK-NEXT:    <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:    <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:   </dict> | 
 | // CHECK-NEXT:   </dict> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>path</key> | 
 | // CHECK-NEXT:    <array> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>44</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>44</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>44</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>30</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>'storeRef' declared without an initial value</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>'storeRef' declared without an initial value</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>44</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>44</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>21</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>45</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>45</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>18</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>45</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>45</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>45</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>32</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Calling 'CreateRefUndef'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Calling 'CreateRefUndef'</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>65</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>1</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Entered call from 'test2'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Entered call from 'test2'</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>65</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>1</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>65</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>6</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>66</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>66</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>10</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>66</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>66</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>10</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>4</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>4</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>7</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>7</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>7</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Assuming 'err' is not equal to 0</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Assuming 'err' is not equal to 0</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>7</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>68</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>9</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>71</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>71</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>13</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>71</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>71</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>13</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>10</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>10</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>10</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Returning without writing to '*storeRef'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Returning without writing to '*storeRef'</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>10</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>72</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>10</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>45</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>45</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>45</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>32</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Returning from 'CreateRefUndef'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Returning from 'CreateRefUndef'</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>control</string> | 
 | // CHECK-NEXT:      <key>edges</key> | 
 | // CHECK-NEXT:       <array> | 
 | // CHECK-NEXT:        <dict> | 
 | // CHECK-NEXT:         <key>start</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>45</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>45</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>18</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>48</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>48</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>13</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:          </array> | 
 | // CHECK-NEXT:        </dict> | 
 | // CHECK-NEXT:       </array> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:     <dict> | 
 | // CHECK-NEXT:      <key>kind</key><string>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>48</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:       <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:      </dict> | 
 | // CHECK-NEXT:      <key>ranges</key> | 
 | // CHECK-NEXT:      <array> | 
 | // CHECK-NEXT:        <array> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>48</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>15</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>48</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>22</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:        </array> | 
 | // CHECK-NEXT:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>1st function call argument is an uninitialized value</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>1st function call argument is an uninitialized value</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:    </array> | 
 | // CHECK-NEXT:    <key>description</key><string>1st function call argument is an uninitialized value</string> | 
 | // CHECK-NEXT:    <key>category</key><string>Logic error</string> | 
 | // CHECK-NEXT:    <key>type</key><string>Uninitialized argument value</string> | 
 | // CHECK-NEXT:    <key>check_name</key><string>core.CallAndMessage</string> | 
 | // CHECK-NEXT:    <!-- This hash is experimental and going to change! --> | 
 | // CHECK-NEXT:    <key>issue_hash_content_of_line_in_context</key><string>fe2bb14813e15196c0180196fc1cce4c</string> | 
 | // CHECK-NEXT:   <key>issue_context_kind</key><string>Objective-C method</string> | 
 | // CHECK-NEXT:   <key>issue_context</key><string>test2</string> | 
 | // CHECK-NEXT:   <key>issue_hash_function_offset</key><string>5</string> | 
 | // CHECK-NEXT:   <key>location</key> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>line</key><integer>48</integer> | 
 | // CHECK-NEXT:    <key>col</key><integer>5</integer> | 
 | // CHECK-NEXT:    <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:   </dict> | 
 | // CHECK-NEXT:   </dict> | 
 | // CHECK-NEXT:  </array> |