1048eeea6852043990c87e52938b53b5337bd098eJordan Rose// RUN: %clang --analyze %s -Xanalyzer -analyzer-config -Xanalyzer path-diagnostics-alternate=false -o %t > /dev/null 2>&1
2bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek// RUN: FileCheck -input-file %t %s
3bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek
4bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenekstatic inline bug(int *p) {
5bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek  *p = 0xDEADBEEF;
6bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek}
7bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek
8bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenekvoid test_bug_1() {
9bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek  int *p = 0;
10bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek  bug(p);
11bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek}
12bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek
13bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenekvoid test_bug_2() {
14bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek  int *p = 0;
15bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek  bug(p);
16bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek}
17bac341346f3c8e713a8f165120fd54b500ee3189Ted Kremenek
187453a72cd0dcc70f29006ba488b743f078072bc7Ted Kremenek
190f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK:  <key>diagnostics</key>
200f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:  <array>
210f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:   <dict>
220f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:    <key>path</key>
230f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:    <array>
240f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     <dict>
250f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>kind</key><string>event</string>
260f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>location</key>
270f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <dict>
280f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>line</key><integer>14</integer>
290f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>col</key><integer>3</integer>
300f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>file</key><integer>0</integer>
310f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      </dict>
320f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>ranges</key>
330f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <array>
340f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        <array>
350f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <dict>
360f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>line</key><integer>14</integer>
370f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>col</key><integer>3</integer>
380f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>file</key><integer>0</integer>
390f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         </dict>
400f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <dict>
410f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>line</key><integer>14</integer>
420f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>col</key><integer>8</integer>
430f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>file</key><integer>0</integer>
440f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         </dict>
450f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        </array>
460f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      </array>
470f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>depth</key><integer>0</integer>
480f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>extended_message</key>
490f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <string>&apos;p&apos; initialized to a null pointer value</string>
500f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>message</key>
510f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <string>&apos;p&apos; initialized to a null pointer value</string>
520f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     </dict>
530f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     <dict>
540f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>kind</key><string>control</string>
550f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>edges</key>
560f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <array>
570f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        <dict>
580f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <key>start</key>
590f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <array>
600f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
610f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>14</integer>
620f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>3</integer>
630f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
640f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
650f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
660f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>14</integer>
670f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>5</integer>
680f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
690f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
700f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          </array>
710f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <key>end</key>
720f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <array>
730f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
740f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>15</integer>
750f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>3</integer>
760f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
770f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
780f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
790f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>15</integer>
800f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>5</integer>
810f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
820f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
830f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          </array>
840f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        </dict>
850f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       </array>
860f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     </dict>
870f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     <dict>
880f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>kind</key><string>control</string>
890f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>edges</key>
900f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <array>
910f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        <dict>
920f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <key>start</key>
930f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <array>
940f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
950f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>15</integer>
960f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>3</integer>
970f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
980f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
990f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
1000f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>15</integer>
1010f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>5</integer>
1020f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
1030f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
1040f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          </array>
1050f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <key>end</key>
1060f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <array>
1070f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
1080f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>15</integer>
1090f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>7</integer>
1100f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
1110f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
1120f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
1130f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>15</integer>
1140f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>7</integer>
1150f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
1160f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
1170f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          </array>
1180f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        </dict>
1190f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       </array>
1200f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     </dict>
1210f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     <dict>
1220f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>kind</key><string>event</string>
1230f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>location</key>
1240f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <dict>
1250f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>line</key><integer>15</integer>
1260f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>col</key><integer>7</integer>
1270f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>file</key><integer>0</integer>
1280f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      </dict>
1290f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>ranges</key>
1300f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <array>
1310f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        <array>
1320f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <dict>
1330f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>line</key><integer>15</integer>
1340f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>col</key><integer>7</integer>
1350f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>file</key><integer>0</integer>
1360f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         </dict>
1370f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <dict>
1380f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>line</key><integer>15</integer>
1390f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>col</key><integer>7</integer>
1400f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>file</key><integer>0</integer>
1410f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         </dict>
1420f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        </array>
1430f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      </array>
1440f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>depth</key><integer>0</integer>
1450f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>extended_message</key>
1460f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <string>Passing null pointer value via 1st parameter &apos;p&apos;</string>
1470f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>message</key>
1480f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <string>Passing null pointer value via 1st parameter &apos;p&apos;</string>
1490f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     </dict>
1500f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     <dict>
1510f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>kind</key><string>event</string>
1520f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>location</key>
1530f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <dict>
1540f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>line</key><integer>15</integer>
1550f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>col</key><integer>3</integer>
1560f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>file</key><integer>0</integer>
1570f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      </dict>
1580f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>ranges</key>
1590f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <array>
1600f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        <array>
1610f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <dict>
1620f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>line</key><integer>15</integer>
1630f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>col</key><integer>3</integer>
1640f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>file</key><integer>0</integer>
1650f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         </dict>
1660f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <dict>
1670f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>line</key><integer>15</integer>
1680f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>col</key><integer>8</integer>
1690f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>file</key><integer>0</integer>
1700f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         </dict>
1710f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        </array>
1720f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      </array>
1730f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>depth</key><integer>0</integer>
1740f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>extended_message</key>
1750f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <string>Calling &apos;bug&apos;</string>
1760f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>message</key>
1770f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <string>Calling &apos;bug&apos;</string>
1780f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     </dict>
1790f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     <dict>
1800f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>kind</key><string>event</string>
1810f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>location</key>
1820f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <dict>
1830f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>line</key><integer>4</integer>
1840f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>col</key><integer>1</integer>
1850f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>file</key><integer>0</integer>
1860f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      </dict>
1870f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>depth</key><integer>1</integer>
1880f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>extended_message</key>
1890f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <string>Entered call from &apos;test_bug_2&apos;</string>
1900f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>message</key>
1910f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <string>Entered call from &apos;test_bug_2&apos;</string>
1920f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     </dict>
1930f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     <dict>
1940f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>kind</key><string>control</string>
1950f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>edges</key>
1960f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <array>
1970f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        <dict>
1980f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <key>start</key>
1990f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <array>
2000f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
2010f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>4</integer>
2020f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>1</integer>
2030f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
2040f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
2050f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
2060f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>4</integer>
2070f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>6</integer>
2080f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
2090f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
2100f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          </array>
2110f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <key>end</key>
2120f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <array>
2130f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
2140f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>5</integer>
2150f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>3</integer>
2160f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
2170f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
2180f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
2190f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>5</integer>
2200f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>3</integer>
2210f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
2220f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
2230f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          </array>
2240f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        </dict>
2250f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       </array>
2260f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     </dict>
2270f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     <dict>
2280f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>kind</key><string>control</string>
2290f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>edges</key>
2300f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <array>
2310f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        <dict>
2320f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <key>start</key>
2330f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <array>
2340f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
2350f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>5</integer>
2360f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>3</integer>
2370f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
2380f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
2390f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
2400f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>5</integer>
2410f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>3</integer>
2420f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
2430f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
2440f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          </array>
2450f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <key>end</key>
2460f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <array>
2470f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
2480f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>5</integer>
2490f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>6</integer>
2500f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
2510f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
2520f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           <dict>
2530f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>line</key><integer>5</integer>
2540f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>col</key><integer>6</integer>
2550f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:            <key>file</key><integer>0</integer>
2560f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:           </dict>
2570f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          </array>
2580f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        </dict>
2590f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       </array>
2600f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     </dict>
2610f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     <dict>
2620f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>kind</key><string>event</string>
2630f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>location</key>
2640f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <dict>
2650f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>line</key><integer>5</integer>
2660f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>col</key><integer>6</integer>
2670f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:       <key>file</key><integer>0</integer>
2680f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      </dict>
2690f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>ranges</key>
2700f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <array>
2710f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        <array>
2720f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <dict>
2730f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>line</key><integer>5</integer>
2740f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>col</key><integer>4</integer>
2750f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>file</key><integer>0</integer>
2760f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         </dict>
2770f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         <dict>
2780f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>line</key><integer>5</integer>
2790f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>col</key><integer>4</integer>
2800f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:          <key>file</key><integer>0</integer>
2810f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:         </dict>
2820f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:        </array>
2830f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      </array>
2840f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>depth</key><integer>1</integer>
2850f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>extended_message</key>
2860f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
2870f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <key>message</key>
2880f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:      <string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
2890f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:     </dict>
2900f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:    </array>
2910f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:    <key>description</key><string>Dereference of null pointer (loaded from variable &apos;p&apos;)</string>
2920f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:    <key>category</key><string>Logic error</string>
2930f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:    <key>type</key><string>Dereference of null pointer</string>
2940f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:   <key>issue_context_kind</key><string>function</string>
2950f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:   <key>issue_context</key><string>bug</string>
2960f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:   <key>issue_hash</key><string>1</string>
2970f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:   <key>location</key>
2980f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:   <dict>
2990f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:    <key>line</key><integer>5</integer>
3000f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:    <key>col</key><integer>6</integer>
3010f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:    <key>file</key><integer>0</integer>
3020f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:   </dict>
3030f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:   </dict>
3040f8579274a010f360a371b53101859d9d6052314Anna Zaks// CHECK-NEXT:  </array>
305