238 lines
7.6 KiB
Plaintext
238 lines
7.6 KiB
Plaintext
// RUN: %exploded_graph_rewriter %s | FileCheck %s
|
|
|
|
// CHECK: <b>Objects Under Construction: </b>
|
|
// CHECK-SAME:<table border="0">
|
|
// CHECK-SAME: <tr>
|
|
// CHECK-SAME: <td></td>
|
|
// CHECK-SAME: <td align="left"><b>#0 Call</b></td>
|
|
// CHECK-SAME: <td align="left" colspan="2">
|
|
// CHECK-SAME: <font color="gray60">main </font>
|
|
// CHECK-SAME: </td>
|
|
// CHECK-SAME: </tr>
|
|
// CHECK-SAME: <tr>
|
|
// CHECK-SAME: <td></td>
|
|
// CHECK-SAME: <td align="left"><i>S870</i></td>
|
|
// CHECK-SAME: <td align="left">
|
|
// CHECK-SAME: <font color="darkgreen">
|
|
// CHECK-SAME: <i>(construct into local variable)</i>
|
|
// CHECK-SAME: </font>
|
|
// CHECK-SAME: </td>
|
|
// CHECK-SAME: <td align="left">S s;</td>
|
|
// CHECK-SAME: <td align="left">&s</td>
|
|
// CHECK-SAME: </tr>
|
|
// CHECK-SAME:</table>
|
|
Node0x1 [shape=record,label=
|
|
"{
|
|
{
|
|
"state_id": 2,
|
|
"program_points": [
|
|
{
|
|
"kind": "BlockEntrance", "block_id": 1,
|
|
"terminator": null, "term_kind": null,
|
|
"tag": null, "node_id": 1,
|
|
"has_report": 0, "is_sink": 0
|
|
}
|
|
],
|
|
"program_state": {
|
|
"store": null,
|
|
"environment": null,
|
|
"constraints": null,
|
|
"equivalence_classes": null,
|
|
"disequality_info": null,
|
|
"dynamic_types": null,
|
|
"dynamic_casts": null,
|
|
"constructing_objects": [
|
|
{
|
|
"lctx_id": 1, "location_context": "#0 Call", "calling": "main", "location": null, "items": [
|
|
{ "stmt_id": 870, "kind": "construct into local variable", "argument_index": null, "pretty": "S s;", "value": "&s" }
|
|
]
|
|
}
|
|
],
|
|
"checker_messages": null
|
|
}
|
|
}
|
|
\l}"];
|
|
|
|
// CHECK: <b>Indices Of Elements Under Construction: </b>
|
|
// CHECK-SAME:<table border="0">
|
|
// CHECK-SAME: <tr>
|
|
// CHECK-SAME: <td></td>
|
|
// CHECK-SAME: <td align="left"><b>#0 Call</b></td>
|
|
// CHECK-SAME: <td align="left" colspan="2">
|
|
// CHECK-SAME: <font color="gray60">main </font>
|
|
// CHECK-SAME: </td>
|
|
// CHECK-SAME: </tr>
|
|
// CHECK-SAME: <tr>
|
|
// CHECK-SAME: <td></td>
|
|
// CHECK-SAME: <td align="left"><i>S895</i></td>
|
|
// CHECK-SAME: <td align="left">
|
|
// CHECK-SAME: <font color="darkgreen"><i> </i></font>
|
|
// CHECK-SAME: </td>
|
|
// CHECK-SAME: <td align="left">
|
|
// CHECK-SAME: CXXConstructExpr <test.cpp:8:7> 'S[2]'
|
|
// CHECK-SAME: </td>
|
|
// CHECK-SAME: <td align="left">Current index: 0</td>
|
|
// CHECK-SAME: </tr>
|
|
// CHECK-SAME:</table>
|
|
Node0x2 [shape=record,label=
|
|
"{
|
|
{
|
|
"state_id": 2,
|
|
"program_points": [
|
|
{
|
|
"kind": "BlockEntrance", "block_id": 1,
|
|
"terminator": null, "term_kind": null,
|
|
"tag": null, "node_id": 1,
|
|
"has_report": 0, "is_sink": 0
|
|
}
|
|
],
|
|
"program_state": {
|
|
"store": null,
|
|
"environment": null,
|
|
"constraints": null,
|
|
"equivalence_classes": null,
|
|
"disequality_info": null,
|
|
"dynamic_types": null,
|
|
"dynamic_casts": null,
|
|
"index_of_element": [
|
|
{
|
|
"lctx_id": 1,
|
|
"location_context": "#0 Call",
|
|
"calling": "main",
|
|
"location": null,
|
|
"items": [
|
|
{
|
|
"stmt_id": 895,
|
|
"kind": null,
|
|
"pretty": "CXXConstructExpr <test.cpp:8:7> 'S[2]'",
|
|
"value": "Current index: 0"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"checker_messages": null
|
|
}
|
|
}
|
|
\l}"];
|
|
|
|
// CHECK: <b>Pending Array Init Loop Expressions: </b>
|
|
// CHECK-SAME:<table border="0">
|
|
// CHECK-SAME: <tr>
|
|
// CHECK-SAME: <td></td>
|
|
// CHECK-SAME: <td align="left"><b>#0 Call</b></td>
|
|
// CHECK-SAME: <td align="left" colspan="2">
|
|
// CHECK-SAME: <font color="gray60">main </font>
|
|
// CHECK-SAME: </td>
|
|
// CHECK-SAME: </tr>
|
|
// CHECK-SAME: <tr>
|
|
// CHECK-SAME: <td></td>
|
|
// CHECK-SAME: <td align="left"><i>S1112</i></td>
|
|
// CHECK-SAME: <td align="left">
|
|
// CHECK-SAME: <font color="darkgreen"><i> </i></font>
|
|
// CHECK-SAME: </td>
|
|
// CHECK-SAME: <td align="left">
|
|
// CHECK-SAME: CXXConstructExpr <test.cpp:10:6> 'S'
|
|
// CHECK-SAME: </td>
|
|
// CHECK-SAME: <td align="left">Flattened size: 2</td>
|
|
// CHECK-SAME: </tr>
|
|
// CHECK-SAME:</table>
|
|
Node0x3 [shape=record,label=
|
|
"{
|
|
{
|
|
"state_id": 2,
|
|
"program_points": [
|
|
{
|
|
"kind": "BlockEntrance", "block_id": 1,
|
|
"terminator": null, "term_kind": null,
|
|
"tag": null, "node_id": 1,
|
|
"has_report": 0, "is_sink": 0
|
|
}
|
|
],
|
|
"program_state": {
|
|
"store": null,
|
|
"environment": null,
|
|
"constraints": null,
|
|
"equivalence_classes": null,
|
|
"disequality_info": null,
|
|
"dynamic_types": null,
|
|
"dynamic_casts": null,
|
|
"pending_init_loops": [
|
|
{
|
|
"lctx_id": 1,
|
|
"location_context": "#0 Call",
|
|
"calling": "main",
|
|
"location": null,
|
|
"items": [
|
|
{
|
|
"stmt_id": 1112,
|
|
"kind": null,
|
|
"pretty": "CXXConstructExpr <test.cpp:10:6> 'S'", "value": "Flattened size: 2"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"checker_messages": null
|
|
}
|
|
}
|
|
\l}"];
|
|
|
|
// CHECK: <b>Indices of Elements Under Destruction: </b>
|
|
// CHECK-SAME:<table border="0">
|
|
// CHECK-SAME: <tr>
|
|
// CHECK-SAME: <td></td>
|
|
// CHECK-SAME: <td align="left"><b>#0 Call</b></td>
|
|
// CHECK-SAME: <td align="left" colspan="2">
|
|
// CHECK-SAME: <font color="gray60">main </font>
|
|
// CHECK-SAME: </td>
|
|
// CHECK-SAME: </tr>
|
|
// CHECK-SAME: <tr>
|
|
// CHECK-SAME: <td></td>
|
|
// CHECK-SAME: <td align="left"><i>SNone</i></td>
|
|
// CHECK-SAME: <td align="left">
|
|
// CHECK-SAME: <font color="darkgreen"><i> </i></font>
|
|
// CHECK-SAME: </td>
|
|
// CHECK-SAME: <td align="left">Current index: </td>
|
|
// CHECK-SAME: <td align="left">1</td>
|
|
// CHECK-SAME: </tr>
|
|
// CHECK-SAME:</table>
|
|
Node0x4 [shape=record,label=
|
|
"{
|
|
{
|
|
"state_id": 2,
|
|
"program_points": [
|
|
{
|
|
"kind": "BlockEntrance", "block_id": 1,
|
|
"terminator": null, "term_kind": null,
|
|
"tag": null, "node_id": 1,
|
|
"has_report": 0, "is_sink": 0
|
|
}
|
|
],
|
|
"program_state": {
|
|
"store": null,
|
|
"environment": null,
|
|
"constraints": null,
|
|
"equivalence_classes": null,
|
|
"disequality_info": null,
|
|
"dynamic_types": null,
|
|
"dynamic_casts": null,
|
|
"pending_destructors": [
|
|
{
|
|
"lctx_id": 1,
|
|
"location_context": "#0 Call",
|
|
"calling": "main",
|
|
"location": null,
|
|
"items": [
|
|
{
|
|
"stmt_id": null,
|
|
"kind": null,
|
|
"pretty": "Current index: ",
|
|
"value": "1"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"checker_messages": null
|
|
}
|
|
}
|
|
\l}"];
|