csrc: regen for 32 bits platforms and Windows
[nit.git] / c_src / nitc__astvalidation.sep.1.c
index 8dd1daa..157cc87 100644 (file)
@@ -1,5 +1,5 @@
 #include "nitc__astvalidation.sep.0.h"
-/* method astvalidation#ASTValidationVisitor#visit for (self: ASTValidationVisitor, ANode) */
+/* method astvalidation$ASTValidationVisitor$visit for (self: ASTValidationVisitor, ANode) */
 void nitc___nitc__ASTValidationVisitor___nitc__parser_nodes__Visitor__visit(val* self, val* p0) {
 val* var_node /* var node: ANode */;
 var_node = p0;
@@ -8,12 +8,15 @@ var_node = p0;
 }
 RET_LABEL:;
 }
-/* method astvalidation#ASTValidationVisitor#path for (self: ASTValidationVisitor): CircularArray[ANode] */
+/* method astvalidation$ASTValidationVisitor$path for (self: ASTValidationVisitor): CircularArray[ANode] */
 val* nitc___nitc__ASTValidationVisitor___path(val* self) {
 val* var /* : CircularArray[ANode] */;
 val* var1 /* : CircularArray[ANode] */;
 var1 = self->attrs[COLOR_nitc__astvalidation__ASTValidationVisitor___path].val; /* _path on <self:ASTValidationVisitor> */
 if (unlikely(var1 == NULL)) {
+if(catchStack.cursor >= 0){
+longjmp(catchStack.envs[catchStack.cursor], 1);
+}
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _path");
 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__astvalidation, 27);
 fatal_exit(1);
@@ -22,12 +25,15 @@ var = var1;
 RET_LABEL:;
 return var;
 }
-/* method astvalidation#ASTValidationVisitor#seen for (self: ASTValidationVisitor): HashSet[ANode] */
+/* method astvalidation$ASTValidationVisitor$seen for (self: ASTValidationVisitor): HashSet[ANode] */
 val* nitc___nitc__ASTValidationVisitor___seen(val* self) {
 val* var /* : HashSet[ANode] */;
 val* var1 /* : HashSet[ANode] */;
 var1 = self->attrs[COLOR_nitc__astvalidation__ASTValidationVisitor___seen].val; /* _seen on <self:ASTValidationVisitor> */
 if (unlikely(var1 == NULL)) {
+if(catchStack.cursor >= 0){
+longjmp(catchStack.envs[catchStack.cursor], 1);
+}
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _seen");
 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__astvalidation, 28);
 fatal_exit(1);
@@ -36,7 +42,7 @@ var = var1;
 RET_LABEL:;
 return var;
 }
