+}
+if (!var10) {
+fprintf(stderr, "Runtime error: %s", "Assert failed");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 15684);
+show_backtrace(1);
+}
+var_tkwmethnode5 = var_nodearraylist3;
+/* <var_tkwmethnode5:nullable Object> isa nullable TKwmeth */
+cltype14 = type_nullable_parser_nodes__TKwmeth.color;
+idtype15 = type_nullable_parser_nodes__TKwmeth.id;
+if(var_tkwmethnode5 == NULL) {
+var13 = 1;
+} else {
+if(cltype14 >= var_tkwmethnode5->type->table_size) {
+var13 = 0;
+} else {
+var13 = var_tkwmethnode5->type->type_table[cltype14] == idtype15;
+}
+}
+if (!var13) {
+fprintf(stderr, "Runtime error: %s", "Assert failed");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 15686);
+show_backtrace(1);
+}
+var_pmethidnode6 = var_nodearraylist4;
+/* <var_pmethidnode6:nullable Object> 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", 15688);
+show_backtrace(1);
+}
+var_psignaturenode7 = var_nodearraylist5;
+/* <var_psignaturenode7:nullable Object> 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", 15690);
+show_backtrace(1);
+}
+var_pexprnode9 = var_nodearraylist7;
+/* <var_pexprnode9:nullable Object> isa nullable AExpr */
+cltype23 = type_nullable_parser_nodes__AExpr.color;
+idtype24 = type_nullable_parser_nodes__AExpr.id;
+if(var_pexprnode9 == NULL) {
+var22 = 1;
+} else {
+if(cltype23 >= var_pexprnode9->type->table_size) {
+var22 = 0;
+} else {
+var22 = var_pexprnode9->type->type_table[cltype23] == idtype24;
+}
+}
+if (!var22) {
+fprintf(stderr, "Runtime error: %s", "Assert failed");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 15692);
+show_backtrace(1);
+}
+var25 = NEW_parser_nodes__AConcreteMethPropdef(&type_parser_nodes__AConcreteMethPropdef);
+var26 = NULL;
+var27 = NULL;
+((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*))(var25->class->vft[COLOR_parser_prod__AConcreteMethPropdef__init_aconcretemethpropdef]))(var25, var_pdocnode2, var26, var_pvisibilitynode4, var_tkwmethnode5, var_pmethidnode6, var_psignaturenode7, var27, var_pexprnode9) /* init_aconcretemethpropdef on <var25:AConcreteMethPropdef>*/;
+var_ppropdefnode1 = var25;
+var_node_list = var_ppropdefnode1;
+var28 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on <self:ReduceAction349> */
+var29 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var28) /* go_to on <var_p:Parser>*/;
+((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var29, var_node_list) /* push on <var_p:Parser>*/;