c_src: update Makefile to compile on MacOSX
[nit.git] / c_src / parser_nodes.sep.2.c
index eef25d7..2cf1505 100644 (file)
@@ -1,79 +1,4 @@
 #include "parser_nodes.sep.0.h"
-/* method parser_nodes#AAttrExpr#init for (self: Object) */
-void VIRTUAL_parser_nodes__AAttrExpr__init(val* self) {
-parser_nodes__AAttrExpr__init(self);
-RET_LABEL:;
-}
-/* method parser_nodes#AAttrAssignExpr#init for (self: AAttrAssignExpr) */
-void parser_nodes__AAttrAssignExpr__init(val* self) {
-((void (*)(val*))(self->class->vft[COLOR_parser_nodes__AAttrFormExpr__init]))(self) /* init on <self:AAttrAssignExpr>*/;
-((void (*)(val*))(self->class->vft[COLOR_parser_nodes__AAssignFormExpr__init]))(self) /* init on <self:AAttrAssignExpr>*/;
-RET_LABEL:;
-}
-/* method parser_nodes#AAttrAssignExpr#init for (self: Object) */
-void VIRTUAL_parser_nodes__AAttrAssignExpr__init(val* self) {
-parser_nodes__AAttrAssignExpr__init(self);
-RET_LABEL:;
-}
-/* method parser_nodes#ACallFormExpr#n_id for (self: ACallFormExpr): TId */
-val* parser_nodes__ACallFormExpr__n_id(val* self) {
-val* var /* : TId */;
-val* var1 /* : TId */;
-var1 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val; /* _n_id on <self:ACallFormExpr> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_id", "src/parser/parser_nodes.nit", 1362);
-exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#ACallFormExpr#n_id for (self: Object): TId */
-val* VIRTUAL_parser_nodes__ACallFormExpr__n_id(val* self) {
-val* var /* : TId */;
-val* var1 /* : TId */;
-var1 = parser_nodes__ACallFormExpr__n_id(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#ACallFormExpr#n_id= for (self: ACallFormExpr, TId) */
-void parser_nodes__ACallFormExpr__n_id_61d(val* self, val* p0) {
-self->attrs[COLOR_parser_nodes__ACallFormExpr___n_id].val = p0; /* _n_id on <self:ACallFormExpr> */
-RET_LABEL:;
-}
-/* method parser_nodes#ACallFormExpr#n_id= for (self: Object, TId) */
-void VIRTUAL_parser_nodes__ACallFormExpr__n_id_61d(val* self, val* p0) {
-parser_nodes__ACallFormExpr__n_id_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_nodes#ACallFormExpr#n_args for (self: ACallFormExpr): AExprs */
-val* parser_nodes__ACallFormExpr__n_args(val* self) {
-val* var /* : AExprs */;
-val* var1 /* : AExprs */;
-var1 = self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val; /* _n_args on <self:ACallFormExpr> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_args", "src/parser/parser_nodes.nit", 1365);
-exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#ACallFormExpr#n_args for (self: Object): AExprs */
-val* VIRTUAL_parser_nodes__ACallFormExpr__n_args(val* self) {
-val* var /* : AExprs */;
-val* var1 /* : AExprs */;
-var1 = parser_nodes__ACallFormExpr__n_args(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#ACallFormExpr#n_args= for (self: ACallFormExpr, AExprs) */
-void parser_nodes__ACallFormExpr__n_args_61d(val* self, val* p0) {
-self->attrs[COLOR_parser_nodes__ACallFormExpr___n_args].val = p0; /* _n_args on <self:ACallFormExpr> */
-RET_LABEL:;
-}
 /* method parser_nodes#ACallFormExpr#n_args= for (self: Object, AExprs) */
 void VIRTUAL_parser_nodes__ACallFormExpr__n_args_61d(val* self, val* p0) {
 parser_nodes__ACallFormExpr__n_args_61d(self, p0);
@@ -177,8 +102,9 @@ val* var /* : TKwsuper */;
 val* var1 /* : TKwsuper */;
 var1 = self->attrs[COLOR_parser_nodes__ASuperExpr___n_kwsuper].val; /* _n_kwsuper on <self:ASuperExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwsuper", "src/parser/parser_nodes.nit", 1408);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwsuper");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1391);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -209,8 +135,9 @@ val* var /* : AExprs */;
 val* var1 /* : AExprs */;
 var1 = self->attrs[COLOR_parser_nodes__ASuperExpr___n_args].val; /* _n_args on <self:ASuperExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_args", "src/parser/parser_nodes.nit", 1409);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_args");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1392);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -251,8 +178,9 @@ val* var /* : TKwinit */;
 val* var1 /* : TKwinit */;
 var1 = self->attrs[COLOR_parser_nodes__AInitExpr___n_kwinit].val; /* _n_kwinit on <self:AInitExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwinit", "src/parser/parser_nodes.nit", 1416);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwinit");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1399);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -283,8 +211,9 @@ val* var /* : AExprs */;
 val* var1 /* : AExprs */;
 var1 = self->attrs[COLOR_parser_nodes__AInitExpr___n_args].val; /* _n_args on <self:AInitExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_args", "src/parser/parser_nodes.nit", 1417);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_args");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1400);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -325,8 +254,9 @@ val* var /* : AExprs */;
 val* var1 /* : AExprs */;
 var1 = self->attrs[COLOR_parser_nodes__ABraFormExpr___n_args].val; /* _n_args on <self:ABraFormExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_args", "src/parser/parser_nodes.nit", 1423);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_args");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1406);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -388,8 +318,9 @@ val* var /* : TId */;
 val* var1 /* : TId */;
 var1 = self->attrs[COLOR_parser_nodes__AVarFormExpr___n_id].val; /* _n_id on <self:AVarFormExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_id", "src/parser/parser_nodes.nit", 1440);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_id");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1423);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -435,102 +366,6 @@ void VIRTUAL_parser_nodes__ABraReassignExpr__init(val* self) {
 parser_nodes__ABraReassignExpr__init(self);
 RET_LABEL:;
 }
-/* method parser_nodes#AClosureCallExpr#n_id for (self: AClosureCallExpr): TId */
-val* parser_nodes__AClosureCallExpr__n_id(val* self) {
-val* var /* : TId */;
-val* var1 /* : TId */;
-var1 = self->attrs[COLOR_parser_nodes__AClosureCallExpr___n_id].val; /* _n_id on <self:AClosureCallExpr> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_id", "src/parser/parser_nodes.nit", 1451);
-exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureCallExpr#n_id for (self: Object): TId */
-val* VIRTUAL_parser_nodes__AClosureCallExpr__n_id(val* self) {
-val* var /* : TId */;
-val* var1 /* : TId */;
-var1 = parser_nodes__AClosureCallExpr__n_id(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureCallExpr#n_id= for (self: AClosureCallExpr, TId) */
-void parser_nodes__AClosureCallExpr__n_id_61d(val* self, val* p0) {
-self->attrs[COLOR_parser_nodes__AClosureCallExpr___n_id].val = p0; /* _n_id on <self:AClosureCallExpr> */
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureCallExpr#n_id= for (self: Object, TId) */
-void VIRTUAL_parser_nodes__AClosureCallExpr__n_id_61d(val* self, val* p0) {
-parser_nodes__AClosureCallExpr__n_id_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureCallExpr#n_args for (self: AClosureCallExpr): AExprs */
-val* parser_nodes__AClosureCallExpr__n_args(val* self) {
-val* var /* : AExprs */;
-val* var1 /* : AExprs */;
-var1 = self->attrs[COLOR_parser_nodes__AClosureCallExpr___n_args].val; /* _n_args on <self:AClosureCallExpr> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_args", "src/parser/parser_nodes.nit", 1452);
-exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureCallExpr#n_args for (self: Object): AExprs */
-val* VIRTUAL_parser_nodes__AClosureCallExpr__n_args(val* self) {
-val* var /* : AExprs */;
-val* var1 /* : AExprs */;
-var1 = parser_nodes__AClosureCallExpr__n_args(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureCallExpr#n_args= for (self: AClosureCallExpr, AExprs) */
-void parser_nodes__AClosureCallExpr__n_args_61d(val* self, val* p0) {
-self->attrs[COLOR_parser_nodes__AClosureCallExpr___n_args].val = p0; /* _n_args on <self:AClosureCallExpr> */
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureCallExpr#n_args= for (self: Object, AExprs) */
-void VIRTUAL_parser_nodes__AClosureCallExpr__n_args_61d(val* self, val* p0) {
-parser_nodes__AClosureCallExpr__n_args_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureCallExpr#n_closure_defs for (self: AClosureCallExpr): ANodes[AClosureDef] */
-val* parser_nodes__AClosureCallExpr__n_closure_defs(val* self) {
-val* var /* : ANodes[AClosureDef] */;
-val* var1 /* : ANodes[AClosureDef] */;
-var1 = self->attrs[COLOR_parser_nodes__AClosureCallExpr___n_closure_defs].val; /* _n_closure_defs on <self:AClosureCallExpr> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_closure_defs", "src/parser/parser_nodes.nit", 1453);
-exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureCallExpr#n_closure_defs for (self: Object): ANodes[AClosureDef] */
-val* VIRTUAL_parser_nodes__AClosureCallExpr__n_closure_defs(val* self) {
-val* var /* : ANodes[AClosureDef] */;
-val* var1 /* : ANodes[AClosureDef] */;
-var1 = parser_nodes__AClosureCallExpr__n_closure_defs(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureCallExpr#init for (self: AClosureCallExpr) */
-void parser_nodes__AClosureCallExpr__init(val* self) {
-((void (*)(val*))(self->class->vft[COLOR_parser_nodes__AExpr__init]))(self) /* init on <self:AClosureCallExpr>*/;
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureCallExpr#init for (self: Object) */
-void VIRTUAL_parser_nodes__AClosureCallExpr__init(val* self) {
-parser_nodes__AClosureCallExpr__init(self);
-RET_LABEL:;
-}
 /* method parser_nodes#AVarExpr#init for (self: AVarExpr) */
 void parser_nodes__AVarExpr__init(val* self) {
 ((void (*)(val*))(self->class->vft[COLOR_parser_nodes__AVarFormExpr__init]))(self) /* init on <self:AVarExpr>*/;
@@ -569,8 +404,9 @@ val* var /* : AExpr */;
 val* var1 /* : AExpr */;
 var1 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr].val; /* _n_expr on <self:ARangeExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_expr", "src/parser/parser_nodes.nit", 1479);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_expr");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1455);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -601,8 +437,9 @@ val* var /* : AExpr */;
 val* var1 /* : AExpr */;
 var1 = self->attrs[COLOR_parser_nodes__ARangeExpr___n_expr2].val; /* _n_expr2 on <self:ARangeExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_expr2", "src/parser/parser_nodes.nit", 1480);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_expr2");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1456);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -643,8 +480,9 @@ val* var /* : TObra */;
 val* var1 /* : TObra */;
 var1 = self->attrs[COLOR_parser_nodes__ACrangeExpr___n_obra].val; /* _n_obra on <self:ACrangeExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_obra", "src/parser/parser_nodes.nit", 1486);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_obra");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1462);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -675,8 +513,9 @@ val* var /* : TCbra */;
 val* var1 /* : TCbra */;
 var1 = self->attrs[COLOR_parser_nodes__ACrangeExpr___n_cbra].val; /* _n_cbra on <self:ACrangeExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_cbra", "src/parser/parser_nodes.nit", 1487);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_cbra");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1463);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -717,8 +556,9 @@ val* var /* : TObra */;
 val* var1 /* : TObra */;
 var1 = self->attrs[COLOR_parser_nodes__AOrangeExpr___n_obra].val; /* _n_obra on <self:AOrangeExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_obra", "src/parser/parser_nodes.nit", 1493);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_obra");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1469);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -749,8 +589,9 @@ val* var /* : TObra */;
 val* var1 /* : TObra */;
 var1 = self->attrs[COLOR_parser_nodes__AOrangeExpr___n_cbra].val; /* _n_cbra on <self:AOrangeExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_cbra", "src/parser/parser_nodes.nit", 1494);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_cbra");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1470);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -791,8 +632,9 @@ val* var /* : AExprs */;
 val* var1 /* : AExprs */;
 var1 = self->attrs[COLOR_parser_nodes__AArrayExpr___n_exprs].val; /* _n_exprs on <self:AArrayExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_exprs", "src/parser/parser_nodes.nit", 1500);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_exprs");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1476);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -881,8 +723,9 @@ val* var /* : TKwtrue */;
 val* var1 /* : TKwtrue */;
 var1 = self->attrs[COLOR_parser_nodes__ATrueExpr___n_kwtrue].val; /* _n_kwtrue on <self:ATrueExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwtrue", "src/parser/parser_nodes.nit", 1517);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwtrue");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1493);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -923,8 +766,9 @@ val* var /* : TKwfalse */;
 val* var1 /* : TKwfalse */;
 var1 = self->attrs[COLOR_parser_nodes__AFalseExpr___n_kwfalse].val; /* _n_kwfalse on <self:AFalseExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwfalse", "src/parser/parser_nodes.nit", 1522);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwfalse");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1498);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -965,8 +809,9 @@ val* var /* : TKwnull */;
 val* var1 /* : TKwnull */;
 var1 = self->attrs[COLOR_parser_nodes__ANullExpr___n_kwnull].val; /* _n_kwnull on <self:ANullExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwnull", "src/parser/parser_nodes.nit", 1527);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwnull");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1503);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1007,8 +852,9 @@ val* var /* : TNumber */;
 val* var1 /* : TNumber */;
 var1 = self->attrs[COLOR_parser_nodes__AIntExpr___n_number].val; /* _n_number on <self:AIntExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_number", "src/parser/parser_nodes.nit", 1532);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_number");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1508);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1049,8 +895,9 @@ val* var /* : TFloat */;
 val* var1 /* : TFloat */;
 var1 = self->attrs[COLOR_parser_nodes__AFloatExpr___n_float].val; /* _n_float on <self:AFloatExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_float", "src/parser/parser_nodes.nit", 1537);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_float");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1513);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1091,8 +938,9 @@ val* var /* : TChar */;
 val* var1 /* : TChar */;
 var1 = self->attrs[COLOR_parser_nodes__ACharExpr___n_char].val; /* _n_char on <self:ACharExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_char", "src/parser/parser_nodes.nit", 1542);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_char");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1518);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1133,8 +981,9 @@ val* var /* : Token */;
 val* var1 /* : Token */;
 var1 = self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val; /* _n_string on <self:AStringFormExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_string", "src/parser/parser_nodes.nit", 1547);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_string");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1523);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1215,8 +1064,9 @@ val* var /* : ANodes[AExpr] */;
 val* var1 /* : ANodes[AExpr] */;
 var1 = self->attrs[COLOR_parser_nodes__ASuperstringExpr___n_exprs].val; /* _n_exprs on <self:ASuperstringExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_exprs", "src/parser/parser_nodes.nit", 1574);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_exprs");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1550);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1247,8 +1097,9 @@ val* var /* : TOpar */;
 val* var1 /* : TOpar */;
 var1 = self->attrs[COLOR_parser_nodes__AParExpr___n_opar].val; /* _n_opar on <self:AParExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_opar", "src/parser/parser_nodes.nit", 1580);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_opar");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1556);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1279,8 +1130,9 @@ val* var /* : TCpar */;
 val* var1 /* : TCpar */;
 var1 = self->attrs[COLOR_parser_nodes__AParExpr___n_cpar].val; /* _n_cpar on <self:AParExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_cpar", "src/parser/parser_nodes.nit", 1581);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_cpar");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1557);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1321,8 +1173,9 @@ val* var /* : AExpr */;
 val* var1 /* : AExpr */;
 var1 = self->attrs[COLOR_parser_nodes__AProxyExpr___n_expr].val; /* _n_expr on <self:AProxyExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_expr", "src/parser/parser_nodes.nit", 1587);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_expr");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1563);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1363,8 +1216,9 @@ val* var /* : AExpr */;
 val* var1 /* : AExpr */;
 var1 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_expr].val; /* _n_expr on <self:AAsCastExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_expr", "src/parser/parser_nodes.nit", 1593);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_expr");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1569);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1395,8 +1249,9 @@ val* var /* : TKwas */;
 val* var1 /* : TKwas */;
 var1 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_kwas].val; /* _n_kwas on <self:AAsCastExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwas", "src/parser/parser_nodes.nit", 1594);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwas");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1570);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1427,8 +1282,9 @@ val* var /* : TOpar */;
 val* var1 /* : TOpar */;
 var1 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_opar].val; /* _n_opar on <self:AAsCastExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_opar", "src/parser/parser_nodes.nit", 1595);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_opar");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1571);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1459,8 +1315,9 @@ val* var /* : AType */;
 val* var1 /* : AType */;
 var1 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_type].val; /* _n_type on <self:AAsCastExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_type", "src/parser/parser_nodes.nit", 1596);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_type");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1572);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1491,8 +1348,9 @@ val* var /* : TCpar */;
 val* var1 /* : TCpar */;
 var1 = self->attrs[COLOR_parser_nodes__AAsCastExpr___n_cpar].val; /* _n_cpar on <self:AAsCastExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_cpar", "src/parser/parser_nodes.nit", 1597);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_cpar");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1573);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1533,8 +1391,9 @@ val* var /* : AExpr */;
 val* var1 /* : AExpr */;
 var1 = self->attrs[COLOR_parser_nodes__AAsNotnullExpr___n_expr].val; /* _n_expr on <self:AAsNotnullExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_expr", "src/parser/parser_nodes.nit", 1603);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_expr");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1579);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1565,8 +1424,9 @@ val* var /* : TKwas */;
 val* var1 /* : TKwas */;
 var1 = self->attrs[COLOR_parser_nodes__AAsNotnullExpr___n_kwas].val; /* _n_kwas on <self:AAsNotnullExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwas", "src/parser/parser_nodes.nit", 1604);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwas");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1580);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1597,8 +1457,9 @@ val* var /* : TOpar */;
 val* var1 /* : TOpar */;
 var1 = self->attrs[COLOR_parser_nodes__AAsNotnullExpr___n_opar].val; /* _n_opar on <self:AAsNotnullExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_opar", "src/parser/parser_nodes.nit", 1605);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_opar");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1581);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1629,8 +1490,9 @@ val* var /* : TKwnot */;
 val* var1 /* : TKwnot */;
 var1 = self->attrs[COLOR_parser_nodes__AAsNotnullExpr___n_kwnot].val; /* _n_kwnot on <self:AAsNotnullExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwnot", "src/parser/parser_nodes.nit", 1606);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwnot");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1582);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1661,8 +1523,9 @@ val* var /* : TKwnull */;
 val* var1 /* : TKwnull */;
 var1 = self->attrs[COLOR_parser_nodes__AAsNotnullExpr___n_kwnull].val; /* _n_kwnull on <self:AAsNotnullExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwnull", "src/parser/parser_nodes.nit", 1607);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwnull");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1583);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1693,8 +1556,9 @@ val* var /* : TCpar */;
 val* var1 /* : TCpar */;
 var1 = self->attrs[COLOR_parser_nodes__AAsNotnullExpr___n_cpar].val; /* _n_cpar on <self:AAsNotnullExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_cpar", "src/parser/parser_nodes.nit", 1608);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_cpar");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1584);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1735,8 +1599,9 @@ val* var /* : TKwisset */;
 val* var1 /* : TKwisset */;
 var1 = self->attrs[COLOR_parser_nodes__AIssetAttrExpr___n_kwisset].val; /* _n_kwisset on <self:AIssetAttrExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwisset", "src/parser/parser_nodes.nit", 1614);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwisset");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1590);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1777,8 +1642,9 @@ val* var /* : ANodes[AExpr] */;
 val* var1 /* : ANodes[AExpr] */;
 var1 = self->attrs[COLOR_parser_nodes__AExprs___n_exprs].val; /* _n_exprs on <self:AExprs> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_exprs", "src/parser/parser_nodes.nit", 1620);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_exprs");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1596);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1809,8 +1675,9 @@ val* var /* : TKwdebug */;
 val* var1 /* : TKwdebug */;
 var1 = self->attrs[COLOR_parser_nodes__ADebugTypeExpr___n_kwdebug].val; /* _n_kwdebug on <self:ADebugTypeExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwdebug", "src/parser/parser_nodes.nit", 1625);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwdebug");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1601);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1841,8 +1708,9 @@ val* var /* : TKwtype */;
 val* var1 /* : TKwtype */;
 var1 = self->attrs[COLOR_parser_nodes__ADebugTypeExpr___n_kwtype].val; /* _n_kwtype on <self:ADebugTypeExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwtype", "src/parser/parser_nodes.nit", 1626);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwtype");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1602);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1873,8 +1741,9 @@ val* var /* : AExpr */;
 val* var1 /* : AExpr */;
 var1 = self->attrs[COLOR_parser_nodes__ADebugTypeExpr___n_expr].val; /* _n_expr on <self:ADebugTypeExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_expr", "src/parser/parser_nodes.nit", 1627);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_expr");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1603);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1905,8 +1774,9 @@ val* var /* : AType */;
 val* var1 /* : AType */;
 var1 = self->attrs[COLOR_parser_nodes__ADebugTypeExpr___n_type].val; /* _n_type on <self:ADebugTypeExpr> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_type", "src/parser/parser_nodes.nit", 1628);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_type");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1604);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1957,8 +1827,9 @@ val* var /* : TOpar */;
 val* var1 /* : TOpar */;
 var1 = self->attrs[COLOR_parser_nodes__AParExprs___n_opar].val; /* _n_opar on <self:AParExprs> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_opar", "src/parser/parser_nodes.nit", 1639);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_opar");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1615);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -1989,8 +1860,9 @@ val* var /* : TCpar */;
 val* var1 /* : TCpar */;
 var1 = self->attrs[COLOR_parser_nodes__AParExprs___n_cpar].val; /* _n_cpar on <self:AParExprs> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_cpar", "src/parser/parser_nodes.nit", 1640);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_cpar");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1616);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2031,8 +1903,9 @@ val* var /* : TObra */;
 val* var1 /* : TObra */;
 var1 = self->attrs[COLOR_parser_nodes__ABraExprs___n_obra].val; /* _n_obra on <self:ABraExprs> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_obra", "src/parser/parser_nodes.nit", 1646);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_obra");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1622);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2063,8 +1936,9 @@ val* var /* : TCbra */;
 val* var1 /* : TCbra */;
 var1 = self->attrs[COLOR_parser_nodes__ABraExprs___n_cbra].val; /* _n_cbra on <self:ABraExprs> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_cbra", "src/parser/parser_nodes.nit", 1647);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_cbra");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1623);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2115,8 +1989,9 @@ val* var /* : TPluseq */;
 val* var1 /* : TPluseq */;
 var1 = self->attrs[COLOR_parser_nodes__APlusAssignOp___n_pluseq].val; /* _n_pluseq on <self:APlusAssignOp> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_pluseq", "src/parser/parser_nodes.nit", 1656);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_pluseq");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1632);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2157,8 +2032,9 @@ val* var /* : TMinuseq */;
 val* var1 /* : TMinuseq */;
 var1 = self->attrs[COLOR_parser_nodes__AMinusAssignOp___n_minuseq].val; /* _n_minuseq on <self:AMinusAssignOp> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_minuseq", "src/parser/parser_nodes.nit", 1660);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_minuseq");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1636);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2193,273 +2069,6 @@ void VIRTUAL_parser_nodes__AMinusAssignOp__init(val* self) {
 parser_nodes__AMinusAssignOp__init(self);
 RET_LABEL:;
 }
-/* method parser_nodes#AClosureDef#n_bang for (self: AClosureDef): TBang */
-val* parser_nodes__AClosureDef__n_bang(val* self) {
-val* var /* : TBang */;
-val* var1 /* : TBang */;
-var1 = self->attrs[COLOR_parser_nodes__AClosureDef___n_bang].val; /* _n_bang on <self:AClosureDef> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_bang", "src/parser/parser_nodes.nit", 1665);
-exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#n_bang for (self: Object): TBang */
-val* VIRTUAL_parser_nodes__AClosureDef__n_bang(val* self) {
-val* var /* : TBang */;
-val* var1 /* : TBang */;
-var1 = parser_nodes__AClosureDef__n_bang(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#n_bang= for (self: AClosureDef, TBang) */
-void parser_nodes__AClosureDef__n_bang_61d(val* self, val* p0) {
-self->attrs[COLOR_parser_nodes__AClosureDef___n_bang].val = p0; /* _n_bang on <self:AClosureDef> */
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureDef#n_bang= for (self: Object, TBang) */
-void VIRTUAL_parser_nodes__AClosureDef__n_bang_61d(val* self, val* p0) {
-parser_nodes__AClosureDef__n_bang_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureDef#n_id for (self: AClosureDef): AClosureId */
-val* parser_nodes__AClosureDef__n_id(val* self) {
-val* var /* : AClosureId */;
-val* var1 /* : AClosureId */;
-var1 = self->attrs[COLOR_parser_nodes__AClosureDef___n_id].val; /* _n_id on <self:AClosureDef> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_id", "src/parser/parser_nodes.nit", 1666);
-exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#n_id for (self: Object): AClosureId */
-val* VIRTUAL_parser_nodes__AClosureDef__n_id(val* self) {
-val* var /* : AClosureId */;
-val* var1 /* : AClosureId */;
-var1 = parser_nodes__AClosureDef__n_id(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#n_id= for (self: AClosureDef, AClosureId) */
-void parser_nodes__AClosureDef__n_id_61d(val* self, val* p0) {
-self->attrs[COLOR_parser_nodes__AClosureDef___n_id].val = p0; /* _n_id on <self:AClosureDef> */
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureDef#n_id= for (self: Object, AClosureId) */
-void VIRTUAL_parser_nodes__AClosureDef__n_id_61d(val* self, val* p0) {
-parser_nodes__AClosureDef__n_id_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureDef#n_ids for (self: AClosureDef): ANodes[TId] */
-val* parser_nodes__AClosureDef__n_ids(val* self) {
-val* var /* : ANodes[TId] */;
-val* var1 /* : ANodes[TId] */;
-var1 = self->attrs[COLOR_parser_nodes__AClosureDef___n_ids].val; /* _n_ids on <self:AClosureDef> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_ids", "src/parser/parser_nodes.nit", 1667);
-exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#n_ids for (self: Object): ANodes[TId] */
-val* VIRTUAL_parser_nodes__AClosureDef__n_ids(val* self) {
-val* var /* : ANodes[TId] */;
-val* var1 /* : ANodes[TId] */;
-var1 = parser_nodes__AClosureDef__n_ids(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#n_kwdo for (self: AClosureDef): nullable TKwdo */
-val* parser_nodes__AClosureDef__n_kwdo(val* self) {
-val* var /* : nullable TKwdo */;
-val* var1 /* : nullable TKwdo */;
-var1 = self->attrs[COLOR_parser_nodes__AClosureDef___n_kwdo].val; /* _n_kwdo on <self:AClosureDef> */
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#n_kwdo for (self: Object): nullable TKwdo */
-val* VIRTUAL_parser_nodes__AClosureDef__n_kwdo(val* self) {
-val* var /* : nullable TKwdo */;
-val* var1 /* : nullable TKwdo */;
-var1 = parser_nodes__AClosureDef__n_kwdo(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#n_kwdo= for (self: AClosureDef, nullable TKwdo) */
-void parser_nodes__AClosureDef__n_kwdo_61d(val* self, val* p0) {
-self->attrs[COLOR_parser_nodes__AClosureDef___n_kwdo].val = p0; /* _n_kwdo on <self:AClosureDef> */
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureDef#n_kwdo= for (self: Object, nullable TKwdo) */
-void VIRTUAL_parser_nodes__AClosureDef__n_kwdo_61d(val* self, val* p0) {
-parser_nodes__AClosureDef__n_kwdo_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureDef#n_expr for (self: AClosureDef): nullable AExpr */
-val* parser_nodes__AClosureDef__n_expr(val* self) {
-val* var /* : nullable AExpr */;
-val* var1 /* : nullable AExpr */;
-var1 = self->attrs[COLOR_parser_nodes__AClosureDef___n_expr].val; /* _n_expr on <self:AClosureDef> */
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#n_expr for (self: Object): nullable AExpr */
-val* VIRTUAL_parser_nodes__AClosureDef__n_expr(val* self) {
-val* var /* : nullable AExpr */;
-val* var1 /* : nullable AExpr */;
-var1 = parser_nodes__AClosureDef__n_expr(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#n_expr= for (self: AClosureDef, nullable AExpr) */
-void parser_nodes__AClosureDef__n_expr_61d(val* self, val* p0) {
-self->attrs[COLOR_parser_nodes__AClosureDef___n_expr].val = p0; /* _n_expr on <self:AClosureDef> */
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureDef#n_expr= for (self: Object, nullable AExpr) */
-void VIRTUAL_parser_nodes__AClosureDef__n_expr_61d(val* self, val* p0) {
-parser_nodes__AClosureDef__n_expr_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureDef#hot_location for (self: AClosureDef): Location */
-val* parser_nodes__AClosureDef__hot_location(val* self) {
-val* var /* : Location */;
-val* var1 /* : AClosureId */;
-val* var2 /* : Location */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_parser_nodes__AClosureDef__n_id]))(self) /* n_id on <self:AClosureDef>*/;
-var2 = ((val* (*)(val*))(var1->class->vft[COLOR_parser_nodes__ANode__location]))(var1) /* location on <var1:AClosureId>*/;
-var = var2;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#hot_location for (self: Object): Location */
-val* VIRTUAL_parser_nodes__AClosureDef__hot_location(val* self) {
-val* var /* : Location */;
-val* var1 /* : Location */;
-var1 = parser_nodes__AClosureDef__hot_location(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#AClosureDef#init for (self: AClosureDef) */
-void parser_nodes__AClosureDef__init(val* self) {
-((void (*)(val*))(self->class->vft[COLOR_parser_nodes__ALabelable__init]))(self) /* init on <self:AClosureDef>*/;
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureDef#init for (self: Object) */
-void VIRTUAL_parser_nodes__AClosureDef__init(val* self) {
-parser_nodes__AClosureDef__init(self);
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureId#init for (self: AClosureId) */
-void parser_nodes__AClosureId__init(val* self) {
-((void (*)(val*))(self->class->vft[COLOR_parser_nodes__Prod__init]))(self) /* init on <self:AClosureId>*/;
-RET_LABEL:;
-}
-/* method parser_nodes#AClosureId#init for (self: Object) */
-void VIRTUAL_parser_nodes__AClosureId__init(val* self) {
-parser_nodes__AClosureId__init(self);
-RET_LABEL:;
-}
-/* method parser_nodes#ASimpleClosureId#n_id for (self: ASimpleClosureId): TId */
-val* parser_nodes__ASimpleClosureId__n_id(val* self) {
-val* var /* : TId */;
-val* var1 /* : TId */;
-var1 = self->attrs[COLOR_parser_nodes__ASimpleClosureId___n_id].val; /* _n_id on <self:ASimpleClosureId> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_id", "src/parser/parser_nodes.nit", 1677);
-exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#ASimpleClosureId#n_id for (self: Object): TId */
-val* VIRTUAL_parser_nodes__ASimpleClosureId__n_id(val* self) {
-val* var /* : TId */;
-val* var1 /* : TId */;
-var1 = parser_nodes__ASimpleClosureId__n_id(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#ASimpleClosureId#n_id= for (self: ASimpleClosureId, TId) */
-void parser_nodes__ASimpleClosureId__n_id_61d(val* self, val* p0) {
-self->attrs[COLOR_parser_nodes__ASimpleClosureId___n_id].val = p0; /* _n_id on <self:ASimpleClosureId> */
-RET_LABEL:;
-}
-/* method parser_nodes#ASimpleClosureId#n_id= for (self: Object, TId) */
-void VIRTUAL_parser_nodes__ASimpleClosureId__n_id_61d(val* self, val* p0) {
-parser_nodes__ASimpleClosureId__n_id_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_nodes#ASimpleClosureId#init for (self: ASimpleClosureId) */
-void parser_nodes__ASimpleClosureId__init(val* self) {
-((void (*)(val*))(self->class->vft[COLOR_parser_nodes__AClosureId__init]))(self) /* init on <self:ASimpleClosureId>*/;
-RET_LABEL:;
-}
-/* method parser_nodes#ASimpleClosureId#init for (self: Object) */
-void VIRTUAL_parser_nodes__ASimpleClosureId__init(val* self) {
-parser_nodes__ASimpleClosureId__init(self);
-RET_LABEL:;
-}
-/* method parser_nodes#ABreakClosureId#n_kwbreak for (self: ABreakClosureId): TKwbreak */
-val* parser_nodes__ABreakClosureId__n_kwbreak(val* self) {
-val* var /* : TKwbreak */;
-val* var1 /* : TKwbreak */;
-var1 = self->attrs[COLOR_parser_nodes__ABreakClosureId___n_kwbreak].val; /* _n_kwbreak on <self:ABreakClosureId> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwbreak", "src/parser/parser_nodes.nit", 1681);
-exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#ABreakClosureId#n_kwbreak for (self: Object): TKwbreak */
-val* VIRTUAL_parser_nodes__ABreakClosureId__n_kwbreak(val* self) {
-val* var /* : TKwbreak */;
-val* var1 /* : TKwbreak */;
-var1 = parser_nodes__ABreakClosureId__n_kwbreak(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method parser_nodes#ABreakClosureId#n_kwbreak= for (self: ABreakClosureId, TKwbreak) */
-void parser_nodes__ABreakClosureId__n_kwbreak_61d(val* self, val* p0) {
-self->attrs[COLOR_parser_nodes__ABreakClosureId___n_kwbreak].val = p0; /* _n_kwbreak on <self:ABreakClosureId> */
-RET_LABEL:;
-}
-/* method parser_nodes#ABreakClosureId#n_kwbreak= for (self: Object, TKwbreak) */
-void VIRTUAL_parser_nodes__ABreakClosureId__n_kwbreak_61d(val* self, val* p0) {
-parser_nodes__ABreakClosureId__n_kwbreak_61d(self, p0);
-RET_LABEL:;
-}
-/* method parser_nodes#ABreakClosureId#init for (self: ABreakClosureId) */
-void parser_nodes__ABreakClosureId__init(val* self) {
-((void (*)(val*))(self->class->vft[COLOR_parser_nodes__AClosureId__init]))(self) /* init on <self:ABreakClosureId>*/;
-RET_LABEL:;
-}
-/* method parser_nodes#ABreakClosureId#init for (self: Object) */
-void VIRTUAL_parser_nodes__ABreakClosureId__init(val* self) {
-parser_nodes__ABreakClosureId__init(self);
-RET_LABEL:;
-}
 /* method parser_nodes#AModuleName#n_quad for (self: AModuleName): nullable TQuad */
 val* parser_nodes__AModuleName__n_quad(val* self) {
 val* var /* : nullable TQuad */;
@@ -2494,8 +2103,9 @@ val* var /* : ANodes[TId] */;
 val* var1 /* : ANodes[TId] */;
 var1 = self->attrs[COLOR_parser_nodes__AModuleName___n_path].val; /* _n_path on <self:AModuleName> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_path", "src/parser/parser_nodes.nit", 1686);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_path");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1642);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2516,8 +2126,9 @@ val* var /* : TId */;
 val* var1 /* : TId */;
 var1 = self->attrs[COLOR_parser_nodes__AModuleName___n_id].val; /* _n_id on <self:AModuleName> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_id", "src/parser/parser_nodes.nit", 1687);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_id");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1643);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2558,8 +2169,9 @@ val* var /* : TKwin */;
 val* var1 /* : TKwin */;
 var1 = self->attrs[COLOR_parser_nodes__AInLanguage___n_kwin].val; /* _n_kwin on <self:AInLanguage> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_kwin", "src/parser/parser_nodes.nit", 1691);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_kwin");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1647);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2590,8 +2202,9 @@ val* var /* : TString */;
 val* var1 /* : TString */;
 var1 = self->attrs[COLOR_parser_nodes__AInLanguage___n_string].val; /* _n_string on <self:AInLanguage> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_string", "src/parser/parser_nodes.nit", 1692);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_string");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1648);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2660,8 +2273,9 @@ val* var /* : TExternCodeSegment */;
 val* var1 /* : TExternCodeSegment */;
 var1 = self->attrs[COLOR_parser_nodes__AExternCodeBlock___n_extern_code_segment].val; /* _n_extern_code_segment on <self:AExternCodeBlock> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_extern_code_segment", "src/parser/parser_nodes.nit", 1697);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_extern_code_segment");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1653);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2730,8 +2344,9 @@ val* var /* : ANodes[TId] */;
 val* var1 /* : ANodes[TId] */;
 var1 = self->attrs[COLOR_parser_nodes__AQualified___n_id].val; /* _n_id on <self:AQualified> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_id", "src/parser/parser_nodes.nit", 1702);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_id");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1658);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2790,8 +2405,9 @@ val* var /* : ANodes[TComment] */;
 val* var1 /* : ANodes[TComment] */;
 var1 = self->attrs[COLOR_parser_nodes__ADoc___n_comment].val; /* _n_comment on <self:ADoc> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_comment", "src/parser/parser_nodes.nit", 1710);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_comment");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1666);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2878,8 +2494,9 @@ val* var /* : ANodes[AAnnotation] */;
 val* var1 /* : ANodes[AAnnotation] */;
 var1 = self->attrs[COLOR_parser_nodes__AAnnotations___n_items].val; /* _n_items on <self:AAnnotations> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_items", "src/parser/parser_nodes.nit", 1717);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_items");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1673);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2938,8 +2555,9 @@ val* var /* : AAtid */;
 val* var1 /* : AAtid */;
 var1 = self->attrs[COLOR_parser_nodes__AAnnotation___n_atid].val; /* _n_atid on <self:AAnnotation> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_atid", "src/parser/parser_nodes.nit", 1722);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_atid");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1678);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -2998,8 +2616,9 @@ val* var /* : ANodes[AAtArg] */;
 val* var1 /* : ANodes[AAtArg] */;
 var1 = self->attrs[COLOR_parser_nodes__AAnnotation___n_args].val; /* _n_args on <self:AAnnotation> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_args", "src/parser/parser_nodes.nit", 1724);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_args");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1680);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -3068,8 +2687,9 @@ val* var /* : AType */;
 val* var1 /* : AType */;
 var1 = self->attrs[COLOR_parser_nodes__ATypeAtArg___n_type].val; /* _n_type on <self:ATypeAtArg> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_type", "src/parser/parser_nodes.nit", 1732);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_type");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1688);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -3110,8 +2730,9 @@ val* var /* : AExpr */;
 val* var1 /* : AExpr */;
 var1 = self->attrs[COLOR_parser_nodes__AExprAtArg___n_expr].val; /* _n_expr on <self:AExprAtArg> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_expr", "src/parser/parser_nodes.nit", 1736);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_expr");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1692);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -3162,8 +2783,9 @@ val* var /* : Token */;
 val* var1 /* : Token */;
 var1 = self->attrs[COLOR_parser_nodes__AAtid___n_id].val; /* _n_id on <self:AAtid> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_id", "src/parser/parser_nodes.nit", 1743);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_id");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1699);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;
@@ -3292,8 +2914,9 @@ val* var /* : EOF */;
 val* var1 /* : EOF */;
 var1 = self->attrs[COLOR_parser_nodes__Start___n_eof].val; /* _n_eof on <self:Start> */
 if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute _n_eof", "src/parser/parser_nodes.nit", 1768);
-exit(1);
+fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _n_eof");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser_nodes.nit", 1724);
+show_backtrace(1);
 }
 var = var1;
 RET_LABEL:;