c_src: regenerate
[nit.git] / c_src / nitc__flow.sep.1.c
similarity index 57%
rename from c_src/nit__flow.sep.1.c
rename to c_src/nitc__flow.sep.1.c
index 5aac71c..9c58f88 100644 (file)
@@ -1,12 +1,12 @@
-#include "nit__flow.sep.0.h"
+#include "nitc__flow.sep.0.h"
 /* method flow#ToolContext#flow_phase for (self: ToolContext): Phase */
-val* nit__flow___ToolContext___flow_phase(val* self) {
+val* nitc__flow___ToolContext___flow_phase(val* self) {
 val* var /* : Phase */;
 val* var1 /* : Phase */;
-var1 = self->attrs[COLOR_nit__flow__ToolContext___flow_phase].val; /* _flow_phase on <self:ToolContext> */
+var1 = self->attrs[COLOR_nitc__flow__ToolContext___flow_phase].val; /* _flow_phase on <self:ToolContext> */
 if (unlikely(var1 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _flow_phase");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 23);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 23);
 fatal_exit(1);
 }
 var = var1;
@@ -14,17 +14,17 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowPhase#process_npropdef for (self: FlowPhase, APropdef) */
-void nit__flow___nit__flow__FlowPhase___nit__phase__Phase__process_npropdef(val* self, val* p0) {
+void nitc__flow___nitc__flow__FlowPhase___nitc__phase__Phase__process_npropdef(val* self, val* p0) {
 val* var_npropdef /* var npropdef: APropdef */;
 val* var /* : ToolContext */;
 val* var2 /* : ToolContext */;
 var_npropdef = p0;
 {
 { /* Inline phase#Phase#toolcontext (self) on <self:FlowPhase> */
-var2 = self->attrs[COLOR_nit__phase__Phase___toolcontext].val; /* _toolcontext on <self:FlowPhase> */
+var2 = self->attrs[COLOR_nitc__phase__Phase___toolcontext].val; /* _toolcontext on <self:FlowPhase> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__phase, 200);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase, 200);
 fatal_exit(1);
 }
 var = var2;
@@ -32,18 +32,18 @@ RET_LABEL1:(void)0;
 }
 }
 {
-nit__flow___APropdef___do_flow(var_npropdef, var); /* Direct call flow#APropdef#do_flow on <var_npropdef:APropdef>*/
+nitc__flow___APropdef___do_flow(var_npropdef, var); /* Direct call flow#APropdef#do_flow on <var_npropdef:APropdef>*/
 }
 RET_LABEL:;
 }
 /* method flow#FlowVisitor#current_flow_context for (self: FlowVisitor): FlowContext */
-val* nit__flow___nit__flow__FlowVisitor___current_flow_context(val* self) {
+val* nitc__flow___nitc__flow__FlowVisitor___current_flow_context(val* self) {
 val* var /* : FlowContext */;
 val* var1 /* : FlowContext */;
-var1 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+var1 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
 if (unlikely(var1 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var = var1;
@@ -51,18 +51,18 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowVisitor#current_flow_context= for (self: FlowVisitor, FlowContext) */
-void nit__flow___nit__flow__FlowVisitor___current_flow_context_61d(val* self, val* p0) {
-self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = p0; /* _current_flow_context on <self:FlowVisitor> */
+void nitc__flow___nitc__flow__FlowVisitor___current_flow_context_61d(val* self, val* p0) {
+self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = p0; /* _current_flow_context on <self:FlowVisitor> */
 RET_LABEL:;
 }
 /* method flow#FlowVisitor#toolcontext for (self: FlowVisitor): ToolContext */
-val* nit__flow___nit__flow__FlowVisitor___toolcontext(val* self) {
+val* nitc__flow___nitc__flow__FlowVisitor___toolcontext(val* self) {
 val* var /* : ToolContext */;
 val* var1 /* : ToolContext */;
-var1 = self->attrs[COLOR_nit__flow__FlowVisitor___toolcontext].val; /* _toolcontext on <self:FlowVisitor> */
+var1 = self->attrs[COLOR_nitc__flow__FlowVisitor___toolcontext].val; /* _toolcontext on <self:FlowVisitor> */
 if (unlikely(var1 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 39);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 39);
 fatal_exit(1);
 }
 var = var1;
@@ -70,12 +70,12 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowVisitor#toolcontext= for (self: FlowVisitor, ToolContext) */
-void nit__flow___nit__flow__FlowVisitor___toolcontext_61d(val* self, val* p0) {
-self->attrs[COLOR_nit__flow__FlowVisitor___toolcontext].val = p0; /* _toolcontext on <self:FlowVisitor> */
+void nitc__flow___nitc__flow__FlowVisitor___toolcontext_61d(val* self, val* p0) {
+self->attrs[COLOR_nitc__flow__FlowVisitor___toolcontext].val = p0; /* _toolcontext on <self:FlowVisitor> */
 RET_LABEL:;
 }
 /* method flow#FlowVisitor#init for (self: FlowVisitor) */
-void nit__flow___nit__flow__FlowVisitor___standard__kernel__Object__init(val* self) {
+void nitc__flow___nitc__flow__FlowVisitor___core__kernel__Object__init(val* self) {
 val* var /* : Array[FlowContext] */;
 val* var2 /* : Array[FlowContext] */;
 val* var3 /* : FlowContext */;
@@ -83,14 +83,14 @@ val* var5 /* : FlowContext */;
 val* var6 /* : FlowContext */;
 val* var8 /* : FlowContext */;
 {
-((void(*)(val* self))(self->class->vft[COLOR_nit__flow___nit__flow__FlowVisitor___standard__kernel__Object__init]))(self); /* init on <self:FlowVisitor>*/
+((void(*)(val* self))(self->class->vft[COLOR_nitc__flow___nitc__flow__FlowVisitor___core__kernel__Object__init]))(self); /* init on <self:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowVisitor#flows (self) on <self:FlowVisitor> */
-var2 = self->attrs[COLOR_nit__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
+var2 = self->attrs[COLOR_nitc__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _flows");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 76);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 76);
 fatal_exit(1);
 }
 var = var2;
@@ -99,10 +99,10 @@ RET_LABEL1:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (self) on <self:FlowVisitor> */
-var5 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+var5 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
 if (unlikely(var5 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var3 = var5;
@@ -110,14 +110,14 @@ RET_LABEL4:(void)0;
 }
 }
 {
-standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var, var3); /* Direct call array#Array#add on <var:Array[FlowContext]>*/
+core___core__Array___core__abstract_collection__SimpleCollection__add(var, var3); /* Direct call array#Array#add on <var:Array[FlowContext]>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (self) on <self:FlowVisitor> */
-var8 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+var8 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
 if (unlikely(var8 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var6 = var8;
@@ -126,28 +126,28 @@ RET_LABEL7:(void)0;
 }
 {
 { /* Inline flow#FlowContext#is_start= (var6,1) on <var6:FlowContext> */
-var6->attrs[COLOR_nit__flow__FlowContext___is_start].s = 1; /* _is_start on <var6:FlowContext> */
+var6->attrs[COLOR_nitc__flow__FlowContext___is_start].s = 1; /* _is_start on <var6:FlowContext> */
 RET_LABEL9:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method flow#FlowVisitor#first for (self: FlowVisitor): nullable ANode */
-val* nit__flow___nit__flow__FlowVisitor___first(val* self) {
+val* nitc__flow___nitc__flow__FlowVisitor___first(val* self) {
 val* var /* : nullable ANode */;
 val* var1 /* : nullable ANode */;
-var1 = self->attrs[COLOR_nit__flow__FlowVisitor___first].val; /* _first on <self:FlowVisitor> */
+var1 = self->attrs[COLOR_nitc__flow__FlowVisitor___first].val; /* _first on <self:FlowVisitor> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method flow#FlowVisitor#first= for (self: FlowVisitor, nullable ANode) */
-void nit__flow___nit__flow__FlowVisitor___first_61d(val* self, val* p0) {
-self->attrs[COLOR_nit__flow__FlowVisitor___first].val = p0; /* _first on <self:FlowVisitor> */
+void nitc__flow___nitc__flow__FlowVisitor___first_61d(val* self, val* p0) {
+self->attrs[COLOR_nitc__flow__FlowVisitor___first].val = p0; /* _first on <self:FlowVisitor> */
 RET_LABEL:;
 }
 /* method flow#FlowVisitor#visit for (self: FlowVisitor, ANode) */
-void nit__flow___nit__flow__FlowVisitor___nit__parser_nodes__Visitor__visit(val* self, val* p0) {
+void nitc__flow___nitc__flow__FlowVisitor___nitc__parser_nodes__Visitor__visit(val* self, val* p0) {
 val* var_node /* var node: ANode */;
 val* var /* : nullable ANode */;
 val* var2 /* : nullable ANode */;
@@ -191,7 +191,7 @@ val* var50 /* : FlowContext */;
 static val* varonce;
 val* var51 /* : String */;
 char* var52 /* : NativeString */;
-val* var53 /* : FlatString */;
+val* var53 /* : String */;
 val* var55 /* : nullable ANode */;
 val* var57 /* : nullable ANode */;
 short int var58 /* : Bool */;
@@ -201,7 +201,7 @@ short int var63 /* : Bool */;
 var_node = p0;
 {
 { /* Inline flow#FlowVisitor#first (self) on <self:FlowVisitor> */
-var2 = self->attrs[COLOR_nit__flow__FlowVisitor___first].val; /* _first on <self:FlowVisitor> */
+var2 = self->attrs[COLOR_nitc__flow__FlowVisitor___first].val; /* _first on <self:FlowVisitor> */
 var = var2;
 RET_LABEL1:(void)0;
 }
@@ -231,7 +231,7 @@ var3 = var4;
 if (var3){
 {
 { /* Inline flow#FlowVisitor#first= (self,var_node) on <self:FlowVisitor> */
-self->attrs[COLOR_nit__flow__FlowVisitor___first].val = var_node; /* _first on <self:FlowVisitor> */
+self->attrs[COLOR_nitc__flow__FlowVisitor___first].val = var_node; /* _first on <self:FlowVisitor> */
 RET_LABEL9:(void)0;
 }
 }
@@ -239,10 +239,10 @@ RET_LABEL9:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (self) on <self:FlowVisitor> */
-var12 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+var12 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
 if (unlikely(var12 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var10 = var12;
@@ -251,7 +251,7 @@ RET_LABEL11:(void)0;
 }
 {
 { /* Inline flow#FlowContext#node (var10) on <var10:FlowContext> */
-var15 = var10->attrs[COLOR_nit__flow__FlowContext___node].val; /* _node on <var10:FlowContext> */
+var15 = var10->attrs[COLOR_nitc__flow__FlowContext___node].val; /* _node on <var10:FlowContext> */
 var13 = var15;
 RET_LABEL14:(void)0;
 }
@@ -281,10 +281,10 @@ var16 = var17;
 if (var16){
 {
 { /* Inline flow#FlowVisitor#current_flow_context (self) on <self:FlowVisitor> */
-var24 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+var24 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
 if (unlikely(var24 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var22 = var24;
@@ -293,18 +293,18 @@ RET_LABEL23:(void)0;
 }
 {
 { /* Inline flow#FlowContext#node= (var22,var_node) on <var22:FlowContext> */
-var22->attrs[COLOR_nit__flow__FlowContext___node].val = var_node; /* _node on <var22:FlowContext> */
+var22->attrs[COLOR_nitc__flow__FlowContext___node].val = var_node; /* _node on <var22:FlowContext> */
 RET_LABEL25:(void)0;
 }
 }
 } else {
 }
 {
-((void(*)(val* self, val* p0))(var_node->class->vft[COLOR_nit__flow__ANode__accept_flow_visitor]))(var_node, self); /* accept_flow_visitor on <var_node:ANode>*/
+((void(*)(val* self, val* p0))(var_node->class->vft[COLOR_nitc__flow__ANode__accept_flow_visitor]))(var_node, self); /* accept_flow_visitor on <var_node:ANode>*/
 }
 /* <var_node:ANode> isa AExpr */
-cltype = type_nit__AExpr.color;
-idtype = type_nit__AExpr.id;
+cltype = type_nitc__AExpr.color;
+idtype = type_nitc__AExpr.id;
 if(cltype >= var_node->type->table_size) {
 var26 = 0;
 } else {
@@ -313,10 +313,10 @@ var26 = var_node->type->type_table[cltype] == idtype;
 if (var26){
 {
 { /* Inline flow#FlowVisitor#current_flow_context (self) on <self:FlowVisitor> */
-var29 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+var29 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
 if (unlikely(var29 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var27 = var29;
@@ -326,16 +326,16 @@ RET_LABEL28:(void)0;
 var_flow = var27;
 {
 { /* Inline flow#AExpr#after_flow_context= (var_node,var_flow) on <var_node:ANode(AExpr)> */
-var_node->attrs[COLOR_nit__flow__AExpr___after_flow_context].val = var_flow; /* _after_flow_context on <var_node:ANode(AExpr)> */
+var_node->attrs[COLOR_nitc__flow__AExpr___after_flow_context].val = var_flow; /* _after_flow_context on <var_node:ANode(AExpr)> */
 RET_LABEL30:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#when_true (var_flow) on <var_flow:FlowContext> */
-var34 = var_flow->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_flow:FlowContext> */
+var34 = var_flow->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_flow:FlowContext> */
 if (unlikely(var34 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var32 = var34;
@@ -346,7 +346,7 @@ RET_LABEL33:(void)0;
 { /* Inline kernel#Object#!= (var32,var_flow) on <var32:FlowContext> */
 var_other37 = var_flow;
 {
-var38 = ((short int(*)(val* self, val* p0))(var32->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var32, var_other37); /* == on <var32:FlowContext>*/
+var38 = ((short int(*)(val* self, val* p0))(var32->class->vft[COLOR_core__kernel__Object___61d_61d]))(var32, var_other37); /* == on <var32:FlowContext>*/
 }
 var39 = !var38;
 var35 = var39;
@@ -360,10 +360,10 @@ var31 = var_;
 } else {
 {
 { /* Inline flow#FlowContext#when_false (var_flow) on <var_flow:FlowContext> */
-var42 = var_flow->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_flow:FlowContext> */
+var42 = var_flow->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_flow:FlowContext> */
 if (unlikely(var42 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var40 = var42;
@@ -374,7 +374,7 @@ RET_LABEL41:(void)0;
 { /* Inline kernel#Object#!= (var40,var_flow) on <var40:FlowContext> */
 var_other37 = var_flow;
 {
-var45 = ((short int(*)(val* self, val* p0))(var40->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var40, var_other37); /* == on <var40:FlowContext>*/
+var45 = ((short int(*)(val* self, val* p0))(var40->class->vft[COLOR_core__kernel__Object___61d_61d]))(var40, var_other37); /* == on <var40:FlowContext>*/
 }
 var46 = !var45;
 var43 = var46;
@@ -386,14 +386,14 @@ var31 = var43;
 }
 if (var31){
 {
-var47 = nit__flow___nit__flow__FlowVisitor___make_sub_flow(self);
+var47 = nitc__flow___nitc__flow__FlowVisitor___make_sub_flow(self);
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (self) on <self:FlowVisitor> */
-var50 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+var50 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
 if (unlikely(var50 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var48 = var50;
@@ -404,13 +404,13 @@ if (likely(varonce!=NULL)) {
 var51 = varonce;
 } else {
 var52 = "AUTOSUB";
-var53 = standard___standard__NativeString___to_s_with_length(var52, 7l);
+var53 = core__flat___NativeString___to_s_full(var52, 7l, 7l);
 var51 = var53;
 varonce = var51;
 }
 {
 { /* Inline flow#FlowContext#name= (var48,var51) on <var48:FlowContext> */
-var48->attrs[COLOR_nit__flow__FlowContext___name].val = var51; /* _name on <var48:FlowContext> */
+var48->attrs[COLOR_nitc__flow__FlowContext___name].val = var51; /* _name on <var48:FlowContext> */
 RET_LABEL54:(void)0;
 }
 }
@@ -420,7 +420,7 @@ RET_LABEL54:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#first (self) on <self:FlowVisitor> */
-var57 = self->attrs[COLOR_nit__flow__FlowVisitor___first].val; /* _first on <self:FlowVisitor> */
+var57 = self->attrs[COLOR_nitc__flow__FlowVisitor___first].val; /* _first on <self:FlowVisitor> */
 var55 = var57;
 RET_LABEL56:(void)0;
 }
@@ -450,25 +450,25 @@ if (var58){
 RET_LABEL:;
 }
 /* method flow#FlowVisitor#visit_expr for (self: FlowVisitor, AExpr): FlowContext */
-val* nit__flow___nit__flow__FlowVisitor___visit_expr(val* self, val* p0) {
+val* nitc__flow___nitc__flow__FlowVisitor___visit_expr(val* self, val* p0) {
 val* var /* : FlowContext */;
 val* var_node /* var node: AExpr */;
 val* var1 /* : nullable FlowContext */;
 val* var3 /* : nullable FlowContext */;
 var_node = p0;
 {
-nit___nit__Visitor___enter_visit(self, var_node); /* Direct call parser_nodes#Visitor#enter_visit on <self:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(self, var_node); /* Direct call parser_nodes#Visitor#enter_visit on <self:FlowVisitor>*/
 }
 {
 { /* Inline flow#AExpr#after_flow_context (var_node) on <var_node:AExpr> */
-var3 = var_node->attrs[COLOR_nit__flow__AExpr___after_flow_context].val; /* _after_flow_context on <var_node:AExpr> */
+var3 = var_node->attrs[COLOR_nitc__flow__AExpr___after_flow_context].val; /* _after_flow_context on <var_node:AExpr> */
 var1 = var3;
 RET_LABEL2:(void)0;
 }
 }
 if (unlikely(var1 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Cast failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 73);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 73);
 fatal_exit(1);
 }
 var = var1;
@@ -477,13 +477,13 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowVisitor#flows for (self: FlowVisitor): Array[FlowContext] */
-val* nit__flow___nit__flow__FlowVisitor___flows(val* self) {
+val* nitc__flow___nitc__flow__FlowVisitor___flows(val* self) {
 val* var /* : Array[FlowContext] */;
 val* var1 /* : Array[FlowContext] */;
-var1 = self->attrs[COLOR_nit__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
+var1 = self->attrs[COLOR_nitc__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
 if (unlikely(var1 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _flows");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 76);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 76);
 fatal_exit(1);
 }
 var = var1;
@@ -491,7 +491,7 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowVisitor#make_sub_flow for (self: FlowVisitor): FlowContext */
-val* nit__flow___nit__flow__FlowVisitor___make_sub_flow(val* self) {
+val* nitc__flow___nitc__flow__FlowVisitor___make_sub_flow(val* self) {
 val* var /* : FlowContext */;
 val* var1 /* : FlowContext */;
 val* var_flow /* var flow: FlowContext */;
@@ -501,7 +501,7 @@ val* var6 /* : nullable ANode */;
 val* var8 /* : nullable ANode */;
 val* var10 /* : FlowContext */;
 val* var12 /* : FlowContext */;
-var1 = NEW_nit__FlowContext(&type_nit__FlowContext);
+var1 = NEW_nitc__FlowContext(&type_nitc__FlowContext);
 {
 { /* Inline kernel#Object#init (var1) on <var1:FlowContext> */
 RET_LABEL2:(void)0;
@@ -510,10 +510,10 @@ RET_LABEL2:(void)0;
 var_flow = var1;
 {
 { /* Inline flow#FlowVisitor#flows (self) on <self:FlowVisitor> */
-var5 = self->attrs[COLOR_nit__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
+var5 = self->attrs[COLOR_nitc__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
 if (unlikely(var5 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _flows");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 76);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 76);
 fatal_exit(1);
 }
 var3 = var5;
@@ -521,27 +521,27 @@ RET_LABEL4:(void)0;
 }
 }
 {
-standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var3, var_flow); /* Direct call array#Array#add on <var3:Array[FlowContext]>*/
+core___core__Array___core__abstract_collection__SimpleCollection__add(var3, var_flow); /* Direct call array#Array#add on <var3:Array[FlowContext]>*/
 }
 {
 { /* Inline parser_nodes#Visitor#current_node (self) on <self:FlowVisitor> */
-var8 = self->attrs[COLOR_nit__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
+var8 = self->attrs[COLOR_nitc__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
 var6 = var8;
 RET_LABEL7:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#node= (var_flow,var6) on <var_flow:FlowContext> */
-var_flow->attrs[COLOR_nit__flow__FlowContext___node].val = var6; /* _node on <var_flow:FlowContext> */
+var_flow->attrs[COLOR_nitc__flow__FlowContext___node].val = var6; /* _node on <var_flow:FlowContext> */
 RET_LABEL9:(void)0;
 }
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (self) on <self:FlowVisitor> */
-var12 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+var12 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
 if (unlikely(var12 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var10 = var12;
@@ -549,11 +549,11 @@ RET_LABEL11:(void)0;
 }
 }
 {
-nit___nit__FlowContext___add_previous(var_flow, var10); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
+nitc___nitc__FlowContext___add_previous(var_flow, var10); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (self,var_flow) on <self:FlowVisitor> */
-self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var_flow; /* _current_flow_context on <self:FlowVisitor> */
+self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var_flow; /* _current_flow_context on <self:FlowVisitor> */
 RET_LABEL13:(void)0;
 }
 }
@@ -563,7 +563,7 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowVisitor#make_merge_flow for (self: FlowVisitor, FlowContext, FlowContext): FlowContext */
-val* nit__flow___nit__flow__FlowVisitor___make_merge_flow(val* self, val* p0, val* p1) {
+val* nitc__flow___nitc__flow__FlowVisitor___make_merge_flow(val* self, val* p0, val* p1) {
 val* var /* : FlowContext */;
 val* var_flow1 /* var flow1: FlowContext */;
 val* var_flow2 /* var flow2: FlowContext */;
@@ -575,7 +575,7 @@ val* var6 /* : nullable ANode */;
 val* var8 /* : nullable ANode */;
 var_flow1 = p0;
 var_flow2 = p1;
-var1 = NEW_nit__FlowContext(&type_nit__FlowContext);
+var1 = NEW_nitc__FlowContext(&type_nitc__FlowContext);
 {
 { /* Inline kernel#Object#init (var1) on <var1:FlowContext> */
 RET_LABEL2:(void)0;
@@ -584,10 +584,10 @@ RET_LABEL2:(void)0;
 var_flow = var1;
 {
 { /* Inline flow#FlowVisitor#flows (self) on <self:FlowVisitor> */
-var5 = self->attrs[COLOR_nit__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
+var5 = self->attrs[COLOR_nitc__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
 if (unlikely(var5 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _flows");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 76);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 76);
 fatal_exit(1);
 }
 var3 = var5;
@@ -595,30 +595,30 @@ RET_LABEL4:(void)0;
 }
 }
 {
-standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var3, var_flow); /* Direct call array#Array#add on <var3:Array[FlowContext]>*/
+core___core__Array___core__abstract_collection__SimpleCollection__add(var3, var_flow); /* Direct call array#Array#add on <var3:Array[FlowContext]>*/
 }
 {
 { /* Inline parser_nodes#Visitor#current_node (self) on <self:FlowVisitor> */
-var8 = self->attrs[COLOR_nit__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
+var8 = self->attrs[COLOR_nitc__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
 var6 = var8;
 RET_LABEL7:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#node= (var_flow,var6) on <var_flow:FlowContext> */
-var_flow->attrs[COLOR_nit__flow__FlowContext___node].val = var6; /* _node on <var_flow:FlowContext> */
+var_flow->attrs[COLOR_nitc__flow__FlowContext___node].val = var6; /* _node on <var_flow:FlowContext> */
 RET_LABEL9:(void)0;
 }
 }
 {
-nit___nit__FlowContext___add_previous(var_flow, var_flow1); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
+nitc___nitc__FlowContext___add_previous(var_flow, var_flow1); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
 }
 {
-nit___nit__FlowContext___add_previous(var_flow, var_flow2); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
+nitc___nitc__FlowContext___add_previous(var_flow, var_flow2); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (self,var_flow) on <self:FlowVisitor> */
-self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var_flow; /* _current_flow_context on <self:FlowVisitor> */
+self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var_flow; /* _current_flow_context on <self:FlowVisitor> */
 RET_LABEL10:(void)0;
 }
 }
@@ -628,7 +628,7 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowVisitor#make_true_false_flow for (self: FlowVisitor, FlowContext, FlowContext): FlowContext */
-val* nit__flow___nit__flow__FlowVisitor___make_true_false_flow(val* self, val* p0, val* p1) {
+val* nitc__flow___nitc__flow__FlowVisitor___make_true_false_flow(val* self, val* p0, val* p1) {
 val* var /* : FlowContext */;
 val* var_true_flow /* var true_flow: FlowContext */;
 val* var_false_flow /* var false_flow: FlowContext */;
@@ -640,7 +640,7 @@ val* var6 /* : nullable ANode */;
 val* var8 /* : nullable ANode */;
 var_true_flow = p0;
 var_false_flow = p1;
-var1 = NEW_nit__FlowContext(&type_nit__FlowContext);
+var1 = NEW_nitc__FlowContext(&type_nitc__FlowContext);
 {
 { /* Inline kernel#Object#init (var1) on <var1:FlowContext> */
 RET_LABEL2:(void)0;
@@ -649,10 +649,10 @@ RET_LABEL2:(void)0;
 var_flow = var1;
 {
 { /* Inline flow#FlowVisitor#flows (self) on <self:FlowVisitor> */
-var5 = self->attrs[COLOR_nit__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
+var5 = self->attrs[COLOR_nitc__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
 if (unlikely(var5 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _flows");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 76);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 76);
 fatal_exit(1);
 }
 var3 = var5;
@@ -660,42 +660,42 @@ RET_LABEL4:(void)0;
 }
 }
 {
-standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var3, var_flow); /* Direct call array#Array#add on <var3:Array[FlowContext]>*/
+core___core__Array___core__abstract_collection__SimpleCollection__add(var3, var_flow); /* Direct call array#Array#add on <var3:Array[FlowContext]>*/
 }
 {
 { /* Inline parser_nodes#Visitor#current_node (self) on <self:FlowVisitor> */
-var8 = self->attrs[COLOR_nit__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
+var8 = self->attrs[COLOR_nitc__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
 var6 = var8;
 RET_LABEL7:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#node= (var_flow,var6) on <var_flow:FlowContext> */
-var_flow->attrs[COLOR_nit__flow__FlowContext___node].val = var6; /* _node on <var_flow:FlowContext> */
+var_flow->attrs[COLOR_nitc__flow__FlowContext___node].val = var6; /* _node on <var_flow:FlowContext> */
 RET_LABEL9:(void)0;
 }
 }
 {
-nit___nit__FlowContext___add_previous(var_flow, var_true_flow); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
+nitc___nitc__FlowContext___add_previous(var_flow, var_true_flow); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
 }
 {
-nit___nit__FlowContext___add_previous(var_flow, var_false_flow); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
+nitc___nitc__FlowContext___add_previous(var_flow, var_false_flow); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
 }
 {
 { /* Inline flow#FlowContext#when_true= (var_flow,var_true_flow) on <var_flow:FlowContext> */
-var_flow->attrs[COLOR_nit__flow__FlowContext___when_true].val = var_true_flow; /* _when_true on <var_flow:FlowContext> */
+var_flow->attrs[COLOR_nitc__flow__FlowContext___when_true].val = var_true_flow; /* _when_true on <var_flow:FlowContext> */
 RET_LABEL10:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#when_false= (var_flow,var_false_flow) on <var_flow:FlowContext> */
-var_flow->attrs[COLOR_nit__flow__FlowContext___when_false].val = var_false_flow; /* _when_false on <var_flow:FlowContext> */
+var_flow->attrs[COLOR_nitc__flow__FlowContext___when_false].val = var_false_flow; /* _when_false on <var_flow:FlowContext> */
 RET_LABEL11:(void)0;
 }
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (self,var_flow) on <self:FlowVisitor> */
-self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var_flow; /* _current_flow_context on <self:FlowVisitor> */
+self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var_flow; /* _current_flow_context on <self:FlowVisitor> */
 RET_LABEL12:(void)0;
 }
 }
@@ -705,7 +705,7 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowVisitor#make_sub_true_false_flow for (self: FlowVisitor): FlowContext */
-val* nit__flow___nit__flow__FlowVisitor___make_sub_true_false_flow(val* self) {
+val* nitc__flow___nitc__flow__FlowVisitor___make_sub_true_false_flow(val* self) {
 val* var /* : FlowContext */;
 val* var1 /* : FlowContext */;
 val* var3 /* : FlowContext */;
@@ -719,7 +719,7 @@ val* var11 /* : nullable ANode */;
 static val* varonce;
 val* var13 /* : String */;
 char* var14 /* : NativeString */;
-val* var15 /* : FlatString */;
+val* var15 /* : String */;
 val* var17 /* : FlowContext */;
 val* var_false_flow /* var false_flow: FlowContext */;
 val* var19 /* : Array[FlowContext] */;
@@ -729,14 +729,14 @@ val* var24 /* : nullable ANode */;
 static val* varonce26;
 val* var27 /* : String */;
 char* var28 /* : NativeString */;
-val* var29 /* : FlatString */;
+val* var29 /* : String */;
 val* var31 /* : FlowContext */;
 {
 { /* Inline flow#FlowVisitor#current_flow_context (self) on <self:FlowVisitor> */
-var3 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+var3 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
 if (unlikely(var3 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var1 = var3;
@@ -744,7 +744,7 @@ RET_LABEL2:(void)0;
 }
 }
 var_orig_flow = var1;
-var4 = NEW_nit__FlowContext(&type_nit__FlowContext);
+var4 = NEW_nitc__FlowContext(&type_nitc__FlowContext);
 {
 { /* Inline kernel#Object#init (var4) on <var4:FlowContext> */
 RET_LABEL5:(void)0;
@@ -753,10 +753,10 @@ RET_LABEL5:(void)0;
 var_true_flow = var4;
 {
 { /* Inline flow#FlowVisitor#flows (self) on <self:FlowVisitor> */
-var8 = self->attrs[COLOR_nit__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
+var8 = self->attrs[COLOR_nitc__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
 if (unlikely(var8 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _flows");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 76);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 76);
 fatal_exit(1);
 }
 var6 = var8;
@@ -764,39 +764,39 @@ RET_LABEL7:(void)0;
 }
 }
 {
-standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var6, var_true_flow); /* Direct call array#Array#add on <var6:Array[FlowContext]>*/
+core___core__Array___core__abstract_collection__SimpleCollection__add(var6, var_true_flow); /* Direct call array#Array#add on <var6:Array[FlowContext]>*/
 }
 {
 { /* Inline parser_nodes#Visitor#current_node (self) on <self:FlowVisitor> */
-var11 = self->attrs[COLOR_nit__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
+var11 = self->attrs[COLOR_nitc__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
 var9 = var11;
 RET_LABEL10:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#node= (var_true_flow,var9) on <var_true_flow:FlowContext> */
-var_true_flow->attrs[COLOR_nit__flow__FlowContext___node].val = var9; /* _node on <var_true_flow:FlowContext> */
+var_true_flow->attrs[COLOR_nitc__flow__FlowContext___node].val = var9; /* _node on <var_true_flow:FlowContext> */
 RET_LABEL12:(void)0;
 }
 }
 {
-nit___nit__FlowContext___add_previous(var_true_flow, var_orig_flow); /* Direct call flow#FlowContext#add_previous on <var_true_flow:FlowContext>*/
+nitc___nitc__FlowContext___add_previous(var_true_flow, var_orig_flow); /* Direct call flow#FlowContext#add_previous on <var_true_flow:FlowContext>*/
 }
 if (likely(varonce!=NULL)) {
 var13 = varonce;
 } else {
 var14 = "TRUE";
-var15 = standard___standard__NativeString___to_s_with_length(var14, 4l);
+var15 = core__flat___NativeString___to_s_full(var14, 4l, 4l);
 var13 = var15;
 varonce = var13;
 }
 {
 { /* Inline flow#FlowContext#name= (var_true_flow,var13) on <var_true_flow:FlowContext> */
-var_true_flow->attrs[COLOR_nit__flow__FlowContext___name].val = var13; /* _name on <var_true_flow:FlowContext> */
+var_true_flow->attrs[COLOR_nitc__flow__FlowContext___name].val = var13; /* _name on <var_true_flow:FlowContext> */
 RET_LABEL16:(void)0;
 }
 }
-var17 = NEW_nit__FlowContext(&type_nit__FlowContext);
+var17 = NEW_nitc__FlowContext(&type_nitc__FlowContext);
 {
 { /* Inline kernel#Object#init (var17) on <var17:FlowContext> */
 RET_LABEL18:(void)0;
@@ -805,10 +805,10 @@ RET_LABEL18:(void)0;
 var_false_flow = var17;
 {
 { /* Inline flow#FlowVisitor#flows (self) on <self:FlowVisitor> */
-var21 = self->attrs[COLOR_nit__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
+var21 = self->attrs[COLOR_nitc__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
 if (unlikely(var21 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _flows");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 76);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 76);
 fatal_exit(1);
 }
 var19 = var21;
@@ -816,40 +816,40 @@ RET_LABEL20:(void)0;
 }
 }
 {
-standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var19, var_false_flow); /* Direct call array#Array#add on <var19:Array[FlowContext]>*/
+core___core__Array___core__abstract_collection__SimpleCollection__add(var19, var_false_flow); /* Direct call array#Array#add on <var19:Array[FlowContext]>*/
 }
 {
 { /* Inline parser_nodes#Visitor#current_node (self) on <self:FlowVisitor> */
-var24 = self->attrs[COLOR_nit__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
+var24 = self->attrs[COLOR_nitc__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
 var22 = var24;
 RET_LABEL23:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#node= (var_false_flow,var22) on <var_false_flow:FlowContext> */
-var_false_flow->attrs[COLOR_nit__flow__FlowContext___node].val = var22; /* _node on <var_false_flow:FlowContext> */
+var_false_flow->attrs[COLOR_nitc__flow__FlowContext___node].val = var22; /* _node on <var_false_flow:FlowContext> */
 RET_LABEL25:(void)0;
 }
 }
 {
-nit___nit__FlowContext___add_previous(var_false_flow, var_orig_flow); /* Direct call flow#FlowContext#add_previous on <var_false_flow:FlowContext>*/
+nitc___nitc__FlowContext___add_previous(var_false_flow, var_orig_flow); /* Direct call flow#FlowContext#add_previous on <var_false_flow:FlowContext>*/
 }
 if (likely(varonce26!=NULL)) {
 var27 = varonce26;
 } else {
 var28 = "FALSE";
-var29 = standard___standard__NativeString___to_s_with_length(var28, 5l);
+var29 = core__flat___NativeString___to_s_full(var28, 5l, 5l);
 var27 = var29;
 varonce26 = var27;
 }
 {
 { /* Inline flow#FlowContext#name= (var_false_flow,var27) on <var_false_flow:FlowContext> */
-var_false_flow->attrs[COLOR_nit__flow__FlowContext___name].val = var27; /* _name on <var_false_flow:FlowContext> */
+var_false_flow->attrs[COLOR_nitc__flow__FlowContext___name].val = var27; /* _name on <var_false_flow:FlowContext> */
 RET_LABEL30:(void)0;
 }
 }
 {
-var31 = nit__flow___nit__flow__FlowVisitor___make_true_false_flow(self, var_true_flow, var_false_flow);
+var31 = nitc__flow___nitc__flow__FlowVisitor___make_true_false_flow(self, var_true_flow, var_false_flow);
 }
 var = var31;
 goto RET_LABEL;
@@ -857,7 +857,7 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowVisitor#make_unreachable_flow for (self: FlowVisitor): FlowContext */
-val* nit__flow___nit__flow__FlowVisitor___make_unreachable_flow(val* self) {
+val* nitc__flow___nitc__flow__FlowVisitor___make_unreachable_flow(val* self) {
 val* var /* : FlowContext */;
 val* var1 /* : FlowContext */;
 val* var_flow /* var flow: FlowContext */;
@@ -867,7 +867,7 @@ val* var6 /* : nullable ANode */;
 val* var8 /* : nullable ANode */;
 val* var10 /* : FlowContext */;
 val* var12 /* : FlowContext */;
-var1 = NEW_nit__FlowContext(&type_nit__FlowContext);
+var1 = NEW_nitc__FlowContext(&type_nitc__FlowContext);
 {
 { /* Inline kernel#Object#init (var1) on <var1:FlowContext> */
 RET_LABEL2:(void)0;
@@ -876,10 +876,10 @@ RET_LABEL2:(void)0;
 var_flow = var1;
 {
 { /* Inline flow#FlowVisitor#flows (self) on <self:FlowVisitor> */
-var5 = self->attrs[COLOR_nit__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
+var5 = self->attrs[COLOR_nitc__flow__FlowVisitor___flows].val; /* _flows on <self:FlowVisitor> */
 if (unlikely(var5 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _flows");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 76);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 76);
 fatal_exit(1);
 }
 var3 = var5;
@@ -887,27 +887,27 @@ RET_LABEL4:(void)0;
 }
 }
 {
-standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var3, var_flow); /* Direct call array#Array#add on <var3:Array[FlowContext]>*/
+core___core__Array___core__abstract_collection__SimpleCollection__add(var3, var_flow); /* Direct call array#Array#add on <var3:Array[FlowContext]>*/
 }
 {
 { /* Inline parser_nodes#Visitor#current_node (self) on <self:FlowVisitor> */
-var8 = self->attrs[COLOR_nit__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
+var8 = self->attrs[COLOR_nitc__parser_nodes__Visitor___current_node].val; /* _current_node on <self:FlowVisitor> */
 var6 = var8;
 RET_LABEL7:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#node= (var_flow,var6) on <var_flow:FlowContext> */
-var_flow->attrs[COLOR_nit__flow__FlowContext___node].val = var6; /* _node on <var_flow:FlowContext> */
+var_flow->attrs[COLOR_nitc__flow__FlowContext___node].val = var6; /* _node on <var_flow:FlowContext> */
 RET_LABEL9:(void)0;
 }
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (self) on <self:FlowVisitor> */
-var12 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+var12 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
 if (unlikely(var12 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var10 = var12;
@@ -915,17 +915,17 @@ RET_LABEL11:(void)0;
 }
 }
 {
-nit___nit__FlowContext___add_previous(var_flow, var10); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
+nitc___nitc__FlowContext___add_previous(var_flow, var10); /* Direct call flow#FlowContext#add_previous on <var_flow:FlowContext>*/
 }
 {
 { /* Inline flow#FlowContext#is_marked_unreachable= (var_flow,1) on <var_flow:FlowContext> */
-var_flow->attrs[COLOR_nit__flow__FlowContext___is_marked_unreachable].s = 1; /* _is_marked_unreachable on <var_flow:FlowContext> */
+var_flow->attrs[COLOR_nitc__flow__FlowContext___is_marked_unreachable].s = 1; /* _is_marked_unreachable on <var_flow:FlowContext> */
 RET_LABEL13:(void)0;
 }
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (self,var_flow) on <self:FlowVisitor> */
-self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var_flow; /* _current_flow_context on <self:FlowVisitor> */
+self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var_flow; /* _current_flow_context on <self:FlowVisitor> */
 RET_LABEL14:(void)0;
 }
 }
@@ -935,7 +935,7 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowVisitor#merge_continues_to for (self: FlowVisitor, FlowContext, nullable EscapeMark) */
-void nit__flow___nit__flow__FlowVisitor___merge_continues_to(val* self, val* p0, val* p1) {
+void nitc__flow___nitc__flow__FlowVisitor___merge_continues_to(val* self, val* p0, val* p1) {
 val* var_before_loop /* var before_loop: FlowContext */;
 val* var_escapemark /* var escapemark: nullable EscapeMark */;
 short int var /* : Bool */;
@@ -946,8 +946,8 @@ short int var5 /* : Bool */;
 val* var6 /* : Array[AEscapeExpr] */;
 val* var8 /* : Array[AEscapeExpr] */;
 val* var_ /* var : Array[AEscapeExpr] */;
-val* var9 /* : ArrayIterator[nullable Object] */;
-val* var_10 /* var : ArrayIterator[AEscapeExpr] */;
+val* var9 /* : IndexedIterator[nullable Object] */;
+val* var_10 /* var : IndexedIterator[AEscapeExpr] */;
 short int var11 /* : Bool */;
 val* var12 /* : nullable Object */;
 val* var_b /* var b: AEscapeExpr */;
@@ -987,10 +987,10 @@ goto RET_LABEL;
 }
 {
 { /* Inline scope#EscapeMark#escapes (var_escapemark) on <var_escapemark:nullable EscapeMark(EscapeMark)> */
-var8 = var_escapemark->attrs[COLOR_nit__scope__EscapeMark___escapes].val; /* _escapes on <var_escapemark:nullable EscapeMark(EscapeMark)> */
+var8 = var_escapemark->attrs[COLOR_nitc__scope__EscapeMark___escapes].val; /* _escapes on <var_escapemark:nullable EscapeMark(EscapeMark)> */
 if (unlikely(var8 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _escapes");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope, 58);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__scope, 59);
 fatal_exit(1);
 }
 var6 = var8;
@@ -999,20 +999,23 @@ RET_LABEL7:(void)0;
 }
 var_ = var6;
 {
-var9 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_);
+var9 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_);
 }
 var_10 = var9;
 for(;;) {
 {
-var11 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_10);
+var11 = ((short int(*)(val* self))((((long)var_10&3)?class_info[((long)var_10&3)]:var_10->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_10); /* is_ok on <var_10:IndexedIterator[AEscapeExpr]>*/
 }
 if (var11){
+} else {
+goto BREAK_label;
+}
 {
-var12 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_10);
+var12 = ((val*(*)(val* self))((((long)var_10&3)?class_info[((long)var_10&3)]:var_10->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_10); /* item on <var_10:IndexedIterator[AEscapeExpr]>*/
 }
 var_b = var12;
 {
-var13 = nit__flow___AEscapeExpr___before_flow_context(var_b);
+var13 = nitc__flow___AEscapeExpr___before_flow_context(var_b);
 }
 var_before = var13;
 if (var_before == NULL) {
@@ -1038,28 +1041,25 @@ RET_LABEL16:(void)0;
 var14 = var15;
 }
 if (var14){
-goto BREAK_label;
+goto BREAK_label20;
 } else {
 }
 {
-nit___nit__FlowContext___add_loop(var_before_loop, var_before); /* Direct call flow#FlowContext#add_loop on <var_before_loop:FlowContext>*/
+nitc___nitc__FlowContext___add_loop(var_before_loop, var_before); /* Direct call flow#FlowContext#add_loop on <var_before_loop:FlowContext>*/
 }
-BREAK_label: (void)0;
+BREAK_label20: (void)0;
 {
-standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_10); /* Direct call array#ArrayIterator#next on <var_10:ArrayIterator[AEscapeExpr]>*/
+((void(*)(val* self))((((long)var_10&3)?class_info[((long)var_10&3)]:var_10->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_10); /* next on <var_10:IndexedIterator[AEscapeExpr]>*/
 }
-} else {
-goto BREAK_label20;
 }
-}
-BREAK_label20: (void)0;
+BREAK_label: (void)0;
 {
-standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_10); /* Direct call array#ArrayIterator#finish on <var_10:ArrayIterator[AEscapeExpr]>*/
+((void(*)(val* self))((((long)var_10&3)?class_info[((long)var_10&3)]:var_10->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_10); /* finish on <var_10:IndexedIterator[AEscapeExpr]>*/
 }
 RET_LABEL:;
 }
 /* method flow#FlowVisitor#merge_breaks for (self: FlowVisitor, nullable EscapeMark) */
-void nit__flow___nit__flow__FlowVisitor___merge_breaks(val* self, val* p0) {
+void nitc__flow___nitc__flow__FlowVisitor___merge_breaks(val* self, val* p0) {
 val* var_escapemark /* var escapemark: nullable EscapeMark */;
 short int var /* : Bool */;
 short int var1 /* : Bool */;
@@ -1069,8 +1069,8 @@ short int var5 /* : Bool */;
 val* var6 /* : Array[AEscapeExpr] */;
 val* var8 /* : Array[AEscapeExpr] */;
 val* var_ /* var : Array[AEscapeExpr] */;
-val* var9 /* : ArrayIterator[nullable Object] */;
-val* var_10 /* var : ArrayIterator[AEscapeExpr] */;
+val* var9 /* : IndexedIterator[nullable Object] */;
+val* var_10 /* var : IndexedIterator[AEscapeExpr] */;
 short int var11 /* : Bool */;
 val* var12 /* : nullable Object */;
 val* var_b /* var b: AEscapeExpr */;
@@ -1080,9 +1080,9 @@ short int var14 /* : Bool */;
 short int var15 /* : Bool */;
 short int var17 /* : Bool */;
 short int var19 /* : Bool */;
-val* var20 /* : FlowContext */;
-val* var22 /* : FlowContext */;
+val* var21 /* : FlowContext */;
 val* var23 /* : FlowContext */;
+val* var24 /* : FlowContext */;
 var_escapemark = p0;
 if (var_escapemark == NULL) {
 var = 1; /* is null */
@@ -1112,10 +1112,10 @@ goto RET_LABEL;
 }
 {
 { /* Inline scope#EscapeMark#escapes (var_escapemark) on <var_escapemark:nullable EscapeMark(EscapeMark)> */
-var8 = var_escapemark->attrs[COLOR_nit__scope__EscapeMark___escapes].val; /* _escapes on <var_escapemark:nullable EscapeMark(EscapeMark)> */
+var8 = var_escapemark->attrs[COLOR_nitc__scope__EscapeMark___escapes].val; /* _escapes on <var_escapemark:nullable EscapeMark(EscapeMark)> */
 if (unlikely(var8 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _escapes");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope, 58);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__scope, 59);
 fatal_exit(1);
 }
 var6 = var8;
@@ -1124,20 +1124,23 @@ RET_LABEL7:(void)0;
 }
 var_ = var6;
 {
-var9 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_);
+var9 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_);
 }
 var_10 = var9;
 for(;;) {
 {
-var11 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_10);
+var11 = ((short int(*)(val* self))((((long)var_10&3)?class_info[((long)var_10&3)]:var_10->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_10); /* is_ok on <var_10:IndexedIterator[AEscapeExpr]>*/
 }
 if (var11){
+} else {
+goto BREAK_label;
+}
 {
-var12 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_10);
+var12 = ((val*(*)(val* self))((((long)var_10&3)?class_info[((long)var_10&3)]:var_10->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_10); /* item on <var_10:IndexedIterator[AEscapeExpr]>*/
 }
 var_b = var12;
 {
-var13 = nit__flow___AEscapeExpr___before_flow_context(var_b);
+var13 = nitc__flow___AEscapeExpr___before_flow_context(var_b);
 }
 var_before = var13;
 if (var_before == NULL) {
@@ -1163,46 +1166,43 @@ RET_LABEL16:(void)0;
 var14 = var15;
 }
 if (var14){
-goto BREAK_label;
+goto BREAK_label20;
 } else {
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (self) on <self:FlowVisitor> */
-var22 = self->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
-if (unlikely(var22 == NULL)) {
+var23 = self->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <self:FlowVisitor> */
+if (unlikely(var23 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
-var20 = var22;
-RET_LABEL21:(void)0;
+var21 = var23;
+RET_LABEL22:(void)0;
 }
 }
 {
-var23 = nit__flow___nit__flow__FlowVisitor___make_merge_flow(self, var20, var_before);
+var24 = nitc__flow___nitc__flow__FlowVisitor___make_merge_flow(self, var21, var_before);
 }
-BREAK_label: (void)0;
+BREAK_label20: (void)0;
 {
-standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_10); /* Direct call array#ArrayIterator#next on <var_10:ArrayIterator[AEscapeExpr]>*/
-}
-} else {
-goto BREAK_label24;
+((void(*)(val* self))((((long)var_10&3)?class_info[((long)var_10&3)]:var_10->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_10); /* next on <var_10:IndexedIterator[AEscapeExpr]>*/
 }
 }
-BREAK_label24: (void)0;
+BREAK_label: (void)0;
 {
-standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_10); /* Direct call array#ArrayIterator#finish on <var_10:ArrayIterator[AEscapeExpr]>*/
+((void(*)(val* self))((((long)var_10&3)?class_info[((long)var_10&3)]:var_10->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_10); /* finish on <var_10:IndexedIterator[AEscapeExpr]>*/
 }
 RET_LABEL:;
 }
 /* method flow#FlowContext#previous for (self: FlowContext): Array[FlowContext] */
-val* nit___nit__FlowContext___previous(val* self) {
+val* nitc___nitc__FlowContext___previous(val* self) {
 val* var /* : Array[FlowContext] */;
 val* var1 /* : Array[FlowContext] */;
-var1 = self->attrs[COLOR_nit__flow__FlowContext___previous].val; /* _previous on <self:FlowContext> */
+var1 = self->attrs[COLOR_nitc__flow__FlowContext___previous].val; /* _previous on <self:FlowContext> */
 if (unlikely(var1 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _previous");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 189);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 189);
 fatal_exit(1);
 }
 var = var1;
@@ -1210,13 +1210,13 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowContext#loops for (self: FlowContext): Array[FlowContext] */
-val* nit___nit__FlowContext___loops(val* self) {
+val* nitc___nitc__FlowContext___loops(val* self) {
 val* var /* : Array[FlowContext] */;
 val* var1 /* : Array[FlowContext] */;
-var1 = self->attrs[COLOR_nit__flow__FlowContext___loops].val; /* _loops on <self:FlowContext> */
+var1 = self->attrs[COLOR_nitc__flow__FlowContext___loops].val; /* _loops on <self:FlowContext> */
 if (unlikely(var1 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _loops");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 192);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 192);
 fatal_exit(1);
 }
 var = var1;
@@ -1224,21 +1224,21 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowContext#is_marked_unreachable for (self: FlowContext): Bool */
-short int nit___nit__FlowContext___is_marked_unreachable(val* self) {
+short int nitc___nitc__FlowContext___is_marked_unreachable(val* self) {
 short int var /* : Bool */;
 short int var1 /* : Bool */;
-var1 = self->attrs[COLOR_nit__flow__FlowContext___is_marked_unreachable].s; /* _is_marked_unreachable on <self:FlowContext> */
+var1 = self->attrs[COLOR_nitc__flow__FlowContext___is_marked_unreachable].s; /* _is_marked_unreachable on <self:FlowContext> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method flow#FlowContext#is_marked_unreachable= for (self: FlowContext, Bool) */
-void nit___nit__FlowContext___is_marked_unreachable_61d(val* self, short int p0) {
-self->attrs[COLOR_nit__flow__FlowContext___is_marked_unreachable].s = p0; /* _is_marked_unreachable on <self:FlowContext> */
+void nitc___nitc__FlowContext___is_marked_unreachable_61d(val* self, short int p0) {
+self->attrs[COLOR_nitc__flow__FlowContext___is_marked_unreachable].s = p0; /* _is_marked_unreachable on <self:FlowContext> */
 RET_LABEL:;
 }
 /* method flow#FlowContext#is_unreachable for (self: FlowContext): Bool */
-short int nit___nit__FlowContext___is_unreachable(val* self) {
+short int nitc___nitc__FlowContext___is_unreachable(val* self) {
 short int var /* : Bool */;
 short int var1 /* : Bool */;
 short int var3 /* : Bool */;
@@ -1252,7 +1252,7 @@ short int var13 /* : Bool */;
 short int var15 /* : Bool */;
 {
 { /* Inline flow#FlowContext#is_marked_unreachable (self) on <self:FlowContext> */
-var3 = self->attrs[COLOR_nit__flow__FlowContext___is_marked_unreachable].s; /* _is_marked_unreachable on <self:FlowContext> */
+var3 = self->attrs[COLOR_nitc__flow__FlowContext___is_marked_unreachable].s; /* _is_marked_unreachable on <self:FlowContext> */
 var1 = var3;
 RET_LABEL2:(void)0;
 }
@@ -1264,7 +1264,7 @@ goto RET_LABEL;
 }
 {
 { /* Inline flow#FlowContext#is_start (self) on <self:FlowContext> */
-var6 = self->attrs[COLOR_nit__flow__FlowContext___is_start].s; /* _is_start on <self:FlowContext> */
+var6 = self->attrs[COLOR_nitc__flow__FlowContext___is_start].s; /* _is_start on <self:FlowContext> */
 var4 = var6;
 RET_LABEL5:(void)0;
 }
@@ -1276,10 +1276,10 @@ goto RET_LABEL;
 }
 {
 { /* Inline flow#FlowContext#previous (self) on <self:FlowContext> */
-var9 = self->attrs[COLOR_nit__flow__FlowContext___previous].val; /* _previous on <self:FlowContext> */
+var9 = self->attrs[COLOR_nitc__flow__FlowContext___previous].val; /* _previous on <self:FlowContext> */
 if (unlikely(var9 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _previous");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 189);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 189);
 fatal_exit(1);
 }
 var7 = var9;
@@ -1288,7 +1288,7 @@ RET_LABEL8:(void)0;
 }
 {
 { /* Inline array#AbstractArrayRead#length (var7) on <var7:Array[FlowContext]> */
-var12 = var7->attrs[COLOR_standard__array__AbstractArrayRead___length].l; /* _length on <var7:Array[FlowContext]> */
+var12 = var7->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on <var7:Array[FlowContext]> */
 var10 = var12;
 RET_LABEL11:(void)0;
 }
@@ -1312,60 +1312,60 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowContext#is_already_unreachable for (self: FlowContext): Bool */
-short int nit___nit__FlowContext___is_already_unreachable(val* self) {
+short int nitc___nitc__FlowContext___is_already_unreachable(val* self) {
 short int var /* : Bool */;
 short int var1 /* : Bool */;
-var1 = self->attrs[COLOR_nit__flow__FlowContext___is_already_unreachable].s; /* _is_already_unreachable on <self:FlowContext> */
+var1 = self->attrs[COLOR_nitc__flow__FlowContext___is_already_unreachable].s; /* _is_already_unreachable on <self:FlowContext> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method flow#FlowContext#is_already_unreachable= for (self: FlowContext, Bool) */
-void nit___nit__FlowContext___is_already_unreachable_61d(val* self, short int p0) {
-self->attrs[COLOR_nit__flow__FlowContext___is_already_unreachable].s = p0; /* _is_already_unreachable on <self:FlowContext> */
+void nitc___nitc__FlowContext___is_already_unreachable_61d(val* self, short int p0) {
+self->attrs[COLOR_nitc__flow__FlowContext___is_already_unreachable].s = p0; /* _is_already_unreachable on <self:FlowContext> */
 RET_LABEL:;
 }
 /* method flow#FlowContext#is_start for (self: FlowContext): Bool */
-short int nit___nit__FlowContext___is_start(val* self) {
+short int nitc___nitc__FlowContext___is_start(val* self) {
 short int var /* : Bool */;
 short int var1 /* : Bool */;
-var1 = self->attrs[COLOR_nit__flow__FlowContext___is_start].s; /* _is_start on <self:FlowContext> */
+var1 = self->attrs[COLOR_nitc__flow__FlowContext___is_start].s; /* _is_start on <self:FlowContext> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method flow#FlowContext#is_start= for (self: FlowContext, Bool) */
-void nit___nit__FlowContext___is_start_61d(val* self, short int p0) {
-self->attrs[COLOR_nit__flow__FlowContext___is_start].s = p0; /* _is_start on <self:FlowContext> */
+void nitc___nitc__FlowContext___is_start_61d(val* self, short int p0) {
+self->attrs[COLOR_nitc__flow__FlowContext___is_start].s = p0; /* _is_start on <self:FlowContext> */
 RET_LABEL:;
 }
 /* method flow#FlowContext#node for (self: FlowContext): nullable ANode */
-val* nit___nit__FlowContext___node(val* self) {
+val* nitc___nitc__FlowContext___node(val* self) {
 val* var /* : nullable ANode */;
 val* var1 /* : nullable ANode */;
-var1 = self->attrs[COLOR_nit__flow__FlowContext___node].val; /* _node on <self:FlowContext> */
+var1 = self->attrs[COLOR_nitc__flow__FlowContext___node].val; /* _node on <self:FlowContext> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method flow#FlowContext#node= for (self: FlowContext, nullable ANode) */
-void nit___nit__FlowContext___node_61d(val* self, val* p0) {
-self->attrs[COLOR_nit__flow__FlowContext___node].val = p0; /* _node on <self:FlowContext> */
+void nitc___nitc__FlowContext___node_61d(val* self, val* p0) {
+self->attrs[COLOR_nitc__flow__FlowContext___node].val = p0; /* _node on <self:FlowContext> */
 RET_LABEL:;
 }
 /* method flow#FlowContext#name= for (self: FlowContext, String) */
-void nit___nit__FlowContext___name_61d(val* self, val* p0) {
-self->attrs[COLOR_nit__flow__FlowContext___name].val = p0; /* _name on <self:FlowContext> */
+void nitc___nitc__FlowContext___name_61d(val* self, val* p0) {
+self->attrs[COLOR_nitc__flow__FlowContext___name].val = p0; /* _name on <self:FlowContext> */
 RET_LABEL:;
 }
 /* method flow#FlowContext#when_true for (self: FlowContext): FlowContext */
-val* nit___nit__FlowContext___when_true(val* self) {
+val* nitc___nitc__FlowContext___when_true(val* self) {
 val* var /* : FlowContext */;
 val* var1 /* : FlowContext */;
-var1 = self->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <self:FlowContext> */
+var1 = self->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <self:FlowContext> */
 if (unlikely(var1 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var = var1;
@@ -1373,18 +1373,18 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowContext#when_true= for (self: FlowContext, FlowContext) */
-void nit___nit__FlowContext___when_true_61d(val* self, val* p0) {
-self->attrs[COLOR_nit__flow__FlowContext___when_true].val = p0; /* _when_true on <self:FlowContext> */
+void nitc___nitc__FlowContext___when_true_61d(val* self, val* p0) {
+self->attrs[COLOR_nitc__flow__FlowContext___when_true].val = p0; /* _when_true on <self:FlowContext> */
 RET_LABEL:;
 }
 /* method flow#FlowContext#when_false for (self: FlowContext): FlowContext */
-val* nit___nit__FlowContext___when_false(val* self) {
+val* nitc___nitc__FlowContext___when_false(val* self) {
 val* var /* : FlowContext */;
 val* var1 /* : FlowContext */;
-var1 = self->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <self:FlowContext> */
+var1 = self->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <self:FlowContext> */
 if (unlikely(var1 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var = var1;
@@ -1392,12 +1392,12 @@ RET_LABEL:;
 return var;
 }
 /* method flow#FlowContext#when_false= for (self: FlowContext, FlowContext) */
-void nit___nit__FlowContext___when_false_61d(val* self, val* p0) {
-self->attrs[COLOR_nit__flow__FlowContext___when_false].val = p0; /* _when_false on <self:FlowContext> */
+void nitc___nitc__FlowContext___when_false_61d(val* self, val* p0) {
+self->attrs[COLOR_nitc__flow__FlowContext___when_false].val = p0; /* _when_false on <self:FlowContext> */
 RET_LABEL:;
 }
 /* method flow#FlowContext#add_previous for (self: FlowContext, FlowContext) */
-void nit___nit__FlowContext___add_previous(val* self, val* p0) {
+void nitc___nitc__FlowContext___add_previous(val* self, val* p0) {
 val* var_flow /* var flow: FlowContext */;
 short int var /* : Bool */;
 short int var1 /* : Bool */;
@@ -1411,17 +1411,17 @@ val* var8 /* : Array[FlowContext] */;
 val* var10 /* : Array[FlowContext] */;
 var_flow = p0;
 {
-var1 = nit___nit__FlowContext___is_unreachable(var_flow);
+var1 = nitc___nitc__FlowContext___is_unreachable(var_flow);
 }
 var2 = !var1;
 var_ = var2;
 if (var2){
 {
 { /* Inline flow#FlowContext#previous (self) on <self:FlowContext> */
-var5 = self->attrs[COLOR_nit__flow__FlowContext___previous].val; /* _previous on <self:FlowContext> */
+var5 = self->attrs[COLOR_nitc__flow__FlowContext___previous].val; /* _previous on <self:FlowContext> */
 if (unlikely(var5 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _previous");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 189);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 189);
 fatal_exit(1);
 }
 var3 = var5;
@@ -1429,7 +1429,7 @@ RET_LABEL4:(void)0;
 }
 }
 {
-var6 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var3, var_flow);
+var6 = core___core__AbstractArrayRead___core__abstract_collection__Collection__has(var3, var_flow);
 }
 var7 = !var6;
 var = var7;
@@ -1439,10 +1439,10 @@ var = var_;
 if (var){
 {
 { /* Inline flow#FlowContext#previous (self) on <self:FlowContext> */
-var10 = self->attrs[COLOR_nit__flow__FlowContext___previous].val; /* _previous on <self:FlowContext> */
+var10 = self->attrs[COLOR_nitc__flow__FlowContext___previous].val; /* _previous on <self:FlowContext> */
 if (unlikely(var10 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _previous");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 189);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 189);
 fatal_exit(1);
 }
 var8 = var10;
@@ -1450,14 +1450,14 @@ RET_LABEL9:(void)0;
 }
 }
 {
-standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var8, var_flow); /* Direct call array#Array#add on <var8:Array[FlowContext]>*/
+core___core__Array___core__abstract_collection__SimpleCollection__add(var8, var_flow); /* Direct call array#Array#add on <var8:Array[FlowContext]>*/
 }
 } else {
 }
 RET_LABEL:;
 }
 /* method flow#FlowContext#add_loop for (self: FlowContext, FlowContext) */
-void nit___nit__FlowContext___add_loop(val* self, val* p0) {
+void nitc___nitc__FlowContext___add_loop(val* self, val* p0) {
 val* var_flow /* var flow: FlowContext */;
 short int var /* : Bool */;
 short int var1 /* : Bool */;
@@ -1471,17 +1471,17 @@ val* var8 /* : Array[FlowContext] */;
 val* var10 /* : Array[FlowContext] */;
 var_flow = p0;
 {
-var1 = nit___nit__FlowContext___is_unreachable(var_flow);
+var1 = nitc___nitc__FlowContext___is_unreachable(var_flow);
 }
 var2 = !var1;
 var_ = var2;
 if (var2){
 {
 { /* Inline flow#FlowContext#previous (self) on <self:FlowContext> */
-var5 = self->attrs[COLOR_nit__flow__FlowContext___previous].val; /* _previous on <self:FlowContext> */
+var5 = self->attrs[COLOR_nitc__flow__FlowContext___previous].val; /* _previous on <self:FlowContext> */
 if (unlikely(var5 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _previous");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 189);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 189);
 fatal_exit(1);
 }
 var3 = var5;
@@ -1489,7 +1489,7 @@ RET_LABEL4:(void)0;
 }
 }
 {
-var6 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(var3, var_flow);
+var6 = core___core__AbstractArrayRead___core__abstract_collection__Collection__has(var3, var_flow);
 }
 var7 = !var6;
 var = var7;
@@ -1499,10 +1499,10 @@ var = var_;
 if (var){
 {
 { /* Inline flow#FlowContext#loops (self) on <self:FlowContext> */
-var10 = self->attrs[COLOR_nit__flow__FlowContext___loops].val; /* _loops on <self:FlowContext> */
+var10 = self->attrs[COLOR_nitc__flow__FlowContext___loops].val; /* _loops on <self:FlowContext> */
 if (unlikely(var10 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _loops");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 192);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 192);
 fatal_exit(1);
 }
 var8 = var10;
@@ -1510,52 +1510,52 @@ RET_LABEL9:(void)0;
 }
 }
 {
-standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var8, var_flow); /* Direct call array#Array#add on <var8:Array[FlowContext]>*/
+core___core__Array___core__abstract_collection__SimpleCollection__add(var8, var_flow); /* Direct call array#Array#add on <var8:Array[FlowContext]>*/
 }
 } else {
 }
 RET_LABEL:;
 }
 /* method flow#ANode#accept_flow_visitor for (self: ANode, FlowVisitor) */
-void nit__flow___ANode___accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___ANode___accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__parser_nodes__ANode__visit_all]))(self, var_v); /* visit_all on <self:ANode>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__parser_nodes__ANode__visit_all]))(self, var_v); /* visit_all on <self:ANode>*/
 }
 RET_LABEL:;
 }
 /* method flow#APropdef#do_flow for (self: APropdef, ToolContext) */
-void nit__flow___APropdef___do_flow(val* self, val* p0) {
+void nitc__flow___APropdef___do_flow(val* self, val* p0) {
 val* var_toolcontext /* var toolcontext: ToolContext */;
 val* var /* : FlowVisitor */;
 val* var_v /* var v: FlowVisitor */;
 var_toolcontext = p0;
-var = NEW_nit__flow__FlowVisitor(&type_nit__flow__FlowVisitor);
+var = NEW_nitc__flow__FlowVisitor(&type_nitc__flow__FlowVisitor);
 {
-((void(*)(val* self, val* p0))(var->class->vft[COLOR_nit__flow__FlowVisitor__toolcontext_61d]))(var, var_toolcontext); /* toolcontext= on <var:FlowVisitor>*/
+((void(*)(val* self, val* p0))(var->class->vft[COLOR_nitc__flow__FlowVisitor__toolcontext_61d]))(var, var_toolcontext); /* toolcontext= on <var:FlowVisitor>*/
 }
 {
-((void(*)(val* self))(var->class->vft[COLOR_standard__kernel__Object__init]))(var); /* init on <var:FlowVisitor>*/
+((void(*)(val* self))(var->class->vft[COLOR_core__kernel__Object__init]))(var); /* init on <var:FlowVisitor>*/
 }
 var_v = var;
 {
-nit___nit__Visitor___enter_visit(var_v, self); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(var_v, self); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
 }
 RET_LABEL:;
 }
 /* method flow#APropdef#before_flow_context= for (self: APropdef, nullable FlowContext) */
-void nit__flow___APropdef___before_flow_context_61d(val* self, val* p0) {
-self->attrs[COLOR_nit__flow__APropdef___before_flow_context].val = p0; /* _before_flow_context on <self:APropdef> */
+void nitc__flow___APropdef___before_flow_context_61d(val* self, val* p0) {
+self->attrs[COLOR_nitc__flow__APropdef___before_flow_context].val = p0; /* _before_flow_context on <self:APropdef> */
 RET_LABEL:;
 }
 /* method flow#APropdef#after_flow_context= for (self: APropdef, nullable FlowContext) */
-void nit__flow___APropdef___after_flow_context_61d(val* self, val* p0) {
-self->attrs[COLOR_nit__flow__APropdef___after_flow_context].val = p0; /* _after_flow_context on <self:APropdef> */
+void nitc__flow___APropdef___after_flow_context_61d(val* self, val* p0) {
+self->attrs[COLOR_nitc__flow__APropdef___after_flow_context].val = p0; /* _after_flow_context on <self:APropdef> */
 RET_LABEL:;
 }
 /* method flow#APropdef#accept_flow_visitor for (self: APropdef, FlowVisitor) */
-void nit__flow___APropdef___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___APropdef___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 val* var2 /* : FlowContext */;
@@ -1564,10 +1564,10 @@ val* var6 /* : FlowContext */;
 var_v = p0;
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var2 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var2 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var = var2;
@@ -1576,19 +1576,19 @@ RET_LABEL1:(void)0;
 }
 {
 { /* Inline flow#APropdef#before_flow_context= (self,var) on <self:APropdef> */
-self->attrs[COLOR_nit__flow__APropdef___before_flow_context].val = var; /* _before_flow_context on <self:APropdef> */
+self->attrs[COLOR_nitc__flow__APropdef___before_flow_context].val = var; /* _before_flow_context on <self:APropdef> */
 RET_LABEL3:(void)0;
 }
 }
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___APropdef___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:APropdef>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___APropdef___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:APropdef>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var6 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var6 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var4 = var6;
@@ -1597,66 +1597,66 @@ RET_LABEL5:(void)0;
 }
 {
 { /* Inline flow#APropdef#after_flow_context= (self,var4) on <self:APropdef> */
-self->attrs[COLOR_nit__flow__APropdef___after_flow_context].val = var4; /* _after_flow_context on <self:APropdef> */
+self->attrs[COLOR_nitc__flow__APropdef___after_flow_context].val = var4; /* _after_flow_context on <self:APropdef> */
 RET_LABEL7:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method flow#AExpr#after_flow_context for (self: AExpr): nullable FlowContext */
-val* nit__flow___AExpr___after_flow_context(val* self) {
+val* nitc__flow___AExpr___after_flow_context(val* self) {
 val* var /* : nullable FlowContext */;
 val* var1 /* : nullable FlowContext */;
-var1 = self->attrs[COLOR_nit__flow__AExpr___after_flow_context].val; /* _after_flow_context on <self:AExpr> */
+var1 = self->attrs[COLOR_nitc__flow__AExpr___after_flow_context].val; /* _after_flow_context on <self:AExpr> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method flow#AExpr#after_flow_context= for (self: AExpr, nullable FlowContext) */
-void nit__flow___AExpr___after_flow_context_61d(val* self, val* p0) {
-self->attrs[COLOR_nit__flow__AExpr___after_flow_context].val = p0; /* _after_flow_context on <self:AExpr> */
+void nitc__flow___AExpr___after_flow_context_61d(val* self, val* p0) {
+self->attrs[COLOR_nitc__flow__AExpr___after_flow_context].val = p0; /* _after_flow_context on <self:AExpr> */
 RET_LABEL:;
 }
 /* method flow#AVarAssignExpr#accept_flow_visitor for (self: AVarAssignExpr, FlowVisitor) */
-void nit__flow___AVarAssignExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AVarAssignExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___AVarAssignExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AVarAssignExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___AVarAssignExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AVarAssignExpr>*/
 }
 {
-var = nit__flow___nit__flow__FlowVisitor___make_sub_flow(var_v);
+var = nitc__flow___nitc__flow__FlowVisitor___make_sub_flow(var_v);
 }
 {
 { /* Inline flow#AExpr#after_flow_context= (self,var) on <self:AVarAssignExpr> */
-self->attrs[COLOR_nit__flow__AExpr___after_flow_context].val = var; /* _after_flow_context on <self:AVarAssignExpr> */
+self->attrs[COLOR_nitc__flow__AExpr___after_flow_context].val = var; /* _after_flow_context on <self:AVarAssignExpr> */
 RET_LABEL1:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method flow#AReassignFormExpr#accept_flow_visitor for (self: AReassignFormExpr, FlowVisitor) */
-void nit__flow___AReassignFormExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AReassignFormExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___AReassignFormExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AReassignFormExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___AReassignFormExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AReassignFormExpr>*/
 }
 {
-var = nit__flow___nit__flow__FlowVisitor___make_sub_flow(var_v);
+var = nitc__flow___nitc__flow__FlowVisitor___make_sub_flow(var_v);
 }
 {
 { /* Inline flow#AExpr#after_flow_context= (self,var) on <self:AReassignFormExpr> */
-self->attrs[COLOR_nit__flow__AExpr___after_flow_context].val = var; /* _after_flow_context on <self:AReassignFormExpr> */
+self->attrs[COLOR_nitc__flow__AExpr___after_flow_context].val = var; /* _after_flow_context on <self:AReassignFormExpr> */
 RET_LABEL1:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method flow#ABlockExpr#accept_flow_visitor for (self: ABlockExpr, FlowVisitor) */
-void nit__flow___ABlockExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___ABlockExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : ANodes[AExpr] */;
 val* var2 /* : ANodes[AExpr] */;
@@ -1683,15 +1683,15 @@ val* var26 /* : Location */;
 static val* varonce;
 val* var27 /* : String */;
 char* var28 /* : NativeString */;
-val* var29 /* : FlatString */;
+val* var29 /* : String */;
 val* var30 /* : Message */;
 var_v = p0;
 {
 { /* Inline parser_nodes#ABlockExpr#n_expr (self) on <self:ABlockExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on <self:ABlockExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on <self:ABlockExpr> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1758);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 1744);
 fatal_exit(1);
 }
 var = var2;
@@ -1700,24 +1700,27 @@ RET_LABEL1:(void)0;
 }
 var_ = var;
 {
-var3 = nit___nit__ANodes___standard__abstract_collection__Collection__iterator(var_);
+var3 = nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_);
 }
 var_4 = var3;
 for(;;) {
 {
-var5 = ((short int(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_standard__abstract_collection__Iterator__is_ok]))(var_4); /* is_ok on <var_4:Iterator[AExpr]>*/
+var5 = ((short int(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_4); /* is_ok on <var_4:Iterator[AExpr]>*/
 }
 if (var5){
+} else {
+goto BREAK_label;
+}
 {
-var6 = ((val*(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_4); /* item on <var_4:Iterator[AExpr]>*/
+var6 = ((val*(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_4); /* item on <var_4:Iterator[AExpr]>*/
 }
 var_e = var6;
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var9 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var9 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var9 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var7 = var9;
@@ -1725,20 +1728,20 @@ RET_LABEL8:(void)0;
 }
 }
 {
-var10 = nit___nit__FlowContext___is_unreachable(var7);
+var10 = nitc___nitc__FlowContext___is_unreachable(var7);
 }
 var11 = !var10;
 if (var11){
 {
-nit___nit__Visitor___enter_visit(var_v, var_e); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(var_v, var_e); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
 }
 } else {
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var14 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var14 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var14 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var12 = var14;
@@ -1747,7 +1750,7 @@ RET_LABEL13:(void)0;
 }
 {
 { /* Inline flow#FlowContext#is_already_unreachable (var12) on <var12:FlowContext> */
-var17 = var12->attrs[COLOR_nit__flow__FlowContext___is_already_unreachable].s; /* _is_already_unreachable on <var12:FlowContext> */
+var17 = var12->attrs[COLOR_nitc__flow__FlowContext___is_already_unreachable].s; /* _is_already_unreachable on <var12:FlowContext> */
 var15 = var17;
 RET_LABEL16:(void)0;
 }
@@ -1756,10 +1759,10 @@ var18 = !var15;
 if (var18){
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var21 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var21 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var21 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var19 = var21;
@@ -1768,16 +1771,16 @@ RET_LABEL20:(void)0;
 }
 {
 { /* Inline flow#FlowContext#is_already_unreachable= (var19,1) on <var19:FlowContext> */
-var19->attrs[COLOR_nit__flow__FlowContext___is_already_unreachable].s = 1; /* _is_already_unreachable on <var19:FlowContext> */
+var19->attrs[COLOR_nitc__flow__FlowContext___is_already_unreachable].s = 1; /* _is_already_unreachable on <var19:FlowContext> */
 RET_LABEL22:(void)0;
 }
 }
 {
 { /* Inline flow#FlowVisitor#toolcontext (var_v) on <var_v:FlowVisitor> */
-var25 = var_v->attrs[COLOR_nit__flow__FlowVisitor___toolcontext].val; /* _toolcontext on <var_v:FlowVisitor> */
+var25 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___toolcontext].val; /* _toolcontext on <var_v:FlowVisitor> */
 if (unlikely(var25 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 39);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 39);
 fatal_exit(1);
 }
 var23 = var25;
@@ -1785,50 +1788,47 @@ RET_LABEL24:(void)0;
 }
 }
 {
-var26 = nit___nit__ANode___hot_location(var_e);
+var26 = nitc___nitc__ANode___hot_location(var_e);
 }
 if (likely(varonce!=NULL)) {
 var27 = varonce;
 } else {
 var28 = "Error: unreachable statement.";
-var29 = standard___standard__NativeString___to_s_with_length(var28, 29l);
+var29 = core__flat___NativeString___to_s_full(var28, 29l, 29l);
 var27 = var29;
 varonce = var27;
 }
 {
-var30 = nit___nit__ToolContext___error(var23, var26, var27);
+var30 = nitc___nitc__ToolContext___error(var23, var26, var27);
 }
 } else {
 }
 }
 {
-((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_4); /* next on <var_4:Iterator[AExpr]>*/
-}
-} else {
-goto BREAK_label;
+((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_4); /* next on <var_4:Iterator[AExpr]>*/
 }
 }
 BREAK_label: (void)0;
 {
-((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_standard__abstract_collection__Iterator__finish]))(var_4); /* finish on <var_4:Iterator[AExpr]>*/
+((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_4); /* finish on <var_4:Iterator[AExpr]>*/
 }
 RET_LABEL:;
 }
 /* method flow#AReturnExpr#accept_flow_visitor for (self: AReturnExpr, FlowVisitor) */
-void nit__flow___AReturnExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AReturnExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___AReturnExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AReturnExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___AReturnExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AReturnExpr>*/
 }
 {
-var = nit__flow___nit__flow__FlowVisitor___make_unreachable_flow(var_v);
+var = nitc__flow___nitc__flow__FlowVisitor___make_unreachable_flow(var_v);
 }
 RET_LABEL:;
 }
 /* method flow#AEscapeExpr#before_flow_context for (self: AEscapeExpr): nullable FlowContext */
-val* nit__flow___AEscapeExpr___before_flow_context(val* self) {
+val* nitc__flow___AEscapeExpr___before_flow_context(val* self) {
 val* var /* : nullable FlowContext */;
 val* var1 /* : nullable FlowContext */;
 val* var3 /* : nullable FlowContext */;
@@ -1843,7 +1843,7 @@ val* var12 /* : Array[FlowContext] */;
 val* var13 /* : nullable Object */;
 {
 { /* Inline flow#AExpr#after_flow_context (self) on <self:AEscapeExpr> */
-var3 = self->attrs[COLOR_nit__flow__AExpr___after_flow_context].val; /* _after_flow_context on <self:AEscapeExpr> */
+var3 = self->attrs[COLOR_nitc__flow__AExpr___after_flow_context].val; /* _after_flow_context on <self:AEscapeExpr> */
 var1 = var3;
 RET_LABEL2:(void)0;
 }
@@ -1878,10 +1878,10 @@ goto RET_LABEL;
 }
 {
 { /* Inline flow#FlowContext#previous (var_after) on <var_after:nullable FlowContext(FlowContext)> */
-var12 = var_after->attrs[COLOR_nit__flow__FlowContext___previous].val; /* _previous on <var_after:nullable FlowContext(FlowContext)> */
+var12 = var_after->attrs[COLOR_nitc__flow__FlowContext___previous].val; /* _previous on <var_after:nullable FlowContext(FlowContext)> */
 if (unlikely(var12 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _previous");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 189);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 189);
 fatal_exit(1);
 }
 var10 = var12;
@@ -1889,7 +1889,7 @@ RET_LABEL11:(void)0;
 }
 }
 {
-var13 = standard___standard__SequenceRead___Collection__first(var10);
+var13 = core___core__SequenceRead___Collection__first(var10);
 }
 var = var13;
 goto RET_LABEL;
@@ -1897,54 +1897,54 @@ RET_LABEL:;
 return var;
 }
 /* method flow#AEscapeExpr#accept_flow_visitor for (self: AEscapeExpr, FlowVisitor) */
-void nit__flow___AEscapeExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AEscapeExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___AEscapeExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AEscapeExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___AEscapeExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AEscapeExpr>*/
 }
 {
-var = nit__flow___nit__flow__FlowVisitor___make_unreachable_flow(var_v);
+var = nitc__flow___nitc__flow__FlowVisitor___make_unreachable_flow(var_v);
 }
 RET_LABEL:;
 }
 /* method flow#AAbortExpr#accept_flow_visitor for (self: AAbortExpr, FlowVisitor) */
-void nit__flow___AAbortExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AAbortExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___AAbortExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AAbortExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___AAbortExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AAbortExpr>*/
 }
 {
-var = nit__flow___nit__flow__FlowVisitor___make_unreachable_flow(var_v);
+var = nitc__flow___nitc__flow__FlowVisitor___make_unreachable_flow(var_v);
 }
 RET_LABEL:;
 }
 /* method flow#ADoExpr#accept_flow_visitor for (self: ADoExpr, FlowVisitor) */
-void nit__flow___ADoExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___ADoExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : nullable EscapeMark */;
 val* var2 /* : nullable EscapeMark */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___ADoExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:ADoExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___ADoExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:ADoExpr>*/
 }
 {
 { /* Inline scope#ADoExpr#break_mark (self) on <self:ADoExpr> */
-var2 = self->attrs[COLOR_nit__scope__ADoExpr___break_mark].val; /* _break_mark on <self:ADoExpr> */
+var2 = self->attrs[COLOR_nitc__scope__ADoExpr___break_mark].val; /* _break_mark on <self:ADoExpr> */
 var = var2;
 RET_LABEL1:(void)0;
 }
 }
 {
-nit__flow___nit__flow__FlowVisitor___merge_breaks(var_v, var); /* Direct call flow#FlowVisitor#merge_breaks on <var_v:FlowVisitor>*/
+nitc__flow___nitc__flow__FlowVisitor___merge_breaks(var_v, var); /* Direct call flow#FlowVisitor#merge_breaks on <var_v:FlowVisitor>*/
 }
 RET_LABEL:;
 }
 /* method flow#AIfExpr#accept_flow_visitor for (self: AIfExpr, FlowVisitor) */
-void nit__flow___AIfExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AIfExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : AExpr */;
 val* var2 /* : AExpr */;
@@ -1968,10 +1968,10 @@ val* var24 /* : FlowContext */;
 var_v = p0;
 {
 { /* Inline parser_nodes#AIfExpr#n_expr (self) on <self:AIfExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_expr].val; /* _n_expr on <self:AIfExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__AIfExpr___n_expr].val; /* _n_expr on <self:AIfExpr> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1857);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 1843);
 fatal_exit(1);
 }
 var = var2;
@@ -1979,15 +1979,15 @@ RET_LABEL1:(void)0;
 }
 }
 {
-var3 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var);
+var3 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var);
 }
 var_after_expr = var3;
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr) on <var_after_expr:FlowContext> */
-var6 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
+var6 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var4 = var6;
@@ -1996,26 +1996,26 @@ RET_LABEL5:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var4) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL7:(void)0;
 }
 }
 {
 { /* Inline parser_nodes#AIfExpr#n_then (self) on <self:AIfExpr> */
-var10 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_then].val; /* _n_then on <self:AIfExpr> */
+var10 = self->attrs[COLOR_nitc__parser_nodes__AIfExpr___n_then].val; /* _n_then on <self:AIfExpr> */
 var8 = var10;
 RET_LABEL9:(void)0;
 }
 }
 {
-nit___nit__Visitor___enter_visit(var_v, var8); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(var_v, var8); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var13 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var13 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var13 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var11 = var13;
@@ -2025,10 +2025,10 @@ RET_LABEL12:(void)0;
 var_after_then = var11;
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr) on <var_after_expr:FlowContext> */
-var16 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
+var16 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
 if (unlikely(var16 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var14 = var16;
@@ -2037,26 +2037,26 @@ RET_LABEL15:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var14) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var14; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var14; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL17:(void)0;
 }
 }
 {
 { /* Inline parser_nodes#AIfExpr#n_else (self) on <self:AIfExpr> */
-var20 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_else].val; /* _n_else on <self:AIfExpr> */
+var20 = self->attrs[COLOR_nitc__parser_nodes__AIfExpr___n_else].val; /* _n_else on <self:AIfExpr> */
 var18 = var20;
 RET_LABEL19:(void)0;
 }
 }
 {
-nit___nit__Visitor___enter_visit(var_v, var18); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(var_v, var18); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var23 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var23 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var23 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var21 = var23;
@@ -2065,12 +2065,12 @@ RET_LABEL22:(void)0;
 }
 var_after_else = var21;
 {
-var24 = nit__flow___nit__flow__FlowVisitor___make_merge_flow(var_v, var_after_then, var_after_else);
+var24 = nitc__flow___nitc__flow__FlowVisitor___make_merge_flow(var_v, var_after_then, var_after_else);
 }
 RET_LABEL:;
 }
 /* method flow#AIfexprExpr#accept_flow_visitor for (self: AIfexprExpr, FlowVisitor) */
-void nit__flow___AIfexprExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AIfexprExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : AExpr */;
 val* var2 /* : AExpr */;
@@ -2094,10 +2094,10 @@ val* var24 /* : FlowContext */;
 var_v = p0;
 {
 { /* Inline parser_nodes#AIfexprExpr#n_expr (self) on <self:AIfexprExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_expr].val; /* _n_expr on <self:AIfexprExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__AIfexprExpr___n_expr].val; /* _n_expr on <self:AIfexprExpr> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1880);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 1866);
 fatal_exit(1);
 }
 var = var2;
@@ -2105,15 +2105,15 @@ RET_LABEL1:(void)0;
 }
 }
 {
-var3 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var);
+var3 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var);
 }
 var_after_expr = var3;
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr) on <var_after_expr:FlowContext> */
-var6 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
+var6 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var4 = var6;
@@ -2122,16 +2122,16 @@ RET_LABEL5:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var4) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL7:(void)0;
 }
 }
 {
 { /* Inline parser_nodes#AIfexprExpr#n_then (self) on <self:AIfexprExpr> */
-var10 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_then].val; /* _n_then on <self:AIfexprExpr> */
+var10 = self->attrs[COLOR_nitc__parser_nodes__AIfexprExpr___n_then].val; /* _n_then on <self:AIfexprExpr> */
 if (unlikely(var10 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_then");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1886);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 1872);
 fatal_exit(1);
 }
 var8 = var10;
@@ -2139,14 +2139,14 @@ RET_LABEL9:(void)0;
 }
 }
 {
-nit___nit__Visitor___enter_visit(var_v, var8); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(var_v, var8); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var13 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var13 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var13 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var11 = var13;
@@ -2156,10 +2156,10 @@ RET_LABEL12:(void)0;
 var_after_then = var11;
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr) on <var_after_expr:FlowContext> */
-var16 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
+var16 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
 if (unlikely(var16 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var14 = var16;
@@ -2168,16 +2168,16 @@ RET_LABEL15:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var14) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var14; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var14; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL17:(void)0;
 }
 }
 {
 { /* Inline parser_nodes#AIfexprExpr#n_else (self) on <self:AIfexprExpr> */
-var20 = self->attrs[COLOR_nit__parser_nodes__AIfexprExpr___n_else].val; /* _n_else on <self:AIfexprExpr> */
+var20 = self->attrs[COLOR_nitc__parser_nodes__AIfexprExpr___n_else].val; /* _n_else on <self:AIfexprExpr> */
 if (unlikely(var20 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_else");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1892);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 1878);
 fatal_exit(1);
 }
 var18 = var20;
@@ -2185,14 +2185,14 @@ RET_LABEL19:(void)0;
 }
 }
 {
-nit___nit__Visitor___enter_visit(var_v, var18); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(var_v, var18); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var23 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var23 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var23 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var21 = var23;
@@ -2201,12 +2201,12 @@ RET_LABEL22:(void)0;
 }
 var_after_else = var21;
 {
-var24 = nit__flow___nit__flow__FlowVisitor___make_merge_flow(var_v, var_after_then, var_after_else);
+var24 = nitc__flow___nitc__flow__FlowVisitor___make_merge_flow(var_v, var_after_then, var_after_else);
 }
 RET_LABEL:;
 }
 /* method flow#AWhileExpr#accept_flow_visitor for (self: AWhileExpr, FlowVisitor) */
-void nit__flow___AWhileExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AWhileExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 val* var_before_loop /* var before_loop: FlowContext */;
@@ -2229,15 +2229,15 @@ val* var22 /* : nullable EscapeMark */;
 val* var24 /* : nullable EscapeMark */;
 var_v = p0;
 {
-var = nit__flow___nit__flow__FlowVisitor___make_sub_flow(var_v);
+var = nitc__flow___nitc__flow__FlowVisitor___make_sub_flow(var_v);
 }
 var_before_loop = var;
 {
 { /* Inline parser_nodes#AWhileExpr#n_expr (self) on <self:AWhileExpr> */
-var3 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_expr].val; /* _n_expr on <self:AWhileExpr> */
+var3 = self->attrs[COLOR_nitc__parser_nodes__AWhileExpr___n_expr].val; /* _n_expr on <self:AWhileExpr> */
 if (unlikely(var3 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1904);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 1890);
 fatal_exit(1);
 }
 var1 = var3;
@@ -2245,15 +2245,15 @@ RET_LABEL2:(void)0;
 }
 }
 {
-var4 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var1);
+var4 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var1);
 }
 var_after_expr = var4;
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr) on <var_after_expr:FlowContext> */
-var7 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
+var7 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
 if (unlikely(var7 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var5 = var7;
@@ -2262,26 +2262,26 @@ RET_LABEL6:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var5) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var5; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var5; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL8:(void)0;
 }
 }
 {
 { /* Inline parser_nodes#AWhileExpr#n_block (self) on <self:AWhileExpr> */
-var11 = self->attrs[COLOR_nit__parser_nodes__AWhileExpr___n_block].val; /* _n_block on <self:AWhileExpr> */
+var11 = self->attrs[COLOR_nitc__parser_nodes__AWhileExpr___n_block].val; /* _n_block on <self:AWhileExpr> */
 var9 = var11;
 RET_LABEL10:(void)0;
 }
 }
 {
-nit___nit__Visitor___enter_visit(var_v, var9); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(var_v, var9); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var14 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var14 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var14 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var12 = var14;
@@ -2290,24 +2290,24 @@ RET_LABEL13:(void)0;
 }
 var_after_block = var12;
 {
-nit___nit__FlowContext___add_loop(var_before_loop, var_after_block); /* Direct call flow#FlowContext#add_loop on <var_before_loop:FlowContext>*/
+nitc___nitc__FlowContext___add_loop(var_before_loop, var_after_block); /* Direct call flow#FlowContext#add_loop on <var_before_loop:FlowContext>*/
 }
 {
 { /* Inline scope#AWhileExpr#continue_mark (self) on <self:AWhileExpr> */
-var17 = self->attrs[COLOR_nit__scope__AWhileExpr___continue_mark].val; /* _continue_mark on <self:AWhileExpr> */
+var17 = self->attrs[COLOR_nitc__scope__AWhileExpr___continue_mark].val; /* _continue_mark on <self:AWhileExpr> */
 var15 = var17;
 RET_LABEL16:(void)0;
 }
 }
 {
-nit__flow___nit__flow__FlowVisitor___merge_continues_to(var_v, var_before_loop, var15); /* Direct call flow#FlowVisitor#merge_continues_to on <var_v:FlowVisitor>*/
+nitc__flow___nitc__flow__FlowVisitor___merge_continues_to(var_v, var_before_loop, var15); /* Direct call flow#FlowVisitor#merge_continues_to on <var_v:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr) on <var_after_expr:FlowContext> */
-var20 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
+var20 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
 if (unlikely(var20 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var18 = var20;
@@ -2316,24 +2316,24 @@ RET_LABEL19:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var18) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var18; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var18; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL21:(void)0;
 }
 }
 {
 { /* Inline scope#AWhileExpr#break_mark (self) on <self:AWhileExpr> */
-var24 = self->attrs[COLOR_nit__scope__AWhileExpr___break_mark].val; /* _break_mark on <self:AWhileExpr> */
+var24 = self->attrs[COLOR_nitc__scope__AWhileExpr___break_mark].val; /* _break_mark on <self:AWhileExpr> */
 var22 = var24;
 RET_LABEL23:(void)0;
 }
 }
 {
-nit__flow___nit__flow__FlowVisitor___merge_breaks(var_v, var22); /* Direct call flow#FlowVisitor#merge_breaks on <var_v:FlowVisitor>*/
+nitc__flow___nitc__flow__FlowVisitor___merge_breaks(var_v, var22); /* Direct call flow#FlowVisitor#merge_breaks on <var_v:FlowVisitor>*/
 }
 RET_LABEL:;
 }
 /* method flow#ALoopExpr#accept_flow_visitor for (self: ALoopExpr, FlowVisitor) */
-void nit__flow___ALoopExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___ALoopExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 val* var_before_loop /* var before_loop: FlowContext */;
@@ -2349,25 +2349,25 @@ val* var11 /* : nullable EscapeMark */;
 val* var13 /* : nullable EscapeMark */;
 var_v = p0;
 {
-var = nit__flow___nit__flow__FlowVisitor___make_sub_flow(var_v);
+var = nitc__flow___nitc__flow__FlowVisitor___make_sub_flow(var_v);
 }
 var_before_loop = var;
 {
 { /* Inline parser_nodes#ALoopExpr#n_block (self) on <self:ALoopExpr> */
-var3 = self->attrs[COLOR_nit__parser_nodes__ALoopExpr___n_block].val; /* _n_block on <self:ALoopExpr> */
+var3 = self->attrs[COLOR_nitc__parser_nodes__ALoopExpr___n_block].val; /* _n_block on <self:ALoopExpr> */
 var1 = var3;
 RET_LABEL2:(void)0;
 }
 }
 {
-nit___nit__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(var_v, var1); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var6 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+var6 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
 var4 = var6;
@@ -2376,158 +2376,203 @@ RET_LABEL5:(void)0;
 }
 var_after_block = var4;
 {
-nit___nit__FlowContext___add_loop(var_before_loop, var_after_block); /* Direct call flow#FlowContext#add_loop on <var_before_loop:FlowContext>*/
+nitc___nitc__FlowContext___add_loop(var_before_loop, var_after_block); /* Direct call flow#FlowContext#add_loop on <var_before_loop:FlowContext>*/
 }
 {
 { /* Inline scope#ALoopExpr#continue_mark (self) on <self:ALoopExpr> */
-var9 = self->attrs[COLOR_nit__scope__ALoopExpr___continue_mark].val; /* _continue_mark on <self:ALoopExpr> */
+var9 = self->attrs[COLOR_nitc__scope__ALoopExpr___continue_mark].val; /* _continue_mark on <self:ALoopExpr> */
 var7 = var9;
 RET_LABEL8:(void)0;
 }
 }
 {
-nit__flow___nit__flow__FlowVisitor___merge_continues_to(var_v, var_before_loop, var7); /* Direct call flow#FlowVisitor#merge_continues_to on <var_v:FlowVisitor>*/
+nitc__flow___nitc__flow__FlowVisitor___merge_continues_to(var_v, var_before_loop, var7); /* Direct call flow#FlowVisitor#merge_continues_to on <var_v:FlowVisitor>*/
 }
 {
-var10 = nit__flow___nit__flow__FlowVisitor___make_unreachable_flow(var_v);
+var10 = nitc__flow___nitc__flow__FlowVisitor___make_unreachable_flow(var_v);
 }
 {
 { /* Inline scope#ALoopExpr#break_mark (self) on <self:ALoopExpr> */
-var13 = self->attrs[COLOR_nit__scope__ALoopExpr___break_mark].val; /* _break_mark on <self:ALoopExpr> */
+var13 = self->attrs[COLOR_nitc__scope__ALoopExpr___break_mark].val; /* _break_mark on <self:ALoopExpr> */
 var11 = var13;
 RET_LABEL12:(void)0;
 }
 }
 {
-nit__flow___nit__flow__FlowVisitor___merge_breaks(var_v, var11); /* Direct call flow#FlowVisitor#merge_breaks on <var_v:FlowVisitor>*/
+nitc__flow___nitc__flow__FlowVisitor___merge_breaks(var_v, var11); /* Direct call flow#FlowVisitor#merge_breaks on <var_v:FlowVisitor>*/
 }
 RET_LABEL:;
 }
 /* method flow#AForExpr#accept_flow_visitor for (self: AForExpr, FlowVisitor) */
-void nit__flow___AForExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AForExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
-val* var /* : AExpr */;
-val* var2 /* : AExpr */;
-val* var3 /* : FlowContext */;
+val* var /* : ANodes[AForGroup] */;
+val* var2 /* : ANodes[AForGroup] */;
+val* var_ /* var : ANodes[AForGroup] */;
+val* var3 /* : Iterator[ANode] */;
+val* var_4 /* var : Iterator[AForGroup] */;
+short int var5 /* : Bool */;
+val* var6 /* : nullable Object */;
+val* var_g /* var g: AForGroup */;
+val* var7 /* : AExpr */;
+val* var9 /* : AExpr */;
+val* var10 /* : FlowContext */;
 val* var_before_loop /* var before_loop: FlowContext */;
-val* var4 /* : nullable AExpr */;
-val* var6 /* : nullable AExpr */;
-val* var7 /* : FlowContext */;
-val* var9 /* : FlowContext */;
-val* var_after_block /* var after_block: FlowContext */;
-val* var10 /* : nullable EscapeMark */;
-val* var12 /* : nullable EscapeMark */;
-val* var13 /* : FlowContext */;
-val* var15 /* : FlowContext */;
+val* var11 /* : nullable AExpr */;
+val* var13 /* : nullable AExpr */;
+val* var14 /* : FlowContext */;
 val* var16 /* : FlowContext */;
+val* var_after_block /* var after_block: FlowContext */;
 val* var17 /* : nullable EscapeMark */;
 val* var19 /* : nullable EscapeMark */;
+val* var20 /* : FlowContext */;
+val* var22 /* : FlowContext */;
+val* var23 /* : FlowContext */;
+val* var24 /* : nullable EscapeMark */;
+val* var26 /* : nullable EscapeMark */;
 var_v = p0;
 {
-{ /* Inline parser_nodes#AForExpr#n_expr (self) on <self:AForExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_expr].val; /* _n_expr on <self:AForExpr> */
+{ /* Inline parser_nodes#AForExpr#n_groups (self) on <self:AForExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__AForExpr___n_groups].val; /* _n_groups on <self:AForExpr> */
 if (unlikely(var2 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1940);
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_groups");
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 1920);
 fatal_exit(1);
 }
 var = var2;
 RET_LABEL1:(void)0;
 }
 }
+var_ = var;
+{
+var3 = nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_);
+}
+var_4 = var3;
+for(;;) {
+{
+var5 = ((short int(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_4); /* is_ok on <var_4:Iterator[AForGroup]>*/
+}
+if (var5){
+} else {
+goto BREAK_label;
+}
+{
+var6 = ((val*(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_4); /* item on <var_4:Iterator[AForGroup]>*/
+}
+var_g = var6;
+{
+{ /* Inline parser_nodes#AForGroup#n_expr (var_g) on <var_g:AForGroup> */
+var9 = var_g->attrs[COLOR_nitc__parser_nodes__AForGroup___n_expr].val; /* _n_expr on <var_g:AForGroup> */
+if (unlikely(var9 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 1943);
+fatal_exit(1);
+}
+var7 = var9;
+RET_LABEL8:(void)0;
+}
+}
+{
+nitc___nitc__Visitor___enter_visit(var_v, var7); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+}
 {
-nit___nit__Visitor___enter_visit(var_v, var); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_4); /* next on <var_4:Iterator[AForGroup]>*/
+}
 }
+BREAK_label: (void)0;
 {
-var3 = nit__flow___nit__flow__FlowVisitor___make_sub_flow(var_v);
+((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_4); /* finish on <var_4:Iterator[AForGroup]>*/
 }
-var_before_loop = var3;
+{
+var10 = nitc__flow___nitc__flow__FlowVisitor___make_sub_flow(var_v);
+}
+var_before_loop = var10;
 {
 { /* Inline parser_nodes#AForExpr#n_block (self) on <self:AForExpr> */
-var6 = self->attrs[COLOR_nit__parser_nodes__AForExpr___n_block].val; /* _n_block on <self:AForExpr> */
-var4 = var6;
-RET_LABEL5:(void)0;
+var13 = self->attrs[COLOR_nitc__parser_nodes__AForExpr___n_block].val; /* _n_block on <self:AForExpr> */
+var11 = var13;
+RET_LABEL12:(void)0;
 }
 }
 {
-nit___nit__Visitor___enter_visit(var_v, var4); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(var_v, var11); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var9 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
-if (unlikely(var9 == NULL)) {
+var16 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+if (unlikely(var16 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
-var7 = var9;
-RET_LABEL8:(void)0;
+var14 = var16;
+RET_LABEL15:(void)0;
 }
 }
-var_after_block = var7;
+var_after_block = var14;
 {
-nit___nit__FlowContext___add_loop(var_before_loop, var_after_block); /* Direct call flow#FlowContext#add_loop on <var_before_loop:FlowContext>*/
+nitc___nitc__FlowContext___add_loop(var_before_loop, var_after_block); /* Direct call flow#FlowContext#add_loop on <var_before_loop:FlowContext>*/
 }
 {
 { /* Inline scope#AForExpr#continue_mark (self) on <self:AForExpr> */
-var12 = self->attrs[COLOR_nit__scope__AForExpr___continue_mark].val; /* _continue_mark on <self:AForExpr> */
-var10 = var12;
-RET_LABEL11:(void)0;
+var19 = self->attrs[COLOR_nitc__scope__AForExpr___continue_mark].val; /* _continue_mark on <self:AForExpr> */
+var17 = var19;
+RET_LABEL18:(void)0;
 }
 }
 {
-nit__flow___nit__flow__FlowVisitor___merge_continues_to(var_v, var_before_loop, var10); /* Direct call flow#FlowVisitor#merge_continues_to on <var_v:FlowVisitor>*/
+nitc__flow___nitc__flow__FlowVisitor___merge_continues_to(var_v, var_before_loop, var17); /* Direct call flow#FlowVisitor#merge_continues_to on <var_v:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context (var_v) on <var_v:FlowVisitor> */
-var15 = var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
-if (unlikely(var15 == NULL)) {
+var22 = var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val; /* _current_flow_context on <var_v:FlowVisitor> */
+if (unlikely(var22 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _current_flow_context");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 37);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 37);
 fatal_exit(1);
 }
-var13 = var15;
-RET_LABEL14:(void)0;
+var20 = var22;
+RET_LABEL21:(void)0;
 }
 }
 {
-var16 = nit__flow___nit__flow__FlowVisitor___make_merge_flow(var_v, var13, var_before_loop);
+var23 = nitc__flow___nitc__flow__FlowVisitor___make_merge_flow(var_v, var20, var_before_loop);
 }
 {
 { /* Inline scope#AForExpr#break_mark (self) on <self:AForExpr> */
-var19 = self->attrs[COLOR_nit__scope__AForExpr___break_mark].val; /* _break_mark on <self:AForExpr> */
-var17 = var19;
-RET_LABEL18:(void)0;
+var26 = self->attrs[COLOR_nitc__scope__AForExpr___break_mark].val; /* _break_mark on <self:AForExpr> */
+var24 = var26;
+RET_LABEL25:(void)0;
 }
 }
 {
-nit__flow___nit__flow__FlowVisitor___merge_breaks(var_v, var17); /* Direct call flow#FlowVisitor#merge_breaks on <var_v:FlowVisitor>*/
+nitc__flow___nitc__flow__FlowVisitor___merge_breaks(var_v, var24); /* Direct call flow#FlowVisitor#merge_breaks on <var_v:FlowVisitor>*/
 }
 RET_LABEL:;
 }
 /* method flow#AWithExpr#accept_flow_visitor for (self: AWithExpr, FlowVisitor) */
-void nit__flow___AWithExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AWithExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : nullable EscapeMark */;
 val* var2 /* : nullable EscapeMark */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___AWithExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AWithExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___AWithExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AWithExpr>*/
 }
 {
 { /* Inline scope#AWithExpr#break_mark (self) on <self:AWithExpr> */
-var2 = self->attrs[COLOR_nit__scope__AWithExpr___break_mark].val; /* _break_mark on <self:AWithExpr> */
+var2 = self->attrs[COLOR_nitc__scope__AWithExpr___break_mark].val; /* _break_mark on <self:AWithExpr> */
 var = var2;
 RET_LABEL1:(void)0;
 }
 }
 {
-nit__flow___nit__flow__FlowVisitor___merge_breaks(var_v, var); /* Direct call flow#FlowVisitor#merge_breaks on <var_v:FlowVisitor>*/
+nitc__flow___nitc__flow__FlowVisitor___merge_breaks(var_v, var); /* Direct call flow#FlowVisitor#merge_breaks on <var_v:FlowVisitor>*/
 }
 RET_LABEL:;
 }
 /* method flow#AAssertExpr#accept_flow_visitor for (self: AAssertExpr, FlowVisitor) */
-void nit__flow___AAssertExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AAssertExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : AExpr */;
 val* var2 /* : AExpr */;
@@ -2542,10 +2587,10 @@ val* var13 /* : FlowContext */;
 var_v = p0;
 {
 { /* Inline parser_nodes#AAssertExpr#n_expr (self) on <self:AAssertExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_expr].val; /* _n_expr on <self:AAssertExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__AAssertExpr___n_expr].val; /* _n_expr on <self:AAssertExpr> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1978);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 1975);
 fatal_exit(1);
 }
 var = var2;
@@ -2553,15 +2598,15 @@ RET_LABEL1:(void)0;
 }
 }
 {
-var3 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var);
+var3 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var);
 }
 var_after_expr = var3;
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr) on <var_after_expr:FlowContext> */
-var6 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
+var6 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var4 = var6;
@@ -2570,26 +2615,26 @@ RET_LABEL5:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var4) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL7:(void)0;
 }
 }
 {
 { /* Inline parser_nodes#AAssertExpr#n_else (self) on <self:AAssertExpr> */
-var10 = self->attrs[COLOR_nit__parser_nodes__AAssertExpr___n_else].val; /* _n_else on <self:AAssertExpr> */
+var10 = self->attrs[COLOR_nitc__parser_nodes__AAssertExpr___n_else].val; /* _n_else on <self:AAssertExpr> */
 var8 = var10;
 RET_LABEL9:(void)0;
 }
 }
 {
-nit___nit__Visitor___enter_visit(var_v, var8); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
+nitc___nitc__Visitor___enter_visit(var_v, var8); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:FlowVisitor>*/
 }
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr) on <var_after_expr:FlowContext> */
-var13 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
+var13 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
 if (unlikely(var13 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var11 = var13;
@@ -2598,14 +2643,14 @@ RET_LABEL12:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var11) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var11; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var11; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL14:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method flow#AOrExpr#accept_flow_visitor for (self: AOrExpr, FlowVisitor) */
-void nit__flow___AOrExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AOrExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : AExpr */;
 val* var2 /* : AExpr */;
@@ -2626,17 +2671,17 @@ val* var_merge_true /* var merge_true: FlowContext */;
 static val* varonce;
 val* var19 /* : String */;
 char* var20 /* : NativeString */;
-val* var21 /* : FlatString */;
+val* var21 /* : String */;
 val* var23 /* : FlowContext */;
 val* var25 /* : FlowContext */;
 val* var26 /* : FlowContext */;
 var_v = p0;
 {
 { /* Inline parser_nodes#ABinBoolExpr#n_expr (self) on <self:AOrExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on <self:AOrExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on <self:AOrExpr> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2053);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2050);
 fatal_exit(1);
 }
 var = var2;
@@ -2644,15 +2689,15 @@ RET_LABEL1:(void)0;
 }
 }
 {
-var3 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var);
+var3 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var);
 }
 var_after_expr = var3;
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr) on <var_after_expr:FlowContext> */
-var6 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
+var6 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var4 = var6;
@@ -2661,16 +2706,16 @@ RET_LABEL5:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var4) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL7:(void)0;
 }
 }
 {
 { /* Inline parser_nodes#ABinBoolExpr#n_expr2 (self) on <self:AOrExpr> */
-var10 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on <self:AOrExpr> */
+var10 = self->attrs[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on <self:AOrExpr> */
 if (unlikely(var10 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2059);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2056);
 fatal_exit(1);
 }
 var8 = var10;
@@ -2678,15 +2723,15 @@ RET_LABEL9:(void)0;
 }
 }
 {
-var11 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var8);
+var11 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var8);
 }
 var_after_expr2 = var11;
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr) on <var_after_expr:FlowContext> */
-var14 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
+var14 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
 if (unlikely(var14 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var12 = var14;
@@ -2695,10 +2740,10 @@ RET_LABEL13:(void)0;
 }
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr2) on <var_after_expr2:FlowContext> */
-var17 = var_after_expr2->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr2:FlowContext> */
+var17 = var_after_expr2->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr2:FlowContext> */
 if (unlikely(var17 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var15 = var17;
@@ -2706,29 +2751,29 @@ RET_LABEL16:(void)0;
 }
 }
 {
-var18 = nit__flow___nit__flow__FlowVisitor___make_merge_flow(var_v, var12, var15);
+var18 = nitc__flow___nitc__flow__FlowVisitor___make_merge_flow(var_v, var12, var15);
 }
 var_merge_true = var18;
 if (likely(varonce!=NULL)) {
 var19 = varonce;
 } else {
 var20 = "OR TRUE";
-var21 = standard___standard__NativeString___to_s_with_length(var20, 7l);
+var21 = core__flat___NativeString___to_s_full(var20, 7l, 7l);
 var19 = var21;
 varonce = var19;
 }
 {
 { /* Inline flow#FlowContext#name= (var_merge_true,var19) on <var_merge_true:FlowContext> */
-var_merge_true->attrs[COLOR_nit__flow__FlowContext___name].val = var19; /* _name on <var_merge_true:FlowContext> */
+var_merge_true->attrs[COLOR_nitc__flow__FlowContext___name].val = var19; /* _name on <var_merge_true:FlowContext> */
 RET_LABEL22:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr2) on <var_after_expr2:FlowContext> */
-var25 = var_after_expr2->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr2:FlowContext> */
+var25 = var_after_expr2->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr2:FlowContext> */
 if (unlikely(var25 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var23 = var25;
@@ -2736,12 +2781,12 @@ RET_LABEL24:(void)0;
 }
 }
 {
-var26 = nit__flow___nit__flow__FlowVisitor___make_true_false_flow(var_v, var_merge_true, var23);
+var26 = nitc__flow___nitc__flow__FlowVisitor___make_true_false_flow(var_v, var_merge_true, var23);
 }
 RET_LABEL:;
 }
 /* method flow#AImpliesExpr#accept_flow_visitor for (self: AImpliesExpr, FlowVisitor) */
-void nit__flow___AImpliesExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AImpliesExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : AExpr */;
 val* var2 /* : AExpr */;
@@ -2762,17 +2807,17 @@ val* var_merge_true /* var merge_true: FlowContext */;
 static val* varonce;
 val* var19 /* : String */;
 char* var20 /* : NativeString */;
-val* var21 /* : FlatString */;
+val* var21 /* : String */;
 val* var23 /* : FlowContext */;
 val* var25 /* : FlowContext */;
 val* var26 /* : FlowContext */;
 var_v = p0;
 {
 { /* Inline parser_nodes#ABinBoolExpr#n_expr (self) on <self:AImpliesExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on <self:AImpliesExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on <self:AImpliesExpr> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2053);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2050);
 fatal_exit(1);
 }
 var = var2;
@@ -2780,15 +2825,15 @@ RET_LABEL1:(void)0;
 }
 }
 {
-var3 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var);
+var3 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var);
 }
 var_after_expr = var3;
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr) on <var_after_expr:FlowContext> */
-var6 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
+var6 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var4 = var6;
@@ -2797,16 +2842,16 @@ RET_LABEL5:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var4) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL7:(void)0;
 }
 }
 {
 { /* Inline parser_nodes#ABinBoolExpr#n_expr2 (self) on <self:AImpliesExpr> */
-var10 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on <self:AImpliesExpr> */
+var10 = self->attrs[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on <self:AImpliesExpr> */
 if (unlikely(var10 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2059);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2056);
 fatal_exit(1);
 }
 var8 = var10;
@@ -2814,15 +2859,15 @@ RET_LABEL9:(void)0;
 }
 }
 {
-var11 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var8);
+var11 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var8);
 }
 var_after_expr2 = var11;
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr) on <var_after_expr:FlowContext> */
-var14 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
+var14 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
 if (unlikely(var14 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var12 = var14;
@@ -2831,10 +2876,10 @@ RET_LABEL13:(void)0;
 }
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr2) on <var_after_expr2:FlowContext> */
-var17 = var_after_expr2->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr2:FlowContext> */
+var17 = var_after_expr2->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr2:FlowContext> */
 if (unlikely(var17 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var15 = var17;
@@ -2842,29 +2887,29 @@ RET_LABEL16:(void)0;
 }
 }
 {
-var18 = nit__flow___nit__flow__FlowVisitor___make_merge_flow(var_v, var12, var15);
+var18 = nitc__flow___nitc__flow__FlowVisitor___make_merge_flow(var_v, var12, var15);
 }
 var_merge_true = var18;
 if (likely(varonce!=NULL)) {
 var19 = varonce;
 } else {
 var20 = "OR TRUE";
-var21 = standard___standard__NativeString___to_s_with_length(var20, 7l);
+var21 = core__flat___NativeString___to_s_full(var20, 7l, 7l);
 var19 = var21;
 varonce = var19;
 }
 {
 { /* Inline flow#FlowContext#name= (var_merge_true,var19) on <var_merge_true:FlowContext> */
-var_merge_true->attrs[COLOR_nit__flow__FlowContext___name].val = var19; /* _name on <var_merge_true:FlowContext> */
+var_merge_true->attrs[COLOR_nitc__flow__FlowContext___name].val = var19; /* _name on <var_merge_true:FlowContext> */
 RET_LABEL22:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr2) on <var_after_expr2:FlowContext> */
-var25 = var_after_expr2->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr2:FlowContext> */
+var25 = var_after_expr2->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr2:FlowContext> */
 if (unlikely(var25 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var23 = var25;
@@ -2872,12 +2917,12 @@ RET_LABEL24:(void)0;
 }
 }
 {
-var26 = nit__flow___nit__flow__FlowVisitor___make_true_false_flow(var_v, var_merge_true, var23);
+var26 = nitc__flow___nitc__flow__FlowVisitor___make_true_false_flow(var_v, var_merge_true, var23);
 }
 RET_LABEL:;
 }
 /* method flow#AAndExpr#accept_flow_visitor for (self: AAndExpr, FlowVisitor) */
-void nit__flow___AAndExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AAndExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : AExpr */;
 val* var2 /* : AExpr */;
@@ -2898,17 +2943,17 @@ val* var_merge_false /* var merge_false: FlowContext */;
 static val* varonce;
 val* var19 /* : String */;
 char* var20 /* : NativeString */;
-val* var21 /* : FlatString */;
+val* var21 /* : String */;
 val* var23 /* : FlowContext */;
 val* var25 /* : FlowContext */;
 val* var26 /* : FlowContext */;
 var_v = p0;
 {
 { /* Inline parser_nodes#ABinBoolExpr#n_expr (self) on <self:AAndExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on <self:AAndExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr].val; /* _n_expr on <self:AAndExpr> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2053);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2050);
 fatal_exit(1);
 }
 var = var2;
@@ -2916,15 +2961,15 @@ RET_LABEL1:(void)0;
 }
 }
 {
-var3 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var);
+var3 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var);
 }
 var_after_expr = var3;
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr) on <var_after_expr:FlowContext> */
-var6 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
+var6 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var4 = var6;
@@ -2933,16 +2978,16 @@ RET_LABEL5:(void)0;
 }
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var4) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var4; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL7:(void)0;
 }
 }
 {
 { /* Inline parser_nodes#ABinBoolExpr#n_expr2 (self) on <self:AAndExpr> */
-var10 = self->attrs[COLOR_nit__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on <self:AAndExpr> */
+var10 = self->attrs[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr2].val; /* _n_expr2 on <self:AAndExpr> */
 if (unlikely(var10 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2059);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2056);
 fatal_exit(1);
 }
 var8 = var10;
@@ -2950,15 +2995,15 @@ RET_LABEL9:(void)0;
 }
 }
 {
-var11 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var8);
+var11 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var8);
 }
 var_after_expr2 = var11;
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr) on <var_after_expr:FlowContext> */
-var14 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
+var14 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
 if (unlikely(var14 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var12 = var14;
@@ -2967,10 +3012,10 @@ RET_LABEL13:(void)0;
 }
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr2) on <var_after_expr2:FlowContext> */
-var17 = var_after_expr2->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr2:FlowContext> */
+var17 = var_after_expr2->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr2:FlowContext> */
 if (unlikely(var17 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var15 = var17;
@@ -2978,29 +3023,29 @@ RET_LABEL16:(void)0;
 }
 }
 {
-var18 = nit__flow___nit__flow__FlowVisitor___make_merge_flow(var_v, var12, var15);
+var18 = nitc__flow___nitc__flow__FlowVisitor___make_merge_flow(var_v, var12, var15);
 }
 var_merge_false = var18;
 if (likely(varonce!=NULL)) {
 var19 = varonce;
 } else {
 var20 = "AND FALSE";
-var21 = standard___standard__NativeString___to_s_with_length(var20, 9l);
+var21 = core__flat___NativeString___to_s_full(var20, 9l, 9l);
 var19 = var21;
 varonce = var19;
 }
 {
 { /* Inline flow#FlowContext#name= (var_merge_false,var19) on <var_merge_false:FlowContext> */
-var_merge_false->attrs[COLOR_nit__flow__FlowContext___name].val = var19; /* _name on <var_merge_false:FlowContext> */
+var_merge_false->attrs[COLOR_nitc__flow__FlowContext___name].val = var19; /* _name on <var_merge_false:FlowContext> */
 RET_LABEL22:(void)0;
 }
 }
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr2) on <var_after_expr2:FlowContext> */
-var25 = var_after_expr2->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr2:FlowContext> */
+var25 = var_after_expr2->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr2:FlowContext> */
 if (unlikely(var25 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var23 = var25;
@@ -3008,12 +3053,12 @@ RET_LABEL24:(void)0;
 }
 }
 {
-var26 = nit__flow___nit__flow__FlowVisitor___make_true_false_flow(var_v, var23, var_merge_false);
+var26 = nitc__flow___nitc__flow__FlowVisitor___make_true_false_flow(var_v, var23, var_merge_false);
 }
 RET_LABEL:;
 }
 /* method flow#ANotExpr#accept_flow_visitor for (self: ANotExpr, FlowVisitor) */
-void nit__flow___ANotExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___ANotExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : AExpr */;
 val* var2 /* : AExpr */;
@@ -3027,10 +3072,10 @@ val* var10 /* : FlowContext */;
 var_v = p0;
 {
 { /* Inline parser_nodes#ANotExpr#n_expr (self) on <self:ANotExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__ANotExpr___n_expr].val; /* _n_expr on <self:ANotExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__ANotExpr___n_expr].val; /* _n_expr on <self:ANotExpr> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2093);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2090);
 fatal_exit(1);
 }
 var = var2;
@@ -3038,15 +3083,15 @@ RET_LABEL1:(void)0;
 }
 }
 {
-var3 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var);
+var3 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var);
 }
 var_after_expr = var3;
 {
 { /* Inline flow#FlowContext#when_false (var_after_expr) on <var_after_expr:FlowContext> */
-var6 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
+var6 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_false].val; /* _when_false on <var_after_expr:FlowContext> */
 if (unlikely(var6 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_false");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 228);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 228);
 fatal_exit(1);
 }
 var4 = var6;
@@ -3055,10 +3100,10 @@ RET_LABEL5:(void)0;
 }
 {
 { /* Inline flow#FlowContext#when_true (var_after_expr) on <var_after_expr:FlowContext> */
-var9 = var_after_expr->attrs[COLOR_nit__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
+var9 = var_after_expr->attrs[COLOR_nitc__flow__FlowContext___when_true].val; /* _when_true on <var_after_expr:FlowContext> */
 if (unlikely(var9 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__flow, 225);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow, 225);
 fatal_exit(1);
 }
 var7 = var9;
@@ -3066,60 +3111,60 @@ RET_LABEL8:(void)0;
 }
 }
 {
-var10 = nit__flow___nit__flow__FlowVisitor___make_true_false_flow(var_v, var4, var7);
+var10 = nitc__flow___nitc__flow__FlowVisitor___make_true_false_flow(var_v, var4, var7);
 }
 RET_LABEL:;
 }
 /* method flow#AOrElseExpr#accept_flow_visitor for (self: AOrElseExpr, FlowVisitor) */
-void nit__flow___AOrElseExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AOrElseExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___AOrElseExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AOrElseExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___AOrElseExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AOrElseExpr>*/
 }
 RET_LABEL:;
 }
 /* method flow#AEqExpr#accept_flow_visitor for (self: AEqExpr, FlowVisitor) */
-void nit__flow___AEqExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AEqExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___AEqExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AEqExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___AEqExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AEqExpr>*/
 }
 {
-var = nit__flow___nit__flow__FlowVisitor___make_sub_true_false_flow(var_v);
+var = nitc__flow___nitc__flow__FlowVisitor___make_sub_true_false_flow(var_v);
 }
 RET_LABEL:;
 }
 /* method flow#ANeExpr#accept_flow_visitor for (self: ANeExpr, FlowVisitor) */
-void nit__flow___ANeExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___ANeExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___ANeExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:ANeExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___ANeExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:ANeExpr>*/
 }
 {
-var = nit__flow___nit__flow__FlowVisitor___make_sub_true_false_flow(var_v);
+var = nitc__flow___nitc__flow__FlowVisitor___make_sub_true_false_flow(var_v);
 }
 RET_LABEL:;
 }
 /* method flow#AIsaExpr#accept_flow_visitor for (self: AIsaExpr, FlowVisitor) */
-void nit__flow___AIsaExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AIsaExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : FlowContext */;
 var_v = p0;
 {
-((void(*)(val* self, val* p0))(self->class->vft[COLOR_nit__flow___AIsaExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AIsaExpr>*/
+((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__flow___AIsaExpr___ANode__accept_flow_visitor]))(self, p0); /* accept_flow_visitor on <self:AIsaExpr>*/
 }
 {
-var = nit__flow___nit__flow__FlowVisitor___make_sub_true_false_flow(var_v);
+var = nitc__flow___nitc__flow__FlowVisitor___make_sub_true_false_flow(var_v);
 }
 RET_LABEL:;
 }
 /* method flow#AParExpr#accept_flow_visitor for (self: AParExpr, FlowVisitor) */
-void nit__flow___AParExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AParExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : AExpr */;
 val* var2 /* : AExpr */;
@@ -3128,10 +3173,10 @@ val* var_after_expr /* var after_expr: FlowContext */;
 var_v = p0;
 {
 { /* Inline parser_nodes#AParExpr#n_expr (self) on <self:AParExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__AParExpr___n_expr].val; /* _n_expr on <self:AParExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__AParExpr___n_expr].val; /* _n_expr on <self:AParExpr> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2637);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2575);
 fatal_exit(1);
 }
 var = var2;
@@ -3139,19 +3184,19 @@ RET_LABEL1:(void)0;
 }
 }
 {
-var3 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var);
+var3 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var);
 }
 var_after_expr = var3;
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var_after_expr) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var_after_expr; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var_after_expr; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL4:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method flow#AOnceExpr#accept_flow_visitor for (self: AOnceExpr, FlowVisitor) */
-void nit__flow___AOnceExpr___ANode__accept_flow_visitor(val* self, val* p0) {
+void nitc__flow___AOnceExpr___ANode__accept_flow_visitor(val* self, val* p0) {
 val* var_v /* var v: FlowVisitor */;
 val* var /* : AExpr */;
 val* var2 /* : AExpr */;
@@ -3160,10 +3205,10 @@ val* var_after_expr /* var after_expr: FlowContext */;
 var_v = p0;
 {
 { /* Inline parser_nodes#AOnceExpr#n_expr (self) on <self:AOnceExpr> */
-var2 = self->attrs[COLOR_nit__parser_nodes__AOnceExpr___n_expr].val; /* _n_expr on <self:AOnceExpr> */
+var2 = self->attrs[COLOR_nitc__parser_nodes__AOnceExpr___n_expr].val; /* _n_expr on <self:AOnceExpr> */
 if (unlikely(var2 == NULL)) {
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2017);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 2014);
 fatal_exit(1);
 }
 var = var2;
@@ -3171,12 +3216,12 @@ RET_LABEL1:(void)0;
 }
 }
 {
-var3 = nit__flow___nit__flow__FlowVisitor___visit_expr(var_v, var);
+var3 = nitc__flow___nitc__flow__FlowVisitor___visit_expr(var_v, var);
 }
 var_after_expr = var3;
 {
 { /* Inline flow#FlowVisitor#current_flow_context= (var_v,var_after_expr) on <var_v:FlowVisitor> */
-var_v->attrs[COLOR_nit__flow__FlowVisitor___current_flow_context].val = var_after_expr; /* _current_flow_context on <var_v:FlowVisitor> */
+var_v->attrs[COLOR_nitc__flow__FlowVisitor___current_flow_context].val = var_after_expr; /* _current_flow_context on <var_v:FlowVisitor> */
 RET_LABEL4:(void)0;
 }
 }