1// RUN: %exploded_graph_rewriter %s | FileCheck %s 2 3// CHECK: <b>Objects Under Construction: </b> 4// CHECK-SAME:<table border="0"> 5// CHECK-SAME: <tr> 6// CHECK-SAME: <td></td> 7// CHECK-SAME: <td align="left"><b>#0 Call</b></td> 8// CHECK-SAME: <td align="left" colspan="2"> 9// CHECK-SAME: <font color="gray60">main </font> 10// CHECK-SAME: </td> 11// CHECK-SAME: </tr> 12// CHECK-SAME: <tr> 13// CHECK-SAME: <td></td> 14// CHECK-SAME: <td align="left"><i>S870</i></td> 15// CHECK-SAME: <td align="left"> 16// CHECK-SAME: <font color="darkgreen"> 17// CHECK-SAME: <i>(construct into local variable)</i> 18// CHECK-SAME: </font> 19// CHECK-SAME: </td> 20// CHECK-SAME: <td align="left">S s;</td> 21// CHECK-SAME: <td align="left">&s</td> 22// CHECK-SAME: </tr> 23// CHECK-SAME:</table> 24Node0x1 [shape=record,label= 25"{ 26 { 27 "state_id": 2, 28 "program_points": [ 29 { 30 "kind": "BlockEntrance", "block_id": 1, 31 "terminator": null, "term_kind": null, 32 "tag": null, "node_id": 1, 33 "has_report": 0, "is_sink": 0 34 } 35 ], 36 "program_state": { 37 "store": null, 38 "environment": null, 39 "constraints": null, 40 "equivalence_classes": null, 41 "disequality_info": null, 42 "dynamic_types": null, 43 "dynamic_casts": null, 44 "constructing_objects": [ 45 { 46 "lctx_id": 1, "location_context": "#0 Call", "calling": "main", "location": null, "items": [ 47 { "stmt_id": 870, "kind": "construct into local variable", "argument_index": null, "pretty": "S s;", "value": "&s" } 48 ] 49 } 50 ], 51 "checker_messages": null 52 } 53 } 54\l}"]; 55 56// CHECK: <b>Indices Of Elements Under Construction: </b> 57// CHECK-SAME:<table border="0"> 58// CHECK-SAME: <tr> 59// CHECK-SAME: <td></td> 60// CHECK-SAME: <td align="left"><b>#0 Call</b></td> 61// CHECK-SAME: <td align="left" colspan="2"> 62// CHECK-SAME: <font color="gray60">main </font> 63// CHECK-SAME: </td> 64// CHECK-SAME: </tr> 65// CHECK-SAME: <tr> 66// CHECK-SAME: <td></td> 67// CHECK-SAME: <td align="left"><i>S895</i></td> 68// CHECK-SAME: <td align="left"> 69// CHECK-SAME: <font color="darkgreen"><i> </i></font> 70// CHECK-SAME: </td> 71// CHECK-SAME: <td align="left"> 72// CHECK-SAME: CXXConstructExpr <test.cpp:8:7> 'S[2]' 73// CHECK-SAME: </td> 74// CHECK-SAME: <td align="left">Current index: 0</td> 75// CHECK-SAME: </tr> 76// CHECK-SAME:</table> 77Node0x2 [shape=record,label= 78"{ 79 { 80 "state_id": 2, 81 "program_points": [ 82 { 83 "kind": "BlockEntrance", "block_id": 1, 84 "terminator": null, "term_kind": null, 85 "tag": null, "node_id": 1, 86 "has_report": 0, "is_sink": 0 87 } 88 ], 89 "program_state": { 90 "store": null, 91 "environment": null, 92 "constraints": null, 93 "equivalence_classes": null, 94 "disequality_info": null, 95 "dynamic_types": null, 96 "dynamic_casts": null, 97 "index_of_element": [ 98 { 99 "lctx_id": 1, 100 "location_context": "#0 Call", 101 "calling": "main", 102 "location": null, 103 "items": [ 104 { 105 "stmt_id": 895, 106 "kind": null, 107 "pretty": "CXXConstructExpr <test.cpp:8:7> 'S[2]'", 108 "value": "Current index: 0" 109 } 110 ] 111 } 112 ], 113 "checker_messages": null 114 } 115 } 116\l}"]; 117 118// CHECK: <b>Pending Array Init Loop Expressions: </b> 119// CHECK-SAME:<table border="0"> 120// CHECK-SAME: <tr> 121// CHECK-SAME: <td></td> 122// CHECK-SAME: <td align="left"><b>#0 Call</b></td> 123// CHECK-SAME: <td align="left" colspan="2"> 124// CHECK-SAME: <font color="gray60">main </font> 125// CHECK-SAME: </td> 126// CHECK-SAME: </tr> 127// CHECK-SAME: <tr> 128// CHECK-SAME: <td></td> 129// CHECK-SAME: <td align="left"><i>S1112</i></td> 130// CHECK-SAME: <td align="left"> 131// CHECK-SAME: <font color="darkgreen"><i> </i></font> 132// CHECK-SAME: </td> 133// CHECK-SAME: <td align="left"> 134// CHECK-SAME: CXXConstructExpr <test.cpp:10:6> 'S' 135// CHECK-SAME: </td> 136// CHECK-SAME: <td align="left">Flattened size: 2</td> 137// CHECK-SAME: </tr> 138// CHECK-SAME:</table> 139Node0x3 [shape=record,label= 140"{ 141 { 142 "state_id": 2, 143 "program_points": [ 144 { 145 "kind": "BlockEntrance", "block_id": 1, 146 "terminator": null, "term_kind": null, 147 "tag": null, "node_id": 1, 148 "has_report": 0, "is_sink": 0 149 } 150 ], 151 "program_state": { 152 "store": null, 153 "environment": null, 154 "constraints": null, 155 "equivalence_classes": null, 156 "disequality_info": null, 157 "dynamic_types": null, 158 "dynamic_casts": null, 159 "pending_init_loops": [ 160 { 161 "lctx_id": 1, 162 "location_context": "#0 Call", 163 "calling": "main", 164 "location": null, 165 "items": [ 166 { 167 "stmt_id": 1112, 168 "kind": null, 169 "pretty": "CXXConstructExpr <test.cpp:10:6> 'S'", "value": "Flattened size: 2" 170 } 171 ] 172 } 173 ], 174 "checker_messages": null 175 } 176 } 177\l}"]; 178 179// CHECK: <b>Indices of Elements Under Destruction: </b> 180// CHECK-SAME:<table border="0"> 181// CHECK-SAME: <tr> 182// CHECK-SAME: <td></td> 183// CHECK-SAME: <td align="left"><b>#0 Call</b></td> 184// CHECK-SAME: <td align="left" colspan="2"> 185// CHECK-SAME: <font color="gray60">main </font> 186// CHECK-SAME: </td> 187// CHECK-SAME: </tr> 188// CHECK-SAME: <tr> 189// CHECK-SAME: <td></td> 190// CHECK-SAME: <td align="left"><i>SNone</i></td> 191// CHECK-SAME: <td align="left"> 192// CHECK-SAME: <font color="darkgreen"><i> </i></font> 193// CHECK-SAME: </td> 194// CHECK-SAME: <td align="left">Current index: </td> 195// CHECK-SAME: <td align="left">1</td> 196// CHECK-SAME: </tr> 197// CHECK-SAME:</table> 198Node0x4 [shape=record,label= 199"{ 200 { 201 "state_id": 2, 202 "program_points": [ 203 { 204 "kind": "BlockEntrance", "block_id": 1, 205 "terminator": null, "term_kind": null, 206 "tag": null, "node_id": 1, 207 "has_report": 0, "is_sink": 0 208 } 209 ], 210 "program_state": { 211 "store": null, 212 "environment": null, 213 "constraints": null, 214 "equivalence_classes": null, 215 "disequality_info": null, 216 "dynamic_types": null, 217 "dynamic_casts": null, 218 "pending_destructors": [ 219 { 220 "lctx_id": 1, 221 "location_context": "#0 Call", 222 "calling": "main", 223 "location": null, 224 "items": [ 225 { 226 "stmt_id": null, 227 "kind": null, 228 "pretty": "Current index: ", 229 "value": "1" 230 } 231 ] 232 } 233 ], 234 "checker_messages": null 235 } 236 } 237\l}"]; 238