-cltype111 = type_parser_nodes__AError.color;
-idtype112 = type_parser_nodes__AError.id;
-if(cltype111 >= var_eof->type->table_size) {
-var110 = 0;
-} else {
-var110 = var_eof->type->type_table[cltype111] == idtype112;
-}
-var113 = !var110;
-if (var113){
-var114 = ((val* (*)(val*))(var_tree->class->vft[COLOR_parser_nodes__Start__n_base]))(var_tree) /* n_base on <var_tree:nullable Object(Start)>*/;
-if (var114 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Reciever is null", "src/parser_util.nit", 148);
-exit(1);
-} else {
-var115 = ((val* (*)(val*))(var114->class->vft[COLOR_parser_nodes__AModule__n_classdefs]))(var114) /* n_classdefs on <var114:nullable AModule>*/;
-}
-var116 = ((val* (*)(val*))(var115->class->vft[COLOR_abstract_collection__Collection__first]))(var115) /* first on <var115:ANodes[AClassdef]>*/;
-var117 = ((val* (*)(val*))(var116->class->vft[COLOR_parser_nodes__AClassdef__n_propdefs]))(var116) /* n_propdefs on <var116:nullable Object(AClassdef)>*/;
-var118 = ((val* (*)(val*))(var117->class->vft[COLOR_abstract_collection__Collection__first]))(var117) /* first on <var117:ANodes[APropdef]>*/;
-/* <var118:nullable Object(APropdef)> isa AMainMethPropdef */
-cltype120 = type_parser_nodes__AMainMethPropdef.color;
-idtype121 = type_parser_nodes__AMainMethPropdef.id;
-if(cltype120 >= var118->type->table_size) {
-var119 = 0;
-} else {
-var119 = var118->type->type_table[cltype120] == idtype121;
-}
-if (!var119) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "src/parser_util.nit", 148);
-exit(1);
-}
-var122 = ((val* (*)(val*))(var118->class->vft[COLOR_parser_nodes__AConcreteMethPropdef__n_block]))(var118) /* n_block on <var118:APropdef(AMainMethPropdef)>*/;
-/* <var122:nullable AExpr> isa ABlockExpr */
-cltype124 = type_parser_nodes__ABlockExpr.color;
-idtype125 = type_parser_nodes__ABlockExpr.id;
-if(var122 == NULL) {
-var123 = 0;
-} else {
-if(cltype124 >= var122->type->table_size) {
-var123 = 0;
-} else {
-var123 = var122->type->type_table[cltype124] == idtype125;
-}
-}
-if (!var123) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "src/parser_util.nit", 148);
-exit(1);
-}
-var126 = ((val* (*)(val*))(var122->class->vft[COLOR_parser_nodes__ABlockExpr__n_expr]))(var122) /* n_expr on <var122:nullable AExpr(ABlockExpr)>*/;
-var127 = ((val* (*)(val*))(var126->class->vft[COLOR_abstract_collection__Collection__first]))(var126) /* first on <var126:ANodes[AExpr]>*/;
-/* <var127:nullable Object(AExpr)> isa ADoExpr */
-cltype129 = type_parser_nodes__ADoExpr.color;
-idtype130 = type_parser_nodes__ADoExpr.id;
-if(cltype129 >= var127->type->table_size) {
-var128 = 0;
-} else {
-var128 = var127->type->type_table[cltype129] == idtype130;
-}
-if (!var128) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "src/parser_util.nit", 148);
-exit(1);
-}
-var131 = ((val* (*)(val*))(var127->class->vft[COLOR_parser_nodes__ADoExpr__n_block]))(var127) /* n_block on <var127:AExpr(ADoExpr)>*/;
-if (var131 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "src/parser_util.nit", 148);
-exit(1);
-}
-var_nblock = var131;
+cltype117 = type_parser_nodes__AError.color;
+idtype118 = type_parser_nodes__AError.id;
+if(cltype117 >= var_eof->type->table_size) {
+var116 = 0;
+} else {
+var116 = var_eof->type->type_table[cltype117] == idtype118;
+}
+var119 = !var116;
+if (var119){
+var120 = ((val* (*)(val*))(var_tree->class->vft[COLOR_parser_nodes__Start__n_base]))(var_tree) /* n_base on <var_tree:nullable Object(Start)>*/;
+if (var120 == NULL) {
+fprintf(stderr, "Runtime error: %s", "Receiver is null");
+fprintf(stderr, " (%s:%d)\n", "src/parser_util.nit", 148);
+show_backtrace(1);
+} else {
+var121 = ((val* (*)(val*))(var120->class->vft[COLOR_parser_nodes__AModule__n_classdefs]))(var120) /* n_classdefs on <var120:nullable AModule>*/;
+}
+var122 = ((val* (*)(val*))(var121->class->vft[COLOR_abstract_collection__Collection__first]))(var121) /* first on <var121:ANodes[AClassdef]>*/;
+var123 = ((val* (*)(val*))(var122->class->vft[COLOR_parser_nodes__AClassdef__n_propdefs]))(var122) /* n_propdefs on <var122:nullable Object(AClassdef)>*/;
+var124 = ((val* (*)(val*))(var123->class->vft[COLOR_abstract_collection__Collection__first]))(var123) /* first on <var123:ANodes[APropdef]>*/;
+/* <var124:nullable Object(APropdef)> isa AMainMethPropdef */
+cltype126 = type_parser_nodes__AMainMethPropdef.color;
+idtype127 = type_parser_nodes__AMainMethPropdef.id;
+if(cltype126 >= var124->type->table_size) {
+var125 = 0;
+} else {
+var125 = var124->type->type_table[cltype126] == idtype127;
+}
+if (!var125) {
+var_class_name128 = var124 == NULL ? "null" : var124->type->name;
+fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "AMainMethPropdef", var_class_name128);
+fprintf(stderr, " (%s:%d)\n", "src/parser_util.nit", 148);
+show_backtrace(1);
+}
+var129 = ((val* (*)(val*))(var124->class->vft[COLOR_parser_nodes__AConcreteMethPropdef__n_block]))(var124) /* n_block on <var124:APropdef(AMainMethPropdef)>*/;
+/* <var129:nullable AExpr> isa ABlockExpr */
+cltype131 = type_parser_nodes__ABlockExpr.color;
+idtype132 = type_parser_nodes__ABlockExpr.id;
+if(var129 == NULL) {
+var130 = 0;
+} else {
+if(cltype131 >= var129->type->table_size) {
+var130 = 0;
+} else {
+var130 = var129->type->type_table[cltype131] == idtype132;
+}
+}
+if (!var130) {
+var_class_name133 = var129 == NULL ? "null" : var129->type->name;
+fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "ABlockExpr", var_class_name133);
+fprintf(stderr, " (%s:%d)\n", "src/parser_util.nit", 148);
+show_backtrace(1);
+}
+var134 = ((val* (*)(val*))(var129->class->vft[COLOR_parser_nodes__ABlockExpr__n_expr]))(var129) /* n_expr on <var129:nullable AExpr(ABlockExpr)>*/;
+var135 = ((val* (*)(val*))(var134->class->vft[COLOR_abstract_collection__Collection__first]))(var134) /* first on <var134:ANodes[AExpr]>*/;
+/* <var135:nullable Object(AExpr)> isa ADoExpr */
+cltype137 = type_parser_nodes__ADoExpr.color;
+idtype138 = type_parser_nodes__ADoExpr.id;
+if(cltype137 >= var135->type->table_size) {
+var136 = 0;
+} else {
+var136 = var135->type->type_table[cltype137] == idtype138;
+}
+if (!var136) {
+var_class_name139 = var135 == NULL ? "null" : var135->type->name;
+fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "ADoExpr", var_class_name139);
+fprintf(stderr, " (%s:%d)\n", "src/parser_util.nit", 148);
+show_backtrace(1);
+}
+var140 = ((val* (*)(val*))(var135->class->vft[COLOR_parser_nodes__ADoExpr__n_block]))(var135) /* n_block on <var135:AExpr(ADoExpr)>*/;
+if (var140 == NULL) {
+fprintf(stderr, "Runtime error: %s", "Cast failed");
+fprintf(stderr, " (%s:%d)\n", "src/parser_util.nit", 148);
+show_backtrace(1);
+}
+var_nblock = var140;