-/* method astvalidation#ANode#accept_ast_validation for (self: ANode, ASTValidationVisitor) */
+/* method astvalidation$ANode$accept_ast_validation for (self: ANode, ASTValidationVisitor) */
 void nitc__astvalidation___ANode___accept_ast_validation(val* self, val* p0) {
 val* var_v /* var v: ASTValidationVisitor */;
 val* var /* : nullable ANode */;
@@ -75,44 +81,64 @@ val* var37 /* : NativeArray[String] */;
 static val* varonce;
 static val* varonce38;
 val* var39 /* : String */;
-char* var40 /* : NativeString */;
+char* var40 /* : CString */;
 val* var41 /* : String */;
-static val* varonce42;
-val* var43 /* : String */;
-char* var44 /* : NativeString */;
-val* var45 /* : String */;
+val* var42 /* : nullable Int */;
+val* var43 /* : nullable Int */;
+val* var44 /* : nullable Bool */;
+val* var45 /* : nullable Bool */;
 static val* varonce46;
 val* var47 /* : String */;
-char* var48 /* : NativeString */;
+char* var48 /* : CString */;
 val* var49 /* : String */;
-val* var50 /* : String */;
-val* var51 /* : String */;
-val* var52 /* : String */;
-val* var53 /* : HashSet[ANode] */;
-val* var55 /* : HashSet[ANode] */;
-val* var57 /* : NativeArray[String] */;
-static val* varonce56;
-static val* varonce58;
-val* var59 /* : String */;
-char* var60 /* : NativeString */;
-val* var61 /* : String */;
-static val* varonce62;
+val* var50 /* : nullable Int */;
+val* var51 /* : nullable Int */;
+val* var52 /* : nullable Bool */;
+val* var53 /* : nullable Bool */;
+static val* varonce54;
+val* var55 /* : String */;
+char* var56 /* : CString */;
+val* var57 /* : String */;
+val* var58 /* : nullable Int */;
+val* var59 /* : nullable Int */;
+val* var60 /* : nullable Bool */;
+val* var61 /* : nullable Bool */;
+val* var62 /* : String */;
 val* var63 /* : String */;
-char* var64 /* : NativeString */;
-val* var65 /* : String */;
-val* var66 /* : String */;
-val* var67 /* : String */;
-val* var68 /* : String */;
-short int var69 /* : Bool */;
-short int var70 /* : Bool */;
-val* var71 /* : nullable ANode */;
-val* var73 /* : nullable ANode */;
-val* var74 /* : Location */;
-val* var76 /* : Location */;
-val* var77 /* : nullable Object */;
+val* var64 /* : String */;
+val* var65 /* : HashSet[ANode] */;
+val* var67 /* : HashSet[ANode] */;
+val* var69 /* : NativeArray[String] */;
+static val* varonce68;
+static val* varonce70;
+val* var71 /* : String */;
+char* var72 /* : CString */;
+val* var73 /* : String */;
+val* var74 /* : nullable Int */;
+val* var75 /* : nullable Int */;
+val* var76 /* : nullable Bool */;
+val* var77 /* : nullable Bool */;
+static val* varonce78;
+val* var79 /* : String */;
+char* var80 /* : CString */;
+val* var81 /* : String */;
+val* var82 /* : nullable Int */;
+val* var83 /* : nullable Int */;
+val* var84 /* : nullable Bool */;
+val* var85 /* : nullable Bool */;
+val* var86 /* : String */;
+val* var87 /* : String */;
+val* var88 /* : String */;
+short int var89 /* : Bool */;
+short int var90 /* : Bool */;
+val* var91 /* : nullable ANode */;
+val* var93 /* : nullable ANode */;
+val* var94 /* : Location */;
+val* var96 /* : Location */;
+val* var97 /* : nullable Object */;
 var_v = p0;
 {
-{ /* Inline parser_nodes#ANode#parent (self) on <self:ANode> */
+{ /* Inline parser_nodes$ANode$parent (self) on <self:ANode> */
 var2 = self->attrs[COLOR_nitc__parser_nodes__ANode___parent].val; /* _parent on <self:ANode> */
 var = var2;
 RET_LABEL1:(void)0;
@@ -120,9 +146,12 @@ RET_LABEL1:(void)0;
 }
 var_parent = var;
 {
-{ /* Inline astvalidation#ASTValidationVisitor#path (var_v) on <var_v:ASTValidationVisitor> */
+{ /* Inline astvalidation$ASTValidationVisitor$path (var_v) on <var_v:ASTValidationVisitor> */
 var5 = var_v->attrs[COLOR_nitc__astvalidation__ASTValidationVisitor___path].val; /* _path on <var_v:ASTValidationVisitor> */
 if (unlikely(var5 == NULL)) {
+if(catchStack.cursor >= 0){
+longjmp(catchStack.envs[catchStack.cursor], 1);
+}
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _path");
 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__astvalidation, 27);
 fatal_exit(1);
@@ -133,21 +162,21 @@ RET_LABEL4:(void)0;
 }
 var_path = var3;
 {
-{ /* Inline circular_array#CircularArray#length (var_path) on <var_path:CircularArray[ANode]> */
+{ /* Inline circular_array$CircularArray$length (var_path) on <var_path:CircularArray[ANode]> */
 var8 = var_path->attrs[COLOR_core__circular_array__CircularArray___length].l; /* _length on <var_path:CircularArray[ANode]> */
 var6 = var8;
 RET_LABEL7:(void)0;
 }
 }
 {
-{ /* Inline kernel#Int#> (var6,0l) on <var6:Int> */
+{ /* Inline kernel$Int$> (var6,0l) on <var6:Int> */
 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
 /* <0l:Int> isa OTHER */
 var11 = 1; /* easy <0l:Int> isa OTHER*/
 if (unlikely(!var11)) {
 var_class_name = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 730);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 727);
 fatal_exit(1);
 }
 var12 = var6 > 0l;
@@ -158,9 +187,12 @@ RET_LABEL10:(void)0;
 }
 if (var9){
 {
-{ /* Inline astvalidation#ASTValidationVisitor#path (var_v) on <var_v:ASTValidationVisitor> */
+{ /* Inline astvalidation$ASTValidationVisitor$path (var_v) on <var_v:ASTValidationVisitor> */
 var15 = var_v->attrs[COLOR_nitc__astvalidation__ASTValidationVisitor___path].val; /* _path on <var_v:ASTValidationVisitor> */
 if (unlikely(var15 == NULL)) {
+if(catchStack.cursor >= 0){
+longjmp(catchStack.envs[catchStack.cursor], 1);
+}
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _path");
 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__astvalidation, 27);
 fatal_exit(1);
@@ -179,10 +211,10 @@ var17 = 1; /* is null */
 var17 = 0; /* arg is null but recv is not */
 }
 if (0) {
-{ /* Inline kernel#Object#== (var_parent,((val*)NULL)) on <var_parent:nullable ANode> */
+{ /* Inline kernel$Object$== (var_parent,((val*)NULL)) on <var_parent:nullable ANode> */
 var_other = ((val*)NULL);
 {
-{ /* Inline kernel#Object#is_same_instance (var_parent,var_other) on <var_parent:nullable ANode(ANode)> */
+{ /* Inline kernel$Object$is_same_instance (var_parent,var_other) on <var_parent:nullable ANode(ANode)> */
 var22 = var_parent == var_other;
 var20 = var22;
 goto RET_LABEL21;
@@ -197,15 +229,18 @@ var17 = var18;
 }
 if (var17){
 {
-{ /* Inline parser_nodes#ANode#parent= (self,var_path_parent) on <self:ANode> */
+{ /* Inline parser_nodes$ANode$parent= (self,var_path_parent) on <self:ANode> */
 self->attrs[COLOR_nitc__parser_nodes__ANode___parent].val = var_path_parent; /* _parent on <self:ANode> */
 RET_LABEL23:(void)0;
 }
 }
 {
-{ /* Inline astvalidation#ASTValidationVisitor#seen (var_v) on <var_v:ASTValidationVisitor> */
+{ /* Inline astvalidation$ASTValidationVisitor$seen (var_v) on <var_v:ASTValidationVisitor> */
 var26 = var_v->attrs[COLOR_nitc__astvalidation__ASTValidationVisitor___seen].val; /* _seen on <var_v:ASTValidationVisitor> */
 if (unlikely(var26 == NULL)) {
+if(catchStack.cursor >= 0){
+longjmp(catchStack.envs[catchStack.cursor], 1);
+}
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _seen");
 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__astvalidation, 28);
 fatal_exit(1);
@@ -215,11 +250,11 @@ RET_LABEL25:(void)0;
 }
 }
 {
-core___core__HashSet___core__abstract_collection__SimpleCollection__add(var24, self); /* Direct call hash_collection#HashSet#add on <var24:HashSet[ANode]>*/
+core___core__HashSet___core__abstract_collection__SimpleCollection__add(var24, self); /* Direct call hash_collection$HashSet$add on <var24:HashSet[ANode]>*/
 }
 } else {
 {
-{ /* Inline kernel#Object#!= (var_parent,var_path_parent) on <var_parent:nullable ANode(ANode)> */
+{ /* Inline kernel$Object$!= (var_parent,var_path_parent) on <var_parent:nullable ANode(ANode)> */
 var_other29 = var_path_parent;
 {
 var30 = ((short int(*)(val* self, val* p0))(var_parent->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_parent, var_other29); /* == on <var_parent:nullable ANode(ANode)>*/
@@ -232,15 +267,18 @@ RET_LABEL28:(void)0;
 }
 if (var27){
 {
-{ /* Inline parser_nodes#ANode#parent= (self,var_path_parent) on <self:ANode> */
+{ /* Inline parser_nodes$ANode$parent= (self,var_path_parent) on <self:ANode> */
 self->attrs[COLOR_nitc__parser_nodes__ANode___parent].val = var_path_parent; /* _parent on <self:ANode> */
 RET_LABEL32:(void)0;
 }
 }
 {
-{ /* Inline astvalidation#ASTValidationVisitor#seen (var_v) on <var_v:ASTValidationVisitor> */
+{ /* Inline astvalidation$ASTValidationVisitor$seen (var_v) on <var_v:ASTValidationVisitor> */
 var35 = var_v->attrs[COLOR_nitc__astvalidation__ASTValidationVisitor___seen].val; /* _seen on <var_v:ASTValidationVisitor> */
 if (unlikely(var35 == NULL)) {
+if(catchStack.cursor >= 0){
+longjmp(catchStack.envs[catchStack.cursor], 1);
+}
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _seen");
 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__astvalidation, 28);
 fatal_exit(1);
@@ -254,107 +292,130 @@ var36 = core___core__HashSet___core__abstract_collection__Collection__has(var33,
 }
 if (var36){
 if (unlikely(varonce==NULL)) {
-var37 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String);
+var37 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String);
 if (likely(varonce38!=NULL)) {
 var39 = varonce38;
 } else {
 var40 = "DUPLICATE (NOTATREE): already seen node with parent ";
-var41 = core__flat___NativeString___to_s_full(var40, 52l, 52l);
+var42 = (val*)(52l<<2|1);
+var43 = (val*)(52l<<2|1);
+var44 = (val*)((long)(0)<<2|3);
+var45 = (val*)((long)(0)<<2|3);
+var41 = core__flat___CString___to_s_unsafe(var40, var42, var43, var44, var45);
 var39 = var41;
 varonce38 = var39;
 }
 ((struct instance_core__NativeArray*)var37)->values[0]=var39;
-if (likely(varonce42!=NULL)) {
-var43 = varonce42;
-} else {
-var44 = " now with ";
-var45 = core__flat___NativeString___to_s_full(var44, 10l, 10l);
-var43 = var45;
-varonce42 = var43;
-}
-((struct instance_core__NativeArray*)var37)->values[2]=var43;
 if (likely(varonce46!=NULL)) {
 var47 = varonce46;
 } else {
-var48 = ".";
-var49 = core__flat___NativeString___to_s_full(var48, 1l, 1l);
+var48 = " now with ";
+var50 = (val*)(10l<<2|1);
+var51 = (val*)(10l<<2|1);
+var52 = (val*)((long)(0)<<2|3);
+var53 = (val*)((long)(0)<<2|3);
+var49 = core__flat___CString___to_s_unsafe(var48, var50, var51, var52, var53);
 var47 = var49;
 varonce46 = var47;
 }
-((struct instance_core__NativeArray*)var37)->values[4]=var47;
+((struct instance_core__NativeArray*)var37)->values[2]=var47;
+if (likely(varonce54!=NULL)) {
+var55 = varonce54;
+} else {
+var56 = ".";
+var58 = (val*)(1l<<2|1);
+var59 = (val*)(1l<<2|1);
+var60 = (val*)((long)(0)<<2|3);
+var61 = (val*)((long)(0)<<2|3);
+var57 = core__flat___CString___to_s_unsafe(var56, var58, var59, var60, var61);
+var55 = var57;
+varonce54 = var55;
+}
+((struct instance_core__NativeArray*)var37)->values[4]=var55;
 } else {
 var37 = varonce;
 varonce = NULL;
 }
 {
-var50 = ((val*(*)(val* self))(var_parent->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_parent); /* to_s on <var_parent:nullable ANode(ANode)>*/
+var62 = ((val*(*)(val* self))(var_parent->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_parent); /* to_s on <var_parent:nullable ANode(ANode)>*/
 }
-((struct instance_core__NativeArray*)var37)->values[1]=var50;
+((struct instance_core__NativeArray*)var37)->values[1]=var62;
 {
-var51 = ((val*(*)(val* self))(var_path_parent->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_path_parent); /* to_s on <var_path_parent:ANode>*/
+var63 = ((val*(*)(val* self))(var_path_parent->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_path_parent); /* to_s on <var_path_parent:ANode>*/
 }
-((struct instance_core__NativeArray*)var37)->values[3]=var51;
+((struct instance_core__NativeArray*)var37)->values[3]=var63;
 {
-var52 = ((val*(*)(val* self))(var37->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var37); /* native_to_s on <var37:NativeArray[String]>*/
+var64 = ((val*(*)(val* self))(var37->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var37); /* native_to_s on <var37:NativeArray[String]>*/
 }
 varonce = var37;
 {
-nitc___nitc__ANode___debug(self, var52); /* Direct call parser_nodes#ANode#debug on <self:ANode>*/
+nitc___nitc__ANode___debug(self, var64); /* Direct call parser_nodes$ANode$debug on <self:ANode>*/
 }
 } else {
 {
-{ /* Inline astvalidation#ASTValidationVisitor#seen (var_v) on <var_v:ASTValidationVisitor> */
-var55 = var_v->attrs[COLOR_nitc__astvalidation__ASTValidationVisitor___seen].val; /* _seen on <var_v:ASTValidationVisitor> */
-if (unlikely(var55 == NULL)) {
+{ /* Inline astvalidation$ASTValidationVisitor$seen (var_v) on <var_v:ASTValidationVisitor> */
+var67 = var_v->attrs[COLOR_nitc__astvalidation__ASTValidationVisitor___seen].val; /* _seen on <var_v:ASTValidationVisitor> */
+if (unlikely(var67 == NULL)) {
+if(catchStack.cursor >= 0){
+longjmp(catchStack.envs[catchStack.cursor], 1);
+}
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _seen");
 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__astvalidation, 28);
 fatal_exit(1);
 }
-var53 = var55;
-RET_LABEL54:(void)0;
+var65 = var67;
+RET_LABEL66:(void)0;
 }
 }
 {
-core___core__HashSet___core__abstract_collection__SimpleCollection__add(var53, self); /* Direct call hash_collection#HashSet#add on <var53:HashSet[ANode]>*/
+core___core__HashSet___core__abstract_collection__SimpleCollection__add(var65, self); /* Direct call hash_collection$HashSet$add on <var65:HashSet[ANode]>*/
 }
-if (unlikely(varonce56==NULL)) {
-var57 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String);
-if (likely(varonce58!=NULL)) {
-var59 = varonce58;
-} else {
-var60 = "PARENT: expected parent: ";
-var61 = core__flat___NativeString___to_s_full(var60, 25l, 25l);
-var59 = var61;
-varonce58 = var59;
-}
-((struct instance_core__NativeArray*)var57)->values[0]=var59;
-if (likely(varonce62!=NULL)) {
-var63 = varonce62;
+if (unlikely(varonce68==NULL)) {
+var69 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String);
+if (likely(varonce70!=NULL)) {
+var71 = varonce70;
 } else {
-var64 = ", got ";
-var65 = core__flat___NativeString___to_s_full(var64, 6l, 6l);
-var63 = var65;
-varonce62 = var63;
+var72 = "PARENT: expected parent: ";
+var74 = (val*)(25l<<2|1);
+var75 = (val*)(25l<<2|1);
+var76 = (val*)((long)(0)<<2|3);
+var77 = (val*)((long)(0)<<2|3);
+var73 = core__flat___CString___to_s_unsafe(var72, var74, var75, var76, var77);
+var71 = var73;
+varonce70 = var71;
 }
-((struct instance_core__NativeArray*)var57)->values[2]=var63;
+((struct instance_core__NativeArray*)var69)->values[0]=var71;
+if (likely(varonce78!=NULL)) {
+var79 = varonce78;
+} else {
+var80 = ", got ";
+var82 = (val*)(6l<<2|1);
+var83 = (val*)(6l<<2|1);
+var84 = (val*)((long)(0)<<2|3);
+var85 = (val*)((long)(0)<<2|3);
+var81 = core__flat___CString___to_s_unsafe(var80, var82, var83, var84, var85);
+var79 = var81;
+varonce78 = var79;
+}
+((struct instance_core__NativeArray*)var69)->values[2]=var79;
 } else {
-var57 = varonce56;
-varonce56 = NULL;
+var69 = varonce68;
+varonce68 = NULL;
 }
 {
-var66 = ((val*(*)(val* self))(var_path_parent->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_path_parent); /* to_s on <var_path_parent:ANode>*/
+var86 = ((val*(*)(val* self))(var_path_parent->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_path_parent); /* to_s on <var_path_parent:ANode>*/
 }
-((struct instance_core__NativeArray*)var57)->values[1]=var66;
+((struct instance_core__NativeArray*)var69)->values[1]=var86;
 {
-var67 = ((val*(*)(val* self))(var_parent->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_parent); /* to_s on <var_parent:nullable ANode(ANode)>*/
+var87 = ((val*(*)(val* self))(var_parent->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_parent); /* to_s on <var_parent:nullable ANode(ANode)>*/
 }
-((struct instance_core__NativeArray*)var57)->values[3]=var67;
+((struct instance_core__NativeArray*)var69)->values[3]=var87;
 {
-var68 = ((val*(*)(val* self))(var57->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var57); /* native_to_s on <var57:NativeArray[String]>*/
+var88 = ((val*(*)(val* self))(var69->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var69); /* native_to_s on <var69:NativeArray[String]>*/
 }
-varonce56 = var57;
+varonce68 = var69;
 {
-nitc___nitc__ANode___debug(self, var68); /* Direct call parser_nodes#ANode#debug on <self:ANode>*/
+nitc___nitc__ANode___debug(self, var88); /* Direct call parser_nodes$ANode$debug on <self:ANode>*/
 }
 }
 } else {
@@ -362,58 +423,67 @@ nitc___nitc__ANode___debug(self, var68); /* Direct call parser_nodes#ANode#debug
 }
 } else {
 }
-var69 = self->attrs[COLOR_nitc__parser_nodes__ANode___location].val != NULL; /* _location on <self:ANode> */
-var70 = !var69;
-if (var70){
+var89 = self->attrs[COLOR_nitc__parser_nodes__ANode___location].val != NULL; /* _location on <self:ANode> */
+var90 = !var89;
+if (var90){
 {
-{ /* Inline parser_nodes#ANode#parent (self) on <self:ANode> */
-var73 = self->attrs[COLOR_nitc__parser_nodes__ANode___parent].val; /* _parent on <self:ANode> */
-var71 = var73;
-RET_LABEL72:(void)0;
+{ /* Inline parser_nodes$ANode$parent (self) on <self:ANode> */
+var93 = self->attrs[COLOR_nitc__parser_nodes__ANode___parent].val; /* _parent on <self:ANode> */
+var91 = var93;
+RET_LABEL92:(void)0;
+}
 }
+if (var91 == NULL) {
+if(catchStack.cursor >= 0){
+longjmp(catchStack.envs[catchStack.cursor], 1);
 }
-if (var71 == NULL) {
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__astvalidation, 68);
 fatal_exit(1);
 } else {
-{ /* Inline parser_nodes#ANode#location (var71) on <var71:nullable ANode> */
-if (unlikely(var71 == NULL)) {
+{ /* Inline parser_nodes$ANode$location (var91) on <var91:nullable ANode> */
+if (unlikely(var91 == NULL)) {
+if(catchStack.cursor >= 0){
+longjmp(catchStack.envs[catchStack.cursor], 1);
+}
 PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 24);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 25);
 fatal_exit(1);
 }
-var76 = var71->attrs[COLOR_nitc__parser_nodes__ANode___location].val; /* _location on <var71:nullable ANode> */
-if (unlikely(var76 == NULL)) {
+var96 = var91->attrs[COLOR_nitc__parser_nodes__ANode___location].val; /* _location on <var91:nullable ANode> */
+if (unlikely(var96 == NULL)) {
+if(catchStack.cursor >= 0){
+longjmp(catchStack.envs[catchStack.cursor], 1);
+}
 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 24);
+PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes, 25);
 fatal_exit(1);
 }
-var74 = var76;
-RET_LABEL75:(void)0;
+var94 = var96;
+RET_LABEL95:(void)0;
 }
 }
-self->attrs[COLOR_nitc__parser_nodes__ANode___location].val = var74; /* _location on <self:ANode> */
+self->attrs[COLOR_nitc__parser_nodes__ANode___location].val = var94; /* _location on <self:ANode> */
 } else {
 }
 {
-core___core__CircularArray___core__abstract_collection__Sequence__unshift(var_path, self); /* Direct call circular_array#CircularArray#unshift on <var_path:CircularArray[ANode]>*/
+core___core__CircularArray___core__abstract_collection__Sequence__unshift(var_path, self); /* Direct call circular_array$CircularArray$unshift on <var_path:CircularArray[ANode]>*/
 }
 {
 ((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__parser_nodes__ANode__visit_all]))(self, var_v); /* visit_all on <self:ANode>*/
 }
 {
-var77 = core___core__CircularArray___core__abstract_collection__Sequence__shift(var_path);
+var97 = core___core__CircularArray___core__abstract_collection__Sequence__shift(var_path);
 }
 RET_LABEL:;
 }
-/* method astvalidation#AAnnotation#accept_ast_validation for (self: AAnnotation, ASTValidationVisitor) */
+/* method astvalidation$AAnnotation$accept_ast_validation for (self: AAnnotation, ASTValidationVisitor) */
 void nitc__astvalidation___AAnnotation___ANode__accept_ast_validation(val* self, val* p0) {
 val* var_v /* var v: ASTValidationVisitor */;
 var_v = p0;
 RET_LABEL:;
 }
-/* method astvalidation#AExpr#accept_ast_validation for (self: AExpr, ASTValidationVisitor) */
+/* method astvalidation$AExpr$accept_ast_validation for (self: AExpr, ASTValidationVisitor) */
 void nitc__astvalidation___AExpr___ANode__accept_ast_validation(val* self, val* p0) {
 val* var_v /* var v: ASTValidationVisitor */;
 short int var /* : Bool */;
@@ -440,10 +510,10 @@ var2 = 1; /* is null */
 var2 = 0; /* arg is null but recv is not */
 }
 if (0) {
-{ /* Inline kernel#Object#== (var1,((val*)NULL)) on <var1:nullable MType> */
+{ /* Inline kernel$Object$== (var1,((val*)NULL)) on <var1:nullable MType> */
 var_other = ((val*)NULL);
 {
-{ /* Inline kernel#Object#is_same_instance (var1,var_other) on <var1:nullable MType(MType)> */
+{ /* Inline kernel$Object$is_same_instance (var1,var_other) on <var1:nullable MType(MType)> */
 var7 = var1 == var_other;
 var5 = var7;
 goto RET_LABEL6;
@@ -459,7 +529,7 @@ var2 = var3;
 var_ = var2;
 if (var2){
 {
-{ /* Inline typing#AExpr#is_typed (self) on <self:AExpr> */
+{ /* Inline typing$AExpr$is_typed (self) on <self:AExpr> */
 var10 = self->attrs[COLOR_nitc__typing__AExpr___is_typed].s; /* _is_typed on <self:AExpr> */
 var8 = var10;
 RET_LABEL9:(void)0;
@@ -475,13 +545,17 @@ if (var){
 }
 RET_LABEL:;
 }
-/* method astvalidation#APlaceholderExpr#accept_ast_validation for (self: APlaceholderExpr, ASTValidationVisitor) */
+/* method astvalidation$APlaceholderExpr$accept_ast_validation for (self: APlaceholderExpr, ASTValidationVisitor) */
 void nitc__astvalidation___APlaceholderExpr___ANode__accept_ast_validation(val* self, val* p0) {
 val* var_v /* var v: ASTValidationVisitor */;
 static val* varonce;
 val* var /* : String */;
-char* var1 /* : NativeString */;
+char* var1 /* : CString */;
 val* var2 /* : String */;
+val* var3 /* : nullable Int */;
+val* var4 /* : nullable Int */;
+val* var5 /* : nullable Bool */;
+val* var6 /* : nullable Bool */;
 var_v = p0;
 {
 ((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__astvalidation___APlaceholderExpr___ANode__accept_ast_validation]))(self, p0); /* accept_ast_validation on <self:APlaceholderExpr>*/
@@ -490,12 +564,16 @@ if (likely(varonce!=NULL)) {
 var = varonce;
 } else {
 var1 = "PARENT: remaining placeholder";
-var2 = core__flat___NativeString___to_s_full(var1, 29l, 29l);
+var3 = (val*)(29l<<2|1);
+var4 = (val*)(29l<<2|1);
+var5 = (val*)((long)(0)<<2|3);
+var6 = (val*)((long)(0)<<2|3);
+var2 = core__flat___CString___to_s_unsafe(var1, var3, var4, var5, var6);
 var = var2;
 varonce = var;
 }
 {
-nitc___nitc__ANode___debug(self, var); /* Direct call parser_nodes#ANode#debug on <self:APlaceholderExpr>*/
+nitc___nitc__ANode___debug(self, var); /* Direct call parser_nodes$ANode$debug on <self:APlaceholderExpr>*/
 }
 RET_LABEL:;
 }