xref: /llvm-project/clang/test/Analysis/exploded-graph-rewriter/checker_messages_diff.dot (revision b5147937b2a9ffdc12110a5df5ba4d482f83d2a8)
1// RUN: %exploded_graph_rewriter -d %s | FileCheck %s
2
3Node0x1 [shape=record,label=
4 "{
5    { "state_id": 2,
6      "program_points": [
7        {
8          "kind": "BlockEntrance", "block_id": 1,
9          "terminator": null, "term_kind": null,
10          "tag": null, "node_id": 1,
11          "has_report": 0, "is_sink": 0
12        }
13      ],
14      "program_state": {
15        "environment": null,
16        "store": null,
17        "constraints": null,
18        "dynamic_types": null,
19        "checker_messages": [
20          { "checker": "FooChecker", "messages": [
21            "Foo: Bar"
22          ]},
23          { "checker": "BarChecker", "messages": [
24            "Bar: Foo"
25          ]}
26        ]
27      }
28    }
29\l}"];
30
31Node0x1 -> Node0x4;
32
33
34// CHECK: Node0x4 [
35// CHECK-SAME: <tr>
36// CHECK-SAME:   <td><font color="red">-</font></td>
37// CHECK-SAME:   <td align="left"><i>BarChecker</i>:</td>
38// CHECK-SAME: </tr>
39// CHECK-SAME: <tr>
40// CHECK-SAME:   <td><font color="red">-</font></td>
41// CHECK-SAME:   <td align="left">Bar: Foo</td>
42// CHECK-SAME: </tr>
43// CHECK-SAME: <tr>
44// CHECK-SAME:   <td></td>
45// CHECK-SAME:   <td align="left"><i>FooChecker</i>:</td>
46// CHECK-SAME: </tr>
47// CHECK-SAME: <tr>
48// CHECK-SAME:   <td><font color="forestgreen">+</font></td>
49// CHECK-SAME:   <td align="left"> Bar: Foo</td>
50// CHECK-SAME: </tr>
51// CHECK-SAME: <tr>
52// CHECK-SAME:   <td><font color="forestgreen">+</font></td>
53// CHECK-SAME:   <td align="left"><i>DunnoWhateverSomeOtherChecker</i>:</td>
54// CHECK-SAME: </tr>
55// CHECK-SAME: <tr>
56// CHECK-SAME:   <td><font color="forestgreen">+</font></td>
57// CHECK-SAME:   <td align="left">Dunno, some other message.</td>
58// CHECK-SAME: </tr>
59Node0x4 [shape=record,label=
60 "{
61    {
62      "state_id": 5,
63      "program_points": [
64        {
65          "kind": "BlockEntrance", "block_id": 1,
66          "terminator": null, "term_kind": null,
67          "tag": null, "node_id": 1,
68          "has_report": 0, "is_sink": 0
69        }
70      ],
71      "program_state": {
72        "environment": null,
73        "store": null,
74        "constraints": null,
75        "dynamic_types": null,
76        "checker_messages": [
77          { "checker": "FooChecker", "messages": [
78            "Foo: Bar",
79            "Bar: Foo"
80          ]},
81          { "checker": "DunnoWhateverSomeOtherChecker", "messages": [
82            "Dunno, some other message."
83          ]}
84        ]
85      }
86    }
87\l}"];
88
89Node0x4 -> Node0x6;
90
91Node0x6 [shape=record,label=
92 "{
93    { "state_id": 7,
94      "program_points": [
95        {
96          "kind": "BlockEntrance", "block_id": 1,
97          "terminator": null, "term_kind": null,
98          "tag": null, "node_id": 1,
99          "has_report": 0, "is_sink": 0
100        }
101      ],
102      "program_state": null
103    }
104\l}"];
105