-/* method parser_prod#AModuleName#replace_child for (self: AModuleName, ANode, nullable ANode) */
-void parser_prod__AModuleName__replace_child(val* self, val* p0, val* p1) {
-val* var_old_child /* var old_child: ANode */;
-val* var_new_child /* var new_child: nullable ANode */;
-val* var /* : nullable TQuad */;
-short int var1 /* : Bool */;
-val* var2 /* : null */;
-short int var3 /* : Bool */;
-short int var4 /* : Bool */;
-int cltype;
-int idtype;
-val* var5 /* : null */;
-val* var6 /* : Range[Int] */;
-long var7 /* : Int */;
-val* var8 /* : ANodes[TId] */;
-long var9 /* : Int */;
-val* var10 /* : Discrete */;
-val* var11 /* : Discrete */;
-val* var12 /* : Iterator[nullable Object] */;
-short int var13 /* : Bool */;
-val* var14 /* : nullable Object */;
-long var_i /* var i: Int */;
-long var15 /* : Int */;
-val* var16 /* : ANodes[TId] */;
-val* var17 /* : nullable Object */;
-short int var18 /* : Bool */;
-val* var19 /* : null */;
-short int var20 /* : Bool */;
-short int var21 /* : Bool */;
-int cltype22;
-int idtype23;
-val* var24 /* : ANodes[TId] */;
-val* var25 /* : ANodes[TId] */;
-val* var26 /* : TId */;
-short int var27 /* : Bool */;
-val* var28 /* : null */;
-short int var29 /* : Bool */;
-short int var30 /* : Bool */;
-int cltype31;
-int idtype32;
-var_old_child = p0;
-var_new_child = p1;
-var = self->attrs[COLOR_parser_nodes__AModuleName___n_quad].val; /* _n_quad on <self:AModuleName> */
-if (var == NULL) {
-var1 = 0; /* <var_old_child:ANode> cannot be null */
-} else {
-var1 = ((short int (*)(val*, val*))(var->class->vft[COLOR_kernel__Object___61d_61d]))(var, var_old_child) /* == on <var:nullable TQuad>*/;
-}
-if (var1){
-var2 = NULL;
-if (var_new_child == NULL) {
-var3 = 0; /* is null */
-} else {
-var3 = 1; /* arg is null and recv is not */
-}
-if (var3){
-((void (*)(val*, val*))(var_new_child->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_new_child, self) /* parent= on <var_new_child:nullable ANode(ANode)>*/;
-/* <var_new_child:nullable ANode(ANode)> isa TQuad */
-cltype = type_parser_nodes__TQuad.color;
-idtype = type_parser_nodes__TQuad.id;
-if(cltype >= var_new_child->type->table_size) {
-var4 = 0;
-} else {
-var4 = var_new_child->type->type_table[cltype] == idtype;
-}
-if (!var4) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser_prod.nit", 10750);
-exit(1);
-}
-self->attrs[COLOR_parser_nodes__AModuleName___n_quad].val = var_new_child; /* _n_quad on <self:AModuleName> */
-} else {
-var5 = NULL;
-self->attrs[COLOR_parser_nodes__AModuleName___n_quad].val = var5; /* _n_quad on <self:AModuleName> */
-}
-goto RET_LABEL;
-} else {
-}
-var6 = NEW_range__Range(&type_range__Rangekernel__Int);
-var7 = 0;
-var8 = self->attrs[COLOR_parser_nodes__AModuleName___n_path].val; /* _n_path on <self:AModuleName> */
-if (var8 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_path", "src/parser/parser_prod.nit", 10757);
-exit(1);
-}
-var9 = ((long (*)(val*))(var8->class->vft[COLOR_abstract_collection__Collection__length]))(var8) /* length on <var8:ANodes[TId]>*/;
-var10 = BOX_kernel__Int(var7); /* autobox from Int to Discrete */
-var11 = BOX_kernel__Int(var9); /* autobox from Int to Discrete */
-((void (*)(val*, val*, val*))(var6->class->vft[COLOR_range__Range__without_last]))(var6, var10, var11) /* without_last on <var6:Range[Int]>*/;
-CHECK_NEW_range__Range(var6);
-var12 = ((val* (*)(val*))(var6->class->vft[COLOR_abstract_collection__Collection__iterator]))(var6) /* iterator on <var6:Range[Int]>*/;
-for(;;) {
-var13 = ((short int (*)(val*))(var12->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var12) /* is_ok on <var12:Iterator[nullable Object]>*/;
-if(!var13) break;
-var14 = ((val* (*)(val*))(var12->class->vft[COLOR_abstract_collection__Iterator__item]))(var12) /* item on <var12:Iterator[nullable Object]>*/;
-var15 = ((struct instance_kernel__Int*)var14)->value; /* autounbox from nullable Object to Int */;
-var_i = var15;
-var16 = self->attrs[COLOR_parser_nodes__AModuleName___n_path].val; /* _n_path on <self:AModuleName> */
-if (var16 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_path", "src/parser/parser_prod.nit", 10758);
-exit(1);
-}
-var17 = ((val* (*)(val*, long))(var16->class->vft[COLOR_abstract_collection__SequenceRead___91d_93d]))(var16, var_i) /* [] on <var16:ANodes[TId]>*/;
-var18 = ((short int (*)(val*, val*))(var17->class->vft[COLOR_kernel__Object___61d_61d]))(var17, var_old_child) /* == on <var17:nullable Object(TId)>*/;
-if (var18){
-var19 = NULL;
-if (var_new_child == NULL) {
-var20 = 0; /* is null */
-} else {
-var20 = 1; /* arg is null and recv is not */
-}
-if (var20){
-/* <var_new_child:nullable ANode(ANode)> isa TId */
-cltype22 = type_parser_nodes__TId.color;
-idtype23 = type_parser_nodes__TId.id;
-if(cltype22 >= var_new_child->type->table_size) {
-var21 = 0;
-} else {
-var21 = var_new_child->type->type_table[cltype22] == idtype23;
-}
-if (!var21) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser_prod.nit", 10760);
-exit(1);
-}
-var24 = self->attrs[COLOR_parser_nodes__AModuleName___n_path].val; /* _n_path on <self:AModuleName> */
-if (var24 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_path", "src/parser/parser_prod.nit", 10761);
-exit(1);
-}
-((void (*)(val*, long, val*))(var24->class->vft[COLOR_abstract_collection__Sequence___91d_93d_61d]))(var24, var_i, var_new_child) /* []= on <var24:ANodes[TId]>*/;
-((void (*)(val*, val*))(var_new_child->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_new_child, self) /* parent= on <var_new_child:nullable ANode(TId)>*/;
-} else {
-var25 = self->attrs[COLOR_parser_nodes__AModuleName___n_path].val; /* _n_path on <self:AModuleName> */
-if (var25 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_path", "src/parser/parser_prod.nit", 10764);
-exit(1);
-}
-((void (*)(val*, long))(var25->class->vft[COLOR_abstract_collection__Sequence__remove_at]))(var25, var_i) /* remove_at on <var25:ANodes[TId]>*/;
-}
-goto RET_LABEL;
-} else {
-}
-CONTINUE_label: (void)0;
-((void (*)(val*))(var12->class->vft[COLOR_abstract_collection__Iterator__next]))(var12) /* next on <var12:Iterator[nullable Object]>*/;
-}
-BREAK_label: (void)0;
-var26 = self->attrs[COLOR_parser_nodes__AModuleName___n_id].val; /* _n_id on <self:AModuleName> */
-if (var26 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_id", "src/parser/parser_prod.nit", 10769);
-exit(1);
-}
-var27 = ((short int (*)(val*, val*))(var26->class->vft[COLOR_kernel__Object___61d_61d]))(var26, var_old_child) /* == on <var26:TId>*/;
-if (var27){
-var28 = NULL;
-if (var_new_child == NULL) {
-var29 = 0; /* is null */
-} else {
-var29 = 1; /* arg is null and recv is not */
-}
-if (var29){
-((void (*)(val*, val*))(var_new_child->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_new_child, self) /* parent= on <var_new_child:nullable ANode(ANode)>*/;
-/* <var_new_child:nullable ANode(ANode)> isa TId */
-cltype31 = type_parser_nodes__TId.color;
-idtype32 = type_parser_nodes__TId.id;
-if(cltype31 >= var_new_child->type->table_size) {
-var30 = 0;
-} else {
-var30 = var_new_child->type->type_table[cltype31] == idtype32;
-}
-if (!var30) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser_prod.nit", 10772);
-exit(1);
-}
-self->attrs[COLOR_parser_nodes__AModuleName___n_id].val = var_new_child; /* _n_id on <self:AModuleName> */
-} else {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Aborted", "src/parser/parser_prod.nit", 10775);
-exit(1);
-}
-goto RET_LABEL;
-} else {
-}
-RET_LABEL:;
-}
-/* method parser_prod#AModuleName#replace_child for (self: Object, ANode, nullable ANode) */
-void VIRTUAL_parser_prod__AModuleName__replace_child(val* self, val* p0, val* p1) {
-parser_prod__AModuleName__replace_child(self, p0, p1);
-RET_LABEL:;
-}
-/* method parser_prod#AModuleName#n_quad= for (self: AModuleName, nullable TQuad) */
-void parser_prod__AModuleName__n_quad_61d(val* self, val* p0) {
-val* var_node /* var node: nullable TQuad */;
-val* var /* : null */;
-short int var1 /* : Bool */;
-var_node = p0;
-self->attrs[COLOR_parser_nodes__AModuleName___n_quad].val = var_node; /* _n_quad on <self:AModuleName> */
-var = NULL;
-if (var_node == NULL) {
-var1 = 0; /* is null */
-} else {
-var1 = 1; /* arg is null and recv is not */
-}
-if (var1){
-((void (*)(val*, val*))(var_node->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_node, self) /* parent= on <var_node:nullable TQuad(TQuad)>*/;
-} else {
-}
-RET_LABEL:;
-}
-/* method parser_prod#AModuleName#n_quad= for (self: Object, nullable TQuad) */
-void VIRTUAL_parser_prod__AModuleName__n_quad_61d(val* self, val* p0) {
-parser_prod__AModuleName__n_quad_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_prod#AModuleName#n_id= for (self: AModuleName, TId) */
-void parser_prod__AModuleName__n_id_61d(val* self, val* p0) {
-val* var_node /* var node: TId */;
-var_node = p0;
-self->attrs[COLOR_parser_nodes__AModuleName___n_id].val = var_node; /* _n_id on <self:AModuleName> */
-((void (*)(val*, val*))(var_node->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_node, self) /* parent= on <var_node:TId>*/;
-RET_LABEL:;
-}
-/* method parser_prod#AModuleName#n_id= for (self: Object, TId) */
-void VIRTUAL_parser_prod__AModuleName__n_id_61d(val* self, val* p0) {
-parser_prod__AModuleName__n_id_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_prod#AModuleName#visit_all for (self: AModuleName, Visitor) */
-void parser_prod__AModuleName__visit_all(val* self, val* p0) {
-val* var_v /* var v: Visitor */;
-val* var /* : nullable TQuad */;
-val* var1 /* : null */;
-short int var2 /* : Bool */;
-val* var3 /* : nullable TQuad */;
-val* var4 /* : ANodes[TId] */;
-val* var5 /* : Iterator[nullable Object] */;
-short int var6 /* : Bool */;
-val* var7 /* : nullable Object */;
-val* var_n /* var n: TId */;
-val* var8 /* : TId */;
-var_v = p0;
-var = self->attrs[COLOR_parser_nodes__AModuleName___n_quad].val; /* _n_quad on <self:AModuleName> */
-var1 = NULL;
-if (var == NULL) {
-var2 = 0; /* is null */
-} else {
-var2 = 1; /* arg is null and recv is not */
-}
-if (var2){
-var3 = self->attrs[COLOR_parser_nodes__AModuleName___n_quad].val; /* _n_quad on <self:AModuleName> */
-if (var3 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "src/parser/parser_prod.nit", 10798);
-exit(1);
-}
-((void (*)(val*, val*))(var_v->class->vft[COLOR_parser_nodes__Visitor__enter_visit]))(var_v, var3) /* enter_visit on <var_v:Visitor>*/;
-} else {
-}
-var4 = self->attrs[COLOR_parser_nodes__AModuleName___n_path].val; /* _n_path on <self:AModuleName> */
-if (var4 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_path", "src/parser/parser_prod.nit", 10800);
-exit(1);
-}
-var5 = ((val* (*)(val*))(var4->class->vft[COLOR_abstract_collection__Collection__iterator]))(var4) /* iterator on <var4:ANodes[TId]>*/;
-for(;;) {
-var6 = ((short int (*)(val*))(var5->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var5) /* is_ok on <var5:Iterator[nullable Object]>*/;
-if(!var6) break;
-var7 = ((val* (*)(val*))(var5->class->vft[COLOR_abstract_collection__Iterator__item]))(var5) /* item on <var5:Iterator[nullable Object]>*/;
-var_n = var7;
-((void (*)(val*, val*))(var_v->class->vft[COLOR_parser_nodes__Visitor__enter_visit]))(var_v, var_n) /* enter_visit on <var_v:Visitor>*/;
-CONTINUE_label: (void)0;
-((void (*)(val*))(var5->class->vft[COLOR_abstract_collection__Iterator__next]))(var5) /* next on <var5:Iterator[nullable Object]>*/;
-}
-BREAK_label: (void)0;
-var8 = self->attrs[COLOR_parser_nodes__AModuleName___n_id].val; /* _n_id on <self:AModuleName> */
-if (var8 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_id", "src/parser/parser_prod.nit", 10803);
-exit(1);
-}
-((void (*)(val*, val*))(var_v->class->vft[COLOR_parser_nodes__Visitor__enter_visit]))(var_v, var8) /* enter_visit on <var_v:Visitor>*/;
-RET_LABEL:;
-}
-/* method parser_prod#AModuleName#visit_all for (self: Object, Visitor) */
-void VIRTUAL_parser_prod__AModuleName__visit_all(val* self, val* p0) {
-parser_prod__AModuleName__visit_all(self, p0);
-RET_LABEL:;
-}
-/* method parser_prod#AExternCalls#empty_init for (self: AExternCalls) */
-void parser_prod__AExternCalls__empty_init(val* self) {
-RET_LABEL:;
-}
-/* method parser_prod#AExternCalls#empty_init for (self: Object) */
-void VIRTUAL_parser_prod__AExternCalls__empty_init(val* self) {
-parser_prod__AExternCalls__empty_init(self);
-RET_LABEL:;
-}
-/* method parser_prod#AExternCalls#init_aexterncalls for (self: AExternCalls, nullable TKwimport, Collection[Object]) */
-void parser_prod__AExternCalls__init_aexterncalls(val* self, val* p0, val* p1) {
-val* var_n_kwimport /* var n_kwimport: nullable TKwimport */;
-val* var_n_extern_calls /* var n_extern_calls: Collection[Object] */;
-val* var /* : Iterator[nullable Object] */;
-short int var1 /* : Bool */;
-val* var2 /* : nullable Object */;
-val* var_n /* var n: Object */;
-short int var3 /* : Bool */;
-int cltype;
-int idtype;
-val* var4 /* : ANodes[AExternCall] */;
-var_n_kwimport = p0;
-var_n_extern_calls = p1;
-((void (*)(val*))(self->class->vft[COLOR_parser_prod__AExternCalls__empty_init]))(self) /* empty_init on <self:AExternCalls>*/;
-if (var_n_kwimport == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "src/parser/parser_prod.nit", 10815);
-exit(1);
-}
-self->attrs[COLOR_parser_nodes__AExternCalls___n_kwimport].val = var_n_kwimport; /* _n_kwimport on <self:AExternCalls> */
-if (var_n_kwimport == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Reciever is null", "src/parser/parser_prod.nit", 10816);
-exit(1);
-} else {
-((void (*)(val*, val*))(var_n_kwimport->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_n_kwimport, self) /* parent= on <var_n_kwimport:nullable TKwimport>*/;
-}
-var = ((val* (*)(val*))(var_n_extern_calls->class->vft[COLOR_abstract_collection__Collection__iterator]))(var_n_extern_calls) /* iterator on <var_n_extern_calls:Collection[Object]>*/;
-for(;;) {
-var1 = ((short int (*)(val*))(var->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var) /* is_ok on <var:Iterator[nullable Object]>*/;
-if(!var1) break;
-var2 = ((val* (*)(val*))(var->class->vft[COLOR_abstract_collection__Iterator__item]))(var) /* item on <var:Iterator[nullable Object]>*/;
-var_n = var2;
-/* <var_n:Object> isa AExternCall */
-cltype = type_parser_nodes__AExternCall.color;
-idtype = type_parser_nodes__AExternCall.id;
-if(cltype >= var_n->type->table_size) {
-var3 = 0;
-} else {
-var3 = var_n->type->type_table[cltype] == idtype;
-}
-if (!var3) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser_prod.nit", 10818);
-exit(1);
-}
-var4 = self->attrs[COLOR_parser_nodes__AExternCalls___n_extern_calls].val; /* _n_extern_calls on <self:AExternCalls> */
-if (var4 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_extern_calls", "src/parser/parser_prod.nit", 10819);
-exit(1);
-}
-((void (*)(val*, val*))(var4->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var4, var_n) /* add on <var4:ANodes[AExternCall]>*/;
-((void (*)(val*, val*))(var_n->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_n, self) /* parent= on <var_n:Object(AExternCall)>*/;
-CONTINUE_label: (void)0;
-((void (*)(val*))(var->class->vft[COLOR_abstract_collection__Iterator__next]))(var) /* next on <var:Iterator[nullable Object]>*/;
-}
-BREAK_label: (void)0;
-RET_LABEL:;
-}
-/* method parser_prod#AExternCalls#init_aexterncalls for (self: Object, nullable TKwimport, Collection[Object]) */
-void VIRTUAL_parser_prod__AExternCalls__init_aexterncalls(val* self, val* p0, val* p1) {
-parser_prod__AExternCalls__init_aexterncalls(self, p0, p1);
-RET_LABEL:;
-}
-/* method parser_prod#AExternCalls#replace_child for (self: AExternCalls, ANode, nullable ANode) */
-void parser_prod__AExternCalls__replace_child(val* self, val* p0, val* p1) {
-val* var_old_child /* var old_child: ANode */;
-val* var_new_child /* var new_child: nullable ANode */;
-val* var /* : TKwimport */;
-short int var1 /* : Bool */;
-val* var2 /* : null */;
-short int var3 /* : Bool */;
-short int var4 /* : Bool */;
-int cltype;
-int idtype;
-val* var5 /* : Range[Int] */;
-long var6 /* : Int */;
-val* var7 /* : ANodes[AExternCall] */;
-long var8 /* : Int */;
-val* var9 /* : Discrete */;
-val* var10 /* : Discrete */;
-val* var11 /* : Iterator[nullable Object] */;
-short int var12 /* : Bool */;
-val* var13 /* : nullable Object */;
-long var_i /* var i: Int */;
-long var14 /* : Int */;
-val* var15 /* : ANodes[AExternCall] */;
-val* var16 /* : nullable Object */;
-short int var17 /* : Bool */;
-val* var18 /* : null */;
-short int var19 /* : Bool */;
-short int var20 /* : Bool */;
-int cltype21;
-int idtype22;
-val* var23 /* : ANodes[AExternCall] */;
-val* var24 /* : ANodes[AExternCall] */;
-var_old_child = p0;
-var_new_child = p1;
-var = self->attrs[COLOR_parser_nodes__AExternCalls___n_kwimport].val; /* _n_kwimport on <self:AExternCalls> */
-if (var == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwimport", "src/parser/parser_prod.nit", 10826);
-exit(1);
-}
-var1 = ((short int (*)(val*, val*))(var->class->vft[COLOR_kernel__Object___61d_61d]))(var, var_old_child) /* == on <var:TKwimport>*/;
-if (var1){
-var2 = NULL;
-if (var_new_child == NULL) {
-var3 = 0; /* is null */
-} else {
-var3 = 1; /* arg is null and recv is not */
-}
-if (var3){
-((void (*)(val*, val*))(var_new_child->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_new_child, self) /* parent= on <var_new_child:nullable ANode(ANode)>*/;
-/* <var_new_child:nullable ANode(ANode)> isa TKwimport */
-cltype = type_parser_nodes__TKwimport.color;
-idtype = type_parser_nodes__TKwimport.id;
-if(cltype >= var_new_child->type->table_size) {
-var4 = 0;
-} else {
-var4 = var_new_child->type->type_table[cltype] == idtype;
-}
-if (!var4) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser_prod.nit", 10829);
-exit(1);
-}
-self->attrs[COLOR_parser_nodes__AExternCalls___n_kwimport].val = var_new_child; /* _n_kwimport on <self:AExternCalls> */
-} else {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Aborted", "src/parser/parser_prod.nit", 10832);
-exit(1);
-}
-goto RET_LABEL;
-} else {
-}
-var5 = NEW_range__Range(&type_range__Rangekernel__Int);
-var6 = 0;
-var7 = self->attrs[COLOR_parser_nodes__AExternCalls___n_extern_calls].val; /* _n_extern_calls on <self:AExternCalls> */
-if (var7 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_extern_calls", "src/parser/parser_prod.nit", 10836);
-exit(1);
-}
-var8 = ((long (*)(val*))(var7->class->vft[COLOR_abstract_collection__Collection__length]))(var7) /* length on <var7:ANodes[AExternCall]>*/;
-var9 = BOX_kernel__Int(var6); /* autobox from Int to Discrete */
-var10 = BOX_kernel__Int(var8); /* autobox from Int to Discrete */
-((void (*)(val*, val*, val*))(var5->class->vft[COLOR_range__Range__without_last]))(var5, var9, var10) /* without_last on <var5:Range[Int]>*/;
-CHECK_NEW_range__Range(var5);
-var11 = ((val* (*)(val*))(var5->class->vft[COLOR_abstract_collection__Collection__iterator]))(var5) /* iterator on <var5:Range[Int]>*/;
-for(;;) {
-var12 = ((short int (*)(val*))(var11->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var11) /* is_ok on <var11:Iterator[nullable Object]>*/;
-if(!var12) break;
-var13 = ((val* (*)(val*))(var11->class->vft[COLOR_abstract_collection__Iterator__item]))(var11) /* item on <var11:Iterator[nullable Object]>*/;
-var14 = ((struct instance_kernel__Int*)var13)->value; /* autounbox from nullable Object to Int */;
-var_i = var14;
-var15 = self->attrs[COLOR_parser_nodes__AExternCalls___n_extern_calls].val; /* _n_extern_calls on <self:AExternCalls> */
-if (var15 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_extern_calls", "src/parser/parser_prod.nit", 10837);
-exit(1);
-}
-var16 = ((val* (*)(val*, long))(var15->class->vft[COLOR_abstract_collection__SequenceRead___91d_93d]))(var15, var_i) /* [] on <var15:ANodes[AExternCall]>*/;
-var17 = ((short int (*)(val*, val*))(var16->class->vft[COLOR_kernel__Object___61d_61d]))(var16, var_old_child) /* == on <var16:nullable Object(AExternCall)>*/;
-if (var17){
-var18 = NULL;
-if (var_new_child == NULL) {
-var19 = 0; /* is null */
-} else {
-var19 = 1; /* arg is null and recv is not */
-}
-if (var19){
-/* <var_new_child:nullable ANode(ANode)> isa AExternCall */
-cltype21 = type_parser_nodes__AExternCall.color;
-idtype22 = type_parser_nodes__AExternCall.id;
-if(cltype21 >= var_new_child->type->table_size) {
-var20 = 0;
-} else {
-var20 = var_new_child->type->type_table[cltype21] == idtype22;
-}
-if (!var20) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser_prod.nit", 10839);
-exit(1);
-}
-var23 = self->attrs[COLOR_parser_nodes__AExternCalls___n_extern_calls].val; /* _n_extern_calls on <self:AExternCalls> */
-if (var23 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_extern_calls", "src/parser/parser_prod.nit", 10840);
-exit(1);
-}
-((void (*)(val*, long, val*))(var23->class->vft[COLOR_abstract_collection__Sequence___91d_93d_61d]))(var23, var_i, var_new_child) /* []= on <var23:ANodes[AExternCall]>*/;
-((void (*)(val*, val*))(var_new_child->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_new_child, self) /* parent= on <var_new_child:nullable ANode(AExternCall)>*/;
-} else {
-var24 = self->attrs[COLOR_parser_nodes__AExternCalls___n_extern_calls].val; /* _n_extern_calls on <self:AExternCalls> */
-if (var24 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_extern_calls", "src/parser/parser_prod.nit", 10843);
-exit(1);
-}
-((void (*)(val*, long))(var24->class->vft[COLOR_abstract_collection__Sequence__remove_at]))(var24, var_i) /* remove_at on <var24:ANodes[AExternCall]>*/;
-}
-goto RET_LABEL;
-} else {
-}
-CONTINUE_label: (void)0;
-((void (*)(val*))(var11->class->vft[COLOR_abstract_collection__Iterator__next]))(var11) /* next on <var11:Iterator[nullable Object]>*/;
-}
-BREAK_label: (void)0;
-RET_LABEL:;
-}
-/* method parser_prod#AExternCalls#replace_child for (self: Object, ANode, nullable ANode) */
-void VIRTUAL_parser_prod__AExternCalls__replace_child(val* self, val* p0, val* p1) {
-parser_prod__AExternCalls__replace_child(self, p0, p1);
-RET_LABEL:;
-}
-/* method parser_prod#AExternCalls#n_kwimport= for (self: AExternCalls, TKwimport) */
-void parser_prod__AExternCalls__n_kwimport_61d(val* self, val* p0) {
-val* var_node /* var node: TKwimport */;
-var_node = p0;
-self->attrs[COLOR_parser_nodes__AExternCalls___n_kwimport].val = var_node; /* _n_kwimport on <self:AExternCalls> */
-((void (*)(val*, val*))(var_node->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_node, self) /* parent= on <var_node:TKwimport>*/;
-RET_LABEL:;
-}
-/* method parser_prod#AExternCalls#n_kwimport= for (self: Object, TKwimport) */
-void VIRTUAL_parser_prod__AExternCalls__n_kwimport_61d(val* self, val* p0) {
-parser_prod__AExternCalls__n_kwimport_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_prod#AExternCalls#visit_all for (self: AExternCalls, Visitor) */
-void parser_prod__AExternCalls__visit_all(val* self, val* p0) {
-val* var_v /* var v: Visitor */;
-val* var /* : TKwimport */;
-val* var1 /* : ANodes[AExternCall] */;
-val* var2 /* : Iterator[nullable Object] */;
-short int var3 /* : Bool */;
-val* var4 /* : nullable Object */;
-val* var_n /* var n: AExternCall */;
-var_v = p0;
-var = self->attrs[COLOR_parser_nodes__AExternCalls___n_kwimport].val; /* _n_kwimport on <self:AExternCalls> */
-if (var == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwimport", "src/parser/parser_prod.nit", 10859);
-exit(1);
-}
-((void (*)(val*, val*))(var_v->class->vft[COLOR_parser_nodes__Visitor__enter_visit]))(var_v, var) /* enter_visit on <var_v:Visitor>*/;
-var1 = self->attrs[COLOR_parser_nodes__AExternCalls___n_extern_calls].val; /* _n_extern_calls on <self:AExternCalls> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_extern_calls", "src/parser/parser_prod.nit", 10860);
-exit(1);
-}
-var2 = ((val* (*)(val*))(var1->class->vft[COLOR_abstract_collection__Collection__iterator]))(var1) /* iterator on <var1:ANodes[AExternCall]>*/;
-for(;;) {
-var3 = ((short int (*)(val*))(var2->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var2) /* is_ok on <var2:Iterator[nullable Object]>*/;
-if(!var3) break;
-var4 = ((val* (*)(val*))(var2->class->vft[COLOR_abstract_collection__Iterator__item]))(var2) /* item on <var2:Iterator[nullable Object]>*/;
-var_n = var4;
-((void (*)(val*, val*))(var_v->class->vft[COLOR_parser_nodes__Visitor__enter_visit]))(var_v, var_n) /* enter_visit on <var_v:Visitor>*/;
-CONTINUE_label: (void)0;
-((void (*)(val*))(var2->class->vft[COLOR_abstract_collection__Iterator__next]))(var2) /* next on <var2:Iterator[nullable Object]>*/;
-}
-BREAK_label: (void)0;
-RET_LABEL:;
-}
-/* method parser_prod#AExternCalls#visit_all for (self: Object, Visitor) */
-void VIRTUAL_parser_prod__AExternCalls__visit_all(val* self, val* p0) {
-parser_prod__AExternCalls__visit_all(self, p0);
-RET_LABEL:;
-}
-/* method parser_prod#AExternCall#empty_init for (self: AExternCall) */
-void parser_prod__AExternCall__empty_init(val* self) {
-RET_LABEL:;
-}
-/* method parser_prod#AExternCall#empty_init for (self: Object) */
-void VIRTUAL_parser_prod__AExternCall__empty_init(val* self) {
-parser_prod__AExternCall__empty_init(self);
-RET_LABEL:;
-}
-/* method parser_prod#AExternCall#init_aexterncall for (self: AExternCall) */
-void parser_prod__AExternCall__init_aexterncall(val* self) {
-((void (*)(val*))(self->class->vft[COLOR_parser_prod__AExternCall__empty_init]))(self) /* empty_init on <self:AExternCall>*/;
-RET_LABEL:;
-}
-/* method parser_prod#AExternCall#init_aexterncall for (self: Object) */
-void VIRTUAL_parser_prod__AExternCall__init_aexterncall(val* self) {
-parser_prod__AExternCall__init_aexterncall(self);
-RET_LABEL:;
-}
-/* method parser_prod#AExternCall#replace_child for (self: AExternCall, ANode, nullable ANode) */
-void parser_prod__AExternCall__replace_child(val* self, val* p0, val* p1) {
-val* var_old_child /* var old_child: ANode */;
-val* var_new_child /* var new_child: nullable ANode */;
-var_old_child = p0;
-var_new_child = p1;
-RET_LABEL:;
-}
-/* method parser_prod#AExternCall#replace_child for (self: Object, ANode, nullable ANode) */
-void VIRTUAL_parser_prod__AExternCall__replace_child(val* self, val* p0, val* p1) {
-parser_prod__AExternCall__replace_child(self, p0, p1);
-RET_LABEL:;
-}
-/* method parser_prod#AExternCall#visit_all for (self: AExternCall, Visitor) */
-void parser_prod__AExternCall__visit_all(val* self, val* p0) {
-val* var_v /* var v: Visitor */;
-var_v = p0;
-RET_LABEL:;
-}
-/* method parser_prod#AExternCall#visit_all for (self: Object, Visitor) */
-void VIRTUAL_parser_prod__AExternCall__visit_all(val* self, val* p0) {
-parser_prod__AExternCall__visit_all(self, p0);
-RET_LABEL:;
-}
-/* method parser_prod#ASuperExternCall#empty_init for (self: ASuperExternCall) */
-void parser_prod__ASuperExternCall__empty_init(val* self) {
-RET_LABEL:;
-}
-/* method parser_prod#ASuperExternCall#empty_init for (self: Object) */
-void VIRTUAL_parser_prod__ASuperExternCall__empty_init(val* self) {
-parser_prod__ASuperExternCall__empty_init(self);
-RET_LABEL:;
-}
-/* method parser_prod#ASuperExternCall#init_asuperexterncall for (self: ASuperExternCall, nullable TKwsuper) */
-void parser_prod__ASuperExternCall__init_asuperexterncall(val* self, val* p0) {
-val* var_n_kwsuper /* var n_kwsuper: nullable TKwsuper */;
-var_n_kwsuper = p0;
-((void (*)(val*))(self->class->vft[COLOR_parser_prod__ASuperExternCall__empty_init]))(self) /* empty_init on <self:ASuperExternCall>*/;
-if (var_n_kwsuper == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "src/parser/parser_prod.nit", 10891);
-exit(1);
-}
-self->attrs[COLOR_parser_nodes__ASuperExternCall___n_kwsuper].val = var_n_kwsuper; /* _n_kwsuper on <self:ASuperExternCall> */
-if (var_n_kwsuper == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Reciever is null", "src/parser/parser_prod.nit", 10892);
-exit(1);
-} else {
-((void (*)(val*, val*))(var_n_kwsuper->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_n_kwsuper, self) /* parent= on <var_n_kwsuper:nullable TKwsuper>*/;
-}
-RET_LABEL:;
-}
-/* method parser_prod#ASuperExternCall#init_asuperexterncall for (self: Object, nullable TKwsuper) */
-void VIRTUAL_parser_prod__ASuperExternCall__init_asuperexterncall(val* self, val* p0) {
-parser_prod__ASuperExternCall__init_asuperexterncall(self, p0);
-RET_LABEL:;
-}
-/* method parser_prod#ASuperExternCall#replace_child for (self: ASuperExternCall, ANode, nullable ANode) */
-void parser_prod__ASuperExternCall__replace_child(val* self, val* p0, val* p1) {
-val* var_old_child /* var old_child: ANode */;
-val* var_new_child /* var new_child: nullable ANode */;
-val* var /* : TKwsuper */;
-short int var1 /* : Bool */;
-val* var2 /* : null */;
-short int var3 /* : Bool */;
-short int var4 /* : Bool */;
-int cltype;
-int idtype;
-var_old_child = p0;
-var_new_child = p1;
-var = self->attrs[COLOR_parser_nodes__ASuperExternCall___n_kwsuper].val; /* _n_kwsuper on <self:ASuperExternCall> */
-if (var == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwsuper", "src/parser/parser_prod.nit", 10897);
-exit(1);
-}
-var1 = ((short int (*)(val*, val*))(var->class->vft[COLOR_kernel__Object___61d_61d]))(var, var_old_child) /* == on <var:TKwsuper>*/;
-if (var1){
-var2 = NULL;
-if (var_new_child == NULL) {
-var3 = 0; /* is null */
-} else {
-var3 = 1; /* arg is null and recv is not */
-}
-if (var3){
-((void (*)(val*, val*))(var_new_child->class->vft[COLOR_parser_nodes__ANode__parent_61d]))(var_new_child, self) /* parent= on <var_new_child:nullable ANode(ANode)>*/;
-/* <var_new_child:nullable ANode(ANode)> isa TKwsuper */
-cltype = type_parser_nodes__TKwsuper.color;
-idtype = type_parser_nodes__TKwsuper.id;
-if(cltype >= var_new_child->type->table_size) {
-var4 = 0;
-} else {
-var4 = var_new_child->type->type_table[cltype] == idtype;
-}
-if (!var4) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Assert failed", "src/parser/parser_prod.nit", 10900);
-exit(1);
-}
-self->attrs[COLOR_parser_nodes__ASuperExternCall___n_kwsuper].val = var_new_child; /* _n_kwsuper on <self:ASuperExternCall> */
-} else {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Aborted", "src/parser/parser_prod.nit", 10903);
-exit(1);
-}
-goto RET_LABEL;
-} else {
-}
-RET_LABEL:;
-}