-/* method flow#FlowVisitor#printflow for (self: FlowVisitor) */
-void flow__FlowVisitor__printflow(val* self) {
-val* var /* : OFStream */;
-static val* varonce;
-val* var1 /* : String */;
-char* var2 /* : NativeString */;
-long var3 /* : Int */;
-val* var4 /* : String */;
-val* var_file /* var file: OFStream */;
-static val* varonce5;
-val* var6 /* : String */;
-char* var7 /* : NativeString */;
-long var8 /* : Int */;
-val* var9 /* : String */;
-val* var10 /* : Array[FlowContext] */;
-val* var11 /* : Iterator[nullable Object] */;
-short int var12 /* : Bool */;
-val* var13 /* : nullable Object */;
-val* var_f /* var f: FlowContext */;
-static val* varonce14;
-val* var15 /* : String */;
-char* var16 /* : NativeString */;
-long var17 /* : Int */;
-val* var18 /* : String */;
-val* var_s /* var s: String */;
-val* var19 /* : nullable ANode */;
-short int var20 /* : Bool */;
-int cltype;
-int idtype;
-val* var21 /* : Array[Object] */;
-long var22 /* : Int */;
-val* var_ /* var : Array[Object] */;
-static val* varonce23;
-val* var24 /* : String */;
-char* var25 /* : NativeString */;
-long var26 /* : Int */;
-val* var27 /* : String */;
-val* var28 /* : nullable ANode */;
-short int var29 /* : Bool */;
-int cltype30;
-int idtype31;
-const char* var_class_name;
-val* var32 /* : nullable FlowContext */;
-long var33 /* : Int */;
-val* var34 /* : nullable Object */;
-static val* varonce35;
-val* var36 /* : String */;
-char* var37 /* : NativeString */;
-long var38 /* : Int */;
-val* var39 /* : String */;
-val* var40 /* : String */;
-static val* varonce41;
-val* var42 /* : String */;
-char* var43 /* : NativeString */;
-long var44 /* : Int */;
-val* var45 /* : String */;
-long var46 /* : Int */;
-static val* varonce47;
-val* var48 /* : String */;
-char* var49 /* : NativeString */;
-long var50 /* : Int */;
-val* var51 /* : String */;
-long var52 /* : Int */;
-static val* varonce53;
-val* var54 /* : String */;
-char* var55 /* : NativeString */;
-long var56 /* : Int */;
-val* var57 /* : String */;
-val* var58 /* : nullable ANode */;
-val* var59 /* : Location */;
-static val* varonce60;
-val* var61 /* : String */;
-char* var62 /* : NativeString */;
-long var63 /* : Int */;
-val* var64 /* : String */;
-val* var65 /* : nullable ANode */;
-val* var66 /* : String */;
-static val* varonce67;
-val* var68 /* : String */;
-char* var69 /* : NativeString */;
-long var70 /* : Int */;
-val* var71 /* : String */;
-val* var72 /* : String */;
-static val* varonce73;
-val* var74 /* : String */;
-char* var75 /* : NativeString */;
-long var76 /* : Int */;
-val* var77 /* : String */;
-val* var78 /* : Array[Object] */;
-long var79 /* : Int */;
-val* var80 /* : NativeArray[Object] */;
-val* var81 /* : Object */;
-val* var82 /* : Object */;
-val* var83 /* : String */;
-val* var84 /* : Array[FlowContext] */;
-val* var85 /* : Iterator[nullable Object] */;
-short int var86 /* : Bool */;
-val* var87 /* : nullable Object */;
-val* var_p /* var p: FlowContext */;
-static val* varonce88;
-val* var89 /* : String */;
-char* var90 /* : NativeString */;
-long var91 /* : Int */;
-val* var92 /* : String */;
-long var93 /* : Int */;
-static val* varonce94;
-val* var95 /* : String */;
-char* var96 /* : NativeString */;
-long var97 /* : Int */;
-val* var98 /* : String */;
-long var99 /* : Int */;
-static val* varonce100;
-val* var101 /* : String */;
-char* var102 /* : NativeString */;
-long var103 /* : Int */;
-val* var104 /* : String */;
-val* var105 /* : Array[Object] */;
-long var106 /* : Int */;
-val* var107 /* : NativeArray[Object] */;
-val* var108 /* : Object */;
-val* var109 /* : Object */;
-val* var110 /* : String */;
-val* var111 /* : FlowContext */;
-short int var112 /* : Bool */;
-static val* varonce113;
-val* var114 /* : String */;
-char* var115 /* : NativeString */;
-long var116 /* : Int */;
-val* var117 /* : String */;
-long var118 /* : Int */;
-static val* varonce119;
-val* var120 /* : String */;
-char* var121 /* : NativeString */;
-long var122 /* : Int */;
-val* var123 /* : String */;
-val* var124 /* : FlowContext */;
-long var125 /* : Int */;
-static val* varonce126;
-val* var127 /* : String */;
-char* var128 /* : NativeString */;
-long var129 /* : Int */;
-val* var130 /* : String */;
-val* var131 /* : Array[Object] */;
-long var132 /* : Int */;
-val* var133 /* : NativeArray[Object] */;
-val* var134 /* : Object */;
-val* var135 /* : Object */;
-val* var136 /* : String */;
-val* var137 /* : FlowContext */;
-short int var138 /* : Bool */;
-static val* varonce139;
-val* var140 /* : String */;
-char* var141 /* : NativeString */;
-long var142 /* : Int */;
-val* var143 /* : String */;
-long var144 /* : Int */;
-static val* varonce145;
-val* var146 /* : String */;
-char* var147 /* : NativeString */;
-long var148 /* : Int */;
-val* var149 /* : String */;
-val* var150 /* : FlowContext */;
-long var151 /* : Int */;
-static val* varonce152;
-val* var153 /* : String */;
-char* var154 /* : NativeString */;
-long var155 /* : Int */;
-val* var156 /* : String */;
-val* var157 /* : Array[Object] */;
-long var158 /* : Int */;
-val* var159 /* : NativeArray[Object] */;
-val* var160 /* : Object */;
-val* var161 /* : Object */;
-val* var162 /* : String */;
-static val* varonce164;
-val* var165 /* : String */;
-char* var166 /* : NativeString */;
-long var167 /* : Int */;
-val* var168 /* : String */;
-var = NEW_file__OFStream(&type_file__OFStream);
-if (varonce) {
-var1 = varonce;
-} else {
-var2 = "flow.dot";
-var3 = 8;
-var4 = string__NativeString__to_s_with_length(var2, var3);
-var1 = var4;
-varonce = var1;
-}
-((void (*)(val*, val*))(var->class->vft[COLOR_file__OFStream__open]))(var, var1) /* open on <var:OFStream>*/;
-var_file = var;
-if (varonce5) {
-var6 = varonce5;
-} else {
-var7 = "digraph {\n";
-var8 = 10;
-var9 = string__NativeString__to_s_with_length(var7, var8);
-var6 = var9;
-varonce5 = var6;
-}
-((void (*)(val*, val*))(var_file->class->vft[COLOR_stream__OStream__write]))(var_file, var6) /* write on <var_file:OFStream>*/;
-var10 = ((val* (*)(val*))(self->class->vft[COLOR_flow__FlowVisitor__flows]))(self) /* flows on <self:FlowVisitor>*/;
-var11 = ((val* (*)(val*))(var10->class->vft[COLOR_abstract_collection__Collection__iterator]))(var10) /* iterator on <var10:Array[FlowContext]>*/;
-for(;;) {
-var12 = ((short int (*)(val*))(var11->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var11) /* is_ok on <var11:Iterator[nullable Object]>*/;
-if(!var12) break;
-var13 = ((val* (*)(val*))(var11->class->vft[COLOR_abstract_collection__Iterator__item]))(var11) /* item on <var11:Iterator[nullable Object]>*/;
-var_f = var13;
-if (varonce14) {
-var15 = varonce14;
-} else {
-var16 = "";
-var17 = 0;
-var18 = string__NativeString__to_s_with_length(var16, var17);
-var15 = var18;
-varonce14 = var15;
-}
-var_s = var15;
-var19 = ((val* (*)(val*))(var_f->class->vft[COLOR_flow__FlowContext__node]))(var_f) /* node on <var_f:FlowContext>*/;
-/* <var19:nullable ANode> isa AExpr */
-cltype = type_parser_nodes__AExpr.color;
-idtype = type_parser_nodes__AExpr.id;
-if(var19 == NULL) {
-var20 = 0;
-} else {
-if(cltype >= var19->type->table_size) {
-var20 = 0;
-} else {
-var20 = var19->type->type_table[cltype] == idtype;
-}
-}
-if (var20){
-var21 = NEW_array__Array(&type_array__Arraykernel__Object);
-var22 = 3;
-((void (*)(val*, long))(var21->class->vft[COLOR_array__Array__with_capacity]))(var21, var22) /* with_capacity on <var21:Array[Object]>*/;
-var_ = var21;
-if (varonce23) {
-var24 = varonce23;
-} else {
-var25 = "\\nmain=";
-var26 = 7;
-var27 = string__NativeString__to_s_with_length(var25, var26);
-var24 = var27;
-varonce23 = var24;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var24) /* add on <var_:Array[Object]>*/;
-var28 = ((val* (*)(val*))(var_f->class->vft[COLOR_flow__FlowContext__node]))(var_f) /* node on <var_f:FlowContext>*/;
-/* <var28:nullable ANode> isa AExpr */
-cltype30 = type_parser_nodes__AExpr.color;
-idtype31 = type_parser_nodes__AExpr.id;
-if(var28 == NULL) {
-var29 = 0;
-} else {
-if(cltype30 >= var28->type->table_size) {
-var29 = 0;
-} else {
-var29 = var28->type->type_table[cltype30] == idtype31;
-}