X-Git-Url: http://nitlanguage.org diff --git a/c_src/parser.sep.12.c b/c_src/parser.sep.12.c index 7d5873f..647ccc6 100644 --- a/c_src/parser.sep.12.c +++ b/c_src/parser.sep.12.c @@ -1,2911 +1,3174 @@ #include "parser.sep.0.h" -/* method parser#ReduceAction456#action for (self: ReduceAction456, Parser) */ -void parser__ReduceAction456__action(val* self, val* p0) { +/* method parser#ReduceAction466#action for (self: ReduceAction466, Parser) */ +void parser__ReduceAction466__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var3 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var4 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var5 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var6 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var7 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var8 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var9 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var10 /* : Bool */; +short int var8 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; +short int var9 /* : Bool */; +int cltype10; +int idtype11; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -val* var_tkwinitnode5 /* var tkwinitnode5: nullable Object */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var20 /* : Bool */; -int cltype21; -int idtype22; +short int var12 /* : Bool */; +int cltype13; +int idtype14; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var15 /* : Bool */; +int cltype16; +int idtype17; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; -val* var_pexprnode9 /* var pexprnode9: nullable Object */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -val* var29 /* : AConcreteInitPropdef */; -val* var30 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable AConcreteInitPropdef */; -long var31 /* : Int */; -long var32 /* : Int */; +short int var18 /* : Bool */; +int cltype19; +int idtype20; +val* var21 /* : AExternInitPropdef */; +val* var22 /* : null */; +val* var23 /* : null */; +val* var24 /* : null */; +val* var25 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var26 /* : Int */; +long var27 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var1; +var_nodearraylist7 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var2; +var_nodearraylist6 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var3; +var_nodearraylist5 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var4; +var_nodearraylist4 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var5; +var_nodearraylist3 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var6; +var_nodearraylist2 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var9; +var_nodearraylist1 = var7; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var10 = 1; +var8 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var10 = 0; +var8 = 0; } else { -var10 = var_pdocnode2->type->type_table[cltype] == idtype; +var8 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var10) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20165); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20539); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype12 = type_nullable_parser_nodes__TKwredef.color; -idtype13 = type_nullable_parser_nodes__TKwredef.id; +cltype10 = type_nullable_parser_nodes__TKwredef.color; +idtype11 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var11 = 1; +var9 = 1; } else { -if(cltype12 >= var_tkwredefnode3->type->table_size) { -var11 = 0; +if(cltype10 >= var_tkwredefnode3->type->table_size) { +var9 = 0; } else { -var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; +var9 = var_tkwredefnode3->type->type_table[cltype10] == idtype11; } } -if (!var11) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20167); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20541); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype15 = type_nullable_parser_nodes__AVisibility.color; -idtype16 = type_nullable_parser_nodes__AVisibility.id; +cltype13 = type_nullable_parser_nodes__AVisibility.color; +idtype14 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var14 = 1; -} else { -if(cltype15 >= var_pvisibilitynode4->type->table_size) { -var14 = 0; -} else { -var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; -} -} -if (!var14) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20169); -exit(1); -} -var_tkwinitnode5 = var_nodearraylist4; -/* isa nullable TKwinit */ -cltype18 = type_nullable_parser_nodes__TKwinit.color; -idtype19 = type_nullable_parser_nodes__TKwinit.id; -if(var_tkwinitnode5 == NULL) { -var17 = 1; +var12 = 1; } else { -if(cltype18 >= var_tkwinitnode5->type->table_size) { -var17 = 0; +if(cltype13 >= var_pvisibilitynode4->type->table_size) { +var12 = 0; } else { -var17 = var_tkwinitnode5->type->type_table[cltype18] == idtype19; +var12 = var_pvisibilitynode4->type->type_table[cltype13] == idtype14; } } -if (!var17) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20171); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20543); +show_backtrace(1); } -var_pmethidnode6 = var_nodearraylist5; -/* isa nullable AMethid */ -cltype21 = type_nullable_parser_nodes__AMethid.color; -idtype22 = type_nullable_parser_nodes__AMethid.id; -if(var_pmethidnode6 == NULL) { -var20 = 1; +var_tkwnewnode5 = var_nodearraylist4; +/* isa nullable TKwnew */ +cltype16 = type_nullable_parser_nodes__TKwnew.color; +idtype17 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { +var15 = 1; } else { -if(cltype21 >= var_pmethidnode6->type->table_size) { -var20 = 0; +if(cltype16 >= var_tkwnewnode5->type->table_size) { +var15 = 0; } else { -var20 = var_pmethidnode6->type->type_table[cltype21] == idtype22; +var15 = var_tkwnewnode5->type->type_table[cltype16] == idtype17; } } -if (!var20) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20173); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20545); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist6; +var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype24 = type_nullable_parser_nodes__ASignature.color; -idtype25 = type_nullable_parser_nodes__ASignature.id; +cltype19 = type_nullable_parser_nodes__ASignature.color; +idtype20 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var23 = 1; -} else { -if(cltype24 >= var_psignaturenode7->type->table_size) { -var23 = 0; -} else { -var23 = var_psignaturenode7->type->type_table[cltype24] == idtype25; -} -} -if (!var23) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20175); -exit(1); -} -var_pexprnode9 = var_nodearraylist8; -/* isa nullable AExpr */ -cltype27 = type_nullable_parser_nodes__AExpr.color; -idtype28 = type_nullable_parser_nodes__AExpr.id; -if(var_pexprnode9 == NULL) { -var26 = 1; +var18 = 1; } else { -if(cltype27 >= var_pexprnode9->type->table_size) { -var26 = 0; +if(cltype19 >= var_psignaturenode7->type->table_size) { +var18 = 0; } else { -var26 = var_pexprnode9->type->type_table[cltype27] == idtype28; +var18 = var_psignaturenode7->type->type_table[cltype19] == idtype20; } } -if (!var26) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20177); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20547); +show_backtrace(1); } -var29 = NEW_parser_nodes__AConcreteInitPropdef(&type_parser_nodes__AConcreteInitPropdef); -var30 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AConcreteInitPropdef__init_aconcreteinitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwinitnode5, var_pmethidnode6, var_psignaturenode7, var30, var_pexprnode9) /* init_aconcreteinitpropdef on */; -CHECK_NEW_parser_nodes__AConcreteInitPropdef(var29); -var_ppropdefnode1 = var29; +var21 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var22 = NULL; +var23 = NULL; +var24 = NULL; +var25 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var21->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var21, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var22, var_psignaturenode7, var23, var24, var25) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var21; var_node_list = var_ppropdefnode1; -var31 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var32 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var31) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var32, var_node_list) /* push on */; +var26 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var27 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var26) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var27, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction456#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction456__action(val* self, val* p0) { -parser__ReduceAction456__action(self, p0); +/* method parser#ReduceAction466#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction466__action(val* self, val* p0) { +parser__ReduceAction466__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction457#action for (self: ReduceAction457, Parser) */ -void parser__ReduceAction457__action(val* self, val* p0) { +/* method parser#ReduceAction467#action for (self: ReduceAction467, Parser) */ +void parser__ReduceAction467__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var2 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var3 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var4 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var5 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var6 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var7 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var8 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var9 /* : Bool */; +short int var8 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; -val* var_tkwinitnode5 /* var tkwinitnode5: nullable Object */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; +short int var9 /* : Bool */; +int cltype10; +int idtype11; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var12 /* : Bool */; +int cltype13; +int idtype14; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +short int var15 /* : Bool */; +int cltype16; +int idtype17; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var16 /* : Bool */; -int cltype17; -int idtype18; -val* var_pannotationsnode8 /* var pannotationsnode8: nullable Object */; -short int var19 /* : Bool */; -int cltype20; -int idtype21; -val* var_pexprnode9 /* var pexprnode9: nullable Object */; -short int var22 /* : Bool */; -int cltype23; -int idtype24; -val* var25 /* : AConcreteInitPropdef */; -val* var26 /* : null */; -val* var27 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable AConcreteInitPropdef */; -long var28 /* : Int */; -long var29 /* : Int */; +short int var18 /* : Bool */; +int cltype19; +int idtype20; +val* var21 /* : AExternInitPropdef */; +val* var22 /* : null */; +val* var23 /* : null */; +val* var24 /* : null */; +val* var25 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var26 /* : Int */; +long var27 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var1; +var_nodearraylist7 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var2; +var_nodearraylist6 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var3; +var_nodearraylist5 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var4; +var_nodearraylist4 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var5; +var_nodearraylist3 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var6; +var_nodearraylist2 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var8; +var_nodearraylist1 = var7; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var9 = 1; +var8 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var9 = 0; +var8 = 0; } else { -var9 = var_pdocnode2->type->type_table[cltype] == idtype; +var8 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var9) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20206); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20576); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype11 = type_nullable_parser_nodes__AVisibility.color; -idtype12 = type_nullable_parser_nodes__AVisibility.id; +cltype10 = type_nullable_parser_nodes__AVisibility.color; +idtype11 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var10 = 1; -} else { -if(cltype11 >= var_pvisibilitynode4->type->table_size) { -var10 = 0; -} else { -var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; -} -} -if (!var10) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20208); -exit(1); -} -var_tkwinitnode5 = var_nodearraylist3; -/* isa nullable TKwinit */ -cltype14 = type_nullable_parser_nodes__TKwinit.color; -idtype15 = type_nullable_parser_nodes__TKwinit.id; -if(var_tkwinitnode5 == NULL) { -var13 = 1; +var9 = 1; } else { -if(cltype14 >= var_tkwinitnode5->type->table_size) { -var13 = 0; +if(cltype10 >= var_pvisibilitynode4->type->table_size) { +var9 = 0; } else { -var13 = var_tkwinitnode5->type->type_table[cltype14] == idtype15; +var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; } } -if (!var13) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20210); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20578); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist4; -/* isa nullable ASignature */ -cltype17 = type_nullable_parser_nodes__ASignature.color; -idtype18 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { -var16 = 1; +var_tkwnewnode5 = var_nodearraylist3; +/* isa nullable TKwnew */ +cltype13 = type_nullable_parser_nodes__TKwnew.color; +idtype14 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { +var12 = 1; } else { -if(cltype17 >= var_psignaturenode7->type->table_size) { -var16 = 0; +if(cltype13 >= var_tkwnewnode5->type->table_size) { +var12 = 0; } else { -var16 = var_psignaturenode7->type->type_table[cltype17] == idtype18; +var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; } } -if (!var16) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20212); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20580); +show_backtrace(1); } -var_pannotationsnode8 = var_nodearraylist5; -/* isa nullable AAnnotations */ -cltype20 = type_nullable_parser_nodes__AAnnotations.color; -idtype21 = type_nullable_parser_nodes__AAnnotations.id; -if(var_pannotationsnode8 == NULL) { -var19 = 1; +var_pmethidnode6 = var_nodearraylist4; +/* isa nullable AMethid */ +cltype16 = type_nullable_parser_nodes__AMethid.color; +idtype17 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { +var15 = 1; } else { -if(cltype20 >= var_pannotationsnode8->type->table_size) { -var19 = 0; +if(cltype16 >= var_pmethidnode6->type->table_size) { +var15 = 0; } else { -var19 = var_pannotationsnode8->type->type_table[cltype20] == idtype21; +var15 = var_pmethidnode6->type->type_table[cltype16] == idtype17; } } -if (!var19) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20214); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20582); +show_backtrace(1); } -var_pexprnode9 = var_nodearraylist7; -/* isa nullable AExpr */ -cltype23 = type_nullable_parser_nodes__AExpr.color; -idtype24 = type_nullable_parser_nodes__AExpr.id; -if(var_pexprnode9 == NULL) { -var22 = 1; +var_psignaturenode7 = var_nodearraylist5; +/* isa nullable ASignature */ +cltype19 = type_nullable_parser_nodes__ASignature.color; +idtype20 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var18 = 1; } else { -if(cltype23 >= var_pexprnode9->type->table_size) { -var22 = 0; +if(cltype19 >= var_psignaturenode7->type->table_size) { +var18 = 0; } else { -var22 = var_pexprnode9->type->type_table[cltype23] == idtype24; +var18 = var_psignaturenode7->type->type_table[cltype19] == idtype20; } } -if (!var22) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20216); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20584); +show_backtrace(1); } -var25 = NEW_parser_nodes__AConcreteInitPropdef(&type_parser_nodes__AConcreteInitPropdef); -var26 = NULL; -var27 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AConcreteInitPropdef__init_aconcreteinitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwinitnode5, var27, var_psignaturenode7, var_pannotationsnode8, var_pexprnode9) /* init_aconcreteinitpropdef on */; -CHECK_NEW_parser_nodes__AConcreteInitPropdef(var25); -var_ppropdefnode1 = var25; +var21 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var22 = NULL; +var23 = NULL; +var24 = NULL; +var25 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var21->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var21, var_pdocnode2, var22, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var23, var24, var25) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var21; var_node_list = var_ppropdefnode1; -var28 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var29 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var28) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var29, var_node_list) /* push on */; +var26 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var27 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var26) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var27, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction457#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction457__action(val* self, val* p0) { -parser__ReduceAction457__action(self, p0); +/* method parser#ReduceAction467#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction467__action(val* self, val* p0) { +parser__ReduceAction467__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction458#action for (self: ReduceAction458, Parser) */ -void parser__ReduceAction458__action(val* self, val* p0) { +/* method parser#ReduceAction468#action for (self: ReduceAction468, Parser) */ +void parser__ReduceAction468__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var2 /* : nullable Object */; val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var3 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var4 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var5 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var6 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var7 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var8 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var9 /* : nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var10 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; +short int var10 /* : Bool */; +int cltype11; +int idtype12; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -val* var_tkwinitnode5 /* var tkwinitnode5: nullable Object */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; +short int var13 /* : Bool */; +int cltype14; +int idtype15; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var16 /* : Bool */; +int cltype17; +int idtype18; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +short int var19 /* : Bool */; +int cltype20; +int idtype21; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var20 /* : Bool */; -int cltype21; -int idtype22; -val* var_pannotationsnode8 /* var pannotationsnode8: nullable Object */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; -val* var_pexprnode9 /* var pexprnode9: nullable Object */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -val* var29 /* : AConcreteInitPropdef */; -val* var30 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable AConcreteInitPropdef */; -long var31 /* : Int */; -long var32 /* : Int */; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var25 /* : AExternInitPropdef */; +val* var26 /* : null */; +val* var27 /* : null */; +val* var28 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var29 /* : Int */; +long var30 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var1; +var_nodearraylist8 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var2; +var_nodearraylist7 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var3; +var_nodearraylist6 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var4; +var_nodearraylist5 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var5; +var_nodearraylist4 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var6; +var_nodearraylist3 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var7; +var_nodearraylist2 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var9; +var_nodearraylist1 = var8; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var10 = 1; +var9 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var10 = 0; +var9 = 0; } else { -var10 = var_pdocnode2->type->type_table[cltype] == idtype; +var9 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var10) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20246); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20614); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype12 = type_nullable_parser_nodes__TKwredef.color; -idtype13 = type_nullable_parser_nodes__TKwredef.id; +cltype11 = type_nullable_parser_nodes__TKwredef.color; +idtype12 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var11 = 1; +var10 = 1; } else { -if(cltype12 >= var_tkwredefnode3->type->table_size) { -var11 = 0; +if(cltype11 >= var_tkwredefnode3->type->table_size) { +var10 = 0; } else { -var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; +var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; } } -if (!var11) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20248); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20616); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype15 = type_nullable_parser_nodes__AVisibility.color; -idtype16 = type_nullable_parser_nodes__AVisibility.id; +cltype14 = type_nullable_parser_nodes__AVisibility.color; +idtype15 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var14 = 1; +var13 = 1; } else { -if(cltype15 >= var_pvisibilitynode4->type->table_size) { -var14 = 0; +if(cltype14 >= var_pvisibilitynode4->type->table_size) { +var13 = 0; } else { -var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; +var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; } } -if (!var14) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20250); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20618); +show_backtrace(1); } -var_tkwinitnode5 = var_nodearraylist4; -/* isa nullable TKwinit */ -cltype18 = type_nullable_parser_nodes__TKwinit.color; -idtype19 = type_nullable_parser_nodes__TKwinit.id; -if(var_tkwinitnode5 == NULL) { -var17 = 1; +var_tkwnewnode5 = var_nodearraylist4; +/* isa nullable TKwnew */ +cltype17 = type_nullable_parser_nodes__TKwnew.color; +idtype18 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { +var16 = 1; } else { -if(cltype18 >= var_tkwinitnode5->type->table_size) { -var17 = 0; +if(cltype17 >= var_tkwnewnode5->type->table_size) { +var16 = 0; } else { -var17 = var_tkwinitnode5->type->type_table[cltype18] == idtype19; +var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; } } -if (!var17) { +if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20252); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20620); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist5; -/* isa nullable ASignature */ -cltype21 = type_nullable_parser_nodes__ASignature.color; -idtype22 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { -var20 = 1; +var_pmethidnode6 = var_nodearraylist5; +/* isa nullable AMethid */ +cltype20 = type_nullable_parser_nodes__AMethid.color; +idtype21 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { +var19 = 1; } else { -if(cltype21 >= var_psignaturenode7->type->table_size) { -var20 = 0; +if(cltype20 >= var_pmethidnode6->type->table_size) { +var19 = 0; } else { -var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; +var19 = var_pmethidnode6->type->type_table[cltype20] == idtype21; } } -if (!var20) { +if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20254); -exit(1); -} -var_pannotationsnode8 = var_nodearraylist6; -/* isa nullable AAnnotations */ -cltype24 = type_nullable_parser_nodes__AAnnotations.color; -idtype25 = type_nullable_parser_nodes__AAnnotations.id; -if(var_pannotationsnode8 == NULL) { -var23 = 1; -} else { -if(cltype24 >= var_pannotationsnode8->type->table_size) { -var23 = 0; -} else { -var23 = var_pannotationsnode8->type->type_table[cltype24] == idtype25; -} +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20622); +show_backtrace(1); } -if (!var23) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20256); -exit(1); -} -var_pexprnode9 = var_nodearraylist8; -/* isa nullable AExpr */ -cltype27 = type_nullable_parser_nodes__AExpr.color; -idtype28 = type_nullable_parser_nodes__AExpr.id; -if(var_pexprnode9 == NULL) { -var26 = 1; +var_psignaturenode7 = var_nodearraylist6; +/* isa nullable ASignature */ +cltype23 = type_nullable_parser_nodes__ASignature.color; +idtype24 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var22 = 1; } else { -if(cltype27 >= var_pexprnode9->type->table_size) { -var26 = 0; +if(cltype23 >= var_psignaturenode7->type->table_size) { +var22 = 0; } else { -var26 = var_pexprnode9->type->type_table[cltype27] == idtype28; +var22 = var_psignaturenode7->type->type_table[cltype23] == idtype24; } } -if (!var26) { +if (!var22) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20258); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20624); +show_backtrace(1); } -var29 = NEW_parser_nodes__AConcreteInitPropdef(&type_parser_nodes__AConcreteInitPropdef); -var30 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AConcreteInitPropdef__init_aconcreteinitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwinitnode5, var30, var_psignaturenode7, var_pannotationsnode8, var_pexprnode9) /* init_aconcreteinitpropdef on */; -CHECK_NEW_parser_nodes__AConcreteInitPropdef(var29); -var_ppropdefnode1 = var29; +var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var26 = NULL; +var27 = NULL; +var28 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var26, var27, var28) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var25; var_node_list = var_ppropdefnode1; -var31 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var32 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var31) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var32, var_node_list) /* push on */; +var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction458#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction458__action(val* self, val* p0) { -parser__ReduceAction458__action(self, p0); +/* method parser#ReduceAction468#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction468__action(val* self, val* p0) { +parser__ReduceAction468__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction459#action for (self: ReduceAction459, Parser) */ -void parser__ReduceAction459__action(val* self, val* p0) { +/* method parser#ReduceAction469#action for (self: ReduceAction469, Parser) */ +void parser__ReduceAction469__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var3 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var4 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var5 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var6 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var7 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var8 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var9 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var10 /* : Bool */; +short int var8 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; -val* var_tkwinitnode5 /* var tkwinitnode5: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; +short int var9 /* : Bool */; +int cltype10; +int idtype11; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var12 /* : Bool */; +int cltype13; +int idtype14; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var20 /* : Bool */; -int cltype21; -int idtype22; -val* var_pannotationsnode8 /* var pannotationsnode8: nullable Object */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; -val* var_pexprnode9 /* var pexprnode9: nullable Object */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -val* var29 /* : AConcreteInitPropdef */; -val* var30 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable AConcreteInitPropdef */; -long var31 /* : Int */; -long var32 /* : Int */; +short int var15 /* : Bool */; +int cltype16; +int idtype17; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var18 /* : Bool */; +int cltype19; +int idtype20; +val* var21 /* : AExternInitPropdef */; +val* var22 /* : null */; +val* var23 /* : null */; +val* var24 /* : null */; +val* var25 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var26 /* : Int */; +long var27 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var1; +var_nodearraylist7 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var2; +var_nodearraylist6 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var3; +var_nodearraylist5 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var4; +var_nodearraylist4 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var5; +var_nodearraylist3 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var6; +var_nodearraylist2 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var9; +var_nodearraylist1 = var7; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var10 = 1; +var8 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var10 = 0; +var8 = 0; } else { -var10 = var_pdocnode2->type->type_table[cltype] == idtype; +var8 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var10) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20288); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20653); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype12 = type_nullable_parser_nodes__AVisibility.color; -idtype13 = type_nullable_parser_nodes__AVisibility.id; +cltype10 = type_nullable_parser_nodes__AVisibility.color; +idtype11 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var11 = 1; -} else { -if(cltype12 >= var_pvisibilitynode4->type->table_size) { -var11 = 0; -} else { -var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; -} -} -if (!var11) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20290); -exit(1); -} -var_tkwinitnode5 = var_nodearraylist3; -/* isa nullable TKwinit */ -cltype15 = type_nullable_parser_nodes__TKwinit.color; -idtype16 = type_nullable_parser_nodes__TKwinit.id; -if(var_tkwinitnode5 == NULL) { -var14 = 1; +var9 = 1; } else { -if(cltype15 >= var_tkwinitnode5->type->table_size) { -var14 = 0; +if(cltype10 >= var_pvisibilitynode4->type->table_size) { +var9 = 0; } else { -var14 = var_tkwinitnode5->type->type_table[cltype15] == idtype16; +var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; } } -if (!var14) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20292); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20655); +show_backtrace(1); } -var_pmethidnode6 = var_nodearraylist4; -/* isa nullable AMethid */ -cltype18 = type_nullable_parser_nodes__AMethid.color; -idtype19 = type_nullable_parser_nodes__AMethid.id; -if(var_pmethidnode6 == NULL) { -var17 = 1; +var_tkwnewnode5 = var_nodearraylist3; +/* isa nullable TKwnew */ +cltype13 = type_nullable_parser_nodes__TKwnew.color; +idtype14 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { +var12 = 1; } else { -if(cltype18 >= var_pmethidnode6->type->table_size) { -var17 = 0; +if(cltype13 >= var_tkwnewnode5->type->table_size) { +var12 = 0; } else { -var17 = var_pmethidnode6->type->type_table[cltype18] == idtype19; +var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; } } -if (!var17) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20294); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20657); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist5; +var_psignaturenode7 = var_nodearraylist4; /* isa nullable ASignature */ -cltype21 = type_nullable_parser_nodes__ASignature.color; -idtype22 = type_nullable_parser_nodes__ASignature.id; +cltype16 = type_nullable_parser_nodes__ASignature.color; +idtype17 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var20 = 1; -} else { -if(cltype21 >= var_psignaturenode7->type->table_size) { -var20 = 0; -} else { -var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; -} -} -if (!var20) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20296); -exit(1); -} -var_pannotationsnode8 = var_nodearraylist6; -/* isa nullable AAnnotations */ -cltype24 = type_nullable_parser_nodes__AAnnotations.color; -idtype25 = type_nullable_parser_nodes__AAnnotations.id; -if(var_pannotationsnode8 == NULL) { -var23 = 1; +var15 = 1; } else { -if(cltype24 >= var_pannotationsnode8->type->table_size) { -var23 = 0; +if(cltype16 >= var_psignaturenode7->type->table_size) { +var15 = 0; } else { -var23 = var_pannotationsnode8->type->type_table[cltype24] == idtype25; +var15 = var_psignaturenode7->type->type_table[cltype16] == idtype17; } } -if (!var23) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20298); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20659); +show_backtrace(1); } -var_pexprnode9 = var_nodearraylist8; -/* isa nullable AExpr */ -cltype27 = type_nullable_parser_nodes__AExpr.color; -idtype28 = type_nullable_parser_nodes__AExpr.id; -if(var_pexprnode9 == NULL) { -var26 = 1; +var_tstringnode8 = var_nodearraylist7; +/* isa nullable TString */ +cltype19 = type_nullable_parser_nodes__TString.color; +idtype20 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var18 = 1; } else { -if(cltype27 >= var_pexprnode9->type->table_size) { -var26 = 0; +if(cltype19 >= var_tstringnode8->type->table_size) { +var18 = 0; } else { -var26 = var_pexprnode9->type->type_table[cltype27] == idtype28; +var18 = var_tstringnode8->type->type_table[cltype19] == idtype20; } } -if (!var26) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20300); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20661); +show_backtrace(1); } -var29 = NEW_parser_nodes__AConcreteInitPropdef(&type_parser_nodes__AConcreteInitPropdef); -var30 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AConcreteInitPropdef__init_aconcreteinitpropdef]))(var29, var_pdocnode2, var30, var_pvisibilitynode4, var_tkwinitnode5, var_pmethidnode6, var_psignaturenode7, var_pannotationsnode8, var_pexprnode9) /* init_aconcreteinitpropdef on */; -CHECK_NEW_parser_nodes__AConcreteInitPropdef(var29); -var_ppropdefnode1 = var29; +var21 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var22 = NULL; +var23 = NULL; +var24 = NULL; +var25 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var21->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var21, var_pdocnode2, var22, var_pvisibilitynode4, var_tkwnewnode5, var23, var_psignaturenode7, var_tstringnode8, var24, var25) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var21; var_node_list = var_ppropdefnode1; -var31 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var32 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var31) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var32, var_node_list) /* push on */; +var26 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var27 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var26) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var27, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction459#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction459__action(val* self, val* p0) { -parser__ReduceAction459__action(self, p0); +/* method parser#ReduceAction469#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction469__action(val* self, val* p0) { +parser__ReduceAction469__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction460#action for (self: ReduceAction460, Parser) */ -void parser__ReduceAction460__action(val* self, val* p0) { +/* method parser#ReduceAction470#action for (self: ReduceAction470, Parser) */ +void parser__ReduceAction470__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var3 /* : nullable Object */; val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var4 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var5 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var6 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var7 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var8 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var9 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var10 /* : nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var11 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; +short int var10 /* : Bool */; +int cltype11; +int idtype12; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -val* var_tkwinitnode5 /* var tkwinitnode5: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var21 /* : Bool */; -int cltype22; -int idtype23; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var24 /* : Bool */; -int cltype25; -int idtype26; -val* var_pannotationsnode8 /* var pannotationsnode8: nullable Object */; -short int var27 /* : Bool */; -int cltype28; -int idtype29; -val* var_pexprnode9 /* var pexprnode9: nullable Object */; -short int var30 /* : Bool */; -int cltype31; -int idtype32; -val* var33 /* : AConcreteInitPropdef */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable AConcreteInitPropdef */; -long var34 /* : Int */; -long var35 /* : Int */; +short int var13 /* : Bool */; +int cltype14; +int idtype15; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var16 /* : Bool */; +int cltype17; +int idtype18; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +short int var19 /* : Bool */; +int cltype20; +int idtype21; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var25 /* : AExternInitPropdef */; +val* var26 /* : null */; +val* var27 /* : null */; +val* var28 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var29 /* : Int */; +long var30 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist10 = var1; +var_nodearraylist8 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var2; +var_nodearraylist7 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var3; +var_nodearraylist6 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var4; +var_nodearraylist5 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var5; +var_nodearraylist4 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var6; +var_nodearraylist3 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var7; +var_nodearraylist2 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var9; -var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var10; +var_nodearraylist1 = var8; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var11 = 1; +var9 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var11 = 0; +var9 = 0; } else { -var11 = var_pdocnode2->type->type_table[cltype] == idtype; +var9 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var11) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20331); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20691); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype13 = type_nullable_parser_nodes__TKwredef.color; -idtype14 = type_nullable_parser_nodes__TKwredef.id; +cltype11 = type_nullable_parser_nodes__TKwredef.color; +idtype12 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var12 = 1; +var10 = 1; } else { -if(cltype13 >= var_tkwredefnode3->type->table_size) { -var12 = 0; +if(cltype11 >= var_tkwredefnode3->type->table_size) { +var10 = 0; } else { -var12 = var_tkwredefnode3->type->type_table[cltype13] == idtype14; +var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; } } -if (!var12) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20333); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20693); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype16 = type_nullable_parser_nodes__AVisibility.color; -idtype17 = type_nullable_parser_nodes__AVisibility.id; +cltype14 = type_nullable_parser_nodes__AVisibility.color; +idtype15 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var15 = 1; -} else { -if(cltype16 >= var_pvisibilitynode4->type->table_size) { -var15 = 0; -} else { -var15 = var_pvisibilitynode4->type->type_table[cltype16] == idtype17; -} -} -if (!var15) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20335); -exit(1); -} -var_tkwinitnode5 = var_nodearraylist4; -/* isa nullable TKwinit */ -cltype19 = type_nullable_parser_nodes__TKwinit.color; -idtype20 = type_nullable_parser_nodes__TKwinit.id; -if(var_tkwinitnode5 == NULL) { -var18 = 1; +var13 = 1; } else { -if(cltype19 >= var_tkwinitnode5->type->table_size) { -var18 = 0; +if(cltype14 >= var_pvisibilitynode4->type->table_size) { +var13 = 0; } else { -var18 = var_tkwinitnode5->type->type_table[cltype19] == idtype20; +var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; } } -if (!var18) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20337); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20695); +show_backtrace(1); } -var_pmethidnode6 = var_nodearraylist5; -/* isa nullable AMethid */ -cltype22 = type_nullable_parser_nodes__AMethid.color; -idtype23 = type_nullable_parser_nodes__AMethid.id; -if(var_pmethidnode6 == NULL) { -var21 = 1; +var_tkwnewnode5 = var_nodearraylist4; +/* isa nullable TKwnew */ +cltype17 = type_nullable_parser_nodes__TKwnew.color; +idtype18 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { +var16 = 1; } else { -if(cltype22 >= var_pmethidnode6->type->table_size) { -var21 = 0; +if(cltype17 >= var_tkwnewnode5->type->table_size) { +var16 = 0; } else { -var21 = var_pmethidnode6->type->type_table[cltype22] == idtype23; +var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; } } -if (!var21) { +if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20339); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20697); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist6; +var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype25 = type_nullable_parser_nodes__ASignature.color; -idtype26 = type_nullable_parser_nodes__ASignature.id; +cltype20 = type_nullable_parser_nodes__ASignature.color; +idtype21 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var24 = 1; -} else { -if(cltype25 >= var_psignaturenode7->type->table_size) { -var24 = 0; -} else { -var24 = var_psignaturenode7->type->type_table[cltype25] == idtype26; -} -} -if (!var24) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20341); -exit(1); -} -var_pannotationsnode8 = var_nodearraylist7; -/* isa nullable AAnnotations */ -cltype28 = type_nullable_parser_nodes__AAnnotations.color; -idtype29 = type_nullable_parser_nodes__AAnnotations.id; -if(var_pannotationsnode8 == NULL) { -var27 = 1; +var19 = 1; } else { -if(cltype28 >= var_pannotationsnode8->type->table_size) { -var27 = 0; +if(cltype20 >= var_psignaturenode7->type->table_size) { +var19 = 0; } else { -var27 = var_pannotationsnode8->type->type_table[cltype28] == idtype29; +var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; } } -if (!var27) { +if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20343); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20699); +show_backtrace(1); } -var_pexprnode9 = var_nodearraylist9; -/* isa nullable AExpr */ -cltype31 = type_nullable_parser_nodes__AExpr.color; -idtype32 = type_nullable_parser_nodes__AExpr.id; -if(var_pexprnode9 == NULL) { -var30 = 1; +var_tstringnode8 = var_nodearraylist8; +/* isa nullable TString */ +cltype23 = type_nullable_parser_nodes__TString.color; +idtype24 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var22 = 1; } else { -if(cltype31 >= var_pexprnode9->type->table_size) { -var30 = 0; +if(cltype23 >= var_tstringnode8->type->table_size) { +var22 = 0; } else { -var30 = var_pexprnode9->type->type_table[cltype31] == idtype32; +var22 = var_tstringnode8->type->type_table[cltype23] == idtype24; } } -if (!var30) { +if (!var22) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20345); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20701); +show_backtrace(1); } -var33 = NEW_parser_nodes__AConcreteInitPropdef(&type_parser_nodes__AConcreteInitPropdef); -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AConcreteInitPropdef__init_aconcreteinitpropdef]))(var33, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwinitnode5, var_pmethidnode6, var_psignaturenode7, var_pannotationsnode8, var_pexprnode9) /* init_aconcreteinitpropdef on */; -CHECK_NEW_parser_nodes__AConcreteInitPropdef(var33); -var_ppropdefnode1 = var33; +var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var26 = NULL; +var27 = NULL; +var28 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var26, var_psignaturenode7, var_tstringnode8, var27, var28) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var25; var_node_list = var_ppropdefnode1; -var34 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var35 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var34) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var35, var_node_list) /* push on */; +var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction460#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction460__action(val* self, val* p0) { -parser__ReduceAction460__action(self, p0); +/* method parser#ReduceAction470#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction470__action(val* self, val* p0) { +parser__ReduceAction470__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction461#action for (self: ReduceAction461, Parser) */ -void parser__ReduceAction461__action(val* self, val* p0) { +/* method parser#ReduceAction471#action for (self: ReduceAction471, Parser) */ +void parser__ReduceAction471__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var5 /* : nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var6 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var7 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var6 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var7 /* : Bool */; -int cltype8; -int idtype9; -val* var_tkwtypenode5 /* var tkwtypenode5: nullable Object */; short int var10 /* : Bool */; int cltype11; int idtype12; -val* var_tclassidnode6 /* var tclassidnode6: nullable Object */; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var13 /* : Bool */; int cltype14; int idtype15; -val* var_ptypenode7 /* var ptypenode7: nullable Object */; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; short int var16 /* : Bool */; int cltype17; int idtype18; -val* var19 /* : ATypePropdef */; -val* var20 /* : null */; -val* var21 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable ATypePropdef */; -long var22 /* : Int */; -long var23 /* : Int */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +short int var19 /* : Bool */; +int cltype20; +int idtype21; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var25 /* : AExternInitPropdef */; +val* var26 /* : null */; +val* var27 /* : null */; +val* var28 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var29 /* : Int */; +long var30 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var1; +var_nodearraylist8 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var2; +var_nodearraylist7 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var3; +var_nodearraylist6 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var4; +var_nodearraylist5 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var5; +var_nodearraylist4 = var5; +var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist3 = var6; +var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var8; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var6 = 1; +var9 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var6 = 0; +var9 = 0; } else { -var6 = var_pdocnode2->type->type_table[cltype] == idtype; +var9 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var6) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20371); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20731); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype8 = type_nullable_parser_nodes__AVisibility.color; -idtype9 = type_nullable_parser_nodes__AVisibility.id; +cltype11 = type_nullable_parser_nodes__AVisibility.color; +idtype12 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var7 = 1; -} else { -if(cltype8 >= var_pvisibilitynode4->type->table_size) { -var7 = 0; -} else { -var7 = var_pvisibilitynode4->type->type_table[cltype8] == idtype9; -} -} -if (!var7) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20373); -exit(1); -} -var_tkwtypenode5 = var_nodearraylist3; -/* isa nullable TKwtype */ -cltype11 = type_nullable_parser_nodes__TKwtype.color; -idtype12 = type_nullable_parser_nodes__TKwtype.id; -if(var_tkwtypenode5 == NULL) { var10 = 1; } else { -if(cltype11 >= var_tkwtypenode5->type->table_size) { +if(cltype11 >= var_pvisibilitynode4->type->table_size) { var10 = 0; } else { -var10 = var_tkwtypenode5->type->type_table[cltype11] == idtype12; +var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; } } if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20375); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20733); +show_backtrace(1); } -var_tclassidnode6 = var_nodearraylist4; -/* isa nullable TClassid */ -cltype14 = type_nullable_parser_nodes__TClassid.color; -idtype15 = type_nullable_parser_nodes__TClassid.id; -if(var_tclassidnode6 == NULL) { +var_tkwnewnode5 = var_nodearraylist3; +/* isa nullable TKwnew */ +cltype14 = type_nullable_parser_nodes__TKwnew.color; +idtype15 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { var13 = 1; } else { -if(cltype14 >= var_tclassidnode6->type->table_size) { +if(cltype14 >= var_tkwnewnode5->type->table_size) { var13 = 0; } else { -var13 = var_tclassidnode6->type->type_table[cltype14] == idtype15; +var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; } } if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20377); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20735); +show_backtrace(1); } -var_ptypenode7 = var_nodearraylist5; -/* isa nullable AType */ -cltype17 = type_nullable_parser_nodes__AType.color; -idtype18 = type_nullable_parser_nodes__AType.id; -if(var_ptypenode7 == NULL) { +var_pmethidnode6 = var_nodearraylist4; +/* isa nullable AMethid */ +cltype17 = type_nullable_parser_nodes__AMethid.color; +idtype18 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { var16 = 1; } else { -if(cltype17 >= var_ptypenode7->type->table_size) { +if(cltype17 >= var_pmethidnode6->type->table_size) { var16 = 0; } else { -var16 = var_ptypenode7->type->type_table[cltype17] == idtype18; +var16 = var_pmethidnode6->type->type_table[cltype17] == idtype18; } } if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20379); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20737); +show_backtrace(1); } -var19 = NEW_parser_nodes__ATypePropdef(&type_parser_nodes__ATypePropdef); -var20 = NULL; -var21 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*))(var19->class->vft[COLOR_parser_prod__ATypePropdef__init_atypepropdef]))(var19, var_pdocnode2, var20, var_pvisibilitynode4, var_tkwtypenode5, var_tclassidnode6, var_ptypenode7, var21) /* init_atypepropdef on */; -CHECK_NEW_parser_nodes__ATypePropdef(var19); -var_ppropdefnode1 = var19; +var_psignaturenode7 = var_nodearraylist5; +/* isa nullable ASignature */ +cltype20 = type_nullable_parser_nodes__ASignature.color; +idtype21 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var19 = 1; +} else { +if(cltype20 >= var_psignaturenode7->type->table_size) { +var19 = 0; +} else { +var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; +} +} +if (!var19) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20739); +show_backtrace(1); +} +var_tstringnode8 = var_nodearraylist8; +/* isa nullable TString */ +cltype23 = type_nullable_parser_nodes__TString.color; +idtype24 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var22 = 1; +} else { +if(cltype23 >= var_tstringnode8->type->table_size) { +var22 = 0; +} else { +var22 = var_tstringnode8->type->type_table[cltype23] == idtype24; +} +} +if (!var22) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20741); +show_backtrace(1); +} +var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var26 = NULL; +var27 = NULL; +var28 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var27, var28) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var25; var_node_list = var_ppropdefnode1; -var22 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var23 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var22) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var23, var_node_list) /* push on */; +var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction461#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction461__action(val* self, val* p0) { -parser__ReduceAction461__action(self, p0); +/* method parser#ReduceAction471#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction471__action(val* self, val* p0) { +parser__ReduceAction471__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction462#action for (self: ReduceAction462, Parser) */ -void parser__ReduceAction462__action(val* self, val* p0) { +/* method parser#ReduceAction472#action for (self: ReduceAction472, Parser) */ +void parser__ReduceAction472__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var6 /* : nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var7 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var8 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var9 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var7 /* : Bool */; +short int var10 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var8 /* : Bool */; -int cltype9; -int idtype10; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; short int var11 /* : Bool */; int cltype12; int idtype13; -val* var_tkwtypenode5 /* var tkwtypenode5: nullable Object */; +val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; short int var14 /* : Bool */; int cltype15; int idtype16; -val* var_tclassidnode6 /* var tclassidnode6: nullable Object */; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var17 /* : Bool */; int cltype18; int idtype19; -val* var_ptypenode7 /* var ptypenode7: nullable Object */; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; short int var20 /* : Bool */; int cltype21; int idtype22; -val* var23 /* : ATypePropdef */; -val* var24 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable ATypePropdef */; -long var25 /* : Int */; -long var26 /* : Int */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +val* var29 /* : AExternInitPropdef */; +val* var30 /* : null */; +val* var31 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var32 /* : Int */; +long var33 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var1; +var_nodearraylist9 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var2; +var_nodearraylist8 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var3; +var_nodearraylist7 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var4; +var_nodearraylist6 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var5; +var_nodearraylist5 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var6; +var_nodearraylist4 = var6; +var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist3 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var9; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var7 = 1; +var10 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var7 = 0; +var10 = 0; } else { -var7 = var_pdocnode2->type->type_table[cltype] == idtype; +var10 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var7) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20405); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20772); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype9 = type_nullable_parser_nodes__TKwredef.color; -idtype10 = type_nullable_parser_nodes__TKwredef.id; +cltype12 = type_nullable_parser_nodes__TKwredef.color; +idtype13 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var8 = 1; -} else { -if(cltype9 >= var_tkwredefnode3->type->table_size) { -var8 = 0; -} else { -var8 = var_tkwredefnode3->type->type_table[cltype9] == idtype10; -} -} -if (!var8) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20407); -exit(1); -} -var_pvisibilitynode4 = var_nodearraylist3; -/* isa nullable AVisibility */ -cltype12 = type_nullable_parser_nodes__AVisibility.color; -idtype13 = type_nullable_parser_nodes__AVisibility.id; -if(var_pvisibilitynode4 == NULL) { var11 = 1; } else { -if(cltype12 >= var_pvisibilitynode4->type->table_size) { +if(cltype12 >= var_tkwredefnode3->type->table_size) { var11 = 0; } else { -var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; +var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; } } if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20409); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20774); +show_backtrace(1); } -var_tkwtypenode5 = var_nodearraylist4; -/* isa nullable TKwtype */ -cltype15 = type_nullable_parser_nodes__TKwtype.color; -idtype16 = type_nullable_parser_nodes__TKwtype.id; -if(var_tkwtypenode5 == NULL) { +var_pvisibilitynode4 = var_nodearraylist3; +/* isa nullable AVisibility */ +cltype15 = type_nullable_parser_nodes__AVisibility.color; +idtype16 = type_nullable_parser_nodes__AVisibility.id; +if(var_pvisibilitynode4 == NULL) { var14 = 1; } else { -if(cltype15 >= var_tkwtypenode5->type->table_size) { +if(cltype15 >= var_pvisibilitynode4->type->table_size) { var14 = 0; } else { -var14 = var_tkwtypenode5->type->type_table[cltype15] == idtype16; +var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; } } if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20411); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20776); +show_backtrace(1); } -var_tclassidnode6 = var_nodearraylist5; -/* isa nullable TClassid */ -cltype18 = type_nullable_parser_nodes__TClassid.color; -idtype19 = type_nullable_parser_nodes__TClassid.id; -if(var_tclassidnode6 == NULL) { +var_tkwnewnode5 = var_nodearraylist4; +/* isa nullable TKwnew */ +cltype18 = type_nullable_parser_nodes__TKwnew.color; +idtype19 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { var17 = 1; } else { -if(cltype18 >= var_tclassidnode6->type->table_size) { +if(cltype18 >= var_tkwnewnode5->type->table_size) { var17 = 0; } else { -var17 = var_tclassidnode6->type->type_table[cltype18] == idtype19; +var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; } } if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20413); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20778); +show_backtrace(1); } -var_ptypenode7 = var_nodearraylist6; -/* isa nullable AType */ -cltype21 = type_nullable_parser_nodes__AType.color; -idtype22 = type_nullable_parser_nodes__AType.id; -if(var_ptypenode7 == NULL) { +var_pmethidnode6 = var_nodearraylist5; +/* isa nullable AMethid */ +cltype21 = type_nullable_parser_nodes__AMethid.color; +idtype22 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { var20 = 1; } else { -if(cltype21 >= var_ptypenode7->type->table_size) { +if(cltype21 >= var_pmethidnode6->type->table_size) { var20 = 0; } else { -var20 = var_ptypenode7->type->type_table[cltype21] == idtype22; +var20 = var_pmethidnode6->type->type_table[cltype21] == idtype22; } } if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20415); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20780); +show_backtrace(1); } -var23 = NEW_parser_nodes__ATypePropdef(&type_parser_nodes__ATypePropdef); -var24 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*))(var23->class->vft[COLOR_parser_prod__ATypePropdef__init_atypepropdef]))(var23, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwtypenode5, var_tclassidnode6, var_ptypenode7, var24) /* init_atypepropdef on */; -CHECK_NEW_parser_nodes__ATypePropdef(var23); -var_ppropdefnode1 = var23; +var_psignaturenode7 = var_nodearraylist6; +/* isa nullable ASignature */ +cltype24 = type_nullable_parser_nodes__ASignature.color; +idtype25 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var23 = 1; +} else { +if(cltype24 >= var_psignaturenode7->type->table_size) { +var23 = 0; +} else { +var23 = var_psignaturenode7->type->type_table[cltype24] == idtype25; +} +} +if (!var23) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20782); +show_backtrace(1); +} +var_tstringnode8 = var_nodearraylist9; +/* isa nullable TString */ +cltype27 = type_nullable_parser_nodes__TString.color; +idtype28 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var26 = 1; +} else { +if(cltype27 >= var_tstringnode8->type->table_size) { +var26 = 0; +} else { +var26 = var_tstringnode8->type->type_table[cltype27] == idtype28; +} +} +if (!var26) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20784); +show_backtrace(1); +} +var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var30 = NULL; +var31 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var30, var31) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var29; var_node_list = var_ppropdefnode1; -var25 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var26 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var25) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var26, var_node_list) /* push on */; +var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction462#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction462__action(val* self, val* p0) { -parser__ReduceAction462__action(self, p0); +/* method parser#ReduceAction472#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction472__action(val* self, val* p0) { +parser__ReduceAction472__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction463#action for (self: ReduceAction463, Parser) */ -void parser__ReduceAction463__action(val* self, val* p0) { +/* method parser#ReduceAction473#action for (self: ReduceAction473, Parser) */ +void parser__ReduceAction473__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; val* var6 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var7 /* : Bool */; +short int var8 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var8 /* : Bool */; -int cltype9; -int idtype10; -val* var_tkwtypenode5 /* var tkwtypenode5: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; -val* var_tclassidnode6 /* var tclassidnode6: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -val* var_ptypenode7 /* var ptypenode7: nullable Object */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; -val* var_pannotationsnode8 /* var pannotationsnode8: nullable Object */; -short int var20 /* : Bool */; -int cltype21; -int idtype22; -val* var23 /* : ATypePropdef */; -val* var24 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable ATypePropdef */; -long var25 /* : Int */; -long var26 /* : Int */; -var_p = p0; -var = NULL; -var_node_list = var; -var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var1; -var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var2; +short int var9 /* : Bool */; +int cltype10; +int idtype11; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var12 /* : Bool */; +int cltype13; +int idtype14; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +short int var15 /* : Bool */; +int cltype16; +int idtype17; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var18 /* : Bool */; +int cltype19; +int idtype20; +val* var21 /* : AExternInitPropdef */; +val* var22 /* : null */; +val* var23 /* : null */; +val* var24 /* : null */; +val* var25 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var26 /* : Int */; +long var27 /* : Int */; +var_p = p0; +var = NULL; +var_node_list = var; +var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist7 = var1; +var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist6 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var3; +var_nodearraylist5 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var4; +var_nodearraylist4 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var5; +var_nodearraylist3 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var6; +var_nodearraylist2 = var6; +var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var7; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var7 = 1; +var8 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var7 = 0; +var8 = 0; } else { -var7 = var_pdocnode2->type->type_table[cltype] == idtype; +var8 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var7) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20441); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20813); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype9 = type_nullable_parser_nodes__AVisibility.color; -idtype10 = type_nullable_parser_nodes__AVisibility.id; +cltype10 = type_nullable_parser_nodes__AVisibility.color; +idtype11 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var8 = 1; -} else { -if(cltype9 >= var_pvisibilitynode4->type->table_size) { -var8 = 0; -} else { -var8 = var_pvisibilitynode4->type->type_table[cltype9] == idtype10; -} -} -if (!var8) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20443); -exit(1); -} -var_tkwtypenode5 = var_nodearraylist3; -/* isa nullable TKwtype */ -cltype12 = type_nullable_parser_nodes__TKwtype.color; -idtype13 = type_nullable_parser_nodes__TKwtype.id; -if(var_tkwtypenode5 == NULL) { -var11 = 1; +var9 = 1; } else { -if(cltype12 >= var_tkwtypenode5->type->table_size) { -var11 = 0; +if(cltype10 >= var_pvisibilitynode4->type->table_size) { +var9 = 0; } else { -var11 = var_tkwtypenode5->type->type_table[cltype12] == idtype13; +var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; } } -if (!var11) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20445); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20815); +show_backtrace(1); } -var_tclassidnode6 = var_nodearraylist4; -/* isa nullable TClassid */ -cltype15 = type_nullable_parser_nodes__TClassid.color; -idtype16 = type_nullable_parser_nodes__TClassid.id; -if(var_tclassidnode6 == NULL) { -var14 = 1; +var_tkwnewnode5 = var_nodearraylist3; +/* isa nullable TKwnew */ +cltype13 = type_nullable_parser_nodes__TKwnew.color; +idtype14 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { +var12 = 1; } else { -if(cltype15 >= var_tclassidnode6->type->table_size) { -var14 = 0; +if(cltype13 >= var_tkwnewnode5->type->table_size) { +var12 = 0; } else { -var14 = var_tclassidnode6->type->type_table[cltype15] == idtype16; +var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; } } -if (!var14) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20447); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20817); +show_backtrace(1); } -var_ptypenode7 = var_nodearraylist5; -/* isa nullable AType */ -cltype18 = type_nullable_parser_nodes__AType.color; -idtype19 = type_nullable_parser_nodes__AType.id; -if(var_ptypenode7 == NULL) { -var17 = 1; +var_psignaturenode7 = var_nodearraylist4; +/* isa nullable ASignature */ +cltype16 = type_nullable_parser_nodes__ASignature.color; +idtype17 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var15 = 1; } else { -if(cltype18 >= var_ptypenode7->type->table_size) { -var17 = 0; +if(cltype16 >= var_psignaturenode7->type->table_size) { +var15 = 0; } else { -var17 = var_ptypenode7->type->type_table[cltype18] == idtype19; +var15 = var_psignaturenode7->type->type_table[cltype16] == idtype17; } } -if (!var17) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20449); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20819); +show_backtrace(1); } -var_pannotationsnode8 = var_nodearraylist6; -/* isa nullable AAnnotations */ -cltype21 = type_nullable_parser_nodes__AAnnotations.color; -idtype22 = type_nullable_parser_nodes__AAnnotations.id; -if(var_pannotationsnode8 == NULL) { -var20 = 1; +var_pexterncallsnode9 = var_nodearraylist7; +/* isa nullable AExternCalls */ +cltype19 = type_nullable_parser_nodes__AExternCalls.color; +idtype20 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var18 = 1; } else { -if(cltype21 >= var_pannotationsnode8->type->table_size) { -var20 = 0; +if(cltype19 >= var_pexterncallsnode9->type->table_size) { +var18 = 0; } else { -var20 = var_pannotationsnode8->type->type_table[cltype21] == idtype22; +var18 = var_pexterncallsnode9->type->type_table[cltype19] == idtype20; } } -if (!var20) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20451); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20821); +show_backtrace(1); } -var23 = NEW_parser_nodes__ATypePropdef(&type_parser_nodes__ATypePropdef); +var21 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var22 = NULL; +var23 = NULL; var24 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*))(var23->class->vft[COLOR_parser_prod__ATypePropdef__init_atypepropdef]))(var23, var_pdocnode2, var24, var_pvisibilitynode4, var_tkwtypenode5, var_tclassidnode6, var_ptypenode7, var_pannotationsnode8) /* init_atypepropdef on */; -CHECK_NEW_parser_nodes__ATypePropdef(var23); -var_ppropdefnode1 = var23; +var25 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var21->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var21, var_pdocnode2, var22, var_pvisibilitynode4, var_tkwnewnode5, var23, var_psignaturenode7, var24, var_pexterncallsnode9, var25) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var21; var_node_list = var_ppropdefnode1; -var25 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var26 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var25) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var26, var_node_list) /* push on */; +var26 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var27 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var26) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var27, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction463#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction463__action(val* self, val* p0) { -parser__ReduceAction463__action(self, p0); +/* method parser#ReduceAction473#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction473__action(val* self, val* p0) { +parser__ReduceAction473__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction464#action for (self: ReduceAction464, Parser) */ -void parser__ReduceAction464__action(val* self, val* p0) { +/* method parser#ReduceAction474#action for (self: ReduceAction474, Parser) */ +void parser__ReduceAction474__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; val* var7 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var8 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var9 /* : Bool */; -int cltype10; -int idtype11; +short int var10 /* : Bool */; +int cltype11; +int idtype12; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; -val* var_tkwtypenode5 /* var tkwtypenode5: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -val* var_tclassidnode6 /* var tclassidnode6: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; -val* var_ptypenode7 /* var ptypenode7: nullable Object */; -short int var21 /* : Bool */; -int cltype22; -int idtype23; -val* var_pannotationsnode8 /* var pannotationsnode8: nullable Object */; -short int var24 /* : Bool */; -int cltype25; -int idtype26; -val* var27 /* : ATypePropdef */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable ATypePropdef */; -long var28 /* : Int */; +short int var13 /* : Bool */; +int cltype14; +int idtype15; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var16 /* : Bool */; +int cltype17; +int idtype18; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +short int var19 /* : Bool */; +int cltype20; +int idtype21; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var25 /* : AExternInitPropdef */; +val* var26 /* : null */; +val* var27 /* : null */; +val* var28 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; long var29 /* : Int */; +long var30 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var1; +var_nodearraylist8 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var2; +var_nodearraylist7 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var3; +var_nodearraylist6 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var4; +var_nodearraylist5 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var5; +var_nodearraylist4 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var6; +var_nodearraylist3 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var7; +var_nodearraylist2 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var8; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var8 = 1; +var9 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var8 = 0; +var9 = 0; } else { -var8 = var_pdocnode2->type->type_table[cltype] == idtype; +var9 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var8) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20478); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20851); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype10 = type_nullable_parser_nodes__TKwredef.color; -idtype11 = type_nullable_parser_nodes__TKwredef.id; +cltype11 = type_nullable_parser_nodes__TKwredef.color; +idtype12 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var9 = 1; +var10 = 1; } else { -if(cltype10 >= var_tkwredefnode3->type->table_size) { -var9 = 0; +if(cltype11 >= var_tkwredefnode3->type->table_size) { +var10 = 0; } else { -var9 = var_tkwredefnode3->type->type_table[cltype10] == idtype11; +var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; } } -if (!var9) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20480); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20853); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype13 = type_nullable_parser_nodes__AVisibility.color; -idtype14 = type_nullable_parser_nodes__AVisibility.id; +cltype14 = type_nullable_parser_nodes__AVisibility.color; +idtype15 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var12 = 1; +var13 = 1; } else { -if(cltype13 >= var_pvisibilitynode4->type->table_size) { -var12 = 0; +if(cltype14 >= var_pvisibilitynode4->type->table_size) { +var13 = 0; } else { -var12 = var_pvisibilitynode4->type->type_table[cltype13] == idtype14; +var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; } } -if (!var12) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20482); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20855); +show_backtrace(1); } -var_tkwtypenode5 = var_nodearraylist4; -/* isa nullable TKwtype */ -cltype16 = type_nullable_parser_nodes__TKwtype.color; -idtype17 = type_nullable_parser_nodes__TKwtype.id; -if(var_tkwtypenode5 == NULL) { -var15 = 1; +var_tkwnewnode5 = var_nodearraylist4; +/* isa nullable TKwnew */ +cltype17 = type_nullable_parser_nodes__TKwnew.color; +idtype18 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { +var16 = 1; } else { -if(cltype16 >= var_tkwtypenode5->type->table_size) { -var15 = 0; +if(cltype17 >= var_tkwnewnode5->type->table_size) { +var16 = 0; } else { -var15 = var_tkwtypenode5->type->type_table[cltype16] == idtype17; +var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; } } -if (!var15) { +if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20484); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20857); +show_backtrace(1); } -var_tclassidnode6 = var_nodearraylist5; -/* isa nullable TClassid */ -cltype19 = type_nullable_parser_nodes__TClassid.color; -idtype20 = type_nullable_parser_nodes__TClassid.id; -if(var_tclassidnode6 == NULL) { -var18 = 1; +var_psignaturenode7 = var_nodearraylist5; +/* isa nullable ASignature */ +cltype20 = type_nullable_parser_nodes__ASignature.color; +idtype21 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var19 = 1; } else { -if(cltype19 >= var_tclassidnode6->type->table_size) { -var18 = 0; -} else { -var18 = var_tclassidnode6->type->type_table[cltype19] == idtype20; -} -} -if (!var18) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20486); -exit(1); -} -var_ptypenode7 = var_nodearraylist6; -/* isa nullable AType */ -cltype22 = type_nullable_parser_nodes__AType.color; -idtype23 = type_nullable_parser_nodes__AType.id; -if(var_ptypenode7 == NULL) { -var21 = 1; -} else { -if(cltype22 >= var_ptypenode7->type->table_size) { -var21 = 0; +if(cltype20 >= var_psignaturenode7->type->table_size) { +var19 = 0; } else { -var21 = var_ptypenode7->type->type_table[cltype22] == idtype23; +var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; } } -if (!var21) { +if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20488); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20859); +show_backtrace(1); } -var_pannotationsnode8 = var_nodearraylist7; -/* isa nullable AAnnotations */ -cltype25 = type_nullable_parser_nodes__AAnnotations.color; -idtype26 = type_nullable_parser_nodes__AAnnotations.id; -if(var_pannotationsnode8 == NULL) { -var24 = 1; +var_pexterncallsnode9 = var_nodearraylist8; +/* isa nullable AExternCalls */ +cltype23 = type_nullable_parser_nodes__AExternCalls.color; +idtype24 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var22 = 1; } else { -if(cltype25 >= var_pannotationsnode8->type->table_size) { -var24 = 0; +if(cltype23 >= var_pexterncallsnode9->type->table_size) { +var22 = 0; } else { -var24 = var_pannotationsnode8->type->type_table[cltype25] == idtype26; +var22 = var_pexterncallsnode9->type->type_table[cltype23] == idtype24; } } -if (!var24) { +if (!var22) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20490); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20861); +show_backtrace(1); } -var27 = NEW_parser_nodes__ATypePropdef(&type_parser_nodes__ATypePropdef); -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*))(var27->class->vft[COLOR_parser_prod__ATypePropdef__init_atypepropdef]))(var27, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwtypenode5, var_tclassidnode6, var_ptypenode7, var_pannotationsnode8) /* init_atypepropdef on */; -CHECK_NEW_parser_nodes__ATypePropdef(var27); -var_ppropdefnode1 = var27; +var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var26 = NULL; +var27 = NULL; +var28 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var26, var_psignaturenode7, var27, var_pexterncallsnode9, var28) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var25; var_node_list = var_ppropdefnode1; -var28 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var29 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var28) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var29, var_node_list) /* push on */; +var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction464#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction464__action(val* self, val* p0) { -parser__ReduceAction464__action(self, p0); +/* method parser#ReduceAction474#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction474__action(val* self, val* p0) { +parser__ReduceAction474__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction465#action for (self: ReduceAction465, Parser) */ -void parser__ReduceAction465__action(val* self, val* p0) { +/* method parser#ReduceAction475#action for (self: ReduceAction475, Parser) */ +void parser__ReduceAction475__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var6 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var7 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var7 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var8 /* : Bool */; -int cltype9; -int idtype10; +short int var10 /* : Bool */; +int cltype11; +int idtype12; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; +short int var13 /* : Bool */; +int cltype14; +int idtype15; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +short int var16 /* : Bool */; +int cltype17; +int idtype18; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -val* var17 /* : AExternInitPropdef */; -val* var18 /* : null */; -val* var19 /* : null */; -val* var20 /* : null */; -val* var21 /* : null */; -val* var22 /* : null */; +short int var19 /* : Bool */; +int cltype20; +int idtype21; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var25 /* : AExternInitPropdef */; +val* var26 /* : null */; +val* var27 /* : null */; +val* var28 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var23 /* : Int */; -long var24 /* : Int */; +long var29 /* : Int */; +long var30 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var1; +var_nodearraylist8 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var2; +var_nodearraylist7 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var3; +var_nodearraylist6 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var4; +var_nodearraylist5 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var5; +var_nodearraylist4 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var6; +var_nodearraylist3 = var6; +var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var8; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var7 = 1; +var9 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var7 = 0; +var9 = 0; } else { -var7 = var_pdocnode2->type->type_table[cltype] == idtype; +var9 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var7) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20516); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20891); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype9 = type_nullable_parser_nodes__AVisibility.color; -idtype10 = type_nullable_parser_nodes__AVisibility.id; +cltype11 = type_nullable_parser_nodes__AVisibility.color; +idtype12 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var8 = 1; +var10 = 1; } else { -if(cltype9 >= var_pvisibilitynode4->type->table_size) { -var8 = 0; +if(cltype11 >= var_pvisibilitynode4->type->table_size) { +var10 = 0; } else { -var8 = var_pvisibilitynode4->type->type_table[cltype9] == idtype10; +var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; } } -if (!var8) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20518); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20893); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype12 = type_nullable_parser_nodes__TKwnew.color; -idtype13 = type_nullable_parser_nodes__TKwnew.id; +cltype14 = type_nullable_parser_nodes__TKwnew.color; +idtype15 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var11 = 1; +var13 = 1; } else { -if(cltype12 >= var_tkwnewnode5->type->table_size) { -var11 = 0; +if(cltype14 >= var_tkwnewnode5->type->table_size) { +var13 = 0; } else { -var11 = var_tkwnewnode5->type->type_table[cltype12] == idtype13; +var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; } } -if (!var11) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20520); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20895); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist4; +var_pmethidnode6 = var_nodearraylist4; +/* isa nullable AMethid */ +cltype17 = type_nullable_parser_nodes__AMethid.color; +idtype18 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { +var16 = 1; +} else { +if(cltype17 >= var_pmethidnode6->type->table_size) { +var16 = 0; +} else { +var16 = var_pmethidnode6->type->type_table[cltype17] == idtype18; +} +} +if (!var16) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20897); +show_backtrace(1); +} +var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype15 = type_nullable_parser_nodes__ASignature.color; -idtype16 = type_nullable_parser_nodes__ASignature.id; +cltype20 = type_nullable_parser_nodes__ASignature.color; +idtype21 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var14 = 1; +var19 = 1; } else { -if(cltype15 >= var_psignaturenode7->type->table_size) { -var14 = 0; +if(cltype20 >= var_psignaturenode7->type->table_size) { +var19 = 0; } else { -var14 = var_psignaturenode7->type->type_table[cltype15] == idtype16; +var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; } } -if (!var14) { +if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20522); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20899); +show_backtrace(1); } -var17 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var18 = NULL; -var19 = NULL; -var20 = NULL; -var21 = NULL; -var22 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var17->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var17, var_pdocnode2, var18, var_pvisibilitynode4, var_tkwnewnode5, var19, var_psignaturenode7, var20, var21, var22) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var17); -var_ppropdefnode1 = var17; +var_pexterncallsnode9 = var_nodearraylist8; +/* isa nullable AExternCalls */ +cltype23 = type_nullable_parser_nodes__AExternCalls.color; +idtype24 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var22 = 1; +} else { +if(cltype23 >= var_pexterncallsnode9->type->table_size) { +var22 = 0; +} else { +var22 = var_pexterncallsnode9->type->type_table[cltype23] == idtype24; +} +} +if (!var22) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20901); +show_backtrace(1); +} +var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var26 = NULL; +var27 = NULL; +var28 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var27, var_pexterncallsnode9, var28) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var25; var_node_list = var_ppropdefnode1; -var23 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var24 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var23) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var24, var_node_list) /* push on */; +var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction465#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction465__action(val* self, val* p0) { -parser__ReduceAction465__action(self, p0); +/* method parser#ReduceAction475#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction475__action(val* self, val* p0) { +parser__ReduceAction475__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction466#action for (self: ReduceAction466, Parser) */ -void parser__ReduceAction466__action(val* self, val* p0) { +/* method parser#ReduceAction476#action for (self: ReduceAction476, Parser) */ +void parser__ReduceAction476__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var7 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var8 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var9 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var8 /* : Bool */; +short int var10 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var9 /* : Bool */; -int cltype10; -int idtype11; +short int var11 /* : Bool */; +int cltype12; +int idtype13; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; +short int var14 /* : Bool */; +int cltype15; +int idtype16; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; +short int var17 /* : Bool */; +int cltype18; +int idtype19; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +short int var20 /* : Bool */; +int cltype21; +int idtype22; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; -val* var21 /* : AExternInitPropdef */; -val* var22 /* : null */; -val* var23 /* : null */; -val* var24 /* : null */; -val* var25 /* : null */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +val* var29 /* : AExternInitPropdef */; +val* var30 /* : null */; +val* var31 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var26 /* : Int */; -long var27 /* : Int */; +long var32 /* : Int */; +long var33 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var1; +var_nodearraylist9 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var2; +var_nodearraylist8 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var3; +var_nodearraylist7 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var4; +var_nodearraylist6 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var5; +var_nodearraylist5 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var6; +var_nodearraylist4 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var7; +var_nodearraylist3 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var9; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var8 = 1; +var10 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var8 = 0; +var10 = 0; } else { -var8 = var_pdocnode2->type->type_table[cltype] == idtype; +var10 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var8) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20551); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20932); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype10 = type_nullable_parser_nodes__TKwredef.color; -idtype11 = type_nullable_parser_nodes__TKwredef.id; +cltype12 = type_nullable_parser_nodes__TKwredef.color; +idtype13 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var9 = 1; +var11 = 1; } else { -if(cltype10 >= var_tkwredefnode3->type->table_size) { -var9 = 0; +if(cltype12 >= var_tkwredefnode3->type->table_size) { +var11 = 0; } else { -var9 = var_tkwredefnode3->type->type_table[cltype10] == idtype11; +var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; } } -if (!var9) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20553); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20934); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype13 = type_nullable_parser_nodes__AVisibility.color; -idtype14 = type_nullable_parser_nodes__AVisibility.id; +cltype15 = type_nullable_parser_nodes__AVisibility.color; +idtype16 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var12 = 1; +var14 = 1; } else { -if(cltype13 >= var_pvisibilitynode4->type->table_size) { -var12 = 0; +if(cltype15 >= var_pvisibilitynode4->type->table_size) { +var14 = 0; } else { -var12 = var_pvisibilitynode4->type->type_table[cltype13] == idtype14; +var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; } } -if (!var12) { +if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20555); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20936); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype16 = type_nullable_parser_nodes__TKwnew.color; -idtype17 = type_nullable_parser_nodes__TKwnew.id; +cltype18 = type_nullable_parser_nodes__TKwnew.color; +idtype19 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var15 = 1; +var17 = 1; } else { -if(cltype16 >= var_tkwnewnode5->type->table_size) { -var15 = 0; +if(cltype18 >= var_tkwnewnode5->type->table_size) { +var17 = 0; } else { -var15 = var_tkwnewnode5->type->type_table[cltype16] == idtype17; +var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; } } -if (!var15) { +if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20557); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20938); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist5; +var_pmethidnode6 = var_nodearraylist5; +/* isa nullable AMethid */ +cltype21 = type_nullable_parser_nodes__AMethid.color; +idtype22 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { +var20 = 1; +} else { +if(cltype21 >= var_pmethidnode6->type->table_size) { +var20 = 0; +} else { +var20 = var_pmethidnode6->type->type_table[cltype21] == idtype22; +} +} +if (!var20) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20940); +show_backtrace(1); +} +var_psignaturenode7 = var_nodearraylist6; /* isa nullable ASignature */ -cltype19 = type_nullable_parser_nodes__ASignature.color; -idtype20 = type_nullable_parser_nodes__ASignature.id; +cltype24 = type_nullable_parser_nodes__ASignature.color; +idtype25 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var18 = 1; +var23 = 1; } else { -if(cltype19 >= var_psignaturenode7->type->table_size) { -var18 = 0; +if(cltype24 >= var_psignaturenode7->type->table_size) { +var23 = 0; } else { -var18 = var_psignaturenode7->type->type_table[cltype19] == idtype20; +var23 = var_psignaturenode7->type->type_table[cltype24] == idtype25; } } -if (!var18) { +if (!var23) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20559); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20942); +show_backtrace(1); } -var21 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var22 = NULL; -var23 = NULL; -var24 = NULL; -var25 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var21->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var21, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var22, var_psignaturenode7, var23, var24, var25) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var21); -var_ppropdefnode1 = var21; +var_pexterncallsnode9 = var_nodearraylist9; +/* isa nullable AExternCalls */ +cltype27 = type_nullable_parser_nodes__AExternCalls.color; +idtype28 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var26 = 1; +} else { +if(cltype27 >= var_pexterncallsnode9->type->table_size) { +var26 = 0; +} else { +var26 = var_pexterncallsnode9->type->type_table[cltype27] == idtype28; +} +} +if (!var26) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20944); +show_backtrace(1); +} +var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var30 = NULL; +var31 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var30, var_pexterncallsnode9, var31) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var29; var_node_list = var_ppropdefnode1; -var26 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var27 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var26) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var27, var_node_list) /* push on */; +var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction466#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction466__action(val* self, val* p0) { -parser__ReduceAction466__action(self, p0); +/* method parser#ReduceAction476#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction476__action(val* self, val* p0) { +parser__ReduceAction476__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction467#action for (self: ReduceAction467, Parser) */ -void parser__ReduceAction467__action(val* self, val* p0) { +/* method parser#ReduceAction477#action for (self: ReduceAction477, Parser) */ +void parser__ReduceAction477__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; val* var7 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var8 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var9 /* : Bool */; -int cltype10; -int idtype11; +short int var10 /* : Bool */; +int cltype11; +int idtype12; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; +short int var13 /* : Bool */; +int cltype14; +int idtype15; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; -val* var21 /* : AExternInitPropdef */; -val* var22 /* : null */; -val* var23 /* : null */; -val* var24 /* : null */; -val* var25 /* : null */; +short int var16 /* : Bool */; +int cltype17; +int idtype18; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var19 /* : Bool */; +int cltype20; +int idtype21; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var25 /* : AExternInitPropdef */; +val* var26 /* : null */; +val* var27 /* : null */; +val* var28 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var26 /* : Int */; -long var27 /* : Int */; +long var29 /* : Int */; +long var30 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var1; +var_nodearraylist8 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var2; +var_nodearraylist7 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var3; +var_nodearraylist6 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var4; +var_nodearraylist5 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var5; +var_nodearraylist4 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var6; +var_nodearraylist3 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var7; +var_nodearraylist2 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var8; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var8 = 1; +var9 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var8 = 0; +var9 = 0; } else { -var8 = var_pdocnode2->type->type_table[cltype] == idtype; +var9 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var8) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20588); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20974); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype10 = type_nullable_parser_nodes__AVisibility.color; -idtype11 = type_nullable_parser_nodes__AVisibility.id; +cltype11 = type_nullable_parser_nodes__AVisibility.color; +idtype12 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var9 = 1; +var10 = 1; } else { -if(cltype10 >= var_pvisibilitynode4->type->table_size) { -var9 = 0; +if(cltype11 >= var_pvisibilitynode4->type->table_size) { +var10 = 0; } else { -var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; +var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; } } -if (!var9) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20590); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20976); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype13 = type_nullable_parser_nodes__TKwnew.color; -idtype14 = type_nullable_parser_nodes__TKwnew.id; +cltype14 = type_nullable_parser_nodes__TKwnew.color; +idtype15 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var12 = 1; +var13 = 1; } else { -if(cltype13 >= var_tkwnewnode5->type->table_size) { -var12 = 0; +if(cltype14 >= var_tkwnewnode5->type->table_size) { +var13 = 0; } else { -var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; +var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; } } -if (!var12) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20592); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20978); +show_backtrace(1); } -var_pmethidnode6 = var_nodearraylist4; -/* isa nullable AMethid */ -cltype16 = type_nullable_parser_nodes__AMethid.color; -idtype17 = type_nullable_parser_nodes__AMethid.id; -if(var_pmethidnode6 == NULL) { -var15 = 1; +var_psignaturenode7 = var_nodearraylist4; +/* isa nullable ASignature */ +cltype17 = type_nullable_parser_nodes__ASignature.color; +idtype18 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var16 = 1; } else { -if(cltype16 >= var_pmethidnode6->type->table_size) { -var15 = 0; +if(cltype17 >= var_psignaturenode7->type->table_size) { +var16 = 0; } else { -var15 = var_pmethidnode6->type->type_table[cltype16] == idtype17; +var16 = var_psignaturenode7->type->type_table[cltype17] == idtype18; } } -if (!var15) { +if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20594); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20980); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist5; -/* isa nullable ASignature */ -cltype19 = type_nullable_parser_nodes__ASignature.color; -idtype20 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { -var18 = 1; +var_tstringnode8 = var_nodearraylist7; +/* isa nullable TString */ +cltype20 = type_nullable_parser_nodes__TString.color; +idtype21 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var19 = 1; } else { -if(cltype19 >= var_psignaturenode7->type->table_size) { -var18 = 0; +if(cltype20 >= var_tstringnode8->type->table_size) { +var19 = 0; } else { -var18 = var_psignaturenode7->type->type_table[cltype19] == idtype20; +var19 = var_tstringnode8->type->type_table[cltype20] == idtype21; } } -if (!var18) { +if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20596); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20982); +show_backtrace(1); } -var21 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var22 = NULL; -var23 = NULL; -var24 = NULL; -var25 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var21->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var21, var_pdocnode2, var22, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var23, var24, var25) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var21); -var_ppropdefnode1 = var21; +var_pexterncallsnode9 = var_nodearraylist8; +/* isa nullable AExternCalls */ +cltype23 = type_nullable_parser_nodes__AExternCalls.color; +idtype24 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var22 = 1; +} else { +if(cltype23 >= var_pexterncallsnode9->type->table_size) { +var22 = 0; +} else { +var22 = var_pexterncallsnode9->type->type_table[cltype23] == idtype24; +} +} +if (!var22) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20984); +show_backtrace(1); +} +var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var26 = NULL; +var27 = NULL; +var28 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var27, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var28) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var25; var_node_list = var_ppropdefnode1; -var26 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var27 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var26) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var27, var_node_list) /* push on */; +var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction467#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction467__action(val* self, val* p0) { -parser__ReduceAction467__action(self, p0); +/* method parser#ReduceAction477#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction477__action(val* self, val* p0) { +parser__ReduceAction477__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction468#action for (self: ReduceAction468, Parser) */ -void parser__ReduceAction468__action(val* self, val* p0) { +/* method parser#ReduceAction478#action for (self: ReduceAction478, Parser) */ +void parser__ReduceAction478__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var7 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; val* var8 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var9 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var9 /* : Bool */; +short int var10 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; +short int var11 /* : Bool */; +int cltype12; +int idtype13; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; +short int var14 /* : Bool */; +int cltype15; +int idtype16; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var16 /* : Bool */; -int cltype17; -int idtype18; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var19 /* : Bool */; -int cltype20; -int idtype21; +short int var17 /* : Bool */; +int cltype18; +int idtype19; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var22 /* : Bool */; -int cltype23; -int idtype24; -val* var25 /* : AExternInitPropdef */; -val* var26 /* : null */; -val* var27 /* : null */; -val* var28 /* : null */; +short int var20 /* : Bool */; +int cltype21; +int idtype22; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +val* var29 /* : AExternInitPropdef */; +val* var30 /* : null */; +val* var31 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var29 /* : Int */; -long var30 /* : Int */; +long var32 /* : Int */; +long var33 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var1; +var_nodearraylist9 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var2; +var_nodearraylist8 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var3; +var_nodearraylist7 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var4; +var_nodearraylist6 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var5; +var_nodearraylist5 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var6; +var_nodearraylist4 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var7; +var_nodearraylist3 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var8; +var_nodearraylist2 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var9; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var9 = 1; +var10 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var9 = 0; +var10 = 0; } else { -var9 = var_pdocnode2->type->type_table[cltype] == idtype; +var10 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var9) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20626); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21015); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype11 = type_nullable_parser_nodes__TKwredef.color; -idtype12 = type_nullable_parser_nodes__TKwredef.id; +cltype12 = type_nullable_parser_nodes__TKwredef.color; +idtype13 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var10 = 1; +var11 = 1; } else { -if(cltype11 >= var_tkwredefnode3->type->table_size) { -var10 = 0; +if(cltype12 >= var_tkwredefnode3->type->table_size) { +var11 = 0; } else { -var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; +var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; } } -if (!var10) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20628); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21017); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype14 = type_nullable_parser_nodes__AVisibility.color; -idtype15 = type_nullable_parser_nodes__AVisibility.id; +cltype15 = type_nullable_parser_nodes__AVisibility.color; +idtype16 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var13 = 1; +var14 = 1; } else { -if(cltype14 >= var_pvisibilitynode4->type->table_size) { -var13 = 0; +if(cltype15 >= var_pvisibilitynode4->type->table_size) { +var14 = 0; } else { -var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; +var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; } } -if (!var13) { +if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20630); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21019); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype17 = type_nullable_parser_nodes__TKwnew.color; -idtype18 = type_nullable_parser_nodes__TKwnew.id; +cltype18 = type_nullable_parser_nodes__TKwnew.color; +idtype19 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var16 = 1; +var17 = 1; } else { -if(cltype17 >= var_tkwnewnode5->type->table_size) { -var16 = 0; +if(cltype18 >= var_tkwnewnode5->type->table_size) { +var17 = 0; } else { -var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; +var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; } } -if (!var16) { +if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20632); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21021); +show_backtrace(1); } -var_pmethidnode6 = var_nodearraylist5; -/* isa nullable AMethid */ -cltype20 = type_nullable_parser_nodes__AMethid.color; -idtype21 = type_nullable_parser_nodes__AMethid.id; -if(var_pmethidnode6 == NULL) { -var19 = 1; +var_psignaturenode7 = var_nodearraylist5; +/* isa nullable ASignature */ +cltype21 = type_nullable_parser_nodes__ASignature.color; +idtype22 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var20 = 1; } else { -if(cltype20 >= var_pmethidnode6->type->table_size) { -var19 = 0; +if(cltype21 >= var_psignaturenode7->type->table_size) { +var20 = 0; } else { -var19 = var_pmethidnode6->type->type_table[cltype20] == idtype21; +var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; } } -if (!var19) { +if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20634); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21023); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist6; -/* isa nullable ASignature */ -cltype23 = type_nullable_parser_nodes__ASignature.color; -idtype24 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { -var22 = 1; +var_tstringnode8 = var_nodearraylist8; +/* isa nullable TString */ +cltype24 = type_nullable_parser_nodes__TString.color; +idtype25 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var23 = 1; } else { -if(cltype23 >= var_psignaturenode7->type->table_size) { -var22 = 0; +if(cltype24 >= var_tstringnode8->type->table_size) { +var23 = 0; } else { -var22 = var_psignaturenode7->type->type_table[cltype23] == idtype24; +var23 = var_tstringnode8->type->type_table[cltype24] == idtype25; } } -if (!var22) { +if (!var23) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20636); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21025); +show_backtrace(1); } -var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var26 = NULL; -var27 = NULL; -var28 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var26, var27, var28) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var25); -var_ppropdefnode1 = var25; +var_pexterncallsnode9 = var_nodearraylist9; +/* isa nullable AExternCalls */ +cltype27 = type_nullable_parser_nodes__AExternCalls.color; +idtype28 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var26 = 1; +} else { +if(cltype27 >= var_pexterncallsnode9->type->table_size) { +var26 = 0; +} else { +var26 = var_pexterncallsnode9->type->type_table[cltype27] == idtype28; +} +} +if (!var26) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21027); +show_backtrace(1); +} +var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var30 = NULL; +var31 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var30, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var31) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var29; var_node_list = var_ppropdefnode1; -var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; +var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction468#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction468__action(val* self, val* p0) { -parser__ReduceAction468__action(self, p0); +/* method parser#ReduceAction478#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction478__action(val* self, val* p0) { +parser__ReduceAction478__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction469#action for (self: ReduceAction469, Parser) */ -void parser__ReduceAction469__action(val* self, val* p0) { +/* method parser#ReduceAction479#action for (self: ReduceAction479, Parser) */ +void parser__ReduceAction479__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var7 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var8 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var9 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var8 /* : Bool */; +short int var10 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var9 /* : Bool */; -int cltype10; -int idtype11; +short int var11 /* : Bool */; +int cltype12; +int idtype13; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; +short int var14 /* : Bool */; +int cltype15; +int idtype16; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +short int var17 /* : Bool */; +int cltype18; +int idtype19; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; +short int var20 /* : Bool */; +int cltype21; +int idtype22; val* var_tstringnode8 /* var tstringnode8: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; -val* var21 /* : AExternInitPropdef */; -val* var22 /* : null */; -val* var23 /* : null */; -val* var24 /* : null */; -val* var25 /* : null */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +val* var29 /* : AExternInitPropdef */; +val* var30 /* : null */; +val* var31 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var26 /* : Int */; -long var27 /* : Int */; +long var32 /* : Int */; +long var33 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var1; +var_nodearraylist9 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var2; +var_nodearraylist8 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var3; +var_nodearraylist7 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var4; +var_nodearraylist6 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var5; +var_nodearraylist5 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var6; +var_nodearraylist4 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var7; +var_nodearraylist3 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var9; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var8 = 1; +var10 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var8 = 0; +var10 = 0; } else { -var8 = var_pdocnode2->type->type_table[cltype] == idtype; +var10 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var8) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20665); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21058); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype10 = type_nullable_parser_nodes__AVisibility.color; -idtype11 = type_nullable_parser_nodes__AVisibility.id; +cltype12 = type_nullable_parser_nodes__AVisibility.color; +idtype13 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var9 = 1; +var11 = 1; } else { -if(cltype10 >= var_pvisibilitynode4->type->table_size) { -var9 = 0; +if(cltype12 >= var_pvisibilitynode4->type->table_size) { +var11 = 0; } else { -var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; +var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; } } -if (!var9) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20667); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21060); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype13 = type_nullable_parser_nodes__TKwnew.color; -idtype14 = type_nullable_parser_nodes__TKwnew.id; +cltype15 = type_nullable_parser_nodes__TKwnew.color; +idtype16 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var12 = 1; +var14 = 1; } else { -if(cltype13 >= var_tkwnewnode5->type->table_size) { -var12 = 0; +if(cltype15 >= var_tkwnewnode5->type->table_size) { +var14 = 0; } else { -var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; +var14 = var_tkwnewnode5->type->type_table[cltype15] == idtype16; } } -if (!var12) { +if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20669); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21062); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist4; +var_pmethidnode6 = var_nodearraylist4; +/* isa nullable AMethid */ +cltype18 = type_nullable_parser_nodes__AMethid.color; +idtype19 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { +var17 = 1; +} else { +if(cltype18 >= var_pmethidnode6->type->table_size) { +var17 = 0; +} else { +var17 = var_pmethidnode6->type->type_table[cltype18] == idtype19; +} +} +if (!var17) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21064); +show_backtrace(1); +} +var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype16 = type_nullable_parser_nodes__ASignature.color; -idtype17 = type_nullable_parser_nodes__ASignature.id; +cltype21 = type_nullable_parser_nodes__ASignature.color; +idtype22 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var15 = 1; +var20 = 1; } else { -if(cltype16 >= var_psignaturenode7->type->table_size) { -var15 = 0; +if(cltype21 >= var_psignaturenode7->type->table_size) { +var20 = 0; } else { -var15 = var_psignaturenode7->type->type_table[cltype16] == idtype17; +var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; } } -if (!var15) { +if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20671); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21066); +show_backtrace(1); } -var_tstringnode8 = var_nodearraylist7; +var_tstringnode8 = var_nodearraylist8; /* isa nullable TString */ -cltype19 = type_nullable_parser_nodes__TString.color; -idtype20 = type_nullable_parser_nodes__TString.id; +cltype24 = type_nullable_parser_nodes__TString.color; +idtype25 = type_nullable_parser_nodes__TString.id; if(var_tstringnode8 == NULL) { -var18 = 1; +var23 = 1; } else { -if(cltype19 >= var_tstringnode8->type->table_size) { -var18 = 0; +if(cltype24 >= var_tstringnode8->type->table_size) { +var23 = 0; } else { -var18 = var_tstringnode8->type->type_table[cltype19] == idtype20; +var23 = var_tstringnode8->type->type_table[cltype24] == idtype25; } } -if (!var18) { +if (!var23) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20673); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21068); +show_backtrace(1); } -var21 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var22 = NULL; -var23 = NULL; -var24 = NULL; -var25 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var21->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var21, var_pdocnode2, var22, var_pvisibilitynode4, var_tkwnewnode5, var23, var_psignaturenode7, var_tstringnode8, var24, var25) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var21); -var_ppropdefnode1 = var21; -var_node_list = var_ppropdefnode1; -var26 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var27 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var26) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var27, var_node_list) /* push on */; -RET_LABEL:; +var_pexterncallsnode9 = var_nodearraylist9; +/* isa nullable AExternCalls */ +cltype27 = type_nullable_parser_nodes__AExternCalls.color; +idtype28 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var26 = 1; +} else { +if(cltype27 >= var_pexterncallsnode9->type->table_size) { +var26 = 0; +} else { +var26 = var_pexterncallsnode9->type->type_table[cltype27] == idtype28; } -/* method parser#ReduceAction469#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction469__action(val* self, val* p0) { -parser__ReduceAction469__action(self, p0); +} +if (!var26) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21070); +show_backtrace(1); +} +var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var30 = NULL; +var31 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var30, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var31) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var29; +var_node_list = var_ppropdefnode1; +var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction470#action for (self: ReduceAction470, Parser) */ -void parser__ReduceAction470__action(val* self, val* p0) { +/* method parser#ReduceAction479#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction479__action(val* self, val* p0) { +parser__ReduceAction479__action(self, p0); +RET_LABEL:; +} +/* method parser#ReduceAction480#action for (self: ReduceAction480, Parser) */ +void parser__ReduceAction480__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; +val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var7 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var8 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var9 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var10 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var9 /* : Bool */; +short int var11 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; +short int var12 /* : Bool */; +int cltype13; +int idtype14; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; +short int var15 /* : Bool */; +int cltype16; +int idtype17; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var16 /* : Bool */; -int cltype17; -int idtype18; +short int var18 /* : Bool */; +int cltype19; +int idtype20; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +short int var21 /* : Bool */; +int cltype22; +int idtype23; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var19 /* : Bool */; -int cltype20; -int idtype21; +short int var24 /* : Bool */; +int cltype25; +int idtype26; val* var_tstringnode8 /* var tstringnode8: nullable Object */; -short int var22 /* : Bool */; -int cltype23; -int idtype24; -val* var25 /* : AExternInitPropdef */; -val* var26 /* : null */; -val* var27 /* : null */; -val* var28 /* : null */; +short int var27 /* : Bool */; +int cltype28; +int idtype29; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var30 /* : Bool */; +int cltype31; +int idtype32; +val* var33 /* : AExternInitPropdef */; +val* var34 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var29 /* : Int */; -long var30 /* : Int */; +long var35 /* : Int */; +long var36 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var1; +var_nodearraylist10 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var2; +var_nodearraylist9 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var3; +var_nodearraylist8 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var4; +var_nodearraylist7 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var5; +var_nodearraylist6 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var6; +var_nodearraylist5 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var7; +var_nodearraylist4 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var8; +var_nodearraylist3 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var9; +var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var10; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var9 = 1; +var11 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var9 = 0; +var11 = 0; } else { -var9 = var_pdocnode2->type->type_table[cltype] == idtype; +var11 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var9) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20703); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21102); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype11 = type_nullable_parser_nodes__TKwredef.color; -idtype12 = type_nullable_parser_nodes__TKwredef.id; +cltype13 = type_nullable_parser_nodes__TKwredef.color; +idtype14 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var10 = 1; +var12 = 1; } else { -if(cltype11 >= var_tkwredefnode3->type->table_size) { -var10 = 0; +if(cltype13 >= var_tkwredefnode3->type->table_size) { +var12 = 0; } else { -var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; +var12 = var_tkwredefnode3->type->type_table[cltype13] == idtype14; } } -if (!var10) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20705); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21104); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype14 = type_nullable_parser_nodes__AVisibility.color; -idtype15 = type_nullable_parser_nodes__AVisibility.id; +cltype16 = type_nullable_parser_nodes__AVisibility.color; +idtype17 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var13 = 1; +var15 = 1; } else { -if(cltype14 >= var_pvisibilitynode4->type->table_size) { -var13 = 0; +if(cltype16 >= var_pvisibilitynode4->type->table_size) { +var15 = 0; } else { -var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; +var15 = var_pvisibilitynode4->type->type_table[cltype16] == idtype17; } } -if (!var13) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20707); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21106); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype17 = type_nullable_parser_nodes__TKwnew.color; -idtype18 = type_nullable_parser_nodes__TKwnew.id; +cltype19 = type_nullable_parser_nodes__TKwnew.color; +idtype20 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var16 = 1; +var18 = 1; } else { -if(cltype17 >= var_tkwnewnode5->type->table_size) { -var16 = 0; +if(cltype19 >= var_tkwnewnode5->type->table_size) { +var18 = 0; } else { -var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; +var18 = var_tkwnewnode5->type->type_table[cltype19] == idtype20; } } -if (!var16) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20709); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21108); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist5; +var_pmethidnode6 = var_nodearraylist5; +/* isa nullable AMethid */ +cltype22 = type_nullable_parser_nodes__AMethid.color; +idtype23 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { +var21 = 1; +} else { +if(cltype22 >= var_pmethidnode6->type->table_size) { +var21 = 0; +} else { +var21 = var_pmethidnode6->type->type_table[cltype22] == idtype23; +} +} +if (!var21) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21110); +show_backtrace(1); +} +var_psignaturenode7 = var_nodearraylist6; /* isa nullable ASignature */ -cltype20 = type_nullable_parser_nodes__ASignature.color; -idtype21 = type_nullable_parser_nodes__ASignature.id; +cltype25 = type_nullable_parser_nodes__ASignature.color; +idtype26 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var19 = 1; +var24 = 1; } else { -if(cltype20 >= var_psignaturenode7->type->table_size) { -var19 = 0; +if(cltype25 >= var_psignaturenode7->type->table_size) { +var24 = 0; } else { -var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; +var24 = var_psignaturenode7->type->type_table[cltype25] == idtype26; } } -if (!var19) { +if (!var24) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20711); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21112); +show_backtrace(1); } -var_tstringnode8 = var_nodearraylist8; +var_tstringnode8 = var_nodearraylist9; /* isa nullable TString */ -cltype23 = type_nullable_parser_nodes__TString.color; -idtype24 = type_nullable_parser_nodes__TString.id; +cltype28 = type_nullable_parser_nodes__TString.color; +idtype29 = type_nullable_parser_nodes__TString.id; if(var_tstringnode8 == NULL) { -var22 = 1; +var27 = 1; } else { -if(cltype23 >= var_tstringnode8->type->table_size) { -var22 = 0; +if(cltype28 >= var_tstringnode8->type->table_size) { +var27 = 0; } else { -var22 = var_tstringnode8->type->type_table[cltype23] == idtype24; +var27 = var_tstringnode8->type->type_table[cltype28] == idtype29; } } -if (!var22) { +if (!var27) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20713); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21114); +show_backtrace(1); } -var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var26 = NULL; -var27 = NULL; -var28 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var26, var_psignaturenode7, var_tstringnode8, var27, var28) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var25); -var_ppropdefnode1 = var25; +var_pexterncallsnode9 = var_nodearraylist10; +/* isa nullable AExternCalls */ +cltype31 = type_nullable_parser_nodes__AExternCalls.color; +idtype32 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var30 = 1; +} else { +if(cltype31 >= var_pexterncallsnode9->type->table_size) { +var30 = 0; +} else { +var30 = var_pexterncallsnode9->type->type_table[cltype31] == idtype32; +} +} +if (!var30) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21116); +show_backtrace(1); +} +var33 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var34 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var33, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var34) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var33; var_node_list = var_ppropdefnode1; -var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; +var35 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var36 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var35) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var36, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction470#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction470__action(val* self, val* p0) { -parser__ReduceAction470__action(self, p0); +/* method parser#ReduceAction480#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction480__action(val* self, val* p0) { +parser__ReduceAction480__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction471#action for (self: ReduceAction471, Parser) */ -void parser__ReduceAction471__action(val* self, val* p0) { +/* method parser#ReduceAction481#action for (self: ReduceAction481, Parser) */ +void parser__ReduceAction481__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var2 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var3 /* : nullable Object */; +val* var2 /* : nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var3 /* : nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var4 /* : nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var5 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var6 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var7 /* : nullable Object */; +val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; +val* var_pdocnode2 /* var pdocnode2: nullable Object */; +short int var8 /* : Bool */; +int cltype; +int idtype; +val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +short int var9 /* : Bool */; +int cltype10; +int idtype11; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var12 /* : Bool */; +int cltype13; +int idtype14; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +short int var15 /* : Bool */; +int cltype16; +int idtype17; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; +short int var18 /* : Bool */; +int cltype19; +int idtype20; +val* var21 /* : AExternInitPropdef */; +val* var22 /* : null */; +val* var23 /* : null */; +val* var24 /* : null */; +val* var25 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var26 /* : Int */; +long var27 /* : Int */; +var_p = p0; +var = NULL; +var_node_list = var; +var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist7 = var1; +var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist6 = var2; +var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist5 = var3; +var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist4 = var4; +var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist3 = var5; +var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var6; +var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var7; +var_pdocnode2 = var_nodearraylist1; +/* isa nullable ADoc */ +cltype = type_nullable_parser_nodes__ADoc.color; +idtype = type_nullable_parser_nodes__ADoc.id; +if(var_pdocnode2 == NULL) { +var8 = 1; +} else { +if(cltype >= var_pdocnode2->type->table_size) { +var8 = 0; +} else { +var8 = var_pdocnode2->type->type_table[cltype] == idtype; +} +} +if (!var8) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21145); +show_backtrace(1); +} +var_pvisibilitynode4 = var_nodearraylist2; +/* isa nullable AVisibility */ +cltype10 = type_nullable_parser_nodes__AVisibility.color; +idtype11 = type_nullable_parser_nodes__AVisibility.id; +if(var_pvisibilitynode4 == NULL) { +var9 = 1; +} else { +if(cltype10 >= var_pvisibilitynode4->type->table_size) { +var9 = 0; +} else { +var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; +} +} +if (!var9) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21147); +show_backtrace(1); +} +var_tkwnewnode5 = var_nodearraylist3; +/* isa nullable TKwnew */ +cltype13 = type_nullable_parser_nodes__TKwnew.color; +idtype14 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { +var12 = 1; +} else { +if(cltype13 >= var_tkwnewnode5->type->table_size) { +var12 = 0; +} else { +var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; +} +} +if (!var12) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21149); +show_backtrace(1); +} +var_psignaturenode7 = var_nodearraylist4; +/* isa nullable ASignature */ +cltype16 = type_nullable_parser_nodes__ASignature.color; +idtype17 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var15 = 1; +} else { +if(cltype16 >= var_psignaturenode7->type->table_size) { +var15 = 0; +} else { +var15 = var_psignaturenode7->type->type_table[cltype16] == idtype17; +} +} +if (!var15) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21151); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist7; +/* isa nullable AExternCodeBlock */ +cltype19 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype20 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { +var18 = 1; +} else { +if(cltype19 >= var_pexterncodeblocknode10->type->table_size) { +var18 = 0; +} else { +var18 = var_pexterncodeblocknode10->type->type_table[cltype19] == idtype20; +} +} +if (!var18) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21153); +show_backtrace(1); +} +var21 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var22 = NULL; +var23 = NULL; +var24 = NULL; +var25 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var21->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var21, var_pdocnode2, var22, var_pvisibilitynode4, var_tkwnewnode5, var23, var_psignaturenode7, var24, var25, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var21; +var_node_list = var_ppropdefnode1; +var26 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var27 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var26) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var27, var_node_list) /* push on */; +RET_LABEL:; +} +/* method parser#ReduceAction481#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction481__action(val* self, val* p0) { +parser__ReduceAction481__action(self, p0); +RET_LABEL:; +} +/* method parser#ReduceAction482#action for (self: ReduceAction482, Parser) */ +void parser__ReduceAction482__action(val* self, val* p0) { +val* var_p /* var p: Parser */; +val* var /* : null */; +val* var_node_list /* var node_list: nullable Object */; +val* var1 /* : nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; +val* var2 /* : nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var4 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; @@ -2921,15 +3184,15 @@ val* var_pdocnode2 /* var pdocnode2: nullable Object */; short int var9 /* : Bool */; int cltype; int idtype; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; short int var10 /* : Bool */; int cltype11; int idtype12; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; short int var13 /* : Bool */; int cltype14; int idtype15; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var16 /* : Bool */; int cltype17; int idtype18; @@ -2937,7 +3200,7 @@ val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var19 /* : Bool */; int cltype20; int idtype21; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var22 /* : Bool */; int cltype23; int idtype24; @@ -2982,62 +3245,62 @@ var9 = var_pdocnode2->type->type_table[cltype] == idtype; } if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20743); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21183); +show_backtrace(1); } -var_pvisibilitynode4 = var_nodearraylist2; -/* isa nullable AVisibility */ -cltype11 = type_nullable_parser_nodes__AVisibility.color; -idtype12 = type_nullable_parser_nodes__AVisibility.id; -if(var_pvisibilitynode4 == NULL) { +var_tkwredefnode3 = var_nodearraylist2; +/* isa nullable TKwredef */ +cltype11 = type_nullable_parser_nodes__TKwredef.color; +idtype12 = type_nullable_parser_nodes__TKwredef.id; +if(var_tkwredefnode3 == NULL) { var10 = 1; } else { -if(cltype11 >= var_pvisibilitynode4->type->table_size) { +if(cltype11 >= var_tkwredefnode3->type->table_size) { var10 = 0; } else { -var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; +var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; } } if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20745); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21185); +show_backtrace(1); } -var_tkwnewnode5 = var_nodearraylist3; -/* isa nullable TKwnew */ -cltype14 = type_nullable_parser_nodes__TKwnew.color; -idtype15 = type_nullable_parser_nodes__TKwnew.id; -if(var_tkwnewnode5 == NULL) { +var_pvisibilitynode4 = var_nodearraylist3; +/* isa nullable AVisibility */ +cltype14 = type_nullable_parser_nodes__AVisibility.color; +idtype15 = type_nullable_parser_nodes__AVisibility.id; +if(var_pvisibilitynode4 == NULL) { var13 = 1; } else { -if(cltype14 >= var_tkwnewnode5->type->table_size) { +if(cltype14 >= var_pvisibilitynode4->type->table_size) { var13 = 0; } else { -var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; +var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; } } if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20747); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21187); +show_backtrace(1); } -var_pmethidnode6 = var_nodearraylist4; -/* isa nullable AMethid */ -cltype17 = type_nullable_parser_nodes__AMethid.color; -idtype18 = type_nullable_parser_nodes__AMethid.id; -if(var_pmethidnode6 == NULL) { +var_tkwnewnode5 = var_nodearraylist4; +/* isa nullable TKwnew */ +cltype17 = type_nullable_parser_nodes__TKwnew.color; +idtype18 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { var16 = 1; } else { -if(cltype17 >= var_pmethidnode6->type->table_size) { +if(cltype17 >= var_tkwnewnode5->type->table_size) { var16 = 0; } else { -var16 = var_pmethidnode6->type->type_table[cltype17] == idtype18; +var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; } } if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20749); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21189); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ @@ -3054,65 +3317,260 @@ var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; } if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20751); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21191); +show_backtrace(1); } -var_tstringnode8 = var_nodearraylist8; -/* isa nullable TString */ -cltype23 = type_nullable_parser_nodes__TString.color; -idtype24 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { +var_pexterncodeblocknode10 = var_nodearraylist8; +/* isa nullable AExternCodeBlock */ +cltype23 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype24 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { var22 = 1; } else { -if(cltype23 >= var_tstringnode8->type->table_size) { +if(cltype23 >= var_pexterncodeblocknode10->type->table_size) { var22 = 0; } else { -var22 = var_tstringnode8->type->type_table[cltype23] == idtype24; +var22 = var_pexterncodeblocknode10->type->type_table[cltype23] == idtype24; } } if (!var22) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20753); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21193); +show_backtrace(1); } var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); var26 = NULL; var27 = NULL; var28 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var27, var28) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var25); +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var26, var_psignaturenode7, var27, var28, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; var_ppropdefnode1 = var25; var_node_list = var_ppropdefnode1; -var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; ((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction471#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction471__action(val* self, val* p0) { -parser__ReduceAction471__action(self, p0); +/* method parser#ReduceAction482#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction482__action(val* self, val* p0) { +parser__ReduceAction482__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction472#action for (self: ReduceAction472, Parser) */ -void parser__ReduceAction472__action(val* self, val* p0) { +/* method parser#ReduceAction483#action for (self: ReduceAction483, Parser) */ +void parser__ReduceAction483__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var2 /* : nullable Object */; val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var3 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var4 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var5 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var6 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var7 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var8 /* : nullable Object */; +val* var7 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var8 /* : nullable Object */; +val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; +val* var_pdocnode2 /* var pdocnode2: nullable Object */; +short int var9 /* : Bool */; +int cltype; +int idtype; +val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +short int var10 /* : Bool */; +int cltype11; +int idtype12; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var13 /* : Bool */; +int cltype14; +int idtype15; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +short int var16 /* : Bool */; +int cltype17; +int idtype18; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +short int var19 /* : Bool */; +int cltype20; +int idtype21; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var25 /* : AExternInitPropdef */; +val* var26 /* : null */; +val* var27 /* : null */; +val* var28 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var29 /* : Int */; +long var30 /* : Int */; +var_p = p0; +var = NULL; +var_node_list = var; +var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist8 = var1; +var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist7 = var2; +var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist6 = var3; +var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist5 = var4; +var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist4 = var5; +var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist3 = var6; +var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var8; +var_pdocnode2 = var_nodearraylist1; +/* isa nullable ADoc */ +cltype = type_nullable_parser_nodes__ADoc.color; +idtype = type_nullable_parser_nodes__ADoc.id; +if(var_pdocnode2 == NULL) { +var9 = 1; +} else { +if(cltype >= var_pdocnode2->type->table_size) { +var9 = 0; +} else { +var9 = var_pdocnode2->type->type_table[cltype] == idtype; +} +} +if (!var9) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21223); +show_backtrace(1); +} +var_pvisibilitynode4 = var_nodearraylist2; +/* isa nullable AVisibility */ +cltype11 = type_nullable_parser_nodes__AVisibility.color; +idtype12 = type_nullable_parser_nodes__AVisibility.id; +if(var_pvisibilitynode4 == NULL) { +var10 = 1; +} else { +if(cltype11 >= var_pvisibilitynode4->type->table_size) { +var10 = 0; +} else { +var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; +} +} +if (!var10) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21225); +show_backtrace(1); +} +var_tkwnewnode5 = var_nodearraylist3; +/* isa nullable TKwnew */ +cltype14 = type_nullable_parser_nodes__TKwnew.color; +idtype15 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { +var13 = 1; +} else { +if(cltype14 >= var_tkwnewnode5->type->table_size) { +var13 = 0; +} else { +var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; +} +} +if (!var13) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21227); +show_backtrace(1); +} +var_pmethidnode6 = var_nodearraylist4; +/* isa nullable AMethid */ +cltype17 = type_nullable_parser_nodes__AMethid.color; +idtype18 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { +var16 = 1; +} else { +if(cltype17 >= var_pmethidnode6->type->table_size) { +var16 = 0; +} else { +var16 = var_pmethidnode6->type->type_table[cltype17] == idtype18; +} +} +if (!var16) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21229); +show_backtrace(1); +} +var_psignaturenode7 = var_nodearraylist5; +/* isa nullable ASignature */ +cltype20 = type_nullable_parser_nodes__ASignature.color; +idtype21 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var19 = 1; +} else { +if(cltype20 >= var_psignaturenode7->type->table_size) { +var19 = 0; +} else { +var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; +} +} +if (!var19) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21231); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist8; +/* isa nullable AExternCodeBlock */ +cltype23 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype24 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { +var22 = 1; +} else { +if(cltype23 >= var_pexterncodeblocknode10->type->table_size) { +var22 = 0; +} else { +var22 = var_pexterncodeblocknode10->type->type_table[cltype23] == idtype24; +} +} +if (!var22) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21233); +show_backtrace(1); +} +var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var26 = NULL; +var27 = NULL; +var28 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var27, var28, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var25; +var_node_list = var_ppropdefnode1; +var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; +RET_LABEL:; +} +/* method parser#ReduceAction483#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction483__action(val* self, val* p0) { +parser__ReduceAction483__action(self, p0); +RET_LABEL:; +} +/* method parser#ReduceAction484#action for (self: ReduceAction484, Parser) */ +void parser__ReduceAction484__action(val* self, val* p0) { +val* var_p /* var p: Parser */; +val* var /* : null */; +val* var_node_list /* var node_list: nullable Object */; +val* var1 /* : nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; +val* var2 /* : nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; +val* var3 /* : nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var4 /* : nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var5 /* : nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var6 /* : nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var7 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; val* var9 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; @@ -3140,7 +3598,7 @@ val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var23 /* : Bool */; int cltype24; int idtype25; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var26 /* : Bool */; int cltype27; int idtype28; @@ -3186,8 +3644,8 @@ var10 = var_pdocnode2->type->type_table[cltype] == idtype; } if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20784); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21264); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ @@ -3204,8 +3662,8 @@ var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; } if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20786); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21266); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ @@ -3222,8 +3680,8 @@ var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; } if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20788); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21268); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ @@ -3240,8 +3698,8 @@ var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; } if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20790); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21270); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist5; /* isa nullable AMethid */ @@ -3258,8 +3716,8 @@ var20 = var_pmethidnode6->type->type_table[cltype21] == idtype22; } if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20792); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21272); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist6; /* isa nullable ASignature */ @@ -3276,259 +3734,85 @@ var23 = var_psignaturenode7->type->type_table[cltype24] == idtype25; } if (!var23) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20794); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21274); +show_backtrace(1); } -var_tstringnode8 = var_nodearraylist9; -/* isa nullable TString */ -cltype27 = type_nullable_parser_nodes__TString.color; -idtype28 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { +var_pexterncodeblocknode10 = var_nodearraylist9; +/* isa nullable AExternCodeBlock */ +cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { var26 = 1; } else { -if(cltype27 >= var_tstringnode8->type->table_size) { +if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { var26 = 0; } else { -var26 = var_tstringnode8->type->type_table[cltype27] == idtype28; +var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; } } if (!var26) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20796); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21276); +show_backtrace(1); } var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); var30 = NULL; var31 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var30, var31) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var29); +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var30, var31, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; var_ppropdefnode1 = var29; var_node_list = var_ppropdefnode1; -var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; ((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction472#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction472__action(val* self, val* p0) { -parser__ReduceAction472__action(self, p0); +/* method parser#ReduceAction484#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction484__action(val* self, val* p0) { +parser__ReduceAction484__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction473#action for (self: ReduceAction473, Parser) */ -void parser__ReduceAction473__action(val* self, val* p0) { +/* method parser#ReduceAction485#action for (self: ReduceAction485, Parser) */ +void parser__ReduceAction485__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; val* var7 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var8 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var9 /* : Bool */; -int cltype10; -int idtype11; +short int var10 /* : Bool */; +int cltype11; +int idtype12; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; +short int var13 /* : Bool */; +int cltype14; +int idtype15; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; -val* var21 /* : AExternInitPropdef */; -val* var22 /* : null */; -val* var23 /* : null */; -val* var24 /* : null */; -val* var25 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var26 /* : Int */; -long var27 /* : Int */; -var_p = p0; -var = NULL; -var_node_list = var; -var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var1; -var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var2; -var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var3; -var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var4; -var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var5; -var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var6; -var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var7; -var_pdocnode2 = var_nodearraylist1; -/* isa nullable ADoc */ -cltype = type_nullable_parser_nodes__ADoc.color; -idtype = type_nullable_parser_nodes__ADoc.id; -if(var_pdocnode2 == NULL) { -var8 = 1; -} else { -if(cltype >= var_pdocnode2->type->table_size) { -var8 = 0; -} else { -var8 = var_pdocnode2->type->type_table[cltype] == idtype; -} -} -if (!var8) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20825); -exit(1); -} -var_pvisibilitynode4 = var_nodearraylist2; -/* isa nullable AVisibility */ -cltype10 = type_nullable_parser_nodes__AVisibility.color; -idtype11 = type_nullable_parser_nodes__AVisibility.id; -if(var_pvisibilitynode4 == NULL) { -var9 = 1; -} else { -if(cltype10 >= var_pvisibilitynode4->type->table_size) { -var9 = 0; -} else { -var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; -} -} -if (!var9) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20827); -exit(1); -} -var_tkwnewnode5 = var_nodearraylist3; -/* isa nullable TKwnew */ -cltype13 = type_nullable_parser_nodes__TKwnew.color; -idtype14 = type_nullable_parser_nodes__TKwnew.id; -if(var_tkwnewnode5 == NULL) { -var12 = 1; -} else { -if(cltype13 >= var_tkwnewnode5->type->table_size) { -var12 = 0; -} else { -var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; -} -} -if (!var12) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20829); -exit(1); -} -var_psignaturenode7 = var_nodearraylist4; -/* isa nullable ASignature */ -cltype16 = type_nullable_parser_nodes__ASignature.color; -idtype17 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { -var15 = 1; -} else { -if(cltype16 >= var_psignaturenode7->type->table_size) { -var15 = 0; -} else { -var15 = var_psignaturenode7->type->type_table[cltype16] == idtype17; -} -} -if (!var15) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20831); -exit(1); -} -var_pexterncallsnode9 = var_nodearraylist7; -/* isa nullable AExternCalls */ -cltype19 = type_nullable_parser_nodes__AExternCalls.color; -idtype20 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { -var18 = 1; -} else { -if(cltype19 >= var_pexterncallsnode9->type->table_size) { -var18 = 0; -} else { -var18 = var_pexterncallsnode9->type->type_table[cltype19] == idtype20; -} -} -if (!var18) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20833); -exit(1); -} -var21 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var22 = NULL; -var23 = NULL; -var24 = NULL; -var25 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var21->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var21, var_pdocnode2, var22, var_pvisibilitynode4, var_tkwnewnode5, var23, var_psignaturenode7, var24, var_pexterncallsnode9, var25) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var21); -var_ppropdefnode1 = var21; -var_node_list = var_ppropdefnode1; -var26 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var27 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var26) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var27, var_node_list) /* push on */; -RET_LABEL:; -} -/* method parser#ReduceAction473#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction473__action(val* self, val* p0) { -parser__ReduceAction473__action(self, p0); -RET_LABEL:; -} -/* method parser#ReduceAction474#action for (self: ReduceAction474, Parser) */ -void parser__ReduceAction474__action(val* self, val* p0) { -val* var_p /* var p: Parser */; -val* var /* : null */; -val* var_node_list /* var node_list: nullable Object */; -val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var4 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var5 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var6 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var7 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var8 /* : nullable Object */; -val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; -val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var9 /* : Bool */; -int cltype; -int idtype; -val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var16 /* : Bool */; int cltype17; int idtype18; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; short int var19 /* : Bool */; int cltype20; int idtype21; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var22 /* : Bool */; int cltype23; int idtype24; @@ -3573,316 +3857,338 @@ var9 = var_pdocnode2->type->type_table[cltype] == idtype; } if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20863); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21306); +show_backtrace(1); } -var_tkwredefnode3 = var_nodearraylist2; -/* isa nullable TKwredef */ -cltype11 = type_nullable_parser_nodes__TKwredef.color; -idtype12 = type_nullable_parser_nodes__TKwredef.id; -if(var_tkwredefnode3 == NULL) { +var_pvisibilitynode4 = var_nodearraylist2; +/* isa nullable AVisibility */ +cltype11 = type_nullable_parser_nodes__AVisibility.color; +idtype12 = type_nullable_parser_nodes__AVisibility.id; +if(var_pvisibilitynode4 == NULL) { var10 = 1; } else { -if(cltype11 >= var_tkwredefnode3->type->table_size) { +if(cltype11 >= var_pvisibilitynode4->type->table_size) { var10 = 0; } else { -var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; +var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; } } if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20865); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21308); +show_backtrace(1); } -var_pvisibilitynode4 = var_nodearraylist3; -/* isa nullable AVisibility */ -cltype14 = type_nullable_parser_nodes__AVisibility.color; -idtype15 = type_nullable_parser_nodes__AVisibility.id; -if(var_pvisibilitynode4 == NULL) { +var_tkwnewnode5 = var_nodearraylist3; +/* isa nullable TKwnew */ +cltype14 = type_nullable_parser_nodes__TKwnew.color; +idtype15 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { var13 = 1; } else { -if(cltype14 >= var_pvisibilitynode4->type->table_size) { +if(cltype14 >= var_tkwnewnode5->type->table_size) { var13 = 0; } else { -var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; +var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; } } if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20867); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21310); +show_backtrace(1); } -var_tkwnewnode5 = var_nodearraylist4; -/* isa nullable TKwnew */ -cltype17 = type_nullable_parser_nodes__TKwnew.color; -idtype18 = type_nullable_parser_nodes__TKwnew.id; -if(var_tkwnewnode5 == NULL) { +var_psignaturenode7 = var_nodearraylist4; +/* isa nullable ASignature */ +cltype17 = type_nullable_parser_nodes__ASignature.color; +idtype18 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { var16 = 1; } else { -if(cltype17 >= var_tkwnewnode5->type->table_size) { +if(cltype17 >= var_psignaturenode7->type->table_size) { var16 = 0; } else { -var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; +var16 = var_psignaturenode7->type->type_table[cltype17] == idtype18; } } if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20869); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21312); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist5; -/* isa nullable ASignature */ -cltype20 = type_nullable_parser_nodes__ASignature.color; -idtype21 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { +var_tstringnode8 = var_nodearraylist7; +/* isa nullable TString */ +cltype20 = type_nullable_parser_nodes__TString.color; +idtype21 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { var19 = 1; } else { -if(cltype20 >= var_psignaturenode7->type->table_size) { +if(cltype20 >= var_tstringnode8->type->table_size) { var19 = 0; } else { -var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; +var19 = var_tstringnode8->type->type_table[cltype20] == idtype21; } } if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20871); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21314); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist8; -/* isa nullable AExternCalls */ -cltype23 = type_nullable_parser_nodes__AExternCalls.color; -idtype24 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { +var_pexterncodeblocknode10 = var_nodearraylist8; +/* isa nullable AExternCodeBlock */ +cltype23 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype24 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { var22 = 1; } else { -if(cltype23 >= var_pexterncallsnode9->type->table_size) { +if(cltype23 >= var_pexterncodeblocknode10->type->table_size) { var22 = 0; } else { -var22 = var_pexterncallsnode9->type->type_table[cltype23] == idtype24; +var22 = var_pexterncodeblocknode10->type->type_table[cltype23] == idtype24; } } if (!var22) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20873); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21316); +show_backtrace(1); } var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); var26 = NULL; var27 = NULL; var28 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var26, var_psignaturenode7, var27, var_pexterncallsnode9, var28) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var25); +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var27, var_psignaturenode7, var_tstringnode8, var28, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; var_ppropdefnode1 = var25; var_node_list = var_ppropdefnode1; -var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; ((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction474#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction474__action(val* self, val* p0) { -parser__ReduceAction474__action(self, p0); +/* method parser#ReduceAction485#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction485__action(val* self, val* p0) { +parser__ReduceAction485__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction475#action for (self: ReduceAction475, Parser) */ -void parser__ReduceAction475__action(val* self, val* p0) { +/* method parser#ReduceAction486#action for (self: ReduceAction486, Parser) */ +void parser__ReduceAction486__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var7 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; val* var8 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var9 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var9 /* : Bool */; +short int var10 /* : Bool */; int cltype; int idtype; +val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; +short int var11 /* : Bool */; +int cltype12; +int idtype13; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; +short int var14 /* : Bool */; +int cltype15; +int idtype16; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var16 /* : Bool */; -int cltype17; -int idtype18; +short int var17 /* : Bool */; +int cltype18; +int idtype19; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var19 /* : Bool */; -int cltype20; -int idtype21; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var22 /* : Bool */; -int cltype23; -int idtype24; -val* var25 /* : AExternInitPropdef */; -val* var26 /* : null */; -val* var27 /* : null */; -val* var28 /* : null */; +short int var20 /* : Bool */; +int cltype21; +int idtype22; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +val* var29 /* : AExternInitPropdef */; +val* var30 /* : null */; +val* var31 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var29 /* : Int */; -long var30 /* : Int */; +long var32 /* : Int */; +long var33 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var1; +var_nodearraylist9 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var2; +var_nodearraylist8 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var3; +var_nodearraylist7 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var4; +var_nodearraylist6 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var5; +var_nodearraylist5 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var6; +var_nodearraylist4 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var7; +var_nodearraylist3 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var8; +var_nodearraylist2 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var9; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var9 = 1; +var10 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var9 = 0; +var10 = 0; } else { -var9 = var_pdocnode2->type->type_table[cltype] == idtype; +var10 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var9) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20903); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21347); +show_backtrace(1); } -var_pvisibilitynode4 = var_nodearraylist2; +var_tkwredefnode3 = var_nodearraylist2; +/* isa nullable TKwredef */ +cltype12 = type_nullable_parser_nodes__TKwredef.color; +idtype13 = type_nullable_parser_nodes__TKwredef.id; +if(var_tkwredefnode3 == NULL) { +var11 = 1; +} else { +if(cltype12 >= var_tkwredefnode3->type->table_size) { +var11 = 0; +} else { +var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; +} +} +if (!var11) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21349); +show_backtrace(1); +} +var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype11 = type_nullable_parser_nodes__AVisibility.color; -idtype12 = type_nullable_parser_nodes__AVisibility.id; +cltype15 = type_nullable_parser_nodes__AVisibility.color; +idtype16 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var10 = 1; +var14 = 1; } else { -if(cltype11 >= var_pvisibilitynode4->type->table_size) { -var10 = 0; +if(cltype15 >= var_pvisibilitynode4->type->table_size) { +var14 = 0; } else { -var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; +var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; } } -if (!var10) { +if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20905); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21351); +show_backtrace(1); } -var_tkwnewnode5 = var_nodearraylist3; +var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype14 = type_nullable_parser_nodes__TKwnew.color; -idtype15 = type_nullable_parser_nodes__TKwnew.id; +cltype18 = type_nullable_parser_nodes__TKwnew.color; +idtype19 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var13 = 1; +var17 = 1; } else { -if(cltype14 >= var_tkwnewnode5->type->table_size) { -var13 = 0; +if(cltype18 >= var_tkwnewnode5->type->table_size) { +var17 = 0; } else { -var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; +var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; } } -if (!var13) { +if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20907); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21353); +show_backtrace(1); } -var_pmethidnode6 = var_nodearraylist4; -/* isa nullable AMethid */ -cltype17 = type_nullable_parser_nodes__AMethid.color; -idtype18 = type_nullable_parser_nodes__AMethid.id; -if(var_pmethidnode6 == NULL) { -var16 = 1; +var_psignaturenode7 = var_nodearraylist5; +/* isa nullable ASignature */ +cltype21 = type_nullable_parser_nodes__ASignature.color; +idtype22 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var20 = 1; } else { -if(cltype17 >= var_pmethidnode6->type->table_size) { -var16 = 0; +if(cltype21 >= var_psignaturenode7->type->table_size) { +var20 = 0; } else { -var16 = var_pmethidnode6->type->type_table[cltype17] == idtype18; +var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; } } -if (!var16) { +if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20909); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21355); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist5; -/* isa nullable ASignature */ -cltype20 = type_nullable_parser_nodes__ASignature.color; -idtype21 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { -var19 = 1; +var_tstringnode8 = var_nodearraylist8; +/* isa nullable TString */ +cltype24 = type_nullable_parser_nodes__TString.color; +idtype25 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var23 = 1; } else { -if(cltype20 >= var_psignaturenode7->type->table_size) { -var19 = 0; +if(cltype24 >= var_tstringnode8->type->table_size) { +var23 = 0; } else { -var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; +var23 = var_tstringnode8->type->type_table[cltype24] == idtype25; } } -if (!var19) { +if (!var23) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20911); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21357); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist8; -/* isa nullable AExternCalls */ -cltype23 = type_nullable_parser_nodes__AExternCalls.color; -idtype24 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { -var22 = 1; +var_pexterncodeblocknode10 = var_nodearraylist9; +/* isa nullable AExternCodeBlock */ +cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { +var26 = 1; } else { -if(cltype23 >= var_pexterncallsnode9->type->table_size) { -var22 = 0; +if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { +var26 = 0; } else { -var22 = var_pexterncallsnode9->type->type_table[cltype23] == idtype24; +var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; } } -if (!var22) { +if (!var26) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20913); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21359); +show_backtrace(1); } -var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var26 = NULL; -var27 = NULL; -var28 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var27, var_pexterncallsnode9, var28) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var25); -var_ppropdefnode1 = var25; +var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var30 = NULL; +var31 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var30, var_psignaturenode7, var_tstringnode8, var31, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var29; var_node_list = var_ppropdefnode1; -var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; +var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction475#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction475__action(val* self, val* p0) { -parser__ReduceAction475__action(self, p0); +/* method parser#ReduceAction486#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction486__action(val* self, val* p0) { +parser__ReduceAction486__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction476#action for (self: ReduceAction476, Parser) */ -void parser__ReduceAction476__action(val* self, val* p0) { +/* method parser#ReduceAction487#action for (self: ReduceAction487, Parser) */ +void parser__ReduceAction487__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; @@ -3908,27 +4214,27 @@ val* var_pdocnode2 /* var pdocnode2: nullable Object */; short int var10 /* : Bool */; int cltype; int idtype; -val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; +val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; short int var11 /* : Bool */; int cltype12; int idtype13; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var14 /* : Bool */; int cltype15; int idtype16; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; short int var17 /* : Bool */; int cltype18; int idtype19; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var20 /* : Bool */; int cltype21; int idtype22; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; short int var23 /* : Bool */; int cltype24; int idtype25; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var26 /* : Bool */; int cltype27; int idtype28; @@ -3974,333 +4280,575 @@ var10 = var_pdocnode2->type->type_table[cltype] == idtype; } if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20944); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21390); +show_backtrace(1); } -var_tkwredefnode3 = var_nodearraylist2; -/* isa nullable TKwredef */ -cltype12 = type_nullable_parser_nodes__TKwredef.color; -idtype13 = type_nullable_parser_nodes__TKwredef.id; -if(var_tkwredefnode3 == NULL) { +var_pvisibilitynode4 = var_nodearraylist2; +/* isa nullable AVisibility */ +cltype12 = type_nullable_parser_nodes__AVisibility.color; +idtype13 = type_nullable_parser_nodes__AVisibility.id; +if(var_pvisibilitynode4 == NULL) { var11 = 1; } else { -if(cltype12 >= var_tkwredefnode3->type->table_size) { +if(cltype12 >= var_pvisibilitynode4->type->table_size) { var11 = 0; } else { -var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; +var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; } } if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20946); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21392); +show_backtrace(1); } -var_pvisibilitynode4 = var_nodearraylist3; -/* isa nullable AVisibility */ -cltype15 = type_nullable_parser_nodes__AVisibility.color; -idtype16 = type_nullable_parser_nodes__AVisibility.id; -if(var_pvisibilitynode4 == NULL) { +var_tkwnewnode5 = var_nodearraylist3; +/* isa nullable TKwnew */ +cltype15 = type_nullable_parser_nodes__TKwnew.color; +idtype16 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { var14 = 1; } else { -if(cltype15 >= var_pvisibilitynode4->type->table_size) { +if(cltype15 >= var_tkwnewnode5->type->table_size) { var14 = 0; } else { -var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; +var14 = var_tkwnewnode5->type->type_table[cltype15] == idtype16; } } if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20948); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21394); +show_backtrace(1); } -var_tkwnewnode5 = var_nodearraylist4; -/* isa nullable TKwnew */ -cltype18 = type_nullable_parser_nodes__TKwnew.color; -idtype19 = type_nullable_parser_nodes__TKwnew.id; -if(var_tkwnewnode5 == NULL) { +var_pmethidnode6 = var_nodearraylist4; +/* isa nullable AMethid */ +cltype18 = type_nullable_parser_nodes__AMethid.color; +idtype19 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { var17 = 1; } else { -if(cltype18 >= var_tkwnewnode5->type->table_size) { +if(cltype18 >= var_pmethidnode6->type->table_size) { var17 = 0; } else { -var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; +var17 = var_pmethidnode6->type->type_table[cltype18] == idtype19; } } if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20950); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21396); +show_backtrace(1); } -var_pmethidnode6 = var_nodearraylist5; -/* isa nullable AMethid */ -cltype21 = type_nullable_parser_nodes__AMethid.color; -idtype22 = type_nullable_parser_nodes__AMethid.id; -if(var_pmethidnode6 == NULL) { +var_psignaturenode7 = var_nodearraylist5; +/* isa nullable ASignature */ +cltype21 = type_nullable_parser_nodes__ASignature.color; +idtype22 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { var20 = 1; } else { -if(cltype21 >= var_pmethidnode6->type->table_size) { +if(cltype21 >= var_psignaturenode7->type->table_size) { var20 = 0; } else { -var20 = var_pmethidnode6->type->type_table[cltype21] == idtype22; +var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; } } if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20952); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21398); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist6; -/* isa nullable ASignature */ -cltype24 = type_nullable_parser_nodes__ASignature.color; -idtype25 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { +var_tstringnode8 = var_nodearraylist8; +/* isa nullable TString */ +cltype24 = type_nullable_parser_nodes__TString.color; +idtype25 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { var23 = 1; } else { -if(cltype24 >= var_psignaturenode7->type->table_size) { +if(cltype24 >= var_tstringnode8->type->table_size) { var23 = 0; } else { -var23 = var_psignaturenode7->type->type_table[cltype24] == idtype25; +var23 = var_tstringnode8->type->type_table[cltype24] == idtype25; } } if (!var23) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20954); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21400); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist9; -/* isa nullable AExternCalls */ -cltype27 = type_nullable_parser_nodes__AExternCalls.color; -idtype28 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { +var_pexterncodeblocknode10 = var_nodearraylist9; +/* isa nullable AExternCodeBlock */ +cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { var26 = 1; } else { -if(cltype27 >= var_pexterncallsnode9->type->table_size) { +if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { var26 = 0; } else { -var26 = var_pexterncallsnode9->type->type_table[cltype27] == idtype28; +var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; } } if (!var26) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20956); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21402); +show_backtrace(1); } var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); var30 = NULL; var31 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var30, var_pexterncallsnode9, var31) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var29); +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var30, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var31, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; var_ppropdefnode1 = var29; var_node_list = var_ppropdefnode1; -var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; ((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction476#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction476__action(val* self, val* p0) { -parser__ReduceAction476__action(self, p0); +/* method parser#ReduceAction487#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction487__action(val* self, val* p0) { +parser__ReduceAction487__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction477#action for (self: ReduceAction477, Parser) */ -void parser__ReduceAction477__action(val* self, val* p0) { +/* method parser#ReduceAction488#action for (self: ReduceAction488, Parser) */ +void parser__ReduceAction488__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; +val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var7 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var8 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var9 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var10 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var9 /* : Bool */; +short int var11 /* : Bool */; int cltype; int idtype; +val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; +short int var12 /* : Bool */; +int cltype13; +int idtype14; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; +short int var15 /* : Bool */; +int cltype16; +int idtype17; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; +short int var18 /* : Bool */; +int cltype19; +int idtype20; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +short int var21 /* : Bool */; +int cltype22; +int idtype23; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var16 /* : Bool */; -int cltype17; -int idtype18; +short int var24 /* : Bool */; +int cltype25; +int idtype26; val* var_tstringnode8 /* var tstringnode8: nullable Object */; -short int var19 /* : Bool */; -int cltype20; -int idtype21; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var22 /* : Bool */; -int cltype23; -int idtype24; -val* var25 /* : AExternInitPropdef */; -val* var26 /* : null */; -val* var27 /* : null */; -val* var28 /* : null */; +short int var27 /* : Bool */; +int cltype28; +int idtype29; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; +short int var30 /* : Bool */; +int cltype31; +int idtype32; +val* var33 /* : AExternInitPropdef */; +val* var34 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var29 /* : Int */; -long var30 /* : Int */; +long var35 /* : Int */; +long var36 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var1; +var_nodearraylist10 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var2; +var_nodearraylist9 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var3; +var_nodearraylist8 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var4; +var_nodearraylist7 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var5; +var_nodearraylist6 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var6; +var_nodearraylist5 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var7; +var_nodearraylist4 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var8; +var_nodearraylist3 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var9; +var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var10; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var9 = 1; +var11 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var9 = 0; +var11 = 0; } else { -var9 = var_pdocnode2->type->type_table[cltype] == idtype; +var11 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var9) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20986); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21434); +show_backtrace(1); } -var_pvisibilitynode4 = var_nodearraylist2; +var_tkwredefnode3 = var_nodearraylist2; +/* isa nullable TKwredef */ +cltype13 = type_nullable_parser_nodes__TKwredef.color; +idtype14 = type_nullable_parser_nodes__TKwredef.id; +if(var_tkwredefnode3 == NULL) { +var12 = 1; +} else { +if(cltype13 >= var_tkwredefnode3->type->table_size) { +var12 = 0; +} else { +var12 = var_tkwredefnode3->type->type_table[cltype13] == idtype14; +} +} +if (!var12) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21436); +show_backtrace(1); +} +var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype11 = type_nullable_parser_nodes__AVisibility.color; -idtype12 = type_nullable_parser_nodes__AVisibility.id; +cltype16 = type_nullable_parser_nodes__AVisibility.color; +idtype17 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var10 = 1; +var15 = 1; } else { -if(cltype11 >= var_pvisibilitynode4->type->table_size) { -var10 = 0; +if(cltype16 >= var_pvisibilitynode4->type->table_size) { +var15 = 0; } else { -var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; +var15 = var_pvisibilitynode4->type->type_table[cltype16] == idtype17; } } -if (!var10) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20988); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21438); +show_backtrace(1); } -var_tkwnewnode5 = var_nodearraylist3; +var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype14 = type_nullable_parser_nodes__TKwnew.color; -idtype15 = type_nullable_parser_nodes__TKwnew.id; +cltype19 = type_nullable_parser_nodes__TKwnew.color; +idtype20 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var13 = 1; +var18 = 1; } else { -if(cltype14 >= var_tkwnewnode5->type->table_size) { -var13 = 0; +if(cltype19 >= var_tkwnewnode5->type->table_size) { +var18 = 0; } else { -var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; +var18 = var_tkwnewnode5->type->type_table[cltype19] == idtype20; } } -if (!var13) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20990); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21440); +show_backtrace(1); } -var_psignaturenode7 = var_nodearraylist4; -/* isa nullable ASignature */ -cltype17 = type_nullable_parser_nodes__ASignature.color; -idtype18 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { -var16 = 1; +var_pmethidnode6 = var_nodearraylist5; +/* isa nullable AMethid */ +cltype22 = type_nullable_parser_nodes__AMethid.color; +idtype23 = type_nullable_parser_nodes__AMethid.id; +if(var_pmethidnode6 == NULL) { +var21 = 1; } else { -if(cltype17 >= var_psignaturenode7->type->table_size) { -var16 = 0; +if(cltype22 >= var_pmethidnode6->type->table_size) { +var21 = 0; } else { -var16 = var_psignaturenode7->type->type_table[cltype17] == idtype18; +var21 = var_pmethidnode6->type->type_table[cltype22] == idtype23; } } -if (!var16) { +if (!var21) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20992); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21442); +show_backtrace(1); } -var_tstringnode8 = var_nodearraylist7; -/* isa nullable TString */ -cltype20 = type_nullable_parser_nodes__TString.color; -idtype21 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var19 = 1; +var_psignaturenode7 = var_nodearraylist6; +/* isa nullable ASignature */ +cltype25 = type_nullable_parser_nodes__ASignature.color; +idtype26 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var24 = 1; } else { -if(cltype20 >= var_tstringnode8->type->table_size) { -var19 = 0; +if(cltype25 >= var_psignaturenode7->type->table_size) { +var24 = 0; } else { -var19 = var_tstringnode8->type->type_table[cltype20] == idtype21; +var24 = var_psignaturenode7->type->type_table[cltype25] == idtype26; } } -if (!var19) { +if (!var24) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20994); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21444); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist8; +var_tstringnode8 = var_nodearraylist9; +/* isa nullable TString */ +cltype28 = type_nullable_parser_nodes__TString.color; +idtype29 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var27 = 1; +} else { +if(cltype28 >= var_tstringnode8->type->table_size) { +var27 = 0; +} else { +var27 = var_tstringnode8->type->type_table[cltype28] == idtype29; +} +} +if (!var27) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21446); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist10; +/* isa nullable AExternCodeBlock */ +cltype31 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype32 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { +var30 = 1; +} else { +if(cltype31 >= var_pexterncodeblocknode10->type->table_size) { +var30 = 0; +} else { +var30 = var_pexterncodeblocknode10->type->type_table[cltype31] == idtype32; +} +} +if (!var30) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21448); +show_backtrace(1); +} +var33 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var34 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var33, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var34, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var33; +var_node_list = var_ppropdefnode1; +var35 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var36 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var35) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var36, var_node_list) /* push on */; +RET_LABEL:; +} +/* method parser#ReduceAction488#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction488__action(val* self, val* p0) { +parser__ReduceAction488__action(self, p0); +RET_LABEL:; +} +/* method parser#ReduceAction489#action for (self: ReduceAction489, Parser) */ +void parser__ReduceAction489__action(val* self, val* p0) { +val* var_p /* var p: Parser */; +val* var /* : null */; +val* var_node_list /* var node_list: nullable Object */; +val* var1 /* : nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; +val* var2 /* : nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var3 /* : nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var4 /* : nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var5 /* : nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var6 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var7 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var8 /* : nullable Object */; +val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; +val* var_pdocnode2 /* var pdocnode2: nullable Object */; +short int var9 /* : Bool */; +int cltype; +int idtype; +val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +short int var10 /* : Bool */; +int cltype11; +int idtype12; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var13 /* : Bool */; +int cltype14; +int idtype15; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +short int var16 /* : Bool */; +int cltype17; +int idtype18; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var19 /* : Bool */; +int cltype20; +int idtype21; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var25 /* : AExternInitPropdef */; +val* var26 /* : null */; +val* var27 /* : null */; +val* var28 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var29 /* : Int */; +long var30 /* : Int */; +var_p = p0; +var = NULL; +var_node_list = var; +var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist8 = var1; +var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist7 = var2; +var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist6 = var3; +var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist5 = var4; +var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist4 = var5; +var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist3 = var6; +var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var8; +var_pdocnode2 = var_nodearraylist1; +/* isa nullable ADoc */ +cltype = type_nullable_parser_nodes__ADoc.color; +idtype = type_nullable_parser_nodes__ADoc.id; +if(var_pdocnode2 == NULL) { +var9 = 1; +} else { +if(cltype >= var_pdocnode2->type->table_size) { +var9 = 0; +} else { +var9 = var_pdocnode2->type->type_table[cltype] == idtype; +} +} +if (!var9) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21478); +show_backtrace(1); +} +var_pvisibilitynode4 = var_nodearraylist2; +/* isa nullable AVisibility */ +cltype11 = type_nullable_parser_nodes__AVisibility.color; +idtype12 = type_nullable_parser_nodes__AVisibility.id; +if(var_pvisibilitynode4 == NULL) { +var10 = 1; +} else { +if(cltype11 >= var_pvisibilitynode4->type->table_size) { +var10 = 0; +} else { +var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; +} +} +if (!var10) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21480); +show_backtrace(1); +} +var_tkwnewnode5 = var_nodearraylist3; +/* isa nullable TKwnew */ +cltype14 = type_nullable_parser_nodes__TKwnew.color; +idtype15 = type_nullable_parser_nodes__TKwnew.id; +if(var_tkwnewnode5 == NULL) { +var13 = 1; +} else { +if(cltype14 >= var_tkwnewnode5->type->table_size) { +var13 = 0; +} else { +var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; +} +} +if (!var13) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21482); +show_backtrace(1); +} +var_psignaturenode7 = var_nodearraylist4; +/* isa nullable ASignature */ +cltype17 = type_nullable_parser_nodes__ASignature.color; +idtype18 = type_nullable_parser_nodes__ASignature.id; +if(var_psignaturenode7 == NULL) { +var16 = 1; +} else { +if(cltype17 >= var_psignaturenode7->type->table_size) { +var16 = 0; +} else { +var16 = var_psignaturenode7->type->type_table[cltype17] == idtype18; +} +} +if (!var16) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21484); +show_backtrace(1); +} +var_pexterncallsnode9 = var_nodearraylist7; /* isa nullable AExternCalls */ -cltype23 = type_nullable_parser_nodes__AExternCalls.color; -idtype24 = type_nullable_parser_nodes__AExternCalls.id; +cltype20 = type_nullable_parser_nodes__AExternCalls.color; +idtype21 = type_nullable_parser_nodes__AExternCalls.id; if(var_pexterncallsnode9 == NULL) { +var19 = 1; +} else { +if(cltype20 >= var_pexterncallsnode9->type->table_size) { +var19 = 0; +} else { +var19 = var_pexterncallsnode9->type->type_table[cltype20] == idtype21; +} +} +if (!var19) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21486); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist8; +/* isa nullable AExternCodeBlock */ +cltype23 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype24 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { var22 = 1; } else { -if(cltype23 >= var_pexterncallsnode9->type->table_size) { +if(cltype23 >= var_pexterncodeblocknode10->type->table_size) { var22 = 0; } else { -var22 = var_pexterncallsnode9->type->type_table[cltype23] == idtype24; +var22 = var_pexterncodeblocknode10->type->type_table[cltype23] == idtype24; } } if (!var22) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 20996); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21488); +show_backtrace(1); } var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); var26 = NULL; var27 = NULL; var28 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var27, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var28) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var25); +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var27, var_psignaturenode7, var28, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; var_ppropdefnode1 = var25; var_node_list = var_ppropdefnode1; -var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; ((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction477#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction477__action(val* self, val* p0) { -parser__ReduceAction477__action(self, p0); +/* method parser#ReduceAction489#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction489__action(val* self, val* p0) { +parser__ReduceAction489__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction478#action for (self: ReduceAction478, Parser) */ -void parser__ReduceAction478__action(val* self, val* p0) { +/* method parser#ReduceAction490#action for (self: ReduceAction490, Parser) */ +void parser__ReduceAction490__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; @@ -4342,11 +4890,11 @@ val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var20 /* : Bool */; int cltype21; int idtype22; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; short int var23 /* : Bool */; int cltype24; int idtype25; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var26 /* : Bool */; int cltype27; int idtype28; @@ -4392,8 +4940,8 @@ var10 = var_pdocnode2->type->type_table[cltype] == idtype; } if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21027); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21519); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ @@ -4410,8 +4958,8 @@ var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; } if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21029); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21521); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ @@ -4428,8 +4976,8 @@ var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; } if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21031); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21523); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ @@ -4446,8 +4994,8 @@ var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; } if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21033); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21525); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ @@ -4464,64 +5012,63 @@ var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; } if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21035); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21527); +show_backtrace(1); } -var_tstringnode8 = var_nodearraylist8; -/* isa nullable TString */ -cltype24 = type_nullable_parser_nodes__TString.color; -idtype25 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { +var_pexterncallsnode9 = var_nodearraylist8; +/* isa nullable AExternCalls */ +cltype24 = type_nullable_parser_nodes__AExternCalls.color; +idtype25 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { var23 = 1; } else { -if(cltype24 >= var_tstringnode8->type->table_size) { +if(cltype24 >= var_pexterncallsnode9->type->table_size) { var23 = 0; } else { -var23 = var_tstringnode8->type->type_table[cltype24] == idtype25; +var23 = var_pexterncallsnode9->type->type_table[cltype24] == idtype25; } } if (!var23) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21037); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21529); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist9; -/* isa nullable AExternCalls */ -cltype27 = type_nullable_parser_nodes__AExternCalls.color; -idtype28 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { +var_pexterncodeblocknode10 = var_nodearraylist9; +/* isa nullable AExternCodeBlock */ +cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { var26 = 1; } else { -if(cltype27 >= var_pexterncallsnode9->type->table_size) { +if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { var26 = 0; } else { -var26 = var_pexterncallsnode9->type->type_table[cltype27] == idtype28; +var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; } } if (!var26) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21039); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21531); +show_backtrace(1); } var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); var30 = NULL; var31 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var30, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var31) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var29); +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var30, var_psignaturenode7, var31, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; var_ppropdefnode1 = var29; var_node_list = var_ppropdefnode1; -var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; ((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction478#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction478__action(val* self, val* p0) { -parser__ReduceAction478__action(self, p0); +/* method parser#ReduceAction490#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction490__action(val* self, val* p0) { +parser__ReduceAction490__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction479#action for (self: ReduceAction479, Parser) */ -void parser__ReduceAction479__action(val* self, val* p0) { +/* method parser#ReduceAction491#action for (self: ReduceAction491, Parser) */ +void parser__ReduceAction491__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; @@ -4563,11 +5110,11 @@ val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var20 /* : Bool */; int cltype21; int idtype22; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; short int var23 /* : Bool */; int cltype24; int idtype25; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var26 /* : Bool */; int cltype27; int idtype28; @@ -4613,8 +5160,8 @@ var10 = var_pdocnode2->type->type_table[cltype] == idtype; } if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21070); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21562); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ @@ -4631,8 +5178,8 @@ var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; } if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21072); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21564); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ @@ -4649,8 +5196,8 @@ var14 = var_tkwnewnode5->type->type_table[cltype15] == idtype16; } if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21074); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21566); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist4; /* isa nullable AMethid */ @@ -4667,8 +5214,8 @@ var17 = var_pmethidnode6->type->type_table[cltype18] == idtype19; } if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21076); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21568); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ @@ -4685,64 +5232,63 @@ var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; } if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21078); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21570); +show_backtrace(1); } -var_tstringnode8 = var_nodearraylist8; -/* isa nullable TString */ -cltype24 = type_nullable_parser_nodes__TString.color; -idtype25 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { +var_pexterncallsnode9 = var_nodearraylist8; +/* isa nullable AExternCalls */ +cltype24 = type_nullable_parser_nodes__AExternCalls.color; +idtype25 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { var23 = 1; } else { -if(cltype24 >= var_tstringnode8->type->table_size) { +if(cltype24 >= var_pexterncallsnode9->type->table_size) { var23 = 0; } else { -var23 = var_tstringnode8->type->type_table[cltype24] == idtype25; +var23 = var_pexterncallsnode9->type->type_table[cltype24] == idtype25; } } if (!var23) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21080); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21572); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist9; -/* isa nullable AExternCalls */ -cltype27 = type_nullable_parser_nodes__AExternCalls.color; -idtype28 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { +var_pexterncodeblocknode10 = var_nodearraylist9; +/* isa nullable AExternCodeBlock */ +cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { var26 = 1; } else { -if(cltype27 >= var_pexterncallsnode9->type->table_size) { +if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { var26 = 0; } else { -var26 = var_pexterncallsnode9->type->type_table[cltype27] == idtype28; +var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; } } if (!var26) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21082); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21574); +show_backtrace(1); } var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); var30 = NULL; var31 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var30, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var31) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var29); +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var30, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var31, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; var_ppropdefnode1 = var29; var_node_list = var_ppropdefnode1; -var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; ((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction479#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction479__action(val* self, val* p0) { -parser__ReduceAction479__action(self, p0); +/* method parser#ReduceAction491#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction491__action(val* self, val* p0) { +parser__ReduceAction491__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction480#action for (self: ReduceAction480, Parser) */ -void parser__ReduceAction480__action(val* self, val* p0) { +/* method parser#ReduceAction492#action for (self: ReduceAction492, Parser) */ +void parser__ReduceAction492__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; @@ -4790,11 +5336,11 @@ val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var24 /* : Bool */; int cltype25; int idtype26; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; short int var27 /* : Bool */; int cltype28; int idtype29; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var30 /* : Bool */; int cltype31; int idtype32; @@ -4841,8 +5387,8 @@ var11 = var_pdocnode2->type->type_table[cltype] == idtype; } if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21114); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21606); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ @@ -4859,8 +5405,8 @@ var12 = var_tkwredefnode3->type->type_table[cltype13] == idtype14; } if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21116); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21608); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ @@ -4877,8 +5423,8 @@ var15 = var_pvisibilitynode4->type->type_table[cltype16] == idtype17; } if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21118); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21610); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ @@ -4895,8 +5441,8 @@ var18 = var_tkwnewnode5->type->type_table[cltype19] == idtype20; } if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21120); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21612); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist5; /* isa nullable AMethid */ @@ -4913,8 +5459,8 @@ var21 = var_pmethidnode6->type->type_table[cltype22] == idtype23; } if (!var21) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21122); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21614); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist6; /* isa nullable ASignature */ @@ -4931,4965 +5477,4525 @@ var24 = var_psignaturenode7->type->type_table[cltype25] == idtype26; } if (!var24) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21124); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21616); +show_backtrace(1); } -var_tstringnode8 = var_nodearraylist9; -/* isa nullable TString */ -cltype28 = type_nullable_parser_nodes__TString.color; -idtype29 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { +var_pexterncallsnode9 = var_nodearraylist9; +/* isa nullable AExternCalls */ +cltype28 = type_nullable_parser_nodes__AExternCalls.color; +idtype29 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { var27 = 1; } else { -if(cltype28 >= var_tstringnode8->type->table_size) { +if(cltype28 >= var_pexterncallsnode9->type->table_size) { var27 = 0; } else { -var27 = var_tstringnode8->type->type_table[cltype28] == idtype29; +var27 = var_pexterncallsnode9->type->type_table[cltype28] == idtype29; } } if (!var27) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21126); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21618); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist10; -/* isa nullable AExternCalls */ -cltype31 = type_nullable_parser_nodes__AExternCalls.color; -idtype32 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { +var_pexterncodeblocknode10 = var_nodearraylist10; +/* isa nullable AExternCodeBlock */ +cltype31 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype32 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { var30 = 1; } else { -if(cltype31 >= var_pexterncallsnode9->type->table_size) { +if(cltype31 >= var_pexterncodeblocknode10->type->table_size) { var30 = 0; } else { -var30 = var_pexterncallsnode9->type->type_table[cltype31] == idtype32; +var30 = var_pexterncodeblocknode10->type->type_table[cltype31] == idtype32; } } if (!var30) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21128); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21620); +show_backtrace(1); } var33 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); var34 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var33, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var34) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var33); +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var33, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var34, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; var_ppropdefnode1 = var33; var_node_list = var_ppropdefnode1; -var35 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var35 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ var36 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var35) /* go_to on */; ((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var36, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction480#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction480__action(val* self, val* p0) { -parser__ReduceAction480__action(self, p0); +/* method parser#ReduceAction492#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction492__action(val* self, val* p0) { +parser__ReduceAction492__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction481#action for (self: ReduceAction481, Parser) */ -void parser__ReduceAction481__action(val* self, val* p0) { +/* method parser#ReduceAction493#action for (self: ReduceAction493, Parser) */ +void parser__ReduceAction493__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var7 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var8 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var9 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var8 /* : Bool */; +short int var10 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var9 /* : Bool */; -int cltype10; -int idtype11; +short int var11 /* : Bool */; +int cltype12; +int idtype13; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; +short int var14 /* : Bool */; +int cltype15; +int idtype16; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; +short int var17 /* : Bool */; +int cltype18; +int idtype19; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var20 /* : Bool */; +int cltype21; +int idtype22; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; -val* var21 /* : AExternInitPropdef */; -val* var22 /* : null */; -val* var23 /* : null */; -val* var24 /* : null */; -val* var25 /* : null */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +val* var29 /* : AExternInitPropdef */; +val* var30 /* : null */; +val* var31 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var26 /* : Int */; -long var27 /* : Int */; +long var32 /* : Int */; +long var33 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var1; +var_nodearraylist9 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var2; +var_nodearraylist8 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var3; +var_nodearraylist7 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var4; +var_nodearraylist6 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var5; +var_nodearraylist5 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var6; +var_nodearraylist4 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var7; +var_nodearraylist3 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var9; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var8 = 1; +var10 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var8 = 0; +var10 = 0; } else { -var8 = var_pdocnode2->type->type_table[cltype] == idtype; +var10 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var8) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21157); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21651); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype10 = type_nullable_parser_nodes__AVisibility.color; -idtype11 = type_nullable_parser_nodes__AVisibility.id; +cltype12 = type_nullable_parser_nodes__AVisibility.color; +idtype13 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var9 = 1; +var11 = 1; } else { -if(cltype10 >= var_pvisibilitynode4->type->table_size) { -var9 = 0; +if(cltype12 >= var_pvisibilitynode4->type->table_size) { +var11 = 0; } else { -var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; +var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; } } -if (!var9) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21159); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21653); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype13 = type_nullable_parser_nodes__TKwnew.color; -idtype14 = type_nullable_parser_nodes__TKwnew.id; +cltype15 = type_nullable_parser_nodes__TKwnew.color; +idtype16 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var12 = 1; +var14 = 1; } else { -if(cltype13 >= var_tkwnewnode5->type->table_size) { -var12 = 0; +if(cltype15 >= var_tkwnewnode5->type->table_size) { +var14 = 0; } else { -var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; +var14 = var_tkwnewnode5->type->type_table[cltype15] == idtype16; } } -if (!var12) { +if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21161); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21655); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist4; /* isa nullable ASignature */ -cltype16 = type_nullable_parser_nodes__ASignature.color; -idtype17 = type_nullable_parser_nodes__ASignature.id; +cltype18 = type_nullable_parser_nodes__ASignature.color; +idtype19 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var15 = 1; +var17 = 1; } else { -if(cltype16 >= var_psignaturenode7->type->table_size) { -var15 = 0; +if(cltype18 >= var_psignaturenode7->type->table_size) { +var17 = 0; } else { -var15 = var_psignaturenode7->type->type_table[cltype16] == idtype17; +var17 = var_psignaturenode7->type->type_table[cltype18] == idtype19; } } -if (!var15) { +if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21163); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21657); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist7; -/* isa nullable AExternCodeBlock */ -cltype19 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype20 = type_nullable_parser_nodes__AExternCodeBlock.id; -if(var_pexterncodeblocknode10 == NULL) { -var18 = 1; -} else { -if(cltype19 >= var_pexterncodeblocknode10->type->table_size) { -var18 = 0; -} else { -var18 = var_pexterncodeblocknode10->type->type_table[cltype19] == idtype20; +var_tstringnode8 = var_nodearraylist7; +/* isa nullable TString */ +cltype21 = type_nullable_parser_nodes__TString.color; +idtype22 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var20 = 1; +} else { +if(cltype21 >= var_tstringnode8->type->table_size) { +var20 = 0; +} else { +var20 = var_tstringnode8->type->type_table[cltype21] == idtype22; } } -if (!var18) { +if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21165); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21659); +show_backtrace(1); } -var21 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var22 = NULL; -var23 = NULL; -var24 = NULL; -var25 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var21->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var21, var_pdocnode2, var22, var_pvisibilitynode4, var_tkwnewnode5, var23, var_psignaturenode7, var24, var25, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var21); -var_ppropdefnode1 = var21; +var_pexterncallsnode9 = var_nodearraylist8; +/* isa nullable AExternCalls */ +cltype24 = type_nullable_parser_nodes__AExternCalls.color; +idtype25 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var23 = 1; +} else { +if(cltype24 >= var_pexterncallsnode9->type->table_size) { +var23 = 0; +} else { +var23 = var_pexterncallsnode9->type->type_table[cltype24] == idtype25; +} +} +if (!var23) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21661); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist9; +/* isa nullable AExternCodeBlock */ +cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { +var26 = 1; +} else { +if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { +var26 = 0; +} else { +var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; +} +} +if (!var26) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21663); +show_backtrace(1); +} +var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var30 = NULL; +var31 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var30, var_pvisibilitynode4, var_tkwnewnode5, var31, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var29; var_node_list = var_ppropdefnode1; -var26 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var27 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var26) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var27, var_node_list) /* push on */; +var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction481#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction481__action(val* self, val* p0) { -parser__ReduceAction481__action(self, p0); +/* method parser#ReduceAction493#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction493__action(val* self, val* p0) { +parser__ReduceAction493__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction482#action for (self: ReduceAction482, Parser) */ -void parser__ReduceAction482__action(val* self, val* p0) { +/* method parser#ReduceAction494#action for (self: ReduceAction494, Parser) */ +void parser__ReduceAction494__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; +val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var7 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var8 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var9 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var10 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var9 /* : Bool */; +short int var11 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; +short int var12 /* : Bool */; +int cltype13; +int idtype14; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; +short int var15 /* : Bool */; +int cltype16; +int idtype17; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var16 /* : Bool */; -int cltype17; -int idtype18; +short int var18 /* : Bool */; +int cltype19; +int idtype20; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var19 /* : Bool */; -int cltype20; -int idtype21; +short int var21 /* : Bool */; +int cltype22; +int idtype23; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var24 /* : Bool */; +int cltype25; +int idtype26; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var27 /* : Bool */; +int cltype28; +int idtype29; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var22 /* : Bool */; -int cltype23; -int idtype24; -val* var25 /* : AExternInitPropdef */; -val* var26 /* : null */; -val* var27 /* : null */; -val* var28 /* : null */; +short int var30 /* : Bool */; +int cltype31; +int idtype32; +val* var33 /* : AExternInitPropdef */; +val* var34 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var29 /* : Int */; -long var30 /* : Int */; +long var35 /* : Int */; +long var36 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var1; +var_nodearraylist10 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var2; +var_nodearraylist9 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var3; +var_nodearraylist8 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var4; +var_nodearraylist7 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var5; +var_nodearraylist6 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var6; +var_nodearraylist5 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var7; +var_nodearraylist4 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var8; +var_nodearraylist3 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var9; +var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var10; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var9 = 1; +var11 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var9 = 0; +var11 = 0; } else { -var9 = var_pdocnode2->type->type_table[cltype] == idtype; +var11 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var9) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21195); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21695); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype11 = type_nullable_parser_nodes__TKwredef.color; -idtype12 = type_nullable_parser_nodes__TKwredef.id; +cltype13 = type_nullable_parser_nodes__TKwredef.color; +idtype14 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var10 = 1; +var12 = 1; } else { -if(cltype11 >= var_tkwredefnode3->type->table_size) { -var10 = 0; +if(cltype13 >= var_tkwredefnode3->type->table_size) { +var12 = 0; } else { -var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; +var12 = var_tkwredefnode3->type->type_table[cltype13] == idtype14; } } -if (!var10) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21197); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21697); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype14 = type_nullable_parser_nodes__AVisibility.color; -idtype15 = type_nullable_parser_nodes__AVisibility.id; +cltype16 = type_nullable_parser_nodes__AVisibility.color; +idtype17 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var13 = 1; +var15 = 1; } else { -if(cltype14 >= var_pvisibilitynode4->type->table_size) { -var13 = 0; +if(cltype16 >= var_pvisibilitynode4->type->table_size) { +var15 = 0; } else { -var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; +var15 = var_pvisibilitynode4->type->type_table[cltype16] == idtype17; } } -if (!var13) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21199); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21699); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype17 = type_nullable_parser_nodes__TKwnew.color; -idtype18 = type_nullable_parser_nodes__TKwnew.id; +cltype19 = type_nullable_parser_nodes__TKwnew.color; +idtype20 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var16 = 1; +var18 = 1; } else { -if(cltype17 >= var_tkwnewnode5->type->table_size) { -var16 = 0; +if(cltype19 >= var_tkwnewnode5->type->table_size) { +var18 = 0; } else { -var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; +var18 = var_tkwnewnode5->type->type_table[cltype19] == idtype20; } } -if (!var16) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21201); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21701); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype20 = type_nullable_parser_nodes__ASignature.color; -idtype21 = type_nullable_parser_nodes__ASignature.id; +cltype22 = type_nullable_parser_nodes__ASignature.color; +idtype23 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var19 = 1; +var21 = 1; } else { -if(cltype20 >= var_psignaturenode7->type->table_size) { -var19 = 0; +if(cltype22 >= var_psignaturenode7->type->table_size) { +var21 = 0; } else { -var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; +var21 = var_psignaturenode7->type->type_table[cltype22] == idtype23; } } -if (!var19) { +if (!var21) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21203); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21703); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist8; -/* isa nullable AExternCodeBlock */ -cltype23 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype24 = type_nullable_parser_nodes__AExternCodeBlock.id; -if(var_pexterncodeblocknode10 == NULL) { -var22 = 1; +var_tstringnode8 = var_nodearraylist8; +/* isa nullable TString */ +cltype25 = type_nullable_parser_nodes__TString.color; +idtype26 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var24 = 1; } else { -if(cltype23 >= var_pexterncodeblocknode10->type->table_size) { -var22 = 0; +if(cltype25 >= var_tstringnode8->type->table_size) { +var24 = 0; } else { -var22 = var_pexterncodeblocknode10->type->type_table[cltype23] == idtype24; +var24 = var_tstringnode8->type->type_table[cltype25] == idtype26; } } -if (!var22) { +if (!var24) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21205); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21705); +show_backtrace(1); } -var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var26 = NULL; -var27 = NULL; -var28 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var26, var_psignaturenode7, var27, var28, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var25); -var_ppropdefnode1 = var25; -var_node_list = var_ppropdefnode1; -var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; +var_pexterncallsnode9 = var_nodearraylist9; +/* isa nullable AExternCalls */ +cltype28 = type_nullable_parser_nodes__AExternCalls.color; +idtype29 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var27 = 1; +} else { +if(cltype28 >= var_pexterncallsnode9->type->table_size) { +var27 = 0; +} else { +var27 = var_pexterncallsnode9->type->type_table[cltype28] == idtype29; +} +} +if (!var27) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21707); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist10; +/* isa nullable AExternCodeBlock */ +cltype31 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype32 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { +var30 = 1; +} else { +if(cltype31 >= var_pexterncodeblocknode10->type->table_size) { +var30 = 0; +} else { +var30 = var_pexterncodeblocknode10->type->type_table[cltype31] == idtype32; +} +} +if (!var30) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21709); +show_backtrace(1); +} +var33 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var34 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var33, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var34, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var33; +var_node_list = var_ppropdefnode1; +var35 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var36 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var35) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var36, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction482#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction482__action(val* self, val* p0) { -parser__ReduceAction482__action(self, p0); +/* method parser#ReduceAction494#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction494__action(val* self, val* p0) { +parser__ReduceAction494__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction483#action for (self: ReduceAction483, Parser) */ -void parser__ReduceAction483__action(val* self, val* p0) { +/* method parser#ReduceAction495#action for (self: ReduceAction495, Parser) */ +void parser__ReduceAction495__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; +val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var7 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var8 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var9 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var10 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var9 /* : Bool */; +short int var11 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; +short int var12 /* : Bool */; +int cltype13; +int idtype14; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; +short int var15 /* : Bool */; +int cltype16; +int idtype17; val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var16 /* : Bool */; -int cltype17; -int idtype18; +short int var18 /* : Bool */; +int cltype19; +int idtype20; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var19 /* : Bool */; -int cltype20; -int idtype21; +short int var21 /* : Bool */; +int cltype22; +int idtype23; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var24 /* : Bool */; +int cltype25; +int idtype26; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var27 /* : Bool */; +int cltype28; +int idtype29; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var22 /* : Bool */; -int cltype23; -int idtype24; -val* var25 /* : AExternInitPropdef */; -val* var26 /* : null */; -val* var27 /* : null */; -val* var28 /* : null */; +short int var30 /* : Bool */; +int cltype31; +int idtype32; +val* var33 /* : AExternInitPropdef */; +val* var34 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var29 /* : Int */; -long var30 /* : Int */; +long var35 /* : Int */; +long var36 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var1; +var_nodearraylist10 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var2; +var_nodearraylist9 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var3; +var_nodearraylist8 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var4; +var_nodearraylist7 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var5; +var_nodearraylist6 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var6; +var_nodearraylist5 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var7; +var_nodearraylist4 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var8; +var_nodearraylist3 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var9; +var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var10; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var9 = 1; +var11 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var9 = 0; +var11 = 0; } else { -var9 = var_pdocnode2->type->type_table[cltype] == idtype; +var11 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var9) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21235); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21741); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype11 = type_nullable_parser_nodes__AVisibility.color; -idtype12 = type_nullable_parser_nodes__AVisibility.id; +cltype13 = type_nullable_parser_nodes__AVisibility.color; +idtype14 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var10 = 1; +var12 = 1; } else { -if(cltype11 >= var_pvisibilitynode4->type->table_size) { -var10 = 0; +if(cltype13 >= var_pvisibilitynode4->type->table_size) { +var12 = 0; } else { -var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; +var12 = var_pvisibilitynode4->type->type_table[cltype13] == idtype14; } } -if (!var10) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21237); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21743); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype14 = type_nullable_parser_nodes__TKwnew.color; -idtype15 = type_nullable_parser_nodes__TKwnew.id; +cltype16 = type_nullable_parser_nodes__TKwnew.color; +idtype17 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var13 = 1; +var15 = 1; } else { -if(cltype14 >= var_tkwnewnode5->type->table_size) { -var13 = 0; +if(cltype16 >= var_tkwnewnode5->type->table_size) { +var15 = 0; } else { -var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; +var15 = var_tkwnewnode5->type->type_table[cltype16] == idtype17; } } -if (!var13) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21239); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21745); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist4; /* isa nullable AMethid */ -cltype17 = type_nullable_parser_nodes__AMethid.color; -idtype18 = type_nullable_parser_nodes__AMethid.id; +cltype19 = type_nullable_parser_nodes__AMethid.color; +idtype20 = type_nullable_parser_nodes__AMethid.id; if(var_pmethidnode6 == NULL) { -var16 = 1; +var18 = 1; } else { -if(cltype17 >= var_pmethidnode6->type->table_size) { -var16 = 0; +if(cltype19 >= var_pmethidnode6->type->table_size) { +var18 = 0; } else { -var16 = var_pmethidnode6->type->type_table[cltype17] == idtype18; +var18 = var_pmethidnode6->type->type_table[cltype19] == idtype20; } } -if (!var16) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21241); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21747); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype20 = type_nullable_parser_nodes__ASignature.color; -idtype21 = type_nullable_parser_nodes__ASignature.id; +cltype22 = type_nullable_parser_nodes__ASignature.color; +idtype23 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var19 = 1; +var21 = 1; } else { -if(cltype20 >= var_psignaturenode7->type->table_size) { -var19 = 0; +if(cltype22 >= var_psignaturenode7->type->table_size) { +var21 = 0; } else { -var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; +var21 = var_psignaturenode7->type->type_table[cltype22] == idtype23; } } -if (!var19) { +if (!var21) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21243); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21749); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist8; -/* isa nullable AExternCodeBlock */ -cltype23 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype24 = type_nullable_parser_nodes__AExternCodeBlock.id; -if(var_pexterncodeblocknode10 == NULL) { -var22 = 1; +var_tstringnode8 = var_nodearraylist8; +/* isa nullable TString */ +cltype25 = type_nullable_parser_nodes__TString.color; +idtype26 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var24 = 1; } else { -if(cltype23 >= var_pexterncodeblocknode10->type->table_size) { -var22 = 0; +if(cltype25 >= var_tstringnode8->type->table_size) { +var24 = 0; } else { -var22 = var_pexterncodeblocknode10->type->type_table[cltype23] == idtype24; +var24 = var_tstringnode8->type->type_table[cltype25] == idtype26; } } -if (!var22) { +if (!var24) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21245); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21751); +show_backtrace(1); } -var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var26 = NULL; -var27 = NULL; -var28 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var27, var28, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var25); -var_ppropdefnode1 = var25; -var_node_list = var_ppropdefnode1; -var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; -RET_LABEL:; +var_pexterncallsnode9 = var_nodearraylist9; +/* isa nullable AExternCalls */ +cltype28 = type_nullable_parser_nodes__AExternCalls.color; +idtype29 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var27 = 1; +} else { +if(cltype28 >= var_pexterncallsnode9->type->table_size) { +var27 = 0; +} else { +var27 = var_pexterncallsnode9->type->type_table[cltype28] == idtype29; } -/* method parser#ReduceAction483#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction483__action(val* self, val* p0) { -parser__ReduceAction483__action(self, p0); -RET_LABEL:; } -/* method parser#ReduceAction484#action for (self: ReduceAction484, Parser) */ -void parser__ReduceAction484__action(val* self, val* p0) { -val* var_p /* var p: Parser */; -val* var /* : null */; -val* var_node_list /* var node_list: nullable Object */; +if (!var27) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21753); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist10; +/* isa nullable AExternCodeBlock */ +cltype31 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype32 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { +var30 = 1; +} else { +if(cltype31 >= var_pexterncodeblocknode10->type->table_size) { +var30 = 0; +} else { +var30 = var_pexterncodeblocknode10->type->type_table[cltype31] == idtype32; +} +} +if (!var30) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21755); +show_backtrace(1); +} +var33 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var34 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var33, var_pdocnode2, var34, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var33; +var_node_list = var_ppropdefnode1; +var35 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var36 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var35) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var36, var_node_list) /* push on */; +RET_LABEL:; +} +/* method parser#ReduceAction495#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction495__action(val* self, val* p0) { +parser__ReduceAction495__action(self, p0); +RET_LABEL:; +} +/* method parser#ReduceAction496#action for (self: ReduceAction496, Parser) */ +void parser__ReduceAction496__action(val* self, val* p0) { +val* var_p /* var p: Parser */; +val* var /* : null */; +val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; +val* var_nodearraylist11 /* var nodearraylist11: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; +val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var7 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var8 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var9 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var10 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var11 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var10 /* : Bool */; +short int var12 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; +short int var13 /* : Bool */; +int cltype14; +int idtype15; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; +short int var16 /* : Bool */; +int cltype17; +int idtype18; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; +short int var19 /* : Bool */; +int cltype20; +int idtype21; val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var20 /* : Bool */; -int cltype21; -int idtype22; +short int var22 /* : Bool */; +int cltype23; +int idtype24; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; +short int var25 /* : Bool */; +int cltype26; +int idtype27; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var28 /* : Bool */; +int cltype29; +int idtype30; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var31 /* : Bool */; +int cltype32; +int idtype33; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -val* var29 /* : AExternInitPropdef */; -val* var30 /* : null */; -val* var31 /* : null */; +short int var34 /* : Bool */; +int cltype35; +int idtype36; +val* var37 /* : AExternInitPropdef */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var32 /* : Int */; -long var33 /* : Int */; +long var38 /* : Int */; +long var39 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var1; +var_nodearraylist11 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var2; +var_nodearraylist10 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var3; +var_nodearraylist9 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var4; +var_nodearraylist8 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var5; +var_nodearraylist7 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var6; +var_nodearraylist6 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var7; +var_nodearraylist5 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var8; +var_nodearraylist4 = var8; var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var9; +var_nodearraylist3 = var9; +var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var10; +var11 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var11; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var10 = 1; +var12 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var10 = 0; +var12 = 0; } else { -var10 = var_pdocnode2->type->type_table[cltype] == idtype; +var12 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var10) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21276); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21788); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype12 = type_nullable_parser_nodes__TKwredef.color; -idtype13 = type_nullable_parser_nodes__TKwredef.id; +cltype14 = type_nullable_parser_nodes__TKwredef.color; +idtype15 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var11 = 1; +var13 = 1; } else { -if(cltype12 >= var_tkwredefnode3->type->table_size) { -var11 = 0; +if(cltype14 >= var_tkwredefnode3->type->table_size) { +var13 = 0; } else { -var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; +var13 = var_tkwredefnode3->type->type_table[cltype14] == idtype15; } } -if (!var11) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21278); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21790); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype15 = type_nullable_parser_nodes__AVisibility.color; -idtype16 = type_nullable_parser_nodes__AVisibility.id; +cltype17 = type_nullable_parser_nodes__AVisibility.color; +idtype18 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var14 = 1; +var16 = 1; } else { -if(cltype15 >= var_pvisibilitynode4->type->table_size) { -var14 = 0; +if(cltype17 >= var_pvisibilitynode4->type->table_size) { +var16 = 0; } else { -var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; +var16 = var_pvisibilitynode4->type->type_table[cltype17] == idtype18; } } -if (!var14) { +if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21280); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21792); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype18 = type_nullable_parser_nodes__TKwnew.color; -idtype19 = type_nullable_parser_nodes__TKwnew.id; +cltype20 = type_nullable_parser_nodes__TKwnew.color; +idtype21 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var17 = 1; +var19 = 1; } else { -if(cltype18 >= var_tkwnewnode5->type->table_size) { -var17 = 0; +if(cltype20 >= var_tkwnewnode5->type->table_size) { +var19 = 0; } else { -var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; +var19 = var_tkwnewnode5->type->type_table[cltype20] == idtype21; } } -if (!var17) { +if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21282); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21794); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist5; /* isa nullable AMethid */ -cltype21 = type_nullable_parser_nodes__AMethid.color; -idtype22 = type_nullable_parser_nodes__AMethid.id; +cltype23 = type_nullable_parser_nodes__AMethid.color; +idtype24 = type_nullable_parser_nodes__AMethid.id; if(var_pmethidnode6 == NULL) { -var20 = 1; +var22 = 1; } else { -if(cltype21 >= var_pmethidnode6->type->table_size) { -var20 = 0; +if(cltype23 >= var_pmethidnode6->type->table_size) { +var22 = 0; } else { -var20 = var_pmethidnode6->type->type_table[cltype21] == idtype22; +var22 = var_pmethidnode6->type->type_table[cltype23] == idtype24; } } -if (!var20) { +if (!var22) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21284); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21796); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist6; /* isa nullable ASignature */ -cltype24 = type_nullable_parser_nodes__ASignature.color; -idtype25 = type_nullable_parser_nodes__ASignature.id; +cltype26 = type_nullable_parser_nodes__ASignature.color; +idtype27 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var23 = 1; +var25 = 1; } else { -if(cltype24 >= var_psignaturenode7->type->table_size) { -var23 = 0; +if(cltype26 >= var_psignaturenode7->type->table_size) { +var25 = 0; } else { -var23 = var_psignaturenode7->type->type_table[cltype24] == idtype25; +var25 = var_psignaturenode7->type->type_table[cltype26] == idtype27; } } -if (!var23) { +if (!var25) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21286); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21798); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist9; -/* isa nullable AExternCodeBlock */ -cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; -if(var_pexterncodeblocknode10 == NULL) { -var26 = 1; +var_tstringnode8 = var_nodearraylist9; +/* isa nullable TString */ +cltype29 = type_nullable_parser_nodes__TString.color; +idtype30 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var28 = 1; } else { -if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { -var26 = 0; +if(cltype29 >= var_tstringnode8->type->table_size) { +var28 = 0; } else { -var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; +var28 = var_tstringnode8->type->type_table[cltype29] == idtype30; } } -if (!var26) { +if (!var28) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21288); -exit(1); -} -var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var30 = NULL; -var31 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var30, var31, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var29); -var_ppropdefnode1 = var29; -var_node_list = var_ppropdefnode1; -var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; -RET_LABEL:; -} -/* method parser#ReduceAction484#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction484__action(val* self, val* p0) { -parser__ReduceAction484__action(self, p0); -RET_LABEL:; +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21800); +show_backtrace(1); } -/* method parser#ReduceAction485#action for (self: ReduceAction485, Parser) */ -void parser__ReduceAction485__action(val* self, val* p0) { -val* var_p /* var p: Parser */; +var_pexterncallsnode9 = var_nodearraylist10; +/* isa nullable AExternCalls */ +cltype32 = type_nullable_parser_nodes__AExternCalls.color; +idtype33 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var31 = 1; +} else { +if(cltype32 >= var_pexterncallsnode9->type->table_size) { +var31 = 0; +} else { +var31 = var_pexterncallsnode9->type->type_table[cltype32] == idtype33; +} +} +if (!var31) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21802); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist11; +/* isa nullable AExternCodeBlock */ +cltype35 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype36 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { +var34 = 1; +} else { +if(cltype35 >= var_pexterncodeblocknode10->type->table_size) { +var34 = 0; +} else { +var34 = var_pexterncodeblocknode10->type->type_table[cltype35] == idtype36; +} +} +if (!var34) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21804); +show_backtrace(1); +} +var37 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var37->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var37, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var37; +var_node_list = var_ppropdefnode1; +var38 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var39 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var38) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var39, var_node_list) /* push on */; +RET_LABEL:; +} +/* method parser#ReduceAction496#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction496__action(val* self, val* p0) { +parser__ReduceAction496__action(self, p0); +RET_LABEL:; +} +/* method parser#ReduceAction497#action for (self: ReduceAction497, Parser) */ +void parser__ReduceAction497__action(val* self, val* p0) { +val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var4 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var5 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var6 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var7 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var8 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var9 /* : Bool */; +short int var6 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +short int var7 /* : Bool */; +int cltype8; +int idtype9; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var10 /* : Bool */; int cltype11; int idtype12; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var13 /* : Bool */; int cltype14; int idtype15; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var16 /* : Bool */; int cltype17; int idtype18; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; -short int var19 /* : Bool */; -int cltype20; -int idtype21; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var22 /* : Bool */; -int cltype23; -int idtype24; -val* var25 /* : AExternInitPropdef */; -val* var26 /* : null */; -val* var27 /* : null */; -val* var28 /* : null */; +val* var19 /* : AExternInitPropdef */; +val* var20 /* : null */; +val* var21 /* : null */; +val* var22 /* : null */; +val* var23 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var29 /* : Int */; -long var30 /* : Int */; +long var24 /* : Int */; +long var25 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var1; +var_nodearraylist5 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var2; +var_nodearraylist4 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var3; +var_nodearraylist3 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var4; +var_nodearraylist2 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var5; -var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var6; -var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var8; +var_nodearraylist1 = var5; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var9 = 1; +var6 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var9 = 0; +var6 = 0; } else { -var9 = var_pdocnode2->type->type_table[cltype] == idtype; +var6 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var9) { +if (!var6) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21318); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21831); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype11 = type_nullable_parser_nodes__AVisibility.color; -idtype12 = type_nullable_parser_nodes__AVisibility.id; +cltype8 = type_nullable_parser_nodes__AVisibility.color; +idtype9 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var10 = 1; +var7 = 1; } else { -if(cltype11 >= var_pvisibilitynode4->type->table_size) { -var10 = 0; +if(cltype8 >= var_pvisibilitynode4->type->table_size) { +var7 = 0; } else { -var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; +var7 = var_pvisibilitynode4->type->type_table[cltype8] == idtype9; } } -if (!var10) { +if (!var7) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21320); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21833); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype14 = type_nullable_parser_nodes__TKwnew.color; -idtype15 = type_nullable_parser_nodes__TKwnew.id; +cltype11 = type_nullable_parser_nodes__TKwnew.color; +idtype12 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var13 = 1; +var10 = 1; } else { -if(cltype14 >= var_tkwnewnode5->type->table_size) { -var13 = 0; +if(cltype11 >= var_tkwnewnode5->type->table_size) { +var10 = 0; } else { -var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; +var10 = var_tkwnewnode5->type->type_table[cltype11] == idtype12; } } -if (!var13) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21322); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21835); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist4; /* isa nullable ASignature */ -cltype17 = type_nullable_parser_nodes__ASignature.color; -idtype18 = type_nullable_parser_nodes__ASignature.id; +cltype14 = type_nullable_parser_nodes__ASignature.color; +idtype15 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var16 = 1; -} else { -if(cltype17 >= var_psignaturenode7->type->table_size) { -var16 = 0; -} else { -var16 = var_psignaturenode7->type->type_table[cltype17] == idtype18; -} -} -if (!var16) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21324); -exit(1); -} -var_tstringnode8 = var_nodearraylist7; -/* isa nullable TString */ -cltype20 = type_nullable_parser_nodes__TString.color; -idtype21 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var19 = 1; +var13 = 1; } else { -if(cltype20 >= var_tstringnode8->type->table_size) { -var19 = 0; +if(cltype14 >= var_psignaturenode7->type->table_size) { +var13 = 0; } else { -var19 = var_tstringnode8->type->type_table[cltype20] == idtype21; +var13 = var_psignaturenode7->type->type_table[cltype14] == idtype15; } } -if (!var19) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21326); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21837); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist8; +var_pexterncodeblocknode10 = var_nodearraylist5; /* isa nullable AExternCodeBlock */ -cltype23 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype24 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype17 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype18 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var22 = 1; +var16 = 1; } else { -if(cltype23 >= var_pexterncodeblocknode10->type->table_size) { -var22 = 0; +if(cltype17 >= var_pexterncodeblocknode10->type->table_size) { +var16 = 0; } else { -var22 = var_pexterncodeblocknode10->type->type_table[cltype23] == idtype24; +var16 = var_pexterncodeblocknode10->type->type_table[cltype17] == idtype18; } } -if (!var22) { +if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21328); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21839); +show_backtrace(1); } -var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var26 = NULL; -var27 = NULL; -var28 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var27, var_psignaturenode7, var_tstringnode8, var28, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var25); -var_ppropdefnode1 = var25; +var19 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var20 = NULL; +var21 = NULL; +var22 = NULL; +var23 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var19->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var19, var_pdocnode2, var20, var_pvisibilitynode4, var_tkwnewnode5, var21, var_psignaturenode7, var22, var23, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var19; var_node_list = var_ppropdefnode1; -var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; +var24 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var25 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var24) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var25, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction485#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction485__action(val* self, val* p0) { -parser__ReduceAction485__action(self, p0); +/* method parser#ReduceAction497#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction497__action(val* self, val* p0) { +parser__ReduceAction497__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction486#action for (self: ReduceAction486, Parser) */ -void parser__ReduceAction486__action(val* self, val* p0) { +/* method parser#ReduceAction498#action for (self: ReduceAction498, Parser) */ +void parser__ReduceAction498__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var4 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var5 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var6 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var7 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var8 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var9 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var10 /* : Bool */; +short int var7 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; +short int var8 /* : Bool */; +int cltype9; +int idtype10; +val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; short int var11 /* : Bool */; int cltype12; int idtype13; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var14 /* : Bool */; int cltype15; int idtype16; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var17 /* : Bool */; int cltype18; int idtype19; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var20 /* : Bool */; int cltype21; int idtype22; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -val* var29 /* : AExternInitPropdef */; -val* var30 /* : null */; -val* var31 /* : null */; +val* var23 /* : AExternInitPropdef */; +val* var24 /* : null */; +val* var25 /* : null */; +val* var26 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var32 /* : Int */; -long var33 /* : Int */; +long var27 /* : Int */; +long var28 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var1; +var_nodearraylist6 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var2; +var_nodearraylist5 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var3; +var_nodearraylist4 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var4; +var_nodearraylist3 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var5; +var_nodearraylist2 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var6; -var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var9; +var_nodearraylist1 = var6; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var10 = 1; +var7 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var10 = 0; +var7 = 0; } else { -var10 = var_pdocnode2->type->type_table[cltype] == idtype; +var7 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var10) { +if (!var7) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21359); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21867); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype12 = type_nullable_parser_nodes__TKwredef.color; -idtype13 = type_nullable_parser_nodes__TKwredef.id; +cltype9 = type_nullable_parser_nodes__TKwredef.color; +idtype10 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var11 = 1; +var8 = 1; } else { -if(cltype12 >= var_tkwredefnode3->type->table_size) { -var11 = 0; +if(cltype9 >= var_tkwredefnode3->type->table_size) { +var8 = 0; } else { -var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; +var8 = var_tkwredefnode3->type->type_table[cltype9] == idtype10; } } -if (!var11) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21361); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21869); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype15 = type_nullable_parser_nodes__AVisibility.color; -idtype16 = type_nullable_parser_nodes__AVisibility.id; +cltype12 = type_nullable_parser_nodes__AVisibility.color; +idtype13 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var14 = 1; +var11 = 1; } else { -if(cltype15 >= var_pvisibilitynode4->type->table_size) { -var14 = 0; +if(cltype12 >= var_pvisibilitynode4->type->table_size) { +var11 = 0; } else { -var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; +var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; } } -if (!var14) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21363); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21871); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype18 = type_nullable_parser_nodes__TKwnew.color; -idtype19 = type_nullable_parser_nodes__TKwnew.id; +cltype15 = type_nullable_parser_nodes__TKwnew.color; +idtype16 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var17 = 1; +var14 = 1; } else { -if(cltype18 >= var_tkwnewnode5->type->table_size) { -var17 = 0; +if(cltype15 >= var_tkwnewnode5->type->table_size) { +var14 = 0; } else { -var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; +var14 = var_tkwnewnode5->type->type_table[cltype15] == idtype16; } } -if (!var17) { +if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21365); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21873); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype21 = type_nullable_parser_nodes__ASignature.color; -idtype22 = type_nullable_parser_nodes__ASignature.id; +cltype18 = type_nullable_parser_nodes__ASignature.color; +idtype19 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var20 = 1; -} else { -if(cltype21 >= var_psignaturenode7->type->table_size) { -var20 = 0; -} else { -var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; -} -} -if (!var20) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21367); -exit(1); -} -var_tstringnode8 = var_nodearraylist8; -/* isa nullable TString */ -cltype24 = type_nullable_parser_nodes__TString.color; -idtype25 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var23 = 1; +var17 = 1; } else { -if(cltype24 >= var_tstringnode8->type->table_size) { -var23 = 0; +if(cltype18 >= var_psignaturenode7->type->table_size) { +var17 = 0; } else { -var23 = var_tstringnode8->type->type_table[cltype24] == idtype25; +var17 = var_psignaturenode7->type->type_table[cltype18] == idtype19; } } -if (!var23) { +if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21369); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21875); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist9; +var_pexterncodeblocknode10 = var_nodearraylist6; /* isa nullable AExternCodeBlock */ -cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype21 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype22 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var26 = 1; +var20 = 1; } else { -if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { -var26 = 0; +if(cltype21 >= var_pexterncodeblocknode10->type->table_size) { +var20 = 0; } else { -var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; +var20 = var_pexterncodeblocknode10->type->type_table[cltype21] == idtype22; } } -if (!var26) { +if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21371); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21877); +show_backtrace(1); } -var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var30 = NULL; -var31 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var30, var_psignaturenode7, var_tstringnode8, var31, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var29); -var_ppropdefnode1 = var29; +var23 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var24 = NULL; +var25 = NULL; +var26 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var23->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var23, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var24, var_psignaturenode7, var25, var26, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var23; var_node_list = var_ppropdefnode1; -var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; +var27 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var28 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var27) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var28, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction486#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction486__action(val* self, val* p0) { -parser__ReduceAction486__action(self, p0); +/* method parser#ReduceAction498#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction498__action(val* self, val* p0) { +parser__ReduceAction498__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction487#action for (self: ReduceAction487, Parser) */ -void parser__ReduceAction487__action(val* self, val* p0) { +/* method parser#ReduceAction499#action for (self: ReduceAction499, Parser) */ +void parser__ReduceAction499__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var4 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var5 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var6 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var7 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var8 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var9 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var10 /* : Bool */; +short int var7 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +short int var8 /* : Bool */; +int cltype9; +int idtype10; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var11 /* : Bool */; int cltype12; int idtype13; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; short int var14 /* : Bool */; int cltype15; int idtype16; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var17 /* : Bool */; int cltype18; int idtype19; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var20 /* : Bool */; int cltype21; int idtype22; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -val* var29 /* : AExternInitPropdef */; -val* var30 /* : null */; -val* var31 /* : null */; +val* var23 /* : AExternInitPropdef */; +val* var24 /* : null */; +val* var25 /* : null */; +val* var26 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var32 /* : Int */; -long var33 /* : Int */; +long var27 /* : Int */; +long var28 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var1; +var_nodearraylist6 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var2; +var_nodearraylist5 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var3; +var_nodearraylist4 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var4; +var_nodearraylist3 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var5; +var_nodearraylist2 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var6; -var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var9; +var_nodearraylist1 = var6; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var10 = 1; +var7 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var10 = 0; +var7 = 0; } else { -var10 = var_pdocnode2->type->type_table[cltype] == idtype; +var7 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var10) { +if (!var7) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21402); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21905); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype12 = type_nullable_parser_nodes__AVisibility.color; -idtype13 = type_nullable_parser_nodes__AVisibility.id; +cltype9 = type_nullable_parser_nodes__AVisibility.color; +idtype10 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var11 = 1; +var8 = 1; } else { -if(cltype12 >= var_pvisibilitynode4->type->table_size) { -var11 = 0; +if(cltype9 >= var_pvisibilitynode4->type->table_size) { +var8 = 0; } else { -var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; +var8 = var_pvisibilitynode4->type->type_table[cltype9] == idtype10; } } -if (!var11) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21404); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21907); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype15 = type_nullable_parser_nodes__TKwnew.color; -idtype16 = type_nullable_parser_nodes__TKwnew.id; +cltype12 = type_nullable_parser_nodes__TKwnew.color; +idtype13 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var14 = 1; +var11 = 1; } else { -if(cltype15 >= var_tkwnewnode5->type->table_size) { -var14 = 0; +if(cltype12 >= var_tkwnewnode5->type->table_size) { +var11 = 0; } else { -var14 = var_tkwnewnode5->type->type_table[cltype15] == idtype16; +var11 = var_tkwnewnode5->type->type_table[cltype12] == idtype13; } } -if (!var14) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21406); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21909); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist4; /* isa nullable AMethid */ -cltype18 = type_nullable_parser_nodes__AMethid.color; -idtype19 = type_nullable_parser_nodes__AMethid.id; +cltype15 = type_nullable_parser_nodes__AMethid.color; +idtype16 = type_nullable_parser_nodes__AMethid.id; if(var_pmethidnode6 == NULL) { -var17 = 1; +var14 = 1; } else { -if(cltype18 >= var_pmethidnode6->type->table_size) { -var17 = 0; +if(cltype15 >= var_pmethidnode6->type->table_size) { +var14 = 0; } else { -var17 = var_pmethidnode6->type->type_table[cltype18] == idtype19; +var14 = var_pmethidnode6->type->type_table[cltype15] == idtype16; } } -if (!var17) { +if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21408); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21911); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype21 = type_nullable_parser_nodes__ASignature.color; -idtype22 = type_nullable_parser_nodes__ASignature.id; +cltype18 = type_nullable_parser_nodes__ASignature.color; +idtype19 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var20 = 1; -} else { -if(cltype21 >= var_psignaturenode7->type->table_size) { -var20 = 0; -} else { -var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; -} -} -if (!var20) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21410); -exit(1); -} -var_tstringnode8 = var_nodearraylist8; -/* isa nullable TString */ -cltype24 = type_nullable_parser_nodes__TString.color; -idtype25 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var23 = 1; +var17 = 1; } else { -if(cltype24 >= var_tstringnode8->type->table_size) { -var23 = 0; +if(cltype18 >= var_psignaturenode7->type->table_size) { +var17 = 0; } else { -var23 = var_tstringnode8->type->type_table[cltype24] == idtype25; +var17 = var_psignaturenode7->type->type_table[cltype18] == idtype19; } } -if (!var23) { +if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21412); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21913); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist9; +var_pexterncodeblocknode10 = var_nodearraylist6; /* isa nullable AExternCodeBlock */ -cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype21 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype22 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var26 = 1; +var20 = 1; } else { -if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { -var26 = 0; +if(cltype21 >= var_pexterncodeblocknode10->type->table_size) { +var20 = 0; } else { -var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; +var20 = var_pexterncodeblocknode10->type->type_table[cltype21] == idtype22; } } -if (!var26) { +if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21414); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21915); +show_backtrace(1); } -var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var30 = NULL; -var31 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var30, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var31, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var29); -var_ppropdefnode1 = var29; +var23 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var24 = NULL; +var25 = NULL; +var26 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var23->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var23, var_pdocnode2, var24, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var25, var26, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var23; var_node_list = var_ppropdefnode1; -var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; +var27 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var28 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var27) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var28, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction487#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction487__action(val* self, val* p0) { -parser__ReduceAction487__action(self, p0); +/* method parser#ReduceAction499#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction499__action(val* self, val* p0) { +parser__ReduceAction499__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction488#action for (self: ReduceAction488, Parser) */ -void parser__ReduceAction488__action(val* self, val* p0) { +/* method parser#ReduceAction500#action for (self: ReduceAction500, Parser) */ +void parser__ReduceAction500__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var4 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var5 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var6 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var7 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var8 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var9 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var10 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var11 /* : Bool */; +short int var8 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; +short int var9 /* : Bool */; +int cltype10; +int idtype11; +val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; short int var12 /* : Bool */; int cltype13; int idtype14; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var15 /* : Bool */; int cltype16; int idtype17; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; short int var18 /* : Bool */; int cltype19; int idtype20; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var21 /* : Bool */; int cltype22; int idtype23; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var24 /* : Bool */; int cltype25; int idtype26; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; -short int var27 /* : Bool */; -int cltype28; -int idtype29; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var30 /* : Bool */; -int cltype31; -int idtype32; -val* var33 /* : AExternInitPropdef */; -val* var34 /* : null */; +val* var27 /* : AExternInitPropdef */; +val* var28 /* : null */; +val* var29 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var35 /* : Int */; -long var36 /* : Int */; +long var30 /* : Int */; +long var31 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist10 = var1; +var_nodearraylist7 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var2; +var_nodearraylist6 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var3; +var_nodearraylist5 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var4; +var_nodearraylist4 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var5; +var_nodearraylist3 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var6; +var_nodearraylist2 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var9; -var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var10; +var_nodearraylist1 = var7; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var11 = 1; +var8 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var11 = 0; +var8 = 0; } else { -var11 = var_pdocnode2->type->type_table[cltype] == idtype; +var8 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var11) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21446); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21944); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype13 = type_nullable_parser_nodes__TKwredef.color; -idtype14 = type_nullable_parser_nodes__TKwredef.id; +cltype10 = type_nullable_parser_nodes__TKwredef.color; +idtype11 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var12 = 1; +var9 = 1; } else { -if(cltype13 >= var_tkwredefnode3->type->table_size) { -var12 = 0; +if(cltype10 >= var_tkwredefnode3->type->table_size) { +var9 = 0; } else { -var12 = var_tkwredefnode3->type->type_table[cltype13] == idtype14; +var9 = var_tkwredefnode3->type->type_table[cltype10] == idtype11; } } -if (!var12) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21448); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21946); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype16 = type_nullable_parser_nodes__AVisibility.color; -idtype17 = type_nullable_parser_nodes__AVisibility.id; +cltype13 = type_nullable_parser_nodes__AVisibility.color; +idtype14 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var15 = 1; +var12 = 1; } else { -if(cltype16 >= var_pvisibilitynode4->type->table_size) { -var15 = 0; +if(cltype13 >= var_pvisibilitynode4->type->table_size) { +var12 = 0; } else { -var15 = var_pvisibilitynode4->type->type_table[cltype16] == idtype17; +var12 = var_pvisibilitynode4->type->type_table[cltype13] == idtype14; } } -if (!var15) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21450); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21948); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype19 = type_nullable_parser_nodes__TKwnew.color; -idtype20 = type_nullable_parser_nodes__TKwnew.id; +cltype16 = type_nullable_parser_nodes__TKwnew.color; +idtype17 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var18 = 1; +var15 = 1; } else { -if(cltype19 >= var_tkwnewnode5->type->table_size) { -var18 = 0; +if(cltype16 >= var_tkwnewnode5->type->table_size) { +var15 = 0; } else { -var18 = var_tkwnewnode5->type->type_table[cltype19] == idtype20; +var15 = var_tkwnewnode5->type->type_table[cltype16] == idtype17; } } -if (!var18) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21452); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21950); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist5; /* isa nullable AMethid */ -cltype22 = type_nullable_parser_nodes__AMethid.color; -idtype23 = type_nullable_parser_nodes__AMethid.id; +cltype19 = type_nullable_parser_nodes__AMethid.color; +idtype20 = type_nullable_parser_nodes__AMethid.id; if(var_pmethidnode6 == NULL) { -var21 = 1; +var18 = 1; } else { -if(cltype22 >= var_pmethidnode6->type->table_size) { -var21 = 0; +if(cltype19 >= var_pmethidnode6->type->table_size) { +var18 = 0; } else { -var21 = var_pmethidnode6->type->type_table[cltype22] == idtype23; +var18 = var_pmethidnode6->type->type_table[cltype19] == idtype20; } } -if (!var21) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21454); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21952); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist6; /* isa nullable ASignature */ -cltype25 = type_nullable_parser_nodes__ASignature.color; -idtype26 = type_nullable_parser_nodes__ASignature.id; +cltype22 = type_nullable_parser_nodes__ASignature.color; +idtype23 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var24 = 1; +var21 = 1; } else { -if(cltype25 >= var_psignaturenode7->type->table_size) { -var24 = 0; +if(cltype22 >= var_psignaturenode7->type->table_size) { +var21 = 0; } else { -var24 = var_psignaturenode7->type->type_table[cltype25] == idtype26; +var21 = var_psignaturenode7->type->type_table[cltype22] == idtype23; } } -if (!var24) { +if (!var21) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21456); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21954); +show_backtrace(1); } -var_tstringnode8 = var_nodearraylist9; -/* isa nullable TString */ -cltype28 = type_nullable_parser_nodes__TString.color; -idtype29 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var27 = 1; +var_pexterncodeblocknode10 = var_nodearraylist7; +/* isa nullable AExternCodeBlock */ +cltype25 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype26 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { +var24 = 1; } else { -if(cltype28 >= var_tstringnode8->type->table_size) { -var27 = 0; +if(cltype25 >= var_pexterncodeblocknode10->type->table_size) { +var24 = 0; } else { -var27 = var_tstringnode8->type->type_table[cltype28] == idtype29; +var24 = var_pexterncodeblocknode10->type->type_table[cltype25] == idtype26; } } -if (!var27) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21458); -exit(1); -} -var_pexterncodeblocknode10 = var_nodearraylist10; -/* isa nullable AExternCodeBlock */ -cltype31 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype32 = type_nullable_parser_nodes__AExternCodeBlock.id; -if(var_pexterncodeblocknode10 == NULL) { -var30 = 1; -} else { -if(cltype31 >= var_pexterncodeblocknode10->type->table_size) { -var30 = 0; -} else { -var30 = var_pexterncodeblocknode10->type->type_table[cltype31] == idtype32; -} -} -if (!var30) { +if (!var24) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21460); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21956); +show_backtrace(1); } -var33 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var34 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var33, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var34, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var33); -var_ppropdefnode1 = var33; +var27 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var28 = NULL; +var29 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var27->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var27, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var28, var29, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var27; var_node_list = var_ppropdefnode1; -var35 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var36 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var35) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var36, var_node_list) /* push on */; +var30 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var31 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var30) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var31, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction488#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction488__action(val* self, val* p0) { -parser__ReduceAction488__action(self, p0); +/* method parser#ReduceAction500#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction500__action(val* self, val* p0) { +parser__ReduceAction500__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction489#action for (self: ReduceAction489, Parser) */ -void parser__ReduceAction489__action(val* self, val* p0) { +/* method parser#ReduceAction501#action for (self: ReduceAction501, Parser) */ +void parser__ReduceAction501__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var3 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var4 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var5 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var6 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var7 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var8 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var9 /* : Bool */; +short int var7 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; +short int var8 /* : Bool */; +int cltype9; +int idtype10; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; +short int var11 /* : Bool */; +int cltype12; +int idtype13; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var16 /* : Bool */; -int cltype17; -int idtype18; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var19 /* : Bool */; -int cltype20; -int idtype21; +short int var14 /* : Bool */; +int cltype15; +int idtype16; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var17 /* : Bool */; +int cltype18; +int idtype19; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var22 /* : Bool */; -int cltype23; -int idtype24; -val* var25 /* : AExternInitPropdef */; +short int var20 /* : Bool */; +int cltype21; +int idtype22; +val* var23 /* : AExternInitPropdef */; +val* var24 /* : null */; +val* var25 /* : null */; val* var26 /* : null */; -val* var27 /* : null */; -val* var28 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var29 /* : Int */; -long var30 /* : Int */; +long var27 /* : Int */; +long var28 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var1; +var_nodearraylist6 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var2; +var_nodearraylist5 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var3; +var_nodearraylist4 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var4; +var_nodearraylist3 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var5; +var_nodearraylist2 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var6; -var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var8; +var_nodearraylist1 = var6; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var9 = 1; +var7 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var9 = 0; +var7 = 0; } else { -var9 = var_pdocnode2->type->type_table[cltype] == idtype; +var7 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var9) { +if (!var7) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21490); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21984); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype11 = type_nullable_parser_nodes__AVisibility.color; -idtype12 = type_nullable_parser_nodes__AVisibility.id; +cltype9 = type_nullable_parser_nodes__AVisibility.color; +idtype10 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var10 = 1; +var8 = 1; } else { -if(cltype11 >= var_pvisibilitynode4->type->table_size) { -var10 = 0; +if(cltype9 >= var_pvisibilitynode4->type->table_size) { +var8 = 0; } else { -var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; +var8 = var_pvisibilitynode4->type->type_table[cltype9] == idtype10; } } -if (!var10) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21492); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21986); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype14 = type_nullable_parser_nodes__TKwnew.color; -idtype15 = type_nullable_parser_nodes__TKwnew.id; +cltype12 = type_nullable_parser_nodes__TKwnew.color; +idtype13 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var13 = 1; +var11 = 1; } else { -if(cltype14 >= var_tkwnewnode5->type->table_size) { -var13 = 0; +if(cltype12 >= var_tkwnewnode5->type->table_size) { +var11 = 0; } else { -var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; +var11 = var_tkwnewnode5->type->type_table[cltype12] == idtype13; } } -if (!var13) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21494); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21988); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist4; /* isa nullable ASignature */ -cltype17 = type_nullable_parser_nodes__ASignature.color; -idtype18 = type_nullable_parser_nodes__ASignature.id; +cltype15 = type_nullable_parser_nodes__ASignature.color; +idtype16 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var16 = 1; +var14 = 1; } else { -if(cltype17 >= var_psignaturenode7->type->table_size) { -var16 = 0; +if(cltype15 >= var_psignaturenode7->type->table_size) { +var14 = 0; } else { -var16 = var_psignaturenode7->type->type_table[cltype17] == idtype18; +var14 = var_psignaturenode7->type->type_table[cltype15] == idtype16; } } -if (!var16) { +if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21496); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21990); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist7; -/* isa nullable AExternCalls */ -cltype20 = type_nullable_parser_nodes__AExternCalls.color; -idtype21 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { -var19 = 1; +var_tstringnode8 = var_nodearraylist5; +/* isa nullable TString */ +cltype18 = type_nullable_parser_nodes__TString.color; +idtype19 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var17 = 1; } else { -if(cltype20 >= var_pexterncallsnode9->type->table_size) { -var19 = 0; +if(cltype18 >= var_tstringnode8->type->table_size) { +var17 = 0; } else { -var19 = var_pexterncallsnode9->type->type_table[cltype20] == idtype21; +var17 = var_tstringnode8->type->type_table[cltype18] == idtype19; } } -if (!var19) { +if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21498); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21992); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist8; +var_pexterncodeblocknode10 = var_nodearraylist6; /* isa nullable AExternCodeBlock */ -cltype23 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype24 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype21 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype22 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var22 = 1; +var20 = 1; } else { -if(cltype23 >= var_pexterncodeblocknode10->type->table_size) { -var22 = 0; +if(cltype21 >= var_pexterncodeblocknode10->type->table_size) { +var20 = 0; } else { -var22 = var_pexterncodeblocknode10->type->type_table[cltype23] == idtype24; +var20 = var_pexterncodeblocknode10->type->type_table[cltype21] == idtype22; } } -if (!var22) { +if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21500); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21994); +show_backtrace(1); } -var25 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var23 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var24 = NULL; +var25 = NULL; var26 = NULL; -var27 = NULL; -var28 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwnewnode5, var27, var_psignaturenode7, var28, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var25); -var_ppropdefnode1 = var25; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var23->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var23, var_pdocnode2, var24, var_pvisibilitynode4, var_tkwnewnode5, var25, var_psignaturenode7, var_tstringnode8, var26, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var23; var_node_list = var_ppropdefnode1; -var29 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var30 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var29) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var30, var_node_list) /* push on */; +var27 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var28 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var27) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var28, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction489#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction489__action(val* self, val* p0) { -parser__ReduceAction489__action(self, p0); +/* method parser#ReduceAction501#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction501__action(val* self, val* p0) { +parser__ReduceAction501__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction490#action for (self: ReduceAction490, Parser) */ -void parser__ReduceAction490__action(val* self, val* p0) { +/* method parser#ReduceAction502#action for (self: ReduceAction502, Parser) */ +void parser__ReduceAction502__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var3 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var4 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var5 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var6 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var7 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var8 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var9 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var10 /* : Bool */; +short int var8 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; +short int var9 /* : Bool */; +int cltype10; +int idtype11; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; +short int var12 /* : Bool */; +int cltype13; +int idtype14; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; +short int var15 /* : Bool */; +int cltype16; +int idtype17; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var20 /* : Bool */; -int cltype21; -int idtype22; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; +short int var18 /* : Bool */; +int cltype19; +int idtype20; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var21 /* : Bool */; +int cltype22; +int idtype23; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -val* var29 /* : AExternInitPropdef */; -val* var30 /* : null */; -val* var31 /* : null */; +short int var24 /* : Bool */; +int cltype25; +int idtype26; +val* var27 /* : AExternInitPropdef */; +val* var28 /* : null */; +val* var29 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var32 /* : Int */; -long var33 /* : Int */; +long var30 /* : Int */; +long var31 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var1; +var_nodearraylist7 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var2; +var_nodearraylist6 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var3; +var_nodearraylist5 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var4; +var_nodearraylist4 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var5; +var_nodearraylist3 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var6; +var_nodearraylist2 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var9; +var_nodearraylist1 = var7; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var10 = 1; +var8 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var10 = 0; +var8 = 0; } else { -var10 = var_pdocnode2->type->type_table[cltype] == idtype; +var8 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var10) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21531); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22023); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype12 = type_nullable_parser_nodes__TKwredef.color; -idtype13 = type_nullable_parser_nodes__TKwredef.id; +cltype10 = type_nullable_parser_nodes__TKwredef.color; +idtype11 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var11 = 1; +var9 = 1; } else { -if(cltype12 >= var_tkwredefnode3->type->table_size) { -var11 = 0; +if(cltype10 >= var_tkwredefnode3->type->table_size) { +var9 = 0; } else { -var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; +var9 = var_tkwredefnode3->type->type_table[cltype10] == idtype11; } } -if (!var11) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21533); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22025); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype15 = type_nullable_parser_nodes__AVisibility.color; -idtype16 = type_nullable_parser_nodes__AVisibility.id; +cltype13 = type_nullable_parser_nodes__AVisibility.color; +idtype14 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var14 = 1; +var12 = 1; } else { -if(cltype15 >= var_pvisibilitynode4->type->table_size) { -var14 = 0; +if(cltype13 >= var_pvisibilitynode4->type->table_size) { +var12 = 0; } else { -var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; +var12 = var_pvisibilitynode4->type->type_table[cltype13] == idtype14; } } -if (!var14) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21535); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22027); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype18 = type_nullable_parser_nodes__TKwnew.color; -idtype19 = type_nullable_parser_nodes__TKwnew.id; +cltype16 = type_nullable_parser_nodes__TKwnew.color; +idtype17 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var17 = 1; +var15 = 1; } else { -if(cltype18 >= var_tkwnewnode5->type->table_size) { -var17 = 0; +if(cltype16 >= var_tkwnewnode5->type->table_size) { +var15 = 0; } else { -var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; +var15 = var_tkwnewnode5->type->type_table[cltype16] == idtype17; } } -if (!var17) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21537); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22029); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype21 = type_nullable_parser_nodes__ASignature.color; -idtype22 = type_nullable_parser_nodes__ASignature.id; +cltype19 = type_nullable_parser_nodes__ASignature.color; +idtype20 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var20 = 1; +var18 = 1; } else { -if(cltype21 >= var_psignaturenode7->type->table_size) { -var20 = 0; +if(cltype19 >= var_psignaturenode7->type->table_size) { +var18 = 0; } else { -var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; +var18 = var_psignaturenode7->type->type_table[cltype19] == idtype20; } } -if (!var20) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21539); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22031); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist8; -/* isa nullable AExternCalls */ -cltype24 = type_nullable_parser_nodes__AExternCalls.color; -idtype25 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { -var23 = 1; +var_tstringnode8 = var_nodearraylist6; +/* isa nullable TString */ +cltype22 = type_nullable_parser_nodes__TString.color; +idtype23 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var21 = 1; } else { -if(cltype24 >= var_pexterncallsnode9->type->table_size) { -var23 = 0; +if(cltype22 >= var_tstringnode8->type->table_size) { +var21 = 0; } else { -var23 = var_pexterncallsnode9->type->type_table[cltype24] == idtype25; +var21 = var_tstringnode8->type->type_table[cltype22] == idtype23; } } -if (!var23) { +if (!var21) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21541); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22033); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist9; +var_pexterncodeblocknode10 = var_nodearraylist7; /* isa nullable AExternCodeBlock */ -cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype25 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype26 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var26 = 1; +var24 = 1; } else { -if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { -var26 = 0; +if(cltype25 >= var_pexterncodeblocknode10->type->table_size) { +var24 = 0; } else { -var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; +var24 = var_pexterncodeblocknode10->type->type_table[cltype25] == idtype26; } } -if (!var26) { +if (!var24) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21543); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22035); +show_backtrace(1); } -var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var30 = NULL; -var31 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var30, var_psignaturenode7, var31, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var29); -var_ppropdefnode1 = var29; +var27 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var28 = NULL; +var29 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var27->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var27, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var28, var_psignaturenode7, var_tstringnode8, var29, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var27; var_node_list = var_ppropdefnode1; -var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; +var30 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var31 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var30) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var31, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction490#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction490__action(val* self, val* p0) { -parser__ReduceAction490__action(self, p0); +/* method parser#ReduceAction502#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction502__action(val* self, val* p0) { +parser__ReduceAction502__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction491#action for (self: ReduceAction491, Parser) */ -void parser__ReduceAction491__action(val* self, val* p0) { +/* method parser#ReduceAction503#action for (self: ReduceAction503, Parser) */ +void parser__ReduceAction503__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var3 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var4 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var5 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var6 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var7 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var8 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var9 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var10 /* : Bool */; +short int var8 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; +short int var9 /* : Bool */; +int cltype10; +int idtype11; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; +short int var12 /* : Bool */; +int cltype13; +int idtype14; val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; +short int var15 /* : Bool */; +int cltype16; +int idtype17; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var20 /* : Bool */; -int cltype21; -int idtype22; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; +short int var18 /* : Bool */; +int cltype19; +int idtype20; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var21 /* : Bool */; +int cltype22; +int idtype23; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -val* var29 /* : AExternInitPropdef */; -val* var30 /* : null */; -val* var31 /* : null */; +short int var24 /* : Bool */; +int cltype25; +int idtype26; +val* var27 /* : AExternInitPropdef */; +val* var28 /* : null */; +val* var29 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var32 /* : Int */; -long var33 /* : Int */; +long var30 /* : Int */; +long var31 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var1; +var_nodearraylist7 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var2; +var_nodearraylist6 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var3; +var_nodearraylist5 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var4; +var_nodearraylist4 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var5; +var_nodearraylist3 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var6; +var_nodearraylist2 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var9; +var_nodearraylist1 = var7; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var10 = 1; +var8 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var10 = 0; +var8 = 0; } else { -var10 = var_pdocnode2->type->type_table[cltype] == idtype; +var8 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var10) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21574); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22064); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype12 = type_nullable_parser_nodes__AVisibility.color; -idtype13 = type_nullable_parser_nodes__AVisibility.id; +cltype10 = type_nullable_parser_nodes__AVisibility.color; +idtype11 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var11 = 1; +var9 = 1; } else { -if(cltype12 >= var_pvisibilitynode4->type->table_size) { -var11 = 0; +if(cltype10 >= var_pvisibilitynode4->type->table_size) { +var9 = 0; } else { -var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; +var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; } } -if (!var11) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21576); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22066); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype15 = type_nullable_parser_nodes__TKwnew.color; -idtype16 = type_nullable_parser_nodes__TKwnew.id; +cltype13 = type_nullable_parser_nodes__TKwnew.color; +idtype14 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var14 = 1; +var12 = 1; } else { -if(cltype15 >= var_tkwnewnode5->type->table_size) { -var14 = 0; +if(cltype13 >= var_tkwnewnode5->type->table_size) { +var12 = 0; } else { -var14 = var_tkwnewnode5->type->type_table[cltype15] == idtype16; +var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; } } -if (!var14) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21578); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22068); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist4; /* isa nullable AMethid */ -cltype18 = type_nullable_parser_nodes__AMethid.color; -idtype19 = type_nullable_parser_nodes__AMethid.id; +cltype16 = type_nullable_parser_nodes__AMethid.color; +idtype17 = type_nullable_parser_nodes__AMethid.id; if(var_pmethidnode6 == NULL) { -var17 = 1; +var15 = 1; } else { -if(cltype18 >= var_pmethidnode6->type->table_size) { -var17 = 0; +if(cltype16 >= var_pmethidnode6->type->table_size) { +var15 = 0; } else { -var17 = var_pmethidnode6->type->type_table[cltype18] == idtype19; +var15 = var_pmethidnode6->type->type_table[cltype16] == idtype17; } } -if (!var17) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21580); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22070); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype21 = type_nullable_parser_nodes__ASignature.color; -idtype22 = type_nullable_parser_nodes__ASignature.id; +cltype19 = type_nullable_parser_nodes__ASignature.color; +idtype20 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var20 = 1; +var18 = 1; } else { -if(cltype21 >= var_psignaturenode7->type->table_size) { -var20 = 0; +if(cltype19 >= var_psignaturenode7->type->table_size) { +var18 = 0; } else { -var20 = var_psignaturenode7->type->type_table[cltype21] == idtype22; +var18 = var_psignaturenode7->type->type_table[cltype19] == idtype20; } } -if (!var20) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21582); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22072); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist8; -/* isa nullable AExternCalls */ -cltype24 = type_nullable_parser_nodes__AExternCalls.color; -idtype25 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { -var23 = 1; +var_tstringnode8 = var_nodearraylist6; +/* isa nullable TString */ +cltype22 = type_nullable_parser_nodes__TString.color; +idtype23 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var21 = 1; } else { -if(cltype24 >= var_pexterncallsnode9->type->table_size) { -var23 = 0; +if(cltype22 >= var_tstringnode8->type->table_size) { +var21 = 0; } else { -var23 = var_pexterncallsnode9->type->type_table[cltype24] == idtype25; +var21 = var_tstringnode8->type->type_table[cltype22] == idtype23; } } -if (!var23) { +if (!var21) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21584); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22074); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist9; +var_pexterncodeblocknode10 = var_nodearraylist7; /* isa nullable AExternCodeBlock */ -cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype25 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype26 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var26 = 1; +var24 = 1; } else { -if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { -var26 = 0; +if(cltype25 >= var_pexterncodeblocknode10->type->table_size) { +var24 = 0; } else { -var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; +var24 = var_pexterncodeblocknode10->type->type_table[cltype25] == idtype26; } } -if (!var26) { +if (!var24) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21586); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22076); +show_backtrace(1); } -var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var30 = NULL; -var31 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var30, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var31, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var29); -var_ppropdefnode1 = var29; +var27 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var28 = NULL; +var29 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var27->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var27, var_pdocnode2, var28, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var29, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var27; var_node_list = var_ppropdefnode1; -var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; +var30 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var31 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var30) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var31, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction491#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction491__action(val* self, val* p0) { -parser__ReduceAction491__action(self, p0); +/* method parser#ReduceAction503#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction503__action(val* self, val* p0) { +parser__ReduceAction503__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction492#action for (self: ReduceAction492, Parser) */ -void parser__ReduceAction492__action(val* self, val* p0) { +/* method parser#ReduceAction504#action for (self: ReduceAction504, Parser) */ +void parser__ReduceAction504__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var3 /* : nullable Object */; val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var4 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var5 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var6 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var7 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var8 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var9 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var10 /* : nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var11 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; +short int var10 /* : Bool */; +int cltype11; +int idtype12; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; +short int var13 /* : Bool */; +int cltype14; +int idtype15; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; +short int var16 /* : Bool */; +int cltype17; +int idtype18; val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var21 /* : Bool */; -int cltype22; -int idtype23; +short int var19 /* : Bool */; +int cltype20; +int idtype21; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var24 /* : Bool */; -int cltype25; -int idtype26; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var27 /* : Bool */; -int cltype28; -int idtype29; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var25 /* : Bool */; +int cltype26; +int idtype27; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var30 /* : Bool */; -int cltype31; -int idtype32; -val* var33 /* : AExternInitPropdef */; -val* var34 /* : null */; +short int var28 /* : Bool */; +int cltype29; +int idtype30; +val* var31 /* : AExternInitPropdef */; +val* var32 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var35 /* : Int */; -long var36 /* : Int */; +long var33 /* : Int */; +long var34 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist10 = var1; +var_nodearraylist8 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var2; +var_nodearraylist7 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var3; +var_nodearraylist6 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var4; +var_nodearraylist5 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var5; +var_nodearraylist4 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var6; +var_nodearraylist3 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var7; +var_nodearraylist2 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var9; -var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var10; +var_nodearraylist1 = var8; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var11 = 1; +var9 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var11 = 0; +var9 = 0; } else { -var11 = var_pdocnode2->type->type_table[cltype] == idtype; +var9 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var11) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21618); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22106); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype13 = type_nullable_parser_nodes__TKwredef.color; -idtype14 = type_nullable_parser_nodes__TKwredef.id; +cltype11 = type_nullable_parser_nodes__TKwredef.color; +idtype12 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var12 = 1; +var10 = 1; } else { -if(cltype13 >= var_tkwredefnode3->type->table_size) { -var12 = 0; +if(cltype11 >= var_tkwredefnode3->type->table_size) { +var10 = 0; } else { -var12 = var_tkwredefnode3->type->type_table[cltype13] == idtype14; +var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; } } -if (!var12) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21620); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22108); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype16 = type_nullable_parser_nodes__AVisibility.color; -idtype17 = type_nullable_parser_nodes__AVisibility.id; +cltype14 = type_nullable_parser_nodes__AVisibility.color; +idtype15 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var15 = 1; +var13 = 1; } else { -if(cltype16 >= var_pvisibilitynode4->type->table_size) { -var15 = 0; +if(cltype14 >= var_pvisibilitynode4->type->table_size) { +var13 = 0; } else { -var15 = var_pvisibilitynode4->type->type_table[cltype16] == idtype17; +var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; } } -if (!var15) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21622); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22110); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype19 = type_nullable_parser_nodes__TKwnew.color; -idtype20 = type_nullable_parser_nodes__TKwnew.id; +cltype17 = type_nullable_parser_nodes__TKwnew.color; +idtype18 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var18 = 1; +var16 = 1; } else { -if(cltype19 >= var_tkwnewnode5->type->table_size) { -var18 = 0; +if(cltype17 >= var_tkwnewnode5->type->table_size) { +var16 = 0; } else { -var18 = var_tkwnewnode5->type->type_table[cltype19] == idtype20; +var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; } } -if (!var18) { +if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21624); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22112); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist5; /* isa nullable AMethid */ -cltype22 = type_nullable_parser_nodes__AMethid.color; -idtype23 = type_nullable_parser_nodes__AMethid.id; +cltype20 = type_nullable_parser_nodes__AMethid.color; +idtype21 = type_nullable_parser_nodes__AMethid.id; if(var_pmethidnode6 == NULL) { -var21 = 1; +var19 = 1; } else { -if(cltype22 >= var_pmethidnode6->type->table_size) { -var21 = 0; +if(cltype20 >= var_pmethidnode6->type->table_size) { +var19 = 0; } else { -var21 = var_pmethidnode6->type->type_table[cltype22] == idtype23; +var19 = var_pmethidnode6->type->type_table[cltype20] == idtype21; } } -if (!var21) { +if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21626); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22114); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist6; /* isa nullable ASignature */ -cltype25 = type_nullable_parser_nodes__ASignature.color; -idtype26 = type_nullable_parser_nodes__ASignature.id; +cltype23 = type_nullable_parser_nodes__ASignature.color; +idtype24 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var24 = 1; +var22 = 1; } else { -if(cltype25 >= var_psignaturenode7->type->table_size) { -var24 = 0; +if(cltype23 >= var_psignaturenode7->type->table_size) { +var22 = 0; } else { -var24 = var_psignaturenode7->type->type_table[cltype25] == idtype26; +var22 = var_psignaturenode7->type->type_table[cltype23] == idtype24; } } -if (!var24) { +if (!var22) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21628); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22116); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist9; -/* isa nullable AExternCalls */ -cltype28 = type_nullable_parser_nodes__AExternCalls.color; -idtype29 = type_nullable_parser_nodes__AExternCalls.id; -if(var_pexterncallsnode9 == NULL) { -var27 = 1; +var_tstringnode8 = var_nodearraylist7; +/* isa nullable TString */ +cltype26 = type_nullable_parser_nodes__TString.color; +idtype27 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var25 = 1; } else { -if(cltype28 >= var_pexterncallsnode9->type->table_size) { -var27 = 0; +if(cltype26 >= var_tstringnode8->type->table_size) { +var25 = 0; } else { -var27 = var_pexterncallsnode9->type->type_table[cltype28] == idtype29; +var25 = var_tstringnode8->type->type_table[cltype26] == idtype27; } } -if (!var27) { +if (!var25) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21630); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22118); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist10; +var_pexterncodeblocknode10 = var_nodearraylist8; /* isa nullable AExternCodeBlock */ -cltype31 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype32 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype29 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype30 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var30 = 1; +var28 = 1; } else { -if(cltype31 >= var_pexterncodeblocknode10->type->table_size) { -var30 = 0; +if(cltype29 >= var_pexterncodeblocknode10->type->table_size) { +var28 = 0; } else { -var30 = var_pexterncodeblocknode10->type->type_table[cltype31] == idtype32; +var28 = var_pexterncodeblocknode10->type->type_table[cltype29] == idtype30; } } -if (!var30) { +if (!var28) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21632); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22120); +show_backtrace(1); } -var33 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var34 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var33, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var34, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var33); -var_ppropdefnode1 = var33; +var31 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var32 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var31->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var31, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var32, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var31; var_node_list = var_ppropdefnode1; -var35 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var36 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var35) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var36, var_node_list) /* push on */; +var33 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var34 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var33) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var34, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction492#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction492__action(val* self, val* p0) { -parser__ReduceAction492__action(self, p0); +/* method parser#ReduceAction504#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction504__action(val* self, val* p0) { +parser__ReduceAction504__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction493#action for (self: ReduceAction493, Parser) */ -void parser__ReduceAction493__action(val* self, val* p0) { +/* method parser#ReduceAction505#action for (self: ReduceAction505, Parser) */ +void parser__ReduceAction505__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var4 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var5 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var6 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var7 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var8 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var9 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var10 /* : Bool */; +short int var7 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +short int var8 /* : Bool */; +int cltype9; +int idtype10; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var11 /* : Bool */; int cltype12; int idtype13; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var14 /* : Bool */; int cltype15; int idtype16; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; short int var17 /* : Bool */; int cltype18; int idtype19; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var20 /* : Bool */; int cltype21; int idtype22; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var23 /* : Bool */; -int cltype24; -int idtype25; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var26 /* : Bool */; -int cltype27; -int idtype28; -val* var29 /* : AExternInitPropdef */; -val* var30 /* : null */; -val* var31 /* : null */; +val* var23 /* : AExternInitPropdef */; +val* var24 /* : null */; +val* var25 /* : null */; +val* var26 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var32 /* : Int */; -long var33 /* : Int */; +long var27 /* : Int */; +long var28 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var1; +var_nodearraylist6 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var2; +var_nodearraylist5 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var3; +var_nodearraylist4 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var4; +var_nodearraylist3 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var5; +var_nodearraylist2 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var6; -var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var9; +var_nodearraylist1 = var6; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var10 = 1; +var7 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var10 = 0; +var7 = 0; } else { -var10 = var_pdocnode2->type->type_table[cltype] == idtype; +var7 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var10) { +if (!var7) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21663); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22148); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype12 = type_nullable_parser_nodes__AVisibility.color; -idtype13 = type_nullable_parser_nodes__AVisibility.id; +cltype9 = type_nullable_parser_nodes__AVisibility.color; +idtype10 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var11 = 1; +var8 = 1; } else { -if(cltype12 >= var_pvisibilitynode4->type->table_size) { -var11 = 0; +if(cltype9 >= var_pvisibilitynode4->type->table_size) { +var8 = 0; } else { -var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; +var8 = var_pvisibilitynode4->type->type_table[cltype9] == idtype10; } } -if (!var11) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21665); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22150); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype15 = type_nullable_parser_nodes__TKwnew.color; -idtype16 = type_nullable_parser_nodes__TKwnew.id; +cltype12 = type_nullable_parser_nodes__TKwnew.color; +idtype13 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var14 = 1; +var11 = 1; } else { -if(cltype15 >= var_tkwnewnode5->type->table_size) { -var14 = 0; +if(cltype12 >= var_tkwnewnode5->type->table_size) { +var11 = 0; } else { -var14 = var_tkwnewnode5->type->type_table[cltype15] == idtype16; +var11 = var_tkwnewnode5->type->type_table[cltype12] == idtype13; } } -if (!var14) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21667); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22152); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist4; /* isa nullable ASignature */ -cltype18 = type_nullable_parser_nodes__ASignature.color; -idtype19 = type_nullable_parser_nodes__ASignature.id; +cltype15 = type_nullable_parser_nodes__ASignature.color; +idtype16 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var17 = 1; -} else { -if(cltype18 >= var_psignaturenode7->type->table_size) { -var17 = 0; -} else { -var17 = var_psignaturenode7->type->type_table[cltype18] == idtype19; -} -} -if (!var17) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21669); -exit(1); -} -var_tstringnode8 = var_nodearraylist7; -/* isa nullable TString */ -cltype21 = type_nullable_parser_nodes__TString.color; -idtype22 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var20 = 1; +var14 = 1; } else { -if(cltype21 >= var_tstringnode8->type->table_size) { -var20 = 0; +if(cltype15 >= var_psignaturenode7->type->table_size) { +var14 = 0; } else { -var20 = var_tstringnode8->type->type_table[cltype21] == idtype22; +var14 = var_psignaturenode7->type->type_table[cltype15] == idtype16; } } -if (!var20) { +if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21671); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22154); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist8; +var_pexterncallsnode9 = var_nodearraylist5; /* isa nullable AExternCalls */ -cltype24 = type_nullable_parser_nodes__AExternCalls.color; -idtype25 = type_nullable_parser_nodes__AExternCalls.id; +cltype18 = type_nullable_parser_nodes__AExternCalls.color; +idtype19 = type_nullable_parser_nodes__AExternCalls.id; if(var_pexterncallsnode9 == NULL) { -var23 = 1; +var17 = 1; } else { -if(cltype24 >= var_pexterncallsnode9->type->table_size) { -var23 = 0; +if(cltype18 >= var_pexterncallsnode9->type->table_size) { +var17 = 0; } else { -var23 = var_pexterncallsnode9->type->type_table[cltype24] == idtype25; +var17 = var_pexterncallsnode9->type->type_table[cltype18] == idtype19; } } -if (!var23) { +if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21673); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22156); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist9; +var_pexterncodeblocknode10 = var_nodearraylist6; /* isa nullable AExternCodeBlock */ -cltype27 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype28 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype21 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype22 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var26 = 1; +var20 = 1; } else { -if(cltype27 >= var_pexterncodeblocknode10->type->table_size) { -var26 = 0; +if(cltype21 >= var_pexterncodeblocknode10->type->table_size) { +var20 = 0; } else { -var26 = var_pexterncodeblocknode10->type->type_table[cltype27] == idtype28; +var20 = var_pexterncodeblocknode10->type->type_table[cltype21] == idtype22; } } -if (!var26) { +if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21675); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22158); +show_backtrace(1); } -var29 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var30 = NULL; -var31 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var29->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var29, var_pdocnode2, var30, var_pvisibilitynode4, var_tkwnewnode5, var31, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var29); -var_ppropdefnode1 = var29; +var23 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var24 = NULL; +var25 = NULL; +var26 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var23->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var23, var_pdocnode2, var24, var_pvisibilitynode4, var_tkwnewnode5, var25, var_psignaturenode7, var26, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var23; var_node_list = var_ppropdefnode1; -var32 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var33 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var32) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var33, var_node_list) /* push on */; +var27 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var28 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var27) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var28, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction493#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction493__action(val* self, val* p0) { -parser__ReduceAction493__action(self, p0); +/* method parser#ReduceAction505#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction505__action(val* self, val* p0) { +parser__ReduceAction505__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction494#action for (self: ReduceAction494, Parser) */ -void parser__ReduceAction494__action(val* self, val* p0) { +/* method parser#ReduceAction506#action for (self: ReduceAction506, Parser) */ +void parser__ReduceAction506__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var4 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var5 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var6 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var7 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var8 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var9 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var10 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var11 /* : Bool */; +short int var8 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; +short int var9 /* : Bool */; +int cltype10; +int idtype11; +val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; short int var12 /* : Bool */; int cltype13; int idtype14; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var15 /* : Bool */; int cltype16; int idtype17; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var18 /* : Bool */; int cltype19; int idtype20; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; short int var21 /* : Bool */; int cltype22; int idtype23; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var24 /* : Bool */; int cltype25; int idtype26; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var27 /* : Bool */; -int cltype28; -int idtype29; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var30 /* : Bool */; -int cltype31; -int idtype32; -val* var33 /* : AExternInitPropdef */; -val* var34 /* : null */; +val* var27 /* : AExternInitPropdef */; +val* var28 /* : null */; +val* var29 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var35 /* : Int */; -long var36 /* : Int */; +long var30 /* : Int */; +long var31 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist10 = var1; +var_nodearraylist7 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var2; +var_nodearraylist6 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var3; +var_nodearraylist5 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var4; +var_nodearraylist4 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var5; +var_nodearraylist3 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var6; +var_nodearraylist2 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var9; -var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var10; +var_nodearraylist1 = var7; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var11 = 1; +var8 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var11 = 0; +var8 = 0; } else { -var11 = var_pdocnode2->type->type_table[cltype] == idtype; +var8 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var11) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21707); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22187); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype13 = type_nullable_parser_nodes__TKwredef.color; -idtype14 = type_nullable_parser_nodes__TKwredef.id; +cltype10 = type_nullable_parser_nodes__TKwredef.color; +idtype11 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var12 = 1; +var9 = 1; } else { -if(cltype13 >= var_tkwredefnode3->type->table_size) { -var12 = 0; +if(cltype10 >= var_tkwredefnode3->type->table_size) { +var9 = 0; } else { -var12 = var_tkwredefnode3->type->type_table[cltype13] == idtype14; +var9 = var_tkwredefnode3->type->type_table[cltype10] == idtype11; } } -if (!var12) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21709); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22189); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype16 = type_nullable_parser_nodes__AVisibility.color; -idtype17 = type_nullable_parser_nodes__AVisibility.id; +cltype13 = type_nullable_parser_nodes__AVisibility.color; +idtype14 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var15 = 1; +var12 = 1; } else { -if(cltype16 >= var_pvisibilitynode4->type->table_size) { -var15 = 0; +if(cltype13 >= var_pvisibilitynode4->type->table_size) { +var12 = 0; } else { -var15 = var_pvisibilitynode4->type->type_table[cltype16] == idtype17; +var12 = var_pvisibilitynode4->type->type_table[cltype13] == idtype14; } } -if (!var15) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21711); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22191); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype19 = type_nullable_parser_nodes__TKwnew.color; -idtype20 = type_nullable_parser_nodes__TKwnew.id; +cltype16 = type_nullable_parser_nodes__TKwnew.color; +idtype17 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var18 = 1; +var15 = 1; } else { -if(cltype19 >= var_tkwnewnode5->type->table_size) { -var18 = 0; +if(cltype16 >= var_tkwnewnode5->type->table_size) { +var15 = 0; } else { -var18 = var_tkwnewnode5->type->type_table[cltype19] == idtype20; +var15 = var_tkwnewnode5->type->type_table[cltype16] == idtype17; } } -if (!var18) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21713); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22193); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype22 = type_nullable_parser_nodes__ASignature.color; -idtype23 = type_nullable_parser_nodes__ASignature.id; +cltype19 = type_nullable_parser_nodes__ASignature.color; +idtype20 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var21 = 1; -} else { -if(cltype22 >= var_psignaturenode7->type->table_size) { -var21 = 0; -} else { -var21 = var_psignaturenode7->type->type_table[cltype22] == idtype23; -} -} -if (!var21) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21715); -exit(1); -} -var_tstringnode8 = var_nodearraylist8; -/* isa nullable TString */ -cltype25 = type_nullable_parser_nodes__TString.color; -idtype26 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var24 = 1; +var18 = 1; } else { -if(cltype25 >= var_tstringnode8->type->table_size) { -var24 = 0; +if(cltype19 >= var_psignaturenode7->type->table_size) { +var18 = 0; } else { -var24 = var_tstringnode8->type->type_table[cltype25] == idtype26; +var18 = var_psignaturenode7->type->type_table[cltype19] == idtype20; } } -if (!var24) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21717); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22195); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist9; +var_pexterncallsnode9 = var_nodearraylist6; /* isa nullable AExternCalls */ -cltype28 = type_nullable_parser_nodes__AExternCalls.color; -idtype29 = type_nullable_parser_nodes__AExternCalls.id; +cltype22 = type_nullable_parser_nodes__AExternCalls.color; +idtype23 = type_nullable_parser_nodes__AExternCalls.id; if(var_pexterncallsnode9 == NULL) { -var27 = 1; +var21 = 1; } else { -if(cltype28 >= var_pexterncallsnode9->type->table_size) { -var27 = 0; +if(cltype22 >= var_pexterncallsnode9->type->table_size) { +var21 = 0; } else { -var27 = var_pexterncallsnode9->type->type_table[cltype28] == idtype29; +var21 = var_pexterncallsnode9->type->type_table[cltype22] == idtype23; } } -if (!var27) { +if (!var21) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21719); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22197); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist10; +var_pexterncodeblocknode10 = var_nodearraylist7; /* isa nullable AExternCodeBlock */ -cltype31 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype32 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype25 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype26 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var30 = 1; +var24 = 1; } else { -if(cltype31 >= var_pexterncodeblocknode10->type->table_size) { -var30 = 0; +if(cltype25 >= var_pexterncodeblocknode10->type->table_size) { +var24 = 0; } else { -var30 = var_pexterncodeblocknode10->type->type_table[cltype31] == idtype32; +var24 = var_pexterncodeblocknode10->type->type_table[cltype25] == idtype26; } } -if (!var30) { +if (!var24) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21721); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22199); +show_backtrace(1); } -var33 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var34 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var33, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var34, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var33); -var_ppropdefnode1 = var33; +var27 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var28 = NULL; +var29 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var27->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var27, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var28, var_psignaturenode7, var29, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var27; var_node_list = var_ppropdefnode1; -var35 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var36 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var35) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var36, var_node_list) /* push on */; +var30 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var31 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var30) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var31, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction494#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction494__action(val* self, val* p0) { -parser__ReduceAction494__action(self, p0); +/* method parser#ReduceAction506#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction506__action(val* self, val* p0) { +parser__ReduceAction506__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction495#action for (self: ReduceAction495, Parser) */ -void parser__ReduceAction495__action(val* self, val* p0) { +/* method parser#ReduceAction507#action for (self: ReduceAction507, Parser) */ +void parser__ReduceAction507__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var4 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var5 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var6 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var7 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var8 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var9 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var10 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var11 /* : Bool */; +short int var8 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +short int var9 /* : Bool */; +int cltype10; +int idtype11; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var12 /* : Bool */; int cltype13; int idtype14; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; short int var15 /* : Bool */; int cltype16; int idtype17; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var18 /* : Bool */; int cltype19; int idtype20; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; short int var21 /* : Bool */; int cltype22; int idtype23; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var24 /* : Bool */; int cltype25; int idtype26; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var27 /* : Bool */; -int cltype28; -int idtype29; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var30 /* : Bool */; -int cltype31; -int idtype32; -val* var33 /* : AExternInitPropdef */; -val* var34 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var35 /* : Int */; -long var36 /* : Int */; +val* var27 /* : AExternInitPropdef */; +val* var28 /* : null */; +val* var29 /* : null */; +val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; +long var30 /* : Int */; +long var31 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist10 = var1; +var_nodearraylist7 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var2; +var_nodearraylist6 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var3; +var_nodearraylist5 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var4; +var_nodearraylist4 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var5; +var_nodearraylist3 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var6; +var_nodearraylist2 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var7; -var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var9; -var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var10; +var_nodearraylist1 = var7; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var11 = 1; +var8 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var11 = 0; +var8 = 0; } else { -var11 = var_pdocnode2->type->type_table[cltype] == idtype; +var8 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var11) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21753); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22228); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype13 = type_nullable_parser_nodes__AVisibility.color; -idtype14 = type_nullable_parser_nodes__AVisibility.id; +cltype10 = type_nullable_parser_nodes__AVisibility.color; +idtype11 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var12 = 1; +var9 = 1; } else { -if(cltype13 >= var_pvisibilitynode4->type->table_size) { -var12 = 0; +if(cltype10 >= var_pvisibilitynode4->type->table_size) { +var9 = 0; } else { -var12 = var_pvisibilitynode4->type->type_table[cltype13] == idtype14; +var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; } } -if (!var12) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21755); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22230); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype16 = type_nullable_parser_nodes__TKwnew.color; -idtype17 = type_nullable_parser_nodes__TKwnew.id; +cltype13 = type_nullable_parser_nodes__TKwnew.color; +idtype14 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var15 = 1; +var12 = 1; } else { -if(cltype16 >= var_tkwnewnode5->type->table_size) { -var15 = 0; +if(cltype13 >= var_tkwnewnode5->type->table_size) { +var12 = 0; } else { -var15 = var_tkwnewnode5->type->type_table[cltype16] == idtype17; +var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; } } -if (!var15) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21757); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22232); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist4; /* isa nullable AMethid */ -cltype19 = type_nullable_parser_nodes__AMethid.color; -idtype20 = type_nullable_parser_nodes__AMethid.id; +cltype16 = type_nullable_parser_nodes__AMethid.color; +idtype17 = type_nullable_parser_nodes__AMethid.id; if(var_pmethidnode6 == NULL) { -var18 = 1; +var15 = 1; } else { -if(cltype19 >= var_pmethidnode6->type->table_size) { -var18 = 0; +if(cltype16 >= var_pmethidnode6->type->table_size) { +var15 = 0; } else { -var18 = var_pmethidnode6->type->type_table[cltype19] == idtype20; +var15 = var_pmethidnode6->type->type_table[cltype16] == idtype17; } } -if (!var18) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21759); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22234); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype22 = type_nullable_parser_nodes__ASignature.color; -idtype23 = type_nullable_parser_nodes__ASignature.id; +cltype19 = type_nullable_parser_nodes__ASignature.color; +idtype20 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var21 = 1; -} else { -if(cltype22 >= var_psignaturenode7->type->table_size) { -var21 = 0; -} else { -var21 = var_psignaturenode7->type->type_table[cltype22] == idtype23; -} -} -if (!var21) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21761); -exit(1); -} -var_tstringnode8 = var_nodearraylist8; -/* isa nullable TString */ -cltype25 = type_nullable_parser_nodes__TString.color; -idtype26 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var24 = 1; +var18 = 1; } else { -if(cltype25 >= var_tstringnode8->type->table_size) { -var24 = 0; +if(cltype19 >= var_psignaturenode7->type->table_size) { +var18 = 0; } else { -var24 = var_tstringnode8->type->type_table[cltype25] == idtype26; +var18 = var_psignaturenode7->type->type_table[cltype19] == idtype20; } } -if (!var24) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21763); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22236); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist9; +var_pexterncallsnode9 = var_nodearraylist6; /* isa nullable AExternCalls */ -cltype28 = type_nullable_parser_nodes__AExternCalls.color; -idtype29 = type_nullable_parser_nodes__AExternCalls.id; +cltype22 = type_nullable_parser_nodes__AExternCalls.color; +idtype23 = type_nullable_parser_nodes__AExternCalls.id; if(var_pexterncallsnode9 == NULL) { -var27 = 1; +var21 = 1; } else { -if(cltype28 >= var_pexterncallsnode9->type->table_size) { -var27 = 0; +if(cltype22 >= var_pexterncallsnode9->type->table_size) { +var21 = 0; } else { -var27 = var_pexterncallsnode9->type->type_table[cltype28] == idtype29; +var21 = var_pexterncallsnode9->type->type_table[cltype22] == idtype23; } } -if (!var27) { +if (!var21) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21765); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22238); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist10; +var_pexterncodeblocknode10 = var_nodearraylist7; /* isa nullable AExternCodeBlock */ -cltype31 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype32 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype25 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype26 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var30 = 1; +var24 = 1; } else { -if(cltype31 >= var_pexterncodeblocknode10->type->table_size) { -var30 = 0; +if(cltype25 >= var_pexterncodeblocknode10->type->table_size) { +var24 = 0; } else { -var30 = var_pexterncodeblocknode10->type->type_table[cltype31] == idtype32; +var24 = var_pexterncodeblocknode10->type->type_table[cltype25] == idtype26; } } -if (!var30) { +if (!var24) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21767); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22240); +show_backtrace(1); } -var33 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var34 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var33->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var33, var_pdocnode2, var34, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var33); -var_ppropdefnode1 = var33; +var27 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var28 = NULL; +var29 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var27->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var27, var_pdocnode2, var28, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var29, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var27; var_node_list = var_ppropdefnode1; -var35 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var36 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var35) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var36, var_node_list) /* push on */; +var30 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var31 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var30) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var31, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction495#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction495__action(val* self, val* p0) { -parser__ReduceAction495__action(self, p0); +/* method parser#ReduceAction507#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction507__action(val* self, val* p0) { +parser__ReduceAction507__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction496#action for (self: ReduceAction496, Parser) */ -void parser__ReduceAction496__action(val* self, val* p0) { +/* method parser#ReduceAction508#action for (self: ReduceAction508, Parser) */ +void parser__ReduceAction508__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist11 /* var nodearraylist11: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist10 /* var nodearraylist10: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; -val* var4 /* : nullable Object */; val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; -val* var5 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var6 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var7 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var8 /* : nullable Object */; +val* var5 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var9 /* : nullable Object */; +val* var6 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var10 /* : nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var11 /* : nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var12 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; +short int var10 /* : Bool */; +int cltype11; +int idtype12; +val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; short int var13 /* : Bool */; int cltype14; int idtype15; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; short int var16 /* : Bool */; int cltype17; int idtype18; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; short int var19 /* : Bool */; int cltype20; int idtype21; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; +val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; short int var22 /* : Bool */; int cltype23; int idtype24; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; short int var25 /* : Bool */; int cltype26; int idtype27; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; +val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; short int var28 /* : Bool */; int cltype29; int idtype30; -val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; -short int var31 /* : Bool */; -int cltype32; -int idtype33; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var34 /* : Bool */; -int cltype35; -int idtype36; -val* var37 /* : AExternInitPropdef */; +val* var31 /* : AExternInitPropdef */; +val* var32 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var38 /* : Int */; -long var39 /* : Int */; +long var33 /* : Int */; +long var34 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist11 = var1; +var_nodearraylist8 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist10 = var2; +var_nodearraylist7 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist9 = var3; +var_nodearraylist6 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist8 = var4; +var_nodearraylist5 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var5; +var_nodearraylist4 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var6; +var_nodearraylist3 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var7; +var_nodearraylist2 = var7; var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var8; -var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var9; -var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var10; -var11 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var11; +var_nodearraylist1 = var8; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var12 = 1; +var9 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var12 = 0; +var9 = 0; } else { -var12 = var_pdocnode2->type->type_table[cltype] == idtype; +var9 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var12) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21800); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22270); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype14 = type_nullable_parser_nodes__TKwredef.color; -idtype15 = type_nullable_parser_nodes__TKwredef.id; +cltype11 = type_nullable_parser_nodes__TKwredef.color; +idtype12 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var13 = 1; +var10 = 1; } else { -if(cltype14 >= var_tkwredefnode3->type->table_size) { -var13 = 0; +if(cltype11 >= var_tkwredefnode3->type->table_size) { +var10 = 0; } else { -var13 = var_tkwredefnode3->type->type_table[cltype14] == idtype15; +var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; } } -if (!var13) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21802); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22272); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype17 = type_nullable_parser_nodes__AVisibility.color; -idtype18 = type_nullable_parser_nodes__AVisibility.id; +cltype14 = type_nullable_parser_nodes__AVisibility.color; +idtype15 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var16 = 1; +var13 = 1; } else { -if(cltype17 >= var_pvisibilitynode4->type->table_size) { -var16 = 0; +if(cltype14 >= var_pvisibilitynode4->type->table_size) { +var13 = 0; } else { -var16 = var_pvisibilitynode4->type->type_table[cltype17] == idtype18; +var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; } } -if (!var16) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21804); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22274); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype20 = type_nullable_parser_nodes__TKwnew.color; -idtype21 = type_nullable_parser_nodes__TKwnew.id; +cltype17 = type_nullable_parser_nodes__TKwnew.color; +idtype18 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var19 = 1; +var16 = 1; } else { -if(cltype20 >= var_tkwnewnode5->type->table_size) { -var19 = 0; +if(cltype17 >= var_tkwnewnode5->type->table_size) { +var16 = 0; } else { -var19 = var_tkwnewnode5->type->type_table[cltype20] == idtype21; +var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; } } -if (!var19) { +if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21806); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22276); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist5; /* isa nullable AMethid */ -cltype23 = type_nullable_parser_nodes__AMethid.color; -idtype24 = type_nullable_parser_nodes__AMethid.id; +cltype20 = type_nullable_parser_nodes__AMethid.color; +idtype21 = type_nullable_parser_nodes__AMethid.id; if(var_pmethidnode6 == NULL) { -var22 = 1; +var19 = 1; } else { -if(cltype23 >= var_pmethidnode6->type->table_size) { -var22 = 0; +if(cltype20 >= var_pmethidnode6->type->table_size) { +var19 = 0; } else { -var22 = var_pmethidnode6->type->type_table[cltype23] == idtype24; +var19 = var_pmethidnode6->type->type_table[cltype20] == idtype21; } } -if (!var22) { +if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21808); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22278); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist6; /* isa nullable ASignature */ -cltype26 = type_nullable_parser_nodes__ASignature.color; -idtype27 = type_nullable_parser_nodes__ASignature.id; +cltype23 = type_nullable_parser_nodes__ASignature.color; +idtype24 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var25 = 1; -} else { -if(cltype26 >= var_psignaturenode7->type->table_size) { -var25 = 0; -} else { -var25 = var_psignaturenode7->type->type_table[cltype26] == idtype27; -} -} -if (!var25) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21810); -exit(1); -} -var_tstringnode8 = var_nodearraylist9; -/* isa nullable TString */ -cltype29 = type_nullable_parser_nodes__TString.color; -idtype30 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var28 = 1; +var22 = 1; } else { -if(cltype29 >= var_tstringnode8->type->table_size) { -var28 = 0; +if(cltype23 >= var_psignaturenode7->type->table_size) { +var22 = 0; } else { -var28 = var_tstringnode8->type->type_table[cltype29] == idtype30; +var22 = var_psignaturenode7->type->type_table[cltype23] == idtype24; } } -if (!var28) { +if (!var22) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21812); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22280); +show_backtrace(1); } -var_pexterncallsnode9 = var_nodearraylist10; +var_pexterncallsnode9 = var_nodearraylist7; /* isa nullable AExternCalls */ -cltype32 = type_nullable_parser_nodes__AExternCalls.color; -idtype33 = type_nullable_parser_nodes__AExternCalls.id; +cltype26 = type_nullable_parser_nodes__AExternCalls.color; +idtype27 = type_nullable_parser_nodes__AExternCalls.id; if(var_pexterncallsnode9 == NULL) { -var31 = 1; +var25 = 1; } else { -if(cltype32 >= var_pexterncallsnode9->type->table_size) { -var31 = 0; +if(cltype26 >= var_pexterncallsnode9->type->table_size) { +var25 = 0; } else { -var31 = var_pexterncallsnode9->type->type_table[cltype32] == idtype33; +var25 = var_pexterncallsnode9->type->type_table[cltype26] == idtype27; } } -if (!var31) { +if (!var25) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21814); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22282); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist11; +var_pexterncodeblocknode10 = var_nodearraylist8; /* isa nullable AExternCodeBlock */ -cltype35 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype36 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype29 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype30 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var34 = 1; +var28 = 1; } else { -if(cltype35 >= var_pexterncodeblocknode10->type->table_size) { -var34 = 0; +if(cltype29 >= var_pexterncodeblocknode10->type->table_size) { +var28 = 0; } else { -var34 = var_pexterncodeblocknode10->type->type_table[cltype35] == idtype36; +var28 = var_pexterncodeblocknode10->type->type_table[cltype29] == idtype30; } } -if (!var34) { +if (!var28) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21816); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22284); +show_backtrace(1); } -var37 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var37->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var37, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var37); -var_ppropdefnode1 = var37; +var31 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var32 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var31->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var31, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var32, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var31; var_node_list = var_ppropdefnode1; -var38 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var39 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var38) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var39, var_node_list) /* push on */; +var33 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var34 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var33) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var34, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction496#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction496__action(val* self, val* p0) { -parser__ReduceAction496__action(self, p0); +/* method parser#ReduceAction508#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction508__action(val* self, val* p0) { +parser__ReduceAction508__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction497#action for (self: ReduceAction497, Parser) */ -void parser__ReduceAction497__action(val* self, val* p0) { +/* method parser#ReduceAction509#action for (self: ReduceAction509, Parser) */ +void parser__ReduceAction509__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var5 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var6 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var7 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var6 /* : Bool */; +short int var8 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var7 /* : Bool */; -int cltype8; -int idtype9; +short int var9 /* : Bool */; +int cltype10; +int idtype11; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; +short int var12 /* : Bool */; +int cltype13; +int idtype14; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var13 /* : Bool */; -int cltype14; -int idtype15; +short int var15 /* : Bool */; +int cltype16; +int idtype17; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var18 /* : Bool */; +int cltype19; +int idtype20; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var21 /* : Bool */; +int cltype22; +int idtype23; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var16 /* : Bool */; -int cltype17; -int idtype18; -val* var19 /* : AExternInitPropdef */; -val* var20 /* : null */; -val* var21 /* : null */; -val* var22 /* : null */; -val* var23 /* : null */; +short int var24 /* : Bool */; +int cltype25; +int idtype26; +val* var27 /* : AExternInitPropdef */; +val* var28 /* : null */; +val* var29 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var24 /* : Int */; -long var25 /* : Int */; +long var30 /* : Int */; +long var31 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var1; +var_nodearraylist7 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var2; +var_nodearraylist6 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var3; +var_nodearraylist5 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var4; +var_nodearraylist4 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var5; +var_nodearraylist3 = var5; +var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var6; +var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var7; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var6 = 1; +var8 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var6 = 0; +var8 = 0; } else { -var6 = var_pdocnode2->type->type_table[cltype] == idtype; +var8 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var6) { +if (!var8) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21843); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22313); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype8 = type_nullable_parser_nodes__AVisibility.color; -idtype9 = type_nullable_parser_nodes__AVisibility.id; +cltype10 = type_nullable_parser_nodes__AVisibility.color; +idtype11 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var7 = 1; +var9 = 1; } else { -if(cltype8 >= var_pvisibilitynode4->type->table_size) { -var7 = 0; +if(cltype10 >= var_pvisibilitynode4->type->table_size) { +var9 = 0; } else { -var7 = var_pvisibilitynode4->type->type_table[cltype8] == idtype9; +var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; } } -if (!var7) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21845); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22315); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype11 = type_nullable_parser_nodes__TKwnew.color; -idtype12 = type_nullable_parser_nodes__TKwnew.id; +cltype13 = type_nullable_parser_nodes__TKwnew.color; +idtype14 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var10 = 1; +var12 = 1; } else { -if(cltype11 >= var_tkwnewnode5->type->table_size) { -var10 = 0; +if(cltype13 >= var_tkwnewnode5->type->table_size) { +var12 = 0; } else { -var10 = var_tkwnewnode5->type->type_table[cltype11] == idtype12; +var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; } } -if (!var10) { +if (!var12) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21847); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22317); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist4; /* isa nullable ASignature */ -cltype14 = type_nullable_parser_nodes__ASignature.color; -idtype15 = type_nullable_parser_nodes__ASignature.id; +cltype16 = type_nullable_parser_nodes__ASignature.color; +idtype17 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var13 = 1; +var15 = 1; } else { -if(cltype14 >= var_psignaturenode7->type->table_size) { -var13 = 0; +if(cltype16 >= var_psignaturenode7->type->table_size) { +var15 = 0; } else { -var13 = var_psignaturenode7->type->type_table[cltype14] == idtype15; +var15 = var_psignaturenode7->type->type_table[cltype16] == idtype17; } } -if (!var13) { +if (!var15) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21849); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22319); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist5; -/* isa nullable AExternCodeBlock */ -cltype17 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype18 = type_nullable_parser_nodes__AExternCodeBlock.id; -if(var_pexterncodeblocknode10 == NULL) { -var16 = 1; +var_tstringnode8 = var_nodearraylist5; +/* isa nullable TString */ +cltype19 = type_nullable_parser_nodes__TString.color; +idtype20 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var18 = 1; } else { -if(cltype17 >= var_pexterncodeblocknode10->type->table_size) { -var16 = 0; +if(cltype19 >= var_tstringnode8->type->table_size) { +var18 = 0; } else { -var16 = var_pexterncodeblocknode10->type->type_table[cltype17] == idtype18; +var18 = var_tstringnode8->type->type_table[cltype19] == idtype20; } } -if (!var16) { +if (!var18) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21851); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22321); +show_backtrace(1); } -var19 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var20 = NULL; -var21 = NULL; -var22 = NULL; -var23 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var19->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var19, var_pdocnode2, var20, var_pvisibilitynode4, var_tkwnewnode5, var21, var_psignaturenode7, var22, var23, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var19); -var_ppropdefnode1 = var19; -var_node_list = var_ppropdefnode1; -var24 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var25 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var24) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var25, var_node_list) /* push on */; -RET_LABEL:; +var_pexterncallsnode9 = var_nodearraylist6; +/* isa nullable AExternCalls */ +cltype22 = type_nullable_parser_nodes__AExternCalls.color; +idtype23 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var21 = 1; +} else { +if(cltype22 >= var_pexterncallsnode9->type->table_size) { +var21 = 0; +} else { +var21 = var_pexterncallsnode9->type->type_table[cltype22] == idtype23; } -/* method parser#ReduceAction497#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction497__action(val* self, val* p0) { -parser__ReduceAction497__action(self, p0); +} +if (!var21) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22323); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist7; +/* isa nullable AExternCodeBlock */ +cltype25 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype26 = type_nullable_parser_nodes__AExternCodeBlock.id; +if(var_pexterncodeblocknode10 == NULL) { +var24 = 1; +} else { +if(cltype25 >= var_pexterncodeblocknode10->type->table_size) { +var24 = 0; +} else { +var24 = var_pexterncodeblocknode10->type->type_table[cltype25] == idtype26; +} +} +if (!var24) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22325); +show_backtrace(1); +} +var27 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var28 = NULL; +var29 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var27->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var27, var_pdocnode2, var28, var_pvisibilitynode4, var_tkwnewnode5, var29, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var27; +var_node_list = var_ppropdefnode1; +var30 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var31 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var30) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var31, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction498#action for (self: ReduceAction498, Parser) */ -void parser__ReduceAction498__action(val* self, val* p0) { +/* method parser#ReduceAction509#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction509__action(val* self, val* p0) { +parser__ReduceAction509__action(self, p0); +RET_LABEL:; +} +/* method parser#ReduceAction510#action for (self: ReduceAction510, Parser) */ +void parser__ReduceAction510__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var6 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var7 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var7 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var8 /* : Bool */; -int cltype9; -int idtype10; +short int var10 /* : Bool */; +int cltype11; +int idtype12; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; +short int var13 /* : Bool */; +int cltype14; +int idtype15; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; +short int var16 /* : Bool */; +int cltype17; +int idtype18; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; +short int var19 /* : Bool */; +int cltype20; +int idtype21; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var25 /* : Bool */; +int cltype26; +int idtype27; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var20 /* : Bool */; -int cltype21; -int idtype22; -val* var23 /* : AExternInitPropdef */; -val* var24 /* : null */; -val* var25 /* : null */; -val* var26 /* : null */; +short int var28 /* : Bool */; +int cltype29; +int idtype30; +val* var31 /* : AExternInitPropdef */; +val* var32 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var27 /* : Int */; -long var28 /* : Int */; +long var33 /* : Int */; +long var34 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var1; +var_nodearraylist8 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var2; +var_nodearraylist7 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var3; +var_nodearraylist6 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var4; +var_nodearraylist5 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var5; +var_nodearraylist4 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var6; +var_nodearraylist3 = var6; +var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var8; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var7 = 1; +var9 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var7 = 0; +var9 = 0; } else { -var7 = var_pdocnode2->type->type_table[cltype] == idtype; +var9 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var7) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21879); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22355); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype9 = type_nullable_parser_nodes__TKwredef.color; -idtype10 = type_nullable_parser_nodes__TKwredef.id; +cltype11 = type_nullable_parser_nodes__TKwredef.color; +idtype12 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var8 = 1; +var10 = 1; } else { -if(cltype9 >= var_tkwredefnode3->type->table_size) { -var8 = 0; +if(cltype11 >= var_tkwredefnode3->type->table_size) { +var10 = 0; } else { -var8 = var_tkwredefnode3->type->type_table[cltype9] == idtype10; +var10 = var_tkwredefnode3->type->type_table[cltype11] == idtype12; } } -if (!var8) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21881); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22357); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype12 = type_nullable_parser_nodes__AVisibility.color; -idtype13 = type_nullable_parser_nodes__AVisibility.id; +cltype14 = type_nullable_parser_nodes__AVisibility.color; +idtype15 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var11 = 1; +var13 = 1; } else { -if(cltype12 >= var_pvisibilitynode4->type->table_size) { -var11 = 0; +if(cltype14 >= var_pvisibilitynode4->type->table_size) { +var13 = 0; } else { -var11 = var_pvisibilitynode4->type->type_table[cltype12] == idtype13; +var13 = var_pvisibilitynode4->type->type_table[cltype14] == idtype15; } } -if (!var11) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21883); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22359); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype15 = type_nullable_parser_nodes__TKwnew.color; -idtype16 = type_nullable_parser_nodes__TKwnew.id; +cltype17 = type_nullable_parser_nodes__TKwnew.color; +idtype18 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var14 = 1; +var16 = 1; } else { -if(cltype15 >= var_tkwnewnode5->type->table_size) { -var14 = 0; +if(cltype17 >= var_tkwnewnode5->type->table_size) { +var16 = 0; } else { -var14 = var_tkwnewnode5->type->type_table[cltype15] == idtype16; +var16 = var_tkwnewnode5->type->type_table[cltype17] == idtype18; } } -if (!var14) { +if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21885); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22361); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype18 = type_nullable_parser_nodes__ASignature.color; -idtype19 = type_nullable_parser_nodes__ASignature.id; +cltype20 = type_nullable_parser_nodes__ASignature.color; +idtype21 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var17 = 1; +var19 = 1; } else { -if(cltype18 >= var_psignaturenode7->type->table_size) { -var17 = 0; +if(cltype20 >= var_psignaturenode7->type->table_size) { +var19 = 0; } else { -var17 = var_psignaturenode7->type->type_table[cltype18] == idtype19; +var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; } } -if (!var17) { +if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21887); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22363); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist6; +var_tstringnode8 = var_nodearraylist6; +/* isa nullable TString */ +cltype23 = type_nullable_parser_nodes__TString.color; +idtype24 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var22 = 1; +} else { +if(cltype23 >= var_tstringnode8->type->table_size) { +var22 = 0; +} else { +var22 = var_tstringnode8->type->type_table[cltype23] == idtype24; +} +} +if (!var22) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22365); +show_backtrace(1); +} +var_pexterncallsnode9 = var_nodearraylist7; +/* isa nullable AExternCalls */ +cltype26 = type_nullable_parser_nodes__AExternCalls.color; +idtype27 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var25 = 1; +} else { +if(cltype26 >= var_pexterncallsnode9->type->table_size) { +var25 = 0; +} else { +var25 = var_pexterncallsnode9->type->type_table[cltype26] == idtype27; +} +} +if (!var25) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22367); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist8; /* isa nullable AExternCodeBlock */ -cltype21 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype22 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype29 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype30 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var20 = 1; +var28 = 1; } else { -if(cltype21 >= var_pexterncodeblocknode10->type->table_size) { -var20 = 0; +if(cltype29 >= var_pexterncodeblocknode10->type->table_size) { +var28 = 0; } else { -var20 = var_pexterncodeblocknode10->type->type_table[cltype21] == idtype22; +var28 = var_pexterncodeblocknode10->type->type_table[cltype29] == idtype30; } } -if (!var20) { +if (!var28) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21889); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22369); +show_backtrace(1); } -var23 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var24 = NULL; -var25 = NULL; -var26 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var23->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var23, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var24, var_psignaturenode7, var25, var26, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var23); -var_ppropdefnode1 = var23; +var31 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var32 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var31->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var31, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var32, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var31; var_node_list = var_ppropdefnode1; -var27 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var28 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var27) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var28, var_node_list) /* push on */; +var33 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var34 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var33) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var34, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction498#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction498__action(val* self, val* p0) { -parser__ReduceAction498__action(self, p0); +/* method parser#ReduceAction510#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction510__action(val* self, val* p0) { +parser__ReduceAction510__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction499#action for (self: ReduceAction499, Parser) */ -void parser__ReduceAction499__action(val* self, val* p0) { +/* method parser#ReduceAction511#action for (self: ReduceAction511, Parser) */ +void parser__ReduceAction511__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var6 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var7 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var8 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var7 /* : Bool */; +short int var9 /* : Bool */; int cltype; int idtype; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var8 /* : Bool */; -int cltype9; -int idtype10; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; +short int var10 /* : Bool */; +int cltype11; +int idtype12; +val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; +short int var13 /* : Bool */; +int cltype14; +int idtype15; val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; +short int var16 /* : Bool */; +int cltype17; +int idtype18; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; +short int var19 /* : Bool */; +int cltype20; +int idtype21; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var22 /* : Bool */; +int cltype23; +int idtype24; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var25 /* : Bool */; +int cltype26; +int idtype27; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var20 /* : Bool */; -int cltype21; -int idtype22; -val* var23 /* : AExternInitPropdef */; -val* var24 /* : null */; -val* var25 /* : null */; -val* var26 /* : null */; +short int var28 /* : Bool */; +int cltype29; +int idtype30; +val* var31 /* : AExternInitPropdef */; +val* var32 /* : null */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var27 /* : Int */; -long var28 /* : Int */; +long var33 /* : Int */; +long var34 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var1; +var_nodearraylist8 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var2; +var_nodearraylist7 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var3; +var_nodearraylist6 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var4; +var_nodearraylist5 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var5; +var_nodearraylist4 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var6; +var_nodearraylist3 = var6; +var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var8; var_pdocnode2 = var_nodearraylist1; /* isa nullable ADoc */ cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var7 = 1; +var9 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var7 = 0; +var9 = 0; } else { -var7 = var_pdocnode2->type->type_table[cltype] == idtype; +var9 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var7) { +if (!var9) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21917); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22399); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist2; /* isa nullable AVisibility */ -cltype9 = type_nullable_parser_nodes__AVisibility.color; -idtype10 = type_nullable_parser_nodes__AVisibility.id; +cltype11 = type_nullable_parser_nodes__AVisibility.color; +idtype12 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var8 = 1; +var10 = 1; } else { -if(cltype9 >= var_pvisibilitynode4->type->table_size) { -var8 = 0; +if(cltype11 >= var_pvisibilitynode4->type->table_size) { +var10 = 0; } else { -var8 = var_pvisibilitynode4->type->type_table[cltype9] == idtype10; +var10 = var_pvisibilitynode4->type->type_table[cltype11] == idtype12; } } -if (!var8) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21919); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22401); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist3; /* isa nullable TKwnew */ -cltype12 = type_nullable_parser_nodes__TKwnew.color; -idtype13 = type_nullable_parser_nodes__TKwnew.id; +cltype14 = type_nullable_parser_nodes__TKwnew.color; +idtype15 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var11 = 1; +var13 = 1; } else { -if(cltype12 >= var_tkwnewnode5->type->table_size) { -var11 = 0; +if(cltype14 >= var_tkwnewnode5->type->table_size) { +var13 = 0; } else { -var11 = var_tkwnewnode5->type->type_table[cltype12] == idtype13; +var13 = var_tkwnewnode5->type->type_table[cltype14] == idtype15; } } -if (!var11) { +if (!var13) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21921); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22403); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist4; /* isa nullable AMethid */ -cltype15 = type_nullable_parser_nodes__AMethid.color; -idtype16 = type_nullable_parser_nodes__AMethid.id; +cltype17 = type_nullable_parser_nodes__AMethid.color; +idtype18 = type_nullable_parser_nodes__AMethid.id; if(var_pmethidnode6 == NULL) { -var14 = 1; +var16 = 1; } else { -if(cltype15 >= var_pmethidnode6->type->table_size) { -var14 = 0; +if(cltype17 >= var_pmethidnode6->type->table_size) { +var16 = 0; } else { -var14 = var_pmethidnode6->type->type_table[cltype15] == idtype16; +var16 = var_pmethidnode6->type->type_table[cltype17] == idtype18; } } -if (!var14) { +if (!var16) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21923); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22405); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist5; /* isa nullable ASignature */ -cltype18 = type_nullable_parser_nodes__ASignature.color; -idtype19 = type_nullable_parser_nodes__ASignature.id; +cltype20 = type_nullable_parser_nodes__ASignature.color; +idtype21 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var17 = 1; +var19 = 1; } else { -if(cltype18 >= var_psignaturenode7->type->table_size) { -var17 = 0; +if(cltype20 >= var_psignaturenode7->type->table_size) { +var19 = 0; } else { -var17 = var_psignaturenode7->type->type_table[cltype18] == idtype19; +var19 = var_psignaturenode7->type->type_table[cltype20] == idtype21; } } -if (!var17) { +if (!var19) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21925); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22407); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist6; +var_tstringnode8 = var_nodearraylist6; +/* isa nullable TString */ +cltype23 = type_nullable_parser_nodes__TString.color; +idtype24 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var22 = 1; +} else { +if(cltype23 >= var_tstringnode8->type->table_size) { +var22 = 0; +} else { +var22 = var_tstringnode8->type->type_table[cltype23] == idtype24; +} +} +if (!var22) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22409); +show_backtrace(1); +} +var_pexterncallsnode9 = var_nodearraylist7; +/* isa nullable AExternCalls */ +cltype26 = type_nullable_parser_nodes__AExternCalls.color; +idtype27 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var25 = 1; +} else { +if(cltype26 >= var_pexterncallsnode9->type->table_size) { +var25 = 0; +} else { +var25 = var_pexterncallsnode9->type->type_table[cltype26] == idtype27; +} +} +if (!var25) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22411); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist8; /* isa nullable AExternCodeBlock */ -cltype21 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype22 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype29 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype30 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var20 = 1; +var28 = 1; } else { -if(cltype21 >= var_pexterncodeblocknode10->type->table_size) { -var20 = 0; +if(cltype29 >= var_pexterncodeblocknode10->type->table_size) { +var28 = 0; } else { -var20 = var_pexterncodeblocknode10->type->type_table[cltype21] == idtype22; +var28 = var_pexterncodeblocknode10->type->type_table[cltype29] == idtype30; } } -if (!var20) { +if (!var28) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21927); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22413); +show_backtrace(1); } -var23 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var24 = NULL; -var25 = NULL; -var26 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var23->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var23, var_pdocnode2, var24, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var25, var26, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var23); -var_ppropdefnode1 = var23; +var31 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +var32 = NULL; +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var31->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var31, var_pdocnode2, var32, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var31; var_node_list = var_ppropdefnode1; -var27 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var28 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var27) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var28, var_node_list) /* push on */; +var33 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var34 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var33) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var34, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction499#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction499__action(val* self, val* p0) { -parser__ReduceAction499__action(self, p0); +/* method parser#ReduceAction511#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction511__action(val* self, val* p0) { +parser__ReduceAction511__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction500#action for (self: ReduceAction500, Parser) */ -void parser__ReduceAction500__action(val* self, val* p0) { +/* method parser#ReduceAction512#action for (self: ReduceAction512, Parser) */ +void parser__ReduceAction512__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; +val* var_nodearraylist9 /* var nodearraylist9: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist8 /* var nodearraylist8: nullable Object */; val* var3 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; +val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var4 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; +val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; val* var5 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; val* var6 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; val* var7 /* : nullable Object */; +val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; +val* var8 /* : nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; +val* var9 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var8 /* : Bool */; +short int var10 /* : Bool */; int cltype; int idtype; val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var9 /* : Bool */; -int cltype10; -int idtype11; +short int var11 /* : Bool */; +int cltype12; +int idtype13; val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; +short int var14 /* : Bool */; +int cltype15; +int idtype16; val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; +short int var17 /* : Bool */; +int cltype18; +int idtype19; val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; +short int var20 /* : Bool */; +int cltype21; +int idtype22; val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var21 /* : Bool */; -int cltype22; -int idtype23; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +val* var_tstringnode8 /* var tstringnode8: nullable Object */; +short int var26 /* : Bool */; +int cltype27; +int idtype28; +val* var_pexterncallsnode9 /* var pexterncallsnode9: nullable Object */; +short int var29 /* : Bool */; +int cltype30; +int idtype31; val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var24 /* : Bool */; -int cltype25; -int idtype26; -val* var27 /* : AExternInitPropdef */; -val* var28 /* : null */; -val* var29 /* : null */; +short int var32 /* : Bool */; +int cltype33; +int idtype34; +val* var35 /* : AExternInitPropdef */; val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var30 /* : Int */; -long var31 /* : Int */; +long var36 /* : Int */; +long var37 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var1; +var_nodearraylist9 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var2; +var_nodearraylist8 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var3; +var_nodearraylist7 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var4; +var_nodearraylist6 = var4; var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var5; +var_nodearraylist5 = var5; var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var6; +var_nodearraylist4 = var6; var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var7; -var_pdocnode2 = var_nodearraylist1; -/* isa nullable ADoc */ -cltype = type_nullable_parser_nodes__ADoc.color; +var_nodearraylist3 = var7; +var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var8; +var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var9; +var_pdocnode2 = var_nodearraylist1; +/* isa nullable ADoc */ +cltype = type_nullable_parser_nodes__ADoc.color; idtype = type_nullable_parser_nodes__ADoc.id; if(var_pdocnode2 == NULL) { -var8 = 1; +var10 = 1; } else { if(cltype >= var_pdocnode2->type->table_size) { -var8 = 0; +var10 = 0; } else { -var8 = var_pdocnode2->type->type_table[cltype] == idtype; +var10 = var_pdocnode2->type->type_table[cltype] == idtype; } } -if (!var8) { +if (!var10) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21956); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22444); +show_backtrace(1); } var_tkwredefnode3 = var_nodearraylist2; /* isa nullable TKwredef */ -cltype10 = type_nullable_parser_nodes__TKwredef.color; -idtype11 = type_nullable_parser_nodes__TKwredef.id; +cltype12 = type_nullable_parser_nodes__TKwredef.color; +idtype13 = type_nullable_parser_nodes__TKwredef.id; if(var_tkwredefnode3 == NULL) { -var9 = 1; +var11 = 1; } else { -if(cltype10 >= var_tkwredefnode3->type->table_size) { -var9 = 0; +if(cltype12 >= var_tkwredefnode3->type->table_size) { +var11 = 0; } else { -var9 = var_tkwredefnode3->type->type_table[cltype10] == idtype11; +var11 = var_tkwredefnode3->type->type_table[cltype12] == idtype13; } } -if (!var9) { +if (!var11) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21958); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22446); +show_backtrace(1); } var_pvisibilitynode4 = var_nodearraylist3; /* isa nullable AVisibility */ -cltype13 = type_nullable_parser_nodes__AVisibility.color; -idtype14 = type_nullable_parser_nodes__AVisibility.id; +cltype15 = type_nullable_parser_nodes__AVisibility.color; +idtype16 = type_nullable_parser_nodes__AVisibility.id; if(var_pvisibilitynode4 == NULL) { -var12 = 1; +var14 = 1; } else { -if(cltype13 >= var_pvisibilitynode4->type->table_size) { -var12 = 0; +if(cltype15 >= var_pvisibilitynode4->type->table_size) { +var14 = 0; } else { -var12 = var_pvisibilitynode4->type->type_table[cltype13] == idtype14; +var14 = var_pvisibilitynode4->type->type_table[cltype15] == idtype16; } } -if (!var12) { +if (!var14) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21960); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22448); +show_backtrace(1); } var_tkwnewnode5 = var_nodearraylist4; /* isa nullable TKwnew */ -cltype16 = type_nullable_parser_nodes__TKwnew.color; -idtype17 = type_nullable_parser_nodes__TKwnew.id; +cltype18 = type_nullable_parser_nodes__TKwnew.color; +idtype19 = type_nullable_parser_nodes__TKwnew.id; if(var_tkwnewnode5 == NULL) { -var15 = 1; +var17 = 1; } else { -if(cltype16 >= var_tkwnewnode5->type->table_size) { -var15 = 0; +if(cltype18 >= var_tkwnewnode5->type->table_size) { +var17 = 0; } else { -var15 = var_tkwnewnode5->type->type_table[cltype16] == idtype17; +var17 = var_tkwnewnode5->type->type_table[cltype18] == idtype19; } } -if (!var15) { +if (!var17) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21962); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22450); +show_backtrace(1); } var_pmethidnode6 = var_nodearraylist5; /* isa nullable AMethid */ -cltype19 = type_nullable_parser_nodes__AMethid.color; -idtype20 = type_nullable_parser_nodes__AMethid.id; +cltype21 = type_nullable_parser_nodes__AMethid.color; +idtype22 = type_nullable_parser_nodes__AMethid.id; if(var_pmethidnode6 == NULL) { -var18 = 1; +var20 = 1; } else { -if(cltype19 >= var_pmethidnode6->type->table_size) { -var18 = 0; +if(cltype21 >= var_pmethidnode6->type->table_size) { +var20 = 0; } else { -var18 = var_pmethidnode6->type->type_table[cltype19] == idtype20; +var20 = var_pmethidnode6->type->type_table[cltype21] == idtype22; } } -if (!var18) { +if (!var20) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21964); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22452); +show_backtrace(1); } var_psignaturenode7 = var_nodearraylist6; /* isa nullable ASignature */ -cltype22 = type_nullable_parser_nodes__ASignature.color; -idtype23 = type_nullable_parser_nodes__ASignature.id; +cltype24 = type_nullable_parser_nodes__ASignature.color; +idtype25 = type_nullable_parser_nodes__ASignature.id; if(var_psignaturenode7 == NULL) { -var21 = 1; +var23 = 1; } else { -if(cltype22 >= var_psignaturenode7->type->table_size) { -var21 = 0; +if(cltype24 >= var_psignaturenode7->type->table_size) { +var23 = 0; } else { -var21 = var_psignaturenode7->type->type_table[cltype22] == idtype23; +var23 = var_psignaturenode7->type->type_table[cltype24] == idtype25; } } -if (!var21) { +if (!var23) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21966); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22454); +show_backtrace(1); } -var_pexterncodeblocknode10 = var_nodearraylist7; +var_tstringnode8 = var_nodearraylist7; +/* isa nullable TString */ +cltype27 = type_nullable_parser_nodes__TString.color; +idtype28 = type_nullable_parser_nodes__TString.id; +if(var_tstringnode8 == NULL) { +var26 = 1; +} else { +if(cltype27 >= var_tstringnode8->type->table_size) { +var26 = 0; +} else { +var26 = var_tstringnode8->type->type_table[cltype27] == idtype28; +} +} +if (!var26) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22456); +show_backtrace(1); +} +var_pexterncallsnode9 = var_nodearraylist8; +/* isa nullable AExternCalls */ +cltype30 = type_nullable_parser_nodes__AExternCalls.color; +idtype31 = type_nullable_parser_nodes__AExternCalls.id; +if(var_pexterncallsnode9 == NULL) { +var29 = 1; +} else { +if(cltype30 >= var_pexterncallsnode9->type->table_size) { +var29 = 0; +} else { +var29 = var_pexterncallsnode9->type->type_table[cltype30] == idtype31; +} +} +if (!var29) { +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22458); +show_backtrace(1); +} +var_pexterncodeblocknode10 = var_nodearraylist9; /* isa nullable AExternCodeBlock */ -cltype25 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype26 = type_nullable_parser_nodes__AExternCodeBlock.id; +cltype33 = type_nullable_parser_nodes__AExternCodeBlock.color; +idtype34 = type_nullable_parser_nodes__AExternCodeBlock.id; if(var_pexterncodeblocknode10 == NULL) { -var24 = 1; +var32 = 1; } else { -if(cltype25 >= var_pexterncodeblocknode10->type->table_size) { -var24 = 0; +if(cltype33 >= var_pexterncodeblocknode10->type->table_size) { +var32 = 0; } else { -var24 = var_pexterncodeblocknode10->type->type_table[cltype25] == idtype26; +var32 = var_pexterncodeblocknode10->type->type_table[cltype33] == idtype34; } } -if (!var24) { +if (!var32) { fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21968); -exit(1); +fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22460); +show_backtrace(1); } -var27 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var28 = NULL; -var29 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var27->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var27, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var28, var29, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var27); -var_ppropdefnode1 = var27; +var35 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); +((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var35->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var35, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var_pexterncallsnode9, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; +var_ppropdefnode1 = var35; var_node_list = var_ppropdefnode1; -var30 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var31 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var30) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var31, var_node_list) /* push on */; +var36 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var37 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var36) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var37, var_node_list) /* push on */; RET_LABEL:; } -/* method parser#ReduceAction500#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction500__action(val* self, val* p0) { -parser__ReduceAction500__action(self, p0); +/* method parser#ReduceAction512#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction512__action(val* self, val* p0) { +parser__ReduceAction512__action(self, p0); RET_LABEL:; } -/* method parser#ReduceAction501#action for (self: ReduceAction501, Parser) */ -void parser__ReduceAction501__action(val* self, val* p0) { +/* method parser#ReduceAction513#action for (self: ReduceAction513, Parser) */ +void parser__ReduceAction513__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; +val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var3 /* : nullable Object */; +val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; +val* var_pannotationsnode1 /* var pannotationsnode1: nullable Object */; +long var3 /* : Int */; +long var4 /* : Int */; +var_p = p0; +var = NULL; +var_node_list = var; +var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist2 = var1; +var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; +var_nodearraylist1 = var2; +var_pannotationsnode1 = var_nodearraylist2; +var_node_list = var_pannotationsnode1; +var3 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var4 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var3) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var4, var_node_list) /* push on */; +RET_LABEL:; +} +/* method parser#ReduceAction513#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction513__action(val* self, val* p0) { +parser__ReduceAction513__action(self, p0); +RET_LABEL:; +} +/* method parser#ReduceAction514#action for (self: ReduceAction514, Parser) */ +void parser__ReduceAction514__action(val* self, val* p0) { +val* var_p /* var p: Parser */; +val* var /* : null */; +val* var_node_list /* var node_list: nullable Object */; +val* var1 /* : nullable Object */; val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var4 /* : nullable Object */; +val* var2 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var5 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var6 /* : nullable Object */; +val* var4 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; -val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var7 /* : Bool */; -int cltype; -int idtype; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var8 /* : Bool */; -int cltype9; -int idtype10; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var11 /* : Bool */; -int cltype12; -int idtype13; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var14 /* : Bool */; -int cltype15; -int idtype16; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; -short int var17 /* : Bool */; -int cltype18; -int idtype19; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var20 /* : Bool */; -int cltype21; -int idtype22; -val* var23 /* : AExternInitPropdef */; -val* var24 /* : null */; -val* var25 /* : null */; -val* var26 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var27 /* : Int */; -long var28 /* : Int */; +val* var_pannotationsnode1 /* var pannotationsnode1: nullable Object */; +long var5 /* : Int */; +long var6 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var1; +var_nodearraylist4 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var2; +var_nodearraylist3 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var3; +var_nodearraylist2 = var3; var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var4; -var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var5; -var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var6; -var_pdocnode2 = var_nodearraylist1; -/* isa nullable ADoc */ -cltype = type_nullable_parser_nodes__ADoc.color; -idtype = type_nullable_parser_nodes__ADoc.id; -if(var_pdocnode2 == NULL) { -var7 = 1; -} else { -if(cltype >= var_pdocnode2->type->table_size) { -var7 = 0; -} else { -var7 = var_pdocnode2->type->type_table[cltype] == idtype; -} -} -if (!var7) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21996); -exit(1); -} -var_pvisibilitynode4 = var_nodearraylist2; -/* isa nullable AVisibility */ -cltype9 = type_nullable_parser_nodes__AVisibility.color; -idtype10 = type_nullable_parser_nodes__AVisibility.id; -if(var_pvisibilitynode4 == NULL) { -var8 = 1; -} else { -if(cltype9 >= var_pvisibilitynode4->type->table_size) { -var8 = 0; -} else { -var8 = var_pvisibilitynode4->type->type_table[cltype9] == idtype10; -} -} -if (!var8) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 21998); -exit(1); -} -var_tkwnewnode5 = var_nodearraylist3; -/* isa nullable TKwnew */ -cltype12 = type_nullable_parser_nodes__TKwnew.color; -idtype13 = type_nullable_parser_nodes__TKwnew.id; -if(var_tkwnewnode5 == NULL) { -var11 = 1; -} else { -if(cltype12 >= var_tkwnewnode5->type->table_size) { -var11 = 0; -} else { -var11 = var_tkwnewnode5->type->type_table[cltype12] == idtype13; -} +var_nodearraylist1 = var4; +var_pannotationsnode1 = var_nodearraylist3; +var_node_list = var_pannotationsnode1; +var5 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var6 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var5) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var6, var_node_list) /* push on */; +RET_LABEL:; } -if (!var11) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22000); -exit(1); +/* method parser#ReduceAction514#action for (self: Object, Parser) */ +void VIRTUAL_parser__ReduceAction514__action(val* self, val* p0) { +parser__ReduceAction514__action(self, p0); +RET_LABEL:; } -var_psignaturenode7 = var_nodearraylist4; -/* isa nullable ASignature */ -cltype15 = type_nullable_parser_nodes__ASignature.color; -idtype16 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { -var14 = 1; -} else { -if(cltype15 >= var_psignaturenode7->type->table_size) { -var14 = 0; -} else { -var14 = var_psignaturenode7->type->type_table[cltype15] == idtype16; -} -} -if (!var14) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22002); -exit(1); -} -var_tstringnode8 = var_nodearraylist5; -/* isa nullable TString */ -cltype18 = type_nullable_parser_nodes__TString.color; -idtype19 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var17 = 1; -} else { -if(cltype18 >= var_tstringnode8->type->table_size) { -var17 = 0; -} else { -var17 = var_tstringnode8->type->type_table[cltype18] == idtype19; -} -} -if (!var17) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22004); -exit(1); -} -var_pexterncodeblocknode10 = var_nodearraylist6; -/* isa nullable AExternCodeBlock */ -cltype21 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype22 = type_nullable_parser_nodes__AExternCodeBlock.id; -if(var_pexterncodeblocknode10 == NULL) { -var20 = 1; -} else { -if(cltype21 >= var_pexterncodeblocknode10->type->table_size) { -var20 = 0; -} else { -var20 = var_pexterncodeblocknode10->type->type_table[cltype21] == idtype22; -} -} -if (!var20) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22006); -exit(1); -} -var23 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var24 = NULL; -var25 = NULL; -var26 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var23->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var23, var_pdocnode2, var24, var_pvisibilitynode4, var_tkwnewnode5, var25, var_psignaturenode7, var_tstringnode8, var26, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var23); -var_ppropdefnode1 = var23; -var_node_list = var_ppropdefnode1; -var27 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var28 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var27) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var28, var_node_list) /* push on */; -RET_LABEL:; -} -/* method parser#ReduceAction501#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction501__action(val* self, val* p0) { -parser__ReduceAction501__action(self, p0); -RET_LABEL:; -} -/* method parser#ReduceAction502#action for (self: ReduceAction502, Parser) */ -void parser__ReduceAction502__action(val* self, val* p0) { +/* method parser#ReduceAction516#action for (self: ReduceAction516, Parser) */ +void parser__ReduceAction516__action(val* self, val* p0) { val* var_p /* var p: Parser */; val* var /* : null */; val* var_node_list /* var node_list: nullable Object */; val* var1 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; -val* var2 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var4 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var5 /* : nullable Object */; val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var6 /* : nullable Object */; -val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var7 /* : nullable Object */; -val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; -val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var8 /* : Bool */; -int cltype; -int idtype; -val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */; -short int var9 /* : Bool */; -int cltype10; -int idtype11; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; -short int var21 /* : Bool */; -int cltype22; -int idtype23; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var24 /* : Bool */; -int cltype25; -int idtype26; -val* var27 /* : AExternInitPropdef */; -val* var28 /* : null */; -val* var29 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var30 /* : Int */; -long var31 /* : Int */; -var_p = p0; -var = NULL; -var_node_list = var; -var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var1; -var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var2; -var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var3; -var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var4; -var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var5; -var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var6; -var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var7; -var_pdocnode2 = var_nodearraylist1; -/* isa nullable ADoc */ -cltype = type_nullable_parser_nodes__ADoc.color; -idtype = type_nullable_parser_nodes__ADoc.id; -if(var_pdocnode2 == NULL) { -var8 = 1; -} else { -if(cltype >= var_pdocnode2->type->table_size) { -var8 = 0; -} else { -var8 = var_pdocnode2->type->type_table[cltype] == idtype; -} -} -if (!var8) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22035); -exit(1); -} -var_tkwredefnode3 = var_nodearraylist2; -/* isa nullable TKwredef */ -cltype10 = type_nullable_parser_nodes__TKwredef.color; -idtype11 = type_nullable_parser_nodes__TKwredef.id; -if(var_tkwredefnode3 == NULL) { -var9 = 1; -} else { -if(cltype10 >= var_tkwredefnode3->type->table_size) { -var9 = 0; -} else { -var9 = var_tkwredefnode3->type->type_table[cltype10] == idtype11; -} -} -if (!var9) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22037); -exit(1); -} -var_pvisibilitynode4 = var_nodearraylist3; -/* isa nullable AVisibility */ -cltype13 = type_nullable_parser_nodes__AVisibility.color; -idtype14 = type_nullable_parser_nodes__AVisibility.id; -if(var_pvisibilitynode4 == NULL) { -var12 = 1; -} else { -if(cltype13 >= var_pvisibilitynode4->type->table_size) { -var12 = 0; -} else { -var12 = var_pvisibilitynode4->type->type_table[cltype13] == idtype14; -} -} -if (!var12) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22039); -exit(1); -} -var_tkwnewnode5 = var_nodearraylist4; -/* isa nullable TKwnew */ -cltype16 = type_nullable_parser_nodes__TKwnew.color; -idtype17 = type_nullable_parser_nodes__TKwnew.id; -if(var_tkwnewnode5 == NULL) { -var15 = 1; -} else { -if(cltype16 >= var_tkwnewnode5->type->table_size) { -var15 = 0; -} else { -var15 = var_tkwnewnode5->type->type_table[cltype16] == idtype17; -} -} -if (!var15) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22041); -exit(1); -} -var_psignaturenode7 = var_nodearraylist5; -/* isa nullable ASignature */ -cltype19 = type_nullable_parser_nodes__ASignature.color; -idtype20 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { -var18 = 1; -} else { -if(cltype19 >= var_psignaturenode7->type->table_size) { -var18 = 0; -} else { -var18 = var_psignaturenode7->type->type_table[cltype19] == idtype20; -} -} -if (!var18) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22043); -exit(1); -} -var_tstringnode8 = var_nodearraylist6; -/* isa nullable TString */ -cltype22 = type_nullable_parser_nodes__TString.color; -idtype23 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var21 = 1; -} else { -if(cltype22 >= var_tstringnode8->type->table_size) { -var21 = 0; -} else { -var21 = var_tstringnode8->type->type_table[cltype22] == idtype23; -} -} -if (!var21) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22045); -exit(1); -} -var_pexterncodeblocknode10 = var_nodearraylist7; -/* isa nullable AExternCodeBlock */ -cltype25 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype26 = type_nullable_parser_nodes__AExternCodeBlock.id; -if(var_pexterncodeblocknode10 == NULL) { -var24 = 1; -} else { -if(cltype25 >= var_pexterncodeblocknode10->type->table_size) { -var24 = 0; -} else { -var24 = var_pexterncodeblocknode10->type->type_table[cltype25] == idtype26; -} -} -if (!var24) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22047); -exit(1); -} -var27 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var28 = NULL; -var29 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var27->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var27, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_tkwnewnode5, var28, var_psignaturenode7, var_tstringnode8, var29, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var27); -var_ppropdefnode1 = var27; -var_node_list = var_ppropdefnode1; -var30 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var31 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var30) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var31, var_node_list) /* push on */; -RET_LABEL:; -} -/* method parser#ReduceAction502#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction502__action(val* self, val* p0) { -parser__ReduceAction502__action(self, p0); -RET_LABEL:; -} -/* method parser#ReduceAction503#action for (self: ReduceAction503, Parser) */ -void parser__ReduceAction503__action(val* self, val* p0) { -val* var_p /* var p: Parser */; -val* var /* : null */; -val* var_node_list /* var node_list: nullable Object */; -val* var1 /* : nullable Object */; -val* var_nodearraylist7 /* var nodearraylist7: nullable Object */; val* var2 /* : nullable Object */; -val* var_nodearraylist6 /* var nodearraylist6: nullable Object */; -val* var3 /* : nullable Object */; -val* var_nodearraylist5 /* var nodearraylist5: nullable Object */; -val* var4 /* : nullable Object */; -val* var_nodearraylist4 /* var nodearraylist4: nullable Object */; -val* var5 /* : nullable Object */; -val* var_nodearraylist3 /* var nodearraylist3: nullable Object */; -val* var6 /* : nullable Object */; val* var_nodearraylist2 /* var nodearraylist2: nullable Object */; -val* var7 /* : nullable Object */; +val* var3 /* : nullable Object */; val* var_nodearraylist1 /* var nodearraylist1: nullable Object */; -val* var_pdocnode2 /* var pdocnode2: nullable Object */; -short int var8 /* : Bool */; -int cltype; -int idtype; -val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */; -short int var9 /* : Bool */; -int cltype10; -int idtype11; -val* var_tkwnewnode5 /* var tkwnewnode5: nullable Object */; -short int var12 /* : Bool */; -int cltype13; -int idtype14; -val* var_pmethidnode6 /* var pmethidnode6: nullable Object */; -short int var15 /* : Bool */; -int cltype16; -int idtype17; -val* var_psignaturenode7 /* var psignaturenode7: nullable Object */; -short int var18 /* : Bool */; -int cltype19; -int idtype20; -val* var_tstringnode8 /* var tstringnode8: nullable Object */; -short int var21 /* : Bool */; -int cltype22; -int idtype23; -val* var_pexterncodeblocknode10 /* var pexterncodeblocknode10: nullable Object */; -short int var24 /* : Bool */; -int cltype25; -int idtype26; -val* var27 /* : AExternInitPropdef */; -val* var28 /* : null */; -val* var29 /* : null */; -val* var_ppropdefnode1 /* var ppropdefnode1: nullable AExternInitPropdef */; -long var30 /* : Int */; -long var31 /* : Int */; +val* var_pannotationsnode1 /* var pannotationsnode1: nullable Object */; +long var4 /* : Int */; +long var5 /* : Int */; var_p = p0; var = NULL; var_node_list = var; var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist7 = var1; +var_nodearraylist3 = var1; var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist6 = var2; +var_nodearraylist2 = var2; var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist5 = var3; -var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist4 = var4; -var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist3 = var5; -var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist2 = var6; -var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on */; -var_nodearraylist1 = var7; -var_pdocnode2 = var_nodearraylist1; -/* isa nullable ADoc */ -cltype = type_nullable_parser_nodes__ADoc.color; -idtype = type_nullable_parser_nodes__ADoc.id; -if(var_pdocnode2 == NULL) { -var8 = 1; -} else { -if(cltype >= var_pdocnode2->type->table_size) { -var8 = 0; -} else { -var8 = var_pdocnode2->type->type_table[cltype] == idtype; -} -} -if (!var8) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22076); -exit(1); -} -var_pvisibilitynode4 = var_nodearraylist2; -/* isa nullable AVisibility */ -cltype10 = type_nullable_parser_nodes__AVisibility.color; -idtype11 = type_nullable_parser_nodes__AVisibility.id; -if(var_pvisibilitynode4 == NULL) { -var9 = 1; -} else { -if(cltype10 >= var_pvisibilitynode4->type->table_size) { -var9 = 0; -} else { -var9 = var_pvisibilitynode4->type->type_table[cltype10] == idtype11; -} -} -if (!var9) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22078); -exit(1); -} -var_tkwnewnode5 = var_nodearraylist3; -/* isa nullable TKwnew */ -cltype13 = type_nullable_parser_nodes__TKwnew.color; -idtype14 = type_nullable_parser_nodes__TKwnew.id; -if(var_tkwnewnode5 == NULL) { -var12 = 1; -} else { -if(cltype13 >= var_tkwnewnode5->type->table_size) { -var12 = 0; -} else { -var12 = var_tkwnewnode5->type->type_table[cltype13] == idtype14; -} -} -if (!var12) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22080); -exit(1); -} -var_pmethidnode6 = var_nodearraylist4; -/* isa nullable AMethid */ -cltype16 = type_nullable_parser_nodes__AMethid.color; -idtype17 = type_nullable_parser_nodes__AMethid.id; -if(var_pmethidnode6 == NULL) { -var15 = 1; -} else { -if(cltype16 >= var_pmethidnode6->type->table_size) { -var15 = 0; -} else { -var15 = var_pmethidnode6->type->type_table[cltype16] == idtype17; -} -} -if (!var15) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22082); -exit(1); -} -var_psignaturenode7 = var_nodearraylist5; -/* isa nullable ASignature */ -cltype19 = type_nullable_parser_nodes__ASignature.color; -idtype20 = type_nullable_parser_nodes__ASignature.id; -if(var_psignaturenode7 == NULL) { -var18 = 1; -} else { -if(cltype19 >= var_psignaturenode7->type->table_size) { -var18 = 0; -} else { -var18 = var_psignaturenode7->type->type_table[cltype19] == idtype20; -} -} -if (!var18) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22084); -exit(1); -} -var_tstringnode8 = var_nodearraylist6; -/* isa nullable TString */ -cltype22 = type_nullable_parser_nodes__TString.color; -idtype23 = type_nullable_parser_nodes__TString.id; -if(var_tstringnode8 == NULL) { -var21 = 1; -} else { -if(cltype22 >= var_tstringnode8->type->table_size) { -var21 = 0; -} else { -var21 = var_tstringnode8->type->type_table[cltype22] == idtype23; -} -} -if (!var21) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22086); -exit(1); -} -var_pexterncodeblocknode10 = var_nodearraylist7; -/* isa nullable AExternCodeBlock */ -cltype25 = type_nullable_parser_nodes__AExternCodeBlock.color; -idtype26 = type_nullable_parser_nodes__AExternCodeBlock.id; -if(var_pexterncodeblocknode10 == NULL) { -var24 = 1; -} else { -if(cltype25 >= var_pexterncodeblocknode10->type->table_size) { -var24 = 0; -} else { -var24 = var_pexterncodeblocknode10->type->type_table[cltype25] == idtype26; -} -} -if (!var24) { -fprintf(stderr, "Runtime error: %s", "Assert failed"); -fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 22088); -exit(1); -} -var27 = NEW_parser_nodes__AExternInitPropdef(&type_parser_nodes__AExternInitPropdef); -var28 = NULL; -var29 = NULL; -((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var27->class->vft[COLOR_parser_prod__AExternInitPropdef__init_aexterninitpropdef]))(var27, var_pdocnode2, var28, var_pvisibilitynode4, var_tkwnewnode5, var_pmethidnode6, var_psignaturenode7, var_tstringnode8, var29, var_pexterncodeblocknode10) /* init_aexterninitpropdef on */; -CHECK_NEW_parser_nodes__AExternInitPropdef(var27); -var_ppropdefnode1 = var27; -var_node_list = var_ppropdefnode1; -var30 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ -var31 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var30) /* go_to on */; -((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var31, var_node_list) /* push on */; -RET_LABEL:; -} -/* method parser#ReduceAction503#action for (self: Object, Parser) */ -void VIRTUAL_parser__ReduceAction503__action(val* self, val* p0) { -parser__ReduceAction503__action(self, p0); +var_nodearraylist1 = var3; +var_pannotationsnode1 = var_nodearraylist3; +var_node_list = var_pannotationsnode1; +var4 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on */ +var5 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var4) /* go_to on */; +((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var5, var_node_list) /* push on */; RET_LABEL:; }