digraph flow { // Global settings graph [fontname = "cc wild words"]; node [fontname = "cc wild words"]; edge [fontname = "cc wild words"]; rankdir=LR; A0 [label="Global" style=filled fillcolor=gold]; C0 [label="end generation"]; D0 [label="for each undefined subroutine"]; F0 [label="return" style=filled fillcolor=lightskyblue1]; node [shape=diamond style=filled fillcolor=lightsalmon]; FA0 [label="fn_gen_global_decl()"]; FB0 [label="fn_gen_main()"]; FC0 [label="fn_define_subroutine(SubRoutine)"]; FD0 [label="fn_declare_subroutine()"]; FE0 [label="fn_gen_typedef()"]; A0 -> FA0 -> A0; A0 -> C0 -> FB0 -> D0; A0 -> FD0 -> A0; A0 -> FE0 -> A0; D0 -> FC0 -> D0; D0 -> F0; }