1// RUN: %exploded_graph_rewriter %s | FileCheck %s 2 3// FIXME: Substitution doesn't seem to work on Windows. 4// UNSUPPORTED: system-windows 5 6// CHECK: <b>Program points:</b> 7// CHECK-SAME: <table border="0" align="left" width="0"> 8// CHECK-SAME: <tr> 9// CHECK-SAME: <td width="0"> 10// CHECK-SAME: </td> 11// CHECK-SAME: <td align="left" width="0"> 12// CHECK-SAME: <font color="gold3">BlockEdge</font> 13// CHECK-SAME: </td> 14// CHECK-SAME: <td align="left"> 15// CHECK-SAME: [B0] -> [B1] 16// CHECK-SAME: </td> 17// CHECK-SAME: </tr> 18// CHECK-SAME: <tr> 19// CHECK-SAME: <td width="0"> 20// CHECK-SAME: </td> 21// CHECK-SAME: <td align="left" width="0"> 22// CHECK-SAME: <font color="gold3">BlockEntrance</font> 23// CHECK-SAME: </td> 24// CHECK-SAME: <td align="left"> 25// CHECK-SAME: [B1] 26// CHECK-SAME: </td> 27// CHECK-SAME: </tr> 28// CHECK-SAME: </table> 29Node0x1 [shape=record,label= 30 "{ 31 { "node_id": 1, "pointer": "0x1", "has_report": false, "is_sink": false, 32 "program_state": null, "program_points": [ 33 { 34 "kind": "Edge", 35 "src_id": 0, 36 "dst_id": 1, 37 "terminator": null, 38 "term_kind": null, 39 "tag": null 40 }, 41 { 42 "kind": "BlockEntrance", 43 "block_id": 1, 44 "terminator": null, 45 "term_kind": null, 46 "tag": null 47 } 48 ]} 49\l}"]; 50 51// CHECK-NEXT: <b>Program point:</b> 52// CHECK-SAME: <table border="0" align="left" width="0"> 53// CHECK-SAME: <tr> 54// CHECK-SAME: <td align="left" width="0"> 55// CHECK-SAME: (main file):<b>4</b>:<b>5</b>: 56// CHECK-SAME: </td> 57// CHECK-SAME: <td align="left" width="0"> 58// CHECK-SAME: <font color="cyan4">DeclRefExpr</font> 59// CHECK-SAME: </td> 60// CHECK-SAME: <td align="left"> 61// CHECK-SAME: <font color="cyan3">PreStmt</font> 62// CHECK-SAME: </td> 63// CHECK-SAME: <td>x</td> 64// CHECK-SAME: </tr> 65// CHECK-SAME: <tr> 66// CHECK-SAME: <td width="0"> 67// CHECK-SAME: </td> 68// CHECK-SAME: <td colspan="3" align="left"> 69// CHECK-SAME: <b>Tag: </b> 70// CHECK-SAME: <font color="crimson">ExprEngine : Clean Node</font> 71// CHECK-SAME: </td> 72// CHECK-SAME: </tr> 73// CHECK-SAME: </table> 74Node0x2 [shape=record,label= 75 "{ 76 { "node_id": 2, "pointer": "0x2", "has_report": false, "is_sink": false, 77 "program_state": null, "program_points": [ 78 { 79 "kind": "Statement", 80 "stmt_kind": "DeclRefExpr", 81 "stmt_point_kind": "PreStmt", 82 "stmd_id": 3, 83 "pointer": "0x3", 84 "pretty": "x", 85 "location": { 86 "line": 4, 87 "column": 5 88 }, 89 "tag": "ExprEngine : Clean Node" 90 } 91 ]} 92\l}"]; 93 94// Test collapsing large pretty prints with braces. 95 96// CHECK-NEXT: <b>Program point:</b> 97// CHECK-SAME: <td>\{ ... \}</td> 98Node0x3 [shape=record,label= 99 "{ 100 { "node_id": 3, "pointer": "0x3", "has_report": false, "is_sink": false, 101 "program_state": null, "program_points": [ 102 { 103 "kind": "Statement", 104 "stmt_kind": "CompoundStmt", 105 "stmt_point_kind": "PostStmt", 106 "stmd_id": 6, 107 "pointer": "0x6", 108 "pretty": "{ very very very very very very long pretty print }", 109 "location": { 110 "line": 7, 111 "column": 8 112 }, 113 "tag": "ExprEngine : Clean Node" 114 } 115 ]} 116\l}"]; 117