1// RUN: %exploded_graph_rewriter -d %s | FileCheck %s
2
3// FIXME: Substitution doesn't seem to work on Windows.
4// UNSUPPORTED: system-windows
5
6Node0x1 [shape=record,label=
7 "{
8    {
9      "state_id": 2,
10      "program_points": [
11        {
12          "kind": "BlockEntrance", "block_id": 1,
13          "terminator": null, "term_kind": null,
14          "tag": null, "node_id": 1,
15          "has_report": 0, "is_sink": 0
16        }
17      ],
18      "program_state": {
19        "store": null,
20        "environment": null,
21        "dynamic_types": null,
22        "constructing_objects": null,
23        "checker_messages": null,
24        "constraints": [
25          { "symbol": "reg_$0<x>", "range": "{ [0, 10] }" }
26        ]
27      }
28    }
29\l}"];
30
31Node0x1 -> Node0x3;
32
33// CHECK: Node0x3 [
34// CHECK-SAME: <tr>
35// CHECK-SAME:   <td><font color="red">-</font></td>
36// CHECK-SAME:   <td align="left">reg_$0<x></td>
37// CHECK-SAME:   <td align="left">\{ [0, 10] \}</td>
38// CHECK-SAME: </tr>
39// CHECK-SAME: <tr>
40// CHECK-SAME:   <td><font color="forestgreen">+</font></td>
41// CHECK-SAME:   <td align="left">reg_$0<x></td>
42// CHECK-SAME:   <td align="left">\{ [0, 5] \}</td>
43// CHECK-SAME: </tr>
44Node0x3 [shape=record,label=
45 "{
46    {
47      "state_id": 4,
48      "program_points": [
49        {
50          "kind": "BlockEntrance", "block_id": 1,
51          "terminator": null, "term_kind": null,
52          "tag": null, "node_id": 1,
53          "has_report": 0, "is_sink": 0
54        }
55      ],
56      "program_state": {
57        "store": null,
58        "environment": null,
59        "dynamic_types": null,
60        "constructing_objects": null,
61        "checker_messages": null,
62        "constraints": [
63          { "symbol": "reg_$0<x>", "range": "{ [0, 5] }" }
64        ]
65      }
66    }
67\l}"];
68
69Node0x3 -> Node0x5;
70
71Node0x5 [shape=record,label=
72 "{
73    {
74      "state_id": 6,
75      "program_points": [
76        {
77          "kind": "BlockEntrance", "block_id": 1,
78          "terminator": null, "term_kind": null,
79          "tag": null, "node_id": 1,
80          "has_report": 0, "is_sink": 0
81        }
82      ],
83      "program_state": {
84        "store": null,
85        "environment": null,
86        "constraints": null,
87        "dynamic_types": null,
88        "constructing_objects": null,
89        "checker_messages": null
90      }
91    }
92\l}"];
93