| // RUN: %clang --analyze %s -fblocks -Xanalyzer -analyzer-output=text -Xanalyzer -analyzer-config -Xanalyzer suppress-null-return-paths=false -Xclang -verify %s | 
 | // RUN: %clang --analyze %s -fblocks -Xanalyzer -analyzer-config -Xanalyzer suppress-null-return-paths=false -o %t | 
 | // RUN: FileCheck -input-file %t %s | 
 |  | 
 | // <rdar://problem/10967815> | 
 | void mmm(int y) { | 
 |   if (y != 0) | 
 |     y++; | 
 | } | 
 |  | 
 | int foo(int x, int y) { | 
 |   mmm(y); | 
 |   if (x != 0) { | 
 |     // expected-note@-1 {{Assuming 'x' is equal to 0}} | 
 |     // expected-note@-2 {{Taking false branch}} | 
 |     x++; | 
 |   } | 
 |   return 5/x; // expected-warning{{Division by zero}} expected-note{{Division by zero}} | 
 | } | 
 |  | 
 | // Test a bug triggering only when inlined. | 
 | void has_bug(int *p) { | 
 |   *p = 0xDEADBEEF; // expected-warning{{Dereference of null pointer (loaded from variable 'p')}} expected-note{{Dereference of null pointer (loaded from variable 'p')}} | 
 | } | 
 |  | 
 | void test_has_bug() { | 
 |   has_bug(0); | 
 |   // expected-note@-1 {{Passing null pointer value via 1st parameter 'p'}} | 
 |   // expected-note@-2 {{Calling 'has_bug'}} | 
 | } | 
 |  | 
 | void triggers_bug(int *p) { | 
 |   *p = 0xDEADBEEF; // expected-warning{{Dereference of null pointer (loaded from variable 'p')}} expected-note{{Dereference of null pointer (loaded from variable 'p')}} | 
 | } | 
 |  | 
 | // This function triggers a bug by calling triggers_bug().  The diagnostics | 
 | // should show when p is assumed to be null. | 
 | void bar(int *p) { | 
 |   if (!!p) { | 
 |     // expected-note@-1 {{Assuming 'p' is null}} | 
 |     // expected-note@-2 {{Taking false branch}} | 
 |     return; | 
 |   } | 
 |    | 
 |   if (p == 0) { | 
 |     // expected-note@-1 {{Taking true branch}} | 
 |     triggers_bug(p); | 
 |     // expected-note@-1 {{Passing null pointer value via 1st parameter 'p'}} | 
 |     // expected-note@-2 {{Calling 'triggers_bug'}} | 
 |   } | 
 | } | 
 |  | 
 | // ========================================================================== // | 
 | // Test inlining of blocks. | 
 | // ========================================================================== // | 
 |  | 
 | void test_block__capture_null() { | 
 |   int *p = 0; // expected-note{{Variable 'p' initialized to a null pointer value}} | 
 |   ^(){ // expected-note {{Calling anonymous block}} | 
 |     *p = 1; // expected-warning{{Dereference of null pointer (loaded from variable 'p')}} expected-note{{Dereference of null pointer (loaded from variable 'p')}} | 
 |   }(); | 
 |    | 
 | } | 
 |  | 
 | void test_block_ret() { | 
 |   int *p = ^(){ // expected-note {{Calling anonymous block}} expected-note{{Returning to caller}} expected-note {{Variable 'p' initialized to a null pointer value}} | 
 |     int *q = 0; // expected-note {{Variable 'q' initialized to a null pointer value}} | 
 |     return q; // expected-note {{Returning null pointer (loaded from 'q')}} | 
 |   }(); | 
 |   *p = 1; // expected-warning{{Dereference of null pointer (loaded from variable 'p')}} expected-note{{Dereference of null pointer (loaded from variable 'p')}} | 
 | } | 
 |  | 
 | void test_block_blockvar() { | 
 |   __block int *p; | 
 |   ^(){ // expected-note{{Calling anonymous block}} expected-note{{Returning to caller}} | 
 |     p = 0; // expected-note{{Null pointer value stored to 'p'}} | 
 |   }(); | 
 |   *p = 1; // expected-warning{{Dereference of null pointer (loaded from variable 'p')}} expected-note{{Dereference of null pointer (loaded from variable 'p')}} | 
 | } | 
 |  | 
 | void test_block_arg() { | 
 |   int *p; | 
 |   ^(int **q){ // expected-note{{Calling anonymous block}} expected-note{{Returning to caller}} | 
 |     *q = 0; // expected-note{{Null pointer value stored to 'p'}} | 
 |   }(&p); | 
 |   *p = 1; // expected-warning{{Dereference of null pointer (loaded from variable 'p')}} expected-note{{Dereference of null pointer (loaded from variable 'p')}} | 
 | } | 
 |  | 
 | // 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>12</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>12</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:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>13</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>13</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>13</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>13</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>13</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>13</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>7</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>13</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>13</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>13</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Assuming 'x' is equal to 0</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Assuming 'x' is 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>13</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>13</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>7</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>18</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>18</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>8</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>18</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>18</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>8</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>18</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>10</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>18</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>18</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>10</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>18</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>10</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>18</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Division by zero</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Division by zero</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:    </array> | 
 | // CHECK-NEXT:    <key>description</key><string>Division by zero</string> | 
 | // CHECK-NEXT:    <key>category</key><string>Logic error</string> | 
 | // CHECK-NEXT:    <key>type</key><string>Division by zero</string> | 
 | // CHECK-NEXT:   <key>issue_context_kind</key><string>function</string> | 
 | // CHECK-NEXT:   <key>issue_context</key><string>foo</string> | 
 | // CHECK-NEXT:   <key>issue_hash</key><integer>7</integer> | 
 | // CHECK-NEXT:   <key>location</key> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>line</key><integer>18</integer> | 
 | // CHECK-NEXT:    <key>col</key><integer>10</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>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>27</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>27</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>27</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>11</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>27</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>27</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>11</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>27</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>11</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>27</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>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Passing null pointer value via 1st parameter 'p'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Passing null pointer value via 1st parameter 'p'</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>27</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>27</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>27</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Calling 'has_bug'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Calling 'has_bug'</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>22</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_has_bug'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Entered call from 'test_has_bug'</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>22</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>22</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>23</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>23</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>23</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>23</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>4</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>23</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:    </array> | 
 | // CHECK-NEXT:    <key>description</key><string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:    <key>category</key><string>Logic error</string> | 
 | // CHECK-NEXT:    <key>type</key><string>Dereference of null pointer</string> | 
 | // CHECK-NEXT:   <key>issue_context_kind</key><string>function</string> | 
 | // CHECK-NEXT:   <key>issue_context</key><string>has_bug</string> | 
 | // CHECK-NEXT:   <key>issue_hash</key><integer>1</integer> | 
 | // CHECK-NEXT:   <key>location</key> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>line</key><integer>23</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:   <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>39</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>39</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>39</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>8</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>8</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>8</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>8</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>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>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Assuming 'p' is null</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Assuming 'p' is null</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>39</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>8</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>8</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>3</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>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>45</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>45</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>47</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>47</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>16</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>47</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>47</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>16</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>47</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>18</integer> | 
 | // CHECK-NEXT:            <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:           </dict> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>47</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>47</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>18</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>47</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>18</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>47</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Passing null pointer value via 1st parameter 'p'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Passing null pointer value via 1st parameter 'p'</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>47</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>47</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>47</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>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Calling 'triggers_bug'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Calling 'triggers_bug'</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>32</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 'bar'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Entered call from 'bar'</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>32</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>32</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>33</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>33</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>33</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>33</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>4</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>33</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:    </array> | 
 | // CHECK-NEXT:    <key>description</key><string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:    <key>category</key><string>Logic error</string> | 
 | // CHECK-NEXT:    <key>type</key><string>Dereference of null pointer</string> | 
 | // CHECK-NEXT:   <key>issue_context_kind</key><string>function</string> | 
 | // CHECK-NEXT:   <key>issue_context</key><string>triggers_bug</string> | 
 | // CHECK-NEXT:   <key>issue_hash</key><integer>1</integer> | 
 | // CHECK-NEXT:   <key>location</key> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>line</key><integer>33</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:   <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>58</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>58</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>58</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>8</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>Variable 'p' initialized to a null pointer value</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Variable 'p' initialized to a null pointer 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>58</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>58</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:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>59</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>59</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>59</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>59</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>61</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Calling anonymous block</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Calling anonymous block</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>59</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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_block__capture_null'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Entered call from 'test_block__capture_null'</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>59</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>59</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>5</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>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>60</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>60</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>6</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>6</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>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:    </array> | 
 | // CHECK-NEXT:    <key>description</key><string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:    <key>category</key><string>Logic error</string> | 
 | // CHECK-NEXT:    <key>type</key><string>Dereference of null pointer</string> | 
 | // CHECK-NEXT:   <key>location</key> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>line</key><integer>60</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>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>5</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>12</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>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>event</string> | 
 | // CHECK-NEXT:      <key>location</key> | 
 | // CHECK-NEXT:      <dict> | 
 | // CHECK-NEXT:       <key>line</key><integer>66</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>12</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>66</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>12</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>69</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Calling anonymous block</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Calling anonymous block</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>66</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>12</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_block_ret'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Entered call from 'test_block_ret'</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>66</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>12</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>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>67</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>67</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>7</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>67</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>67</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>67</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Variable 'q' initialized to a null pointer value</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Variable 'q' initialized to a null pointer 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>67</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>67</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>7</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>5</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>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>68</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>68</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>68</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Returning null pointer (loaded from 'q')</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Returning null pointer (loaded from 'q')</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>66</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>12</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>66</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>12</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>69</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Returning to caller</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Returning to caller</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>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>5</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>12</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>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>66</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>12</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>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>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>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>66</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>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>8</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>Variable 'p' initialized to a null pointer value</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Variable 'p' initialized to a null pointer 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>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>5</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>70</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>70</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>70</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>70</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>4</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>70</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:    </array> | 
 | // CHECK-NEXT:    <key>description</key><string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:    <key>category</key><string>Logic error</string> | 
 | // CHECK-NEXT:    <key>type</key><string>Dereference of null pointer</string> | 
 | // CHECK-NEXT:   <key>issue_context_kind</key><string>function</string> | 
 | // CHECK-NEXT:   <key>issue_context</key><string>test_block_ret</string> | 
 | // CHECK-NEXT:   <key>issue_hash</key><integer>5</integer> | 
 | // CHECK-NEXT:   <key>location</key> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>line</key><integer>70</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:   <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>74</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>74</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>75</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>75</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>75</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>75</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>77</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Calling anonymous block</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Calling anonymous block</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>75</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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_block_blockvar'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Entered call from 'test_block_blockvar'</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>75</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>75</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>76</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>76</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>76</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>76</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>76</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>Null pointer value stored to 'p'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Null pointer value stored to 'p'</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>75</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>75</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>77</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Returning to caller</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Returning to caller</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>75</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>75</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>78</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>78</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>78</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>78</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>4</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>78</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:    </array> | 
 | // CHECK-NEXT:    <key>description</key><string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:    <key>category</key><string>Logic error</string> | 
 | // CHECK-NEXT:    <key>type</key><string>Dereference of null pointer</string> | 
 | // CHECK-NEXT:   <key>issue_context_kind</key><string>function</string> | 
 | // CHECK-NEXT:   <key>issue_context</key><string>test_block_blockvar</string> | 
 | // CHECK-NEXT:   <key>issue_hash</key><integer>5</integer> | 
 | // CHECK-NEXT:   <key>location</key> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>line</key><integer>78</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:   <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>82</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>82</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:         <key>end</key> | 
 | // CHECK-NEXT:          <array> | 
 | // CHECK-NEXT:           <dict> | 
 | // CHECK-NEXT:            <key>line</key><integer>83</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>83</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>83</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>83</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>85</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>7</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 anonymous block</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Calling anonymous block</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>83</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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_block_arg'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Entered call from 'test_block_arg'</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>83</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>83</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>84</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>84</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>84</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>84</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>84</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>1</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Null pointer value stored to 'p'</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Null pointer value stored to 'p'</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>83</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>83</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>85</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>7</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>Returning to caller</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Returning to caller</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>83</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>83</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>86</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>86</integer> | 
 | // CHECK-NEXT:            <key>col</key><integer>3</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>86</integer> | 
 | // CHECK-NEXT:       <key>col</key><integer>3</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>86</integer> | 
 | // CHECK-NEXT:          <key>col</key><integer>4</integer> | 
 | // CHECK-NEXT:          <key>file</key><integer>0</integer> | 
 | // CHECK-NEXT:         </dict> | 
 | // CHECK-NEXT:         <dict> | 
 | // CHECK-NEXT:          <key>line</key><integer>86</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:      </array> | 
 | // CHECK-NEXT:      <key>depth</key><integer>0</integer> | 
 | // CHECK-NEXT:      <key>extended_message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:      <key>message</key> | 
 | // CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:     </dict> | 
 | // CHECK-NEXT:    </array> | 
 | // CHECK-NEXT:    <key>description</key><string>Dereference of null pointer (loaded from variable 'p')</string> | 
 | // CHECK-NEXT:    <key>category</key><string>Logic error</string> | 
 | // CHECK-NEXT:    <key>type</key><string>Dereference of null pointer</string> | 
 | // CHECK-NEXT:   <key>issue_context_kind</key><string>function</string> | 
 | // CHECK-NEXT:   <key>issue_context</key><string>test_block_arg</string> | 
 | // CHECK-NEXT:   <key>issue_hash</key><integer>5</integer> | 
 | // CHECK-NEXT:   <key>location</key> | 
 | // CHECK-NEXT:   <dict> | 
 | // CHECK-NEXT:    <key>line</key><integer>86</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:  </array> |