digraph chapter06 { /* int a = 0; int b = 1; if( arg ) { a = 2; if( arg ) { b = 2; } else b = 3; } return a+b; */ rankdir=BT; ordering="in"; concentrate="true"; subgraph cluster_Nodes { Start2 [ shape=plaintext label=<
Start
$ctrlarg
> ]; Stop3 [ shape=box style=filled fillcolor=yellow label="Stop" ]; Con_6 [ label="#0" ]; Con_7 [ label="#1" ]; If8 [ shape=plaintext label=<
If
TrueFalse
> ]; Con_12 [ label="#2" ]; If13 [ shape=plaintext label=<
If
TrueFalse
> ]; Con_17 [ label="#2" ]; Con_18 [ label="#3" ]; Region19 [ shape=box style=filled fillcolor=yellow label="Region" ]; Phi_b20 [ style=filled fillcolor=lightyellow label="φ_b" ]; Region21 [ shape=box style=filled fillcolor=yellow label="Region" ]; Phi_a22 [ style=filled fillcolor=lightyellow label="φ_a" ]; Phi_b23 [ style=filled fillcolor=lightyellow label="φ_b" ]; Add24 [ label="+" ]; Return25 [ shape=box style=filled fillcolor=yellow label="Return" ]; { rank=same; Region19;Phi_b20;} { rank=same; Region21;Phi_b23;Phi_a22;} } edge [ fontname=Helvetica, fontsize=8 ]; Stop3 -> Return25[taillabel=0 color=red]; If8 -> Start2:p0[taillabel=0 color=red]; If8 -> Start2:p1[taillabel=1]; If13 -> If8:p0[taillabel=0 color=red]; If13 -> Start2:p1[taillabel=1]; Region19 -> If13:p0[taillabel=1 color=red]; Region19 -> If13:p1[taillabel=2 color=red]; Phi_b20 -> Region19 [style=dotted taillabel=0]; Phi_b20 -> Con_17[taillabel=1]; Phi_b20 -> Con_18[taillabel=2]; Region21 -> Region19[taillabel=1 color=red]; Region21 -> If8:p1[taillabel=2 color=red]; Phi_a22 -> Region21 [style=dotted taillabel=0]; Phi_a22 -> Con_12[taillabel=1]; Phi_a22 -> Con_6[taillabel=2]; Phi_b23 -> Region21 [style=dotted taillabel=0]; Phi_b23 -> Phi_b20[taillabel=1]; Phi_b23 -> Con_7[taillabel=2]; Add24 -> Phi_b23[taillabel=1]; Add24 -> Phi_a22[taillabel=2]; Return25 -> Region21[taillabel=0 color=red]; Return25 -> Add24[taillabel=1]; }