X-Git-Url: http://nitlanguage.org diff --git a/c_src/nitc__auto_super_init.sep.1.c b/c_src/nitc__auto_super_init.sep.1.c index 3222fa7..5b2d824 100644 --- a/c_src/nitc__auto_super_init.sep.1.c +++ b/c_src/nitc__auto_super_init.sep.1.c @@ -1,10 +1,13 @@ #include "nitc__auto_super_init.sep.0.h" -/* method auto_super_init#ToolContext#auto_super_init_phase for (self: ToolContext): Phase */ +/* method auto_super_init$ToolContext$auto_super_init_phase for (self: ToolContext): Phase */ val* nitc__auto_super_init___ToolContext___auto_super_init_phase(val* self) { val* var /* : Phase */; val* var1 /* : Phase */; var1 = self->attrs[COLOR_nitc__auto_super_init__ToolContext___auto_super_init_phase].val; /* _auto_super_init_phase on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _auto_super_init_phase"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__auto_super_init, 25); fatal_exit(1); @@ -13,7 +16,7 @@ var = var1; RET_LABEL:; return var; } -/* method auto_super_init#AutoSuperInitPhase#process_npropdef for (self: AutoSuperInitPhase, APropdef) */ +/* method auto_super_init$AutoSuperInitPhase$process_npropdef for (self: AutoSuperInitPhase, APropdef) */ void nitc__auto_super_init___nitc__auto_super_init__AutoSuperInitPhase___nitc__phase__Phase__process_npropdef(val* self, val* p0) { val* var_npropdef /* var npropdef: APropdef */; short int var /* : Bool */; @@ -33,11 +36,14 @@ var = var_npropdef->type->type_table[cltype] == idtype; } if (var){ { -{ /* Inline phase#Phase#toolcontext (self) on */ +{ /* Inline phase$Phase$toolcontext (self) on */ var3 = self->attrs[COLOR_nitc__phase__Phase___toolcontext].val; /* _toolcontext on */ if (unlikely(var3 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase, 200); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase, 210); fatal_exit(1); } var1 = var3; @@ -48,13 +54,13 @@ RET_LABEL2:(void)0; var4 = nitc__modelbuilder_base___ToolContext___modelbuilder(var1); } { -nitc__auto_super_init___AMethPropdef___do_auto_super_init(var_npropdef, var4); /* Direct call auto_super_init#AMethPropdef#do_auto_super_init on */ +nitc__auto_super_init___AMethPropdef___do_auto_super_init(var_npropdef, var4); /* Direct call auto_super_init$AMethPropdef$do_auto_super_init on */ } } else { } RET_LABEL:; } -/* method auto_super_init#AutoSuperInitVisitor#visit for (self: AutoSuperInitVisitor, ANode) */ +/* method auto_super_init$AutoSuperInitVisitor$visit for (self: AutoSuperInitVisitor, ANode) */ void nitc__auto_super_init___nitc__auto_super_init__AutoSuperInitVisitor___nitc__parser_nodes__Visitor__visit(val* self, val* p0) { val* var_n /* var n: ANode */; var_n = p0; @@ -66,7 +72,7 @@ var_n = p0; } RET_LABEL:; } -/* method auto_super_init#AutoSuperInitVisitor#has_explicit_super_init for (self: AutoSuperInitVisitor): nullable ANode */ +/* method auto_super_init$AutoSuperInitVisitor$has_explicit_super_init for (self: AutoSuperInitVisitor): nullable ANode */ val* nitc__auto_super_init___nitc__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init(val* self) { val* var /* : nullable ANode */; val* var1 /* : nullable ANode */; @@ -75,12 +81,12 @@ var = var1; RET_LABEL:; return var; } -/* method auto_super_init#AutoSuperInitVisitor#has_explicit_super_init= for (self: AutoSuperInitVisitor, nullable ANode) */ +/* method auto_super_init$AutoSuperInitVisitor$has_explicit_super_init= for (self: AutoSuperInitVisitor, nullable ANode) */ void nitc__auto_super_init___nitc__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init_61d(val* self, val* p0) { self->attrs[COLOR_nitc__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init].val = p0; /* _has_explicit_super_init on */ RET_LABEL:; } -/* method auto_super_init#AutoSuperInitVisitor#is_broken for (self: AutoSuperInitVisitor): Bool */ +/* method auto_super_init$AutoSuperInitVisitor$is_broken for (self: AutoSuperInitVisitor): Bool */ short int nitc__auto_super_init___nitc__auto_super_init__AutoSuperInitVisitor___is_broken(val* self) { short int var /* : Bool */; short int var1 /* : Bool */; @@ -89,12 +95,12 @@ var = var1; RET_LABEL:; return var; } -/* method auto_super_init#AutoSuperInitVisitor#is_broken= for (self: AutoSuperInitVisitor, Bool) */ +/* method auto_super_init$AutoSuperInitVisitor$is_broken= for (self: AutoSuperInitVisitor, Bool) */ void nitc__auto_super_init___nitc__auto_super_init__AutoSuperInitVisitor___is_broken_61d(val* self, short int p0) { self->attrs[COLOR_nitc__auto_super_init__AutoSuperInitVisitor___is_broken].s = p0; /* _is_broken on */ RET_LABEL:; } -/* method auto_super_init#AMethPropdef#auto_super_inits for (self: AMethPropdef): nullable Array[CallSite] */ +/* method auto_super_init$AMethPropdef$auto_super_inits for (self: AMethPropdef): nullable Array[CallSite] */ val* nitc__auto_super_init___AMethPropdef___auto_super_inits(val* self) { val* var /* : nullable Array[CallSite] */; val* var1 /* : nullable Array[CallSite] */; @@ -103,12 +109,12 @@ var = var1; RET_LABEL:; return var; } -/* method auto_super_init#AMethPropdef#auto_super_inits= for (self: AMethPropdef, nullable Array[CallSite]) */ +/* method auto_super_init$AMethPropdef$auto_super_inits= for (self: AMethPropdef, nullable Array[CallSite]) */ void nitc__auto_super_init___AMethPropdef___auto_super_inits_61d(val* self, val* p0) { self->attrs[COLOR_nitc__auto_super_init__AMethPropdef___auto_super_inits].val = p0; /* _auto_super_inits on */ RET_LABEL:; } -/* method auto_super_init#AMethPropdef#auto_super_call for (self: AMethPropdef): Bool */ +/* method auto_super_init$AMethPropdef$auto_super_call for (self: AMethPropdef): Bool */ short int nitc__auto_super_init___AMethPropdef___auto_super_call(val* self) { short int var /* : Bool */; short int var1 /* : Bool */; @@ -117,12 +123,12 @@ var = var1; RET_LABEL:; return var; } -/* method auto_super_init#AMethPropdef#auto_super_call= for (self: AMethPropdef, Bool) */ +/* method auto_super_init$AMethPropdef$auto_super_call= for (self: AMethPropdef, Bool) */ void nitc__auto_super_init___AMethPropdef___auto_super_call_61d(val* self, short int p0) { self->attrs[COLOR_nitc__auto_super_init__AMethPropdef___auto_super_call].s = p0; /* _auto_super_call on */ RET_LABEL:; } -/* method auto_super_init#AMethPropdef#do_auto_super_init for (self: AMethPropdef, ModelBuilder) */ +/* method auto_super_init$AMethPropdef$do_auto_super_init for (self: AMethPropdef, ModelBuilder) */ void nitc__auto_super_init___AMethPropdef___do_auto_super_init(val* self, val* p0) { val* var_modelbuilder /* var modelbuilder: ModelBuilder */; val* var /* : nullable ANode */; @@ -169,205 +175,277 @@ val* var45 /* : MClassType */; val* var_recvtype /* var recvtype: MClassType */; static val* varonce; val* var46 /* : String */; -char* var47 /* : NativeString */; +char* var47 /* : CString */; val* var48 /* : String */; -val* var49 /* : nullable AAnnotation */; +val* var49 /* : nullable Int */; +val* var50 /* : nullable Int */; +val* var51 /* : nullable Bool */; +val* var52 /* : nullable Bool */; +val* var53 /* : nullable AAnnotation */; val* var_nosuper /* var nosuper: nullable AAnnotation */; -short int var50 /* : Bool */; -val* var51 /* : MProperty */; -val* var53 /* : MProperty */; short int var54 /* : Bool */; -short int var56 /* : Bool */; -short int var57 /* : Bool */; -short int var_58 /* var : Bool */; -val* var59 /* : MProperty */; -val* var61 /* : MProperty */; -short int var62 /* : Bool */; -short int var64 /* : Bool */; -short int var65 /* : Bool */; +val* var55 /* : MProperty */; +val* var57 /* : MProperty */; +short int var58 /* : Bool */; +short int var60 /* : Bool */; +short int var61 /* : Bool */; +short int var_62 /* var : Bool */; +val* var63 /* : MProperty */; +val* var65 /* : MProperty */; short int var66 /* : Bool */; -val* var_other68 /* var other: nullable Object */; +short int var68 /* : Bool */; short int var69 /* : Bool */; short int var70 /* : Bool */; -static val* varonce71; -val* var72 /* : String */; -char* var73 /* : NativeString */; -val* var74 /* : String */; -val* var75 /* : nullable AExpr */; -val* var77 /* : nullable AExpr */; +val* var_other72 /* var other: nullable Object */; +short int var73 /* : Bool */; +short int var74 /* : Bool */; +static val* varonce75; +val* var76 /* : String */; +char* var77 /* : CString */; +val* var78 /* : String */; +val* var79 /* : nullable Int */; +val* var80 /* : nullable Int */; +val* var81 /* : nullable Bool */; +val* var82 /* : nullable Bool */; +val* var83 /* : nullable AExpr */; +val* var85 /* : nullable AExpr */; val* var_nblock /* var nblock: nullable AExpr */; -short int var78 /* : Bool */; -short int var79 /* : Bool */; -short int var81 /* : Bool */; -short int var82 /* : Bool */; -val* var83 /* : AutoSuperInitVisitor */; +short int var86 /* : Bool */; +short int var87 /* : Bool */; +short int var89 /* : Bool */; +short int var90 /* : Bool */; +val* var91 /* : AutoSuperInitVisitor */; val* var_v /* var v: AutoSuperInitVisitor */; -val* var85 /* : nullable ANode */; -val* var87 /* : nullable ANode */; +val* var93 /* : nullable ANode */; +val* var95 /* : nullable ANode */; val* var_anode /* var anode: nullable ANode */; -short int var88 /* : Bool */; -short int var89 /* : Bool */; -short int var91 /* : Bool */; -short int var92 /* : Bool */; -short int var93 /* : Bool */; -short int var94 /* : Bool */; short int var96 /* : Bool */; short int var97 /* : Bool */; -static val* varonce98; -val* var99 /* : String */; -char* var100 /* : NativeString */; -val* var101 /* : String */; +short int var99 /* : Bool */; +short int var100 /* : Bool */; +short int var101 /* : Bool */; short int var102 /* : Bool */; short int var104 /* : Bool */; short int var105 /* : Bool */; -short int var106 /* : Bool */; -short int var108 /* : Bool */; -short int var109 /* : Bool */; -short int var110 /* : Bool */; -short int var111 /* : Bool */; -val* var114 /* : ToolContext */; -val* var116 /* : ToolContext */; -val* var118 /* : NativeArray[String] */; -static val* varonce117; -static val* varonce119; -val* var120 /* : String */; -char* var121 /* : NativeString */; -val* var122 /* : String */; -val* var123 /* : String */; -val* var124 /* : String */; -val* var125 /* : Array[CallSite] */; +static val* varonce106; +val* var107 /* : String */; +char* var108 /* : CString */; +val* var109 /* : String */; +val* var110 /* : nullable Int */; +val* var111 /* : nullable Int */; +val* var112 /* : nullable Bool */; +val* var113 /* : nullable Bool */; +short int var114 /* : Bool */; +short int var116 /* : Bool */; +short int var117 /* : Bool */; +short int var118 /* : Bool */; +short int var120 /* : Bool */; +short int var121 /* : Bool */; +short int var122 /* : Bool */; +short int var123 /* : Bool */; +val* var126 /* : ToolContext */; +val* var128 /* : ToolContext */; +val* var130 /* : NativeArray[String] */; +static val* varonce129; +static val* varonce131; +val* var132 /* : String */; +char* var133 /* : CString */; +val* var134 /* : String */; +val* var135 /* : nullable Int */; +val* var136 /* : nullable Int */; +val* var137 /* : nullable Bool */; +val* var138 /* : nullable Bool */; +val* var139 /* : String */; +val* var140 /* : String */; +val* var141 /* : Array[CallSite] */; val* var_auto_super_inits /* var auto_super_inits: Array[CallSite] */; -val* var126 /* : nullable MMethod */; -val* var128 /* : nullable MMethod */; +val* var142 /* : nullable MMethod */; +val* var144 /* : nullable MMethod */; val* var_the_root_init_mmethod /* var the_root_init_mmethod: nullable MMethod */; -short int var129 /* : Bool */; -short int var130 /* : Bool */; -short int var131 /* : Bool */; -short int var133 /* : Bool */; -short int var134 /* : Bool */; -short int var_135 /* var : Bool */; -short int var136 /* : Bool */; -val* var137 /* : Array[MPropDef] */; -val* var_candidatedefs /* var candidatedefs: Array[MMethodDef] */; -short int var138 /* : Bool */; -val* var140 /* : nullable Object */; -val* var_candidatedef /* var candidatedef: MMethodDef */; -long var141 /* : Int */; -long var143 /* : Int */; -short int var144 /* : Bool */; +short int var145 /* : Bool */; short int var146 /* : Bool */; -int cltype147; -int idtype148; -const char* var_class_name149; +short int var147 /* : Bool */; +short int var149 /* : Bool */; short int var150 /* : Bool */; -val* var151 /* : nullable Object */; +short int var_151 /* var : Bool */; +short int var152 /* : Bool */; +val* var153 /* : Array[MPropDef] */; +val* var_candidatedefs /* var candidatedefs: Array[MMethodDef] */; +short int var154 /* : Bool */; +val* var156 /* : nullable Object */; +val* var_candidatedef /* var candidatedef: MMethodDef */; +long var157 /* : Int */; +long var159 /* : Int */; +short int var160 /* : Bool */; +short int var162 /* : Bool */; +int cltype163; +int idtype164; +const char* var_class_name165; +short int var166 /* : Bool */; +val* var167 /* : nullable Object */; val* var_cd2 /* var cd2: MMethodDef */; -val* var153 /* : NativeArray[String] */; -static val* varonce152; -static val* varonce154; -val* var155 /* : String */; -char* var156 /* : NativeString */; -val* var157 /* : String */; -static val* varonce158; -val* var159 /* : String */; -char* var160 /* : NativeString */; -val* var161 /* : String */; -static val* varonce162; -val* var163 /* : String */; -char* var164 /* : NativeString */; -val* var165 /* : String */; -static val* varonce166; -val* var167 /* : String */; -char* var168 /* : NativeString */; -val* var169 /* : String */; +val* var169 /* : NativeArray[String] */; +static val* varonce168; static val* varonce170; val* var171 /* : String */; -char* var172 /* : NativeString */; +char* var172 /* : CString */; val* var173 /* : String */; -val* var174 /* : String */; -val* var175 /* : Array[MProperty] */; -val* var177 /* : Array[MProperty] */; +val* var174 /* : nullable Int */; +val* var175 /* : nullable Int */; +val* var176 /* : nullable Bool */; +val* var177 /* : nullable Bool */; static val* varonce178; val* var179 /* : String */; -char* var180 /* : NativeString */; +char* var180 /* : CString */; val* var181 /* : String */; -val* var182 /* : String */; -val* var183 /* : String */; -val* var184 /* : Array[MProperty] */; -val* var186 /* : Array[MProperty] */; -static val* varonce187; -val* var188 /* : String */; -char* var189 /* : NativeString */; -val* var190 /* : String */; -val* var191 /* : String */; -val* var192 /* : String */; -val* var194 /* : nullable MSignature */; -val* var195 /* : nullable MSignature */; -val* var197 /* : nullable MSignature */; -val* var198 /* : nullable MSignature */; -val* var200 /* : nullable MSignature */; -val* var_msignature /* var msignature: nullable MSignature */; -val* var201 /* : MSignature */; -long var202 /* : Int */; -short int var203 /* : Bool */; -short int var205 /* : Bool */; -int cltype206; -int idtype207; -const char* var_class_name208; -short int var209 /* : Bool */; -val* var211 /* : NativeArray[String] */; -static val* varonce210; -static val* varonce212; -val* var213 /* : String */; -char* var214 /* : NativeString */; +val* var182 /* : nullable Int */; +val* var183 /* : nullable Int */; +val* var184 /* : nullable Bool */; +val* var185 /* : nullable Bool */; +static val* varonce186; +val* var187 /* : String */; +char* var188 /* : CString */; +val* var189 /* : String */; +val* var190 /* : nullable Int */; +val* var191 /* : nullable Int */; +val* var192 /* : nullable Bool */; +val* var193 /* : nullable Bool */; +static val* varonce194; +val* var195 /* : String */; +char* var196 /* : CString */; +val* var197 /* : String */; +val* var198 /* : nullable Int */; +val* var199 /* : nullable Int */; +val* var200 /* : nullable Bool */; +val* var201 /* : nullable Bool */; +static val* varonce202; +val* var203 /* : String */; +char* var204 /* : CString */; +val* var205 /* : String */; +val* var206 /* : nullable Int */; +val* var207 /* : nullable Int */; +val* var208 /* : nullable Bool */; +val* var209 /* : nullable Bool */; +val* var210 /* : String */; +val* var211 /* : Array[MProperty] */; +val* var213 /* : Array[MProperty] */; +static val* varonce214; val* var215 /* : String */; -static val* varonce216; +char* var216 /* : CString */; val* var217 /* : String */; -char* var218 /* : NativeString */; -val* var219 /* : String */; -static val* varonce220; -val* var221 /* : String */; -char* var222 /* : NativeString */; +val* var218 /* : nullable Int */; +val* var219 /* : nullable Int */; +val* var220 /* : nullable Bool */; +val* var221 /* : nullable Bool */; +val* var222 /* : String */; val* var223 /* : String */; -val* var224 /* : String */; -val* var225 /* : String */; -long var226 /* : Int */; -val* var227 /* : String */; +val* var224 /* : Array[MProperty] */; +val* var226 /* : Array[MProperty] */; +static val* varonce227; val* var228 /* : String */; -val* var230 /* : CallSite */; -val* var231 /* : Location */; -val* var_callsite /* var callsite: CallSite */; -val* var232 /* : ToolContext */; -val* var234 /* : ToolContext */; -val* var236 /* : NativeArray[String] */; -static val* varonce235; -static val* varonce237; -val* var238 /* : String */; -char* var239 /* : NativeString */; -val* var240 /* : String */; -static val* varonce241; -val* var242 /* : String */; -char* var243 /* : NativeString */; -val* var244 /* : String */; -val* var245 /* : String */; -val* var246 /* : String */; -val* var247 /* : String */; -short int var248 /* : Bool */; -val* var250 /* : NativeArray[String] */; -static val* varonce249; -static val* varonce251; -val* var252 /* : String */; -char* var253 /* : NativeString */; -val* var254 /* : String */; -static val* varonce255; -val* var256 /* : String */; -char* var257 /* : NativeString */; -val* var258 /* : String */; +char* var229 /* : CString */; +val* var230 /* : String */; +val* var231 /* : nullable Int */; +val* var232 /* : nullable Int */; +val* var233 /* : nullable Bool */; +val* var234 /* : nullable Bool */; +val* var235 /* : String */; +val* var236 /* : String */; +val* var238 /* : nullable MSignature */; +val* var239 /* : nullable MSignature */; +val* var241 /* : nullable MSignature */; +val* var242 /* : nullable MSignature */; +val* var244 /* : nullable MSignature */; +val* var_msignature /* var msignature: nullable MSignature */; +val* var245 /* : MSignature */; +long var246 /* : Int */; +short int var247 /* : Bool */; +short int var249 /* : Bool */; +int cltype250; +int idtype251; +const char* var_class_name252; +short int var253 /* : Bool */; +val* var255 /* : NativeArray[String] */; +static val* varonce254; +static val* varonce256; +val* var257 /* : String */; +char* var258 /* : CString */; val* var259 /* : String */; -val* var260 /* : String */; +val* var260 /* : nullable Int */; +val* var261 /* : nullable Int */; +val* var262 /* : nullable Bool */; +val* var263 /* : nullable Bool */; +static val* varonce264; +val* var265 /* : String */; +char* var266 /* : CString */; +val* var267 /* : String */; +val* var268 /* : nullable Int */; +val* var269 /* : nullable Int */; +val* var270 /* : nullable Bool */; +val* var271 /* : nullable Bool */; +static val* varonce272; +val* var273 /* : String */; +char* var274 /* : CString */; +val* var275 /* : String */; +val* var276 /* : nullable Int */; +val* var277 /* : nullable Int */; +val* var278 /* : nullable Bool */; +val* var279 /* : nullable Bool */; +val* var280 /* : String */; +val* var281 /* : String */; +long var282 /* : Int */; +val* var283 /* : String */; +val* var284 /* : String */; +val* var286 /* : CallSite */; +val* var287 /* : Location */; +val* var_callsite /* var callsite: CallSite */; +val* var288 /* : ToolContext */; +val* var290 /* : ToolContext */; +val* var292 /* : NativeArray[String] */; +static val* varonce291; +static val* varonce293; +val* var294 /* : String */; +char* var295 /* : CString */; +val* var296 /* : String */; +val* var297 /* : nullable Int */; +val* var298 /* : nullable Int */; +val* var299 /* : nullable Bool */; +val* var300 /* : nullable Bool */; +static val* varonce301; +val* var302 /* : String */; +char* var303 /* : CString */; +val* var304 /* : String */; +val* var305 /* : nullable Int */; +val* var306 /* : nullable Int */; +val* var307 /* : nullable Bool */; +val* var308 /* : nullable Bool */; +val* var309 /* : String */; +val* var310 /* : String */; +val* var311 /* : String */; +short int var312 /* : Bool */; +val* var314 /* : NativeArray[String] */; +static val* varonce313; +static val* varonce315; +val* var316 /* : String */; +char* var317 /* : CString */; +val* var318 /* : String */; +val* var319 /* : nullable Int */; +val* var320 /* : nullable Int */; +val* var321 /* : nullable Bool */; +val* var322 /* : nullable Bool */; +static val* varonce323; +val* var324 /* : String */; +char* var325 /* : CString */; +val* var326 /* : String */; +val* var327 /* : nullable Int */; +val* var328 /* : nullable Int */; +val* var329 /* : nullable Bool */; +val* var330 /* : nullable Bool */; +val* var331 /* : String */; +val* var332 /* : String */; var_modelbuilder = p0; { -{ /* Inline parser_nodes#ANode#parent (self) on */ +{ /* Inline parser_nodes$ANode$parent (self) on */ var2 = self->attrs[COLOR_nitc__parser_nodes__ANode___parent].val; /* _parent on */ var = var2; RET_LABEL1:(void)0; @@ -392,7 +470,7 @@ PRINT_ERROR(" (%s:%d)\n", FILE_nitc__auto_super_init, 59); fatal_exit(1); } { -{ /* Inline modelize_class#AClassdef#mclassdef (var) on */ +{ /* Inline modelize_class$AClassdef$mclassdef (var) on */ var6 = var->attrs[COLOR_nitc__modelize_class__AClassdef___mclassdef].val; /* _mclassdef on */ var4 = var6; RET_LABEL5:(void)0; @@ -405,10 +483,10 @@ var8 = 1; /* is null */ var8 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_mclassdef,((val*)NULL)) on */ +{ /* Inline kernel$Object$== (var_mclassdef,((val*)NULL)) on */ var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_mclassdef,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var_mclassdef,var_other) on */ var13 = var_mclassdef == var_other; var11 = var13; goto RET_LABEL12; @@ -426,7 +504,7 @@ if (var8){ var7 = var_; } else { { -{ /* Inline model_base#MEntity#is_broken (var_mclassdef) on */ +{ /* Inline model_base$MEntity$is_broken (var_mclassdef) on */ var16 = var_mclassdef->attrs[COLOR_nitc__model_base__MEntity___is_broken].s; /* _is_broken on */ var14 = var16; RET_LABEL15:(void)0; @@ -439,7 +517,7 @@ goto RET_LABEL; } else { } { -{ /* Inline modelize_property#APropdef#mpropdef (self) on */ +{ /* Inline modelize_property$APropdef$mpropdef (self) on */ var19 = self->attrs[COLOR_nitc__modelize_property__APropdef___mpropdef].val; /* _mpropdef on */ var17 = var19; RET_LABEL18:(void)0; @@ -452,10 +530,10 @@ var21 = 1; /* is null */ var21 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_mpropdef,((val*)NULL)) on */ +{ /* Inline kernel$Object$== (var_mpropdef,((val*)NULL)) on */ var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_mpropdef,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var_mpropdef,var_other) on */ var26 = var_mpropdef == var_other; var24 = var26; goto RET_LABEL25; @@ -473,7 +551,7 @@ if (var21){ var20 = var_27; } else { { -{ /* Inline model_base#MEntity#is_broken (var_mpropdef) on */ +{ /* Inline model_base$MEntity$is_broken (var_mpropdef) on */ var30 = var_mpropdef->attrs[COLOR_nitc__model_base__MEntity___is_broken].s; /* _is_broken on */ var28 = var30; RET_LABEL29:(void)0; @@ -486,11 +564,14 @@ goto RET_LABEL; } else { } { -{ /* Inline model#MPropDef#mclassdef (var_mpropdef) on */ +{ /* Inline model$MPropDef$mclassdef (var_mpropdef) on */ var33 = var_mpropdef->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on */ if (unlikely(var33 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2227); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2354); fatal_exit(1); } var31 = var33; @@ -498,11 +579,14 @@ RET_LABEL32:(void)0; } } { -{ /* Inline model#MClassDef#mmodule (var31) on */ +{ /* Inline model$MClassDef$mmodule (var31) on */ var36 = var31->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on */ if (unlikely(var36 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 573); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 588); fatal_exit(1); } var34 = var36; @@ -511,11 +595,14 @@ RET_LABEL35:(void)0; } var_mmodule = var34; { -{ /* Inline model#MClassDef#bound_mtype (var_mclassdef) on */ +{ /* Inline model$MClassDef$bound_mtype (var_mclassdef) on */ var39 = var_mclassdef->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on */ if (unlikely(var39 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 579); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 594); fatal_exit(1); } var37 = var39; @@ -524,11 +611,14 @@ RET_LABEL38:(void)0; } var_anchor = var37; { -{ /* Inline model#MClassDef#mclass (var_mclassdef) on */ +{ /* Inline model$MClassDef$mclass (var_mclassdef) on */ var42 = var_mclassdef->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on */ if (unlikely(var42 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 576); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 591); fatal_exit(1); } var40 = var42; @@ -536,11 +626,14 @@ RET_LABEL41:(void)0; } } { -{ /* Inline model#MClass#mclass_type (var40) on */ +{ /* Inline model$MClass$mclass_type (var40) on */ var45 = var40->attrs[COLOR_nitc__model__MClass___mclass_type].val; /* _mclass_type on */ if (unlikely(var45 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 507); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 520); fatal_exit(1); } var43 = var45; @@ -552,89 +645,103 @@ if (likely(varonce!=NULL)) { var46 = varonce; } else { var47 = "nosuper"; -var48 = core__flat___NativeString___to_s_full(var47, 7l, 7l); +var49 = (val*)(7l<<2|1); +var50 = (val*)(7l<<2|1); +var51 = (val*)((long)(0)<<2|3); +var52 = (val*)((long)(0)<<2|3); +var48 = core__flat___CString___to_s_unsafe(var47, var49, var50, var51, var52); var46 = var48; varonce = var46; } { -var49 = nitc__annotation___Prod___get_single_annotation(self, var46, var_modelbuilder); +var53 = nitc__annotation___Prod___get_single_annotation(self, var46, var_modelbuilder); } -var_nosuper = var49; +var_nosuper = var53; { -{ /* Inline model#MPropDef#mproperty (var_mpropdef) on */ -var53 = var_mpropdef->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on */ -if (unlikely(var53 == NULL)) { +{ /* Inline model$MPropDef$mproperty (var_mpropdef) on */ +var57 = var_mpropdef->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on */ +if (unlikely(var57 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2230); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357); fatal_exit(1); } -var51 = var53; -RET_LABEL52:(void)0; +var55 = var57; +RET_LABEL56:(void)0; } } { -{ /* Inline model#MMethod#is_init (var51) on */ -var56 = var51->attrs[COLOR_nitc__model__MMethod___is_init].s; /* _is_init on */ -var54 = var56; -RET_LABEL55:(void)0; +{ /* Inline model$MMethod$is_init (var55) on */ +var60 = var55->attrs[COLOR_nitc__model__MMethod___is_init].s; /* _is_init on */ +var58 = var60; +RET_LABEL59:(void)0; } } -var57 = !var54; -var_58 = var57; -if (var57){ -var50 = var_58; +var61 = !var58; +var_62 = var61; +if (var61){ +var54 = var_62; } else { { -{ /* Inline model#MPropDef#mproperty (var_mpropdef) on */ -var61 = var_mpropdef->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on */ -if (unlikely(var61 == NULL)) { +{ /* Inline model$MPropDef$mproperty (var_mpropdef) on */ +var65 = var_mpropdef->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on */ +if (unlikely(var65 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2230); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357); fatal_exit(1); } -var59 = var61; -RET_LABEL60:(void)0; +var63 = var65; +RET_LABEL64:(void)0; } } { -{ /* Inline model#MMethod#is_new (var59) on */ -var64 = var59->attrs[COLOR_nitc__model__MMethod___is_new].s; /* _is_new on */ -var62 = var64; -RET_LABEL63:(void)0; +{ /* Inline model$MMethod$is_new (var63) on */ +var68 = var63->attrs[COLOR_nitc__model__MMethod___is_new].s; /* _is_new on */ +var66 = var68; +RET_LABEL67:(void)0; } } -var50 = var62; +var54 = var66; } -if (var50){ +if (var54){ if (var_nosuper == NULL) { -var65 = 0; /* is null */ +var69 = 0; /* is null */ } else { -var65 = 1; /* arg is null and recv is not */ +var69 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_nosuper,((val*)NULL)) on */ -var_other68 = ((val*)NULL); +{ /* Inline kernel$Object$!= (var_nosuper,((val*)NULL)) on */ +var_other72 = ((val*)NULL); { -var69 = ((short int(*)(val* self, val* p0))(var_nosuper->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_nosuper, var_other68); /* == on */ +var73 = ((short int(*)(val* self, val* p0))(var_nosuper->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_nosuper, var_other72); /* == on */ } -var70 = !var69; -var66 = var70; -goto RET_LABEL67; -RET_LABEL67:(void)0; +var74 = !var73; +var70 = var74; +goto RET_LABEL71; +RET_LABEL71:(void)0; } -var65 = var66; +var69 = var70; } -if (var65){ -if (likely(varonce71!=NULL)) { -var72 = varonce71; +if (var69){ +if (likely(varonce75!=NULL)) { +var76 = varonce75; } else { -var73 = "Error: `nosuper` only allowed in `init`."; -var74 = core__flat___NativeString___to_s_full(var73, 40l, 40l); -var72 = var74; -varonce71 = var72; +var77 = "Error: `nosuper` only allowed in `init`."; +var79 = (val*)(40l<<2|1); +var80 = (val*)(40l<<2|1); +var81 = (val*)((long)(0)<<2|3); +var82 = (val*)((long)(0)<<2|3); +var78 = core__flat___CString___to_s_unsafe(var77, var79, var80, var81, var82); +var76 = var78; +varonce75 = var76; } { -nitc___nitc__ModelBuilder___error(var_modelbuilder, var_nosuper, var72); /* Direct call modelbuilder_base#ModelBuilder#error on */ +nitc___nitc__ModelBuilder___error(var_modelbuilder, var_nosuper, var76); /* Direct call modelbuilder_base$ModelBuilder$error on */ } } else { } @@ -642,98 +749,102 @@ goto RET_LABEL; } else { } { -{ /* Inline parser_nodes#AMethPropdef#n_block (self) on */ -var77 = self->attrs[COLOR_nitc__parser_nodes__AMethPropdef___n_block].val; /* _n_block on */ -var75 = var77; -RET_LABEL76:(void)0; +{ /* Inline parser_nodes$AMethPropdef$n_block (self) on */ +var85 = self->attrs[COLOR_nitc__parser_nodes__AMethPropdef___n_block].val; /* _n_block on */ +var83 = var85; +RET_LABEL84:(void)0; } } -var_nblock = var75; +var_nblock = var83; if (var_nblock == NULL) { -var78 = 0; /* is null */ +var86 = 0; /* is null */ } else { -var78 = 1; /* arg is null and recv is not */ +var86 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_nblock,((val*)NULL)) on */ -var_other68 = ((val*)NULL); +{ /* Inline kernel$Object$!= (var_nblock,((val*)NULL)) on */ +var_other72 = ((val*)NULL); { -var81 = ((short int(*)(val* self, val* p0))(var_nblock->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_nblock, var_other68); /* == on */ +var89 = ((short int(*)(val* self, val* p0))(var_nblock->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_nblock, var_other72); /* == on */ } -var82 = !var81; -var79 = var82; -goto RET_LABEL80; -RET_LABEL80:(void)0; +var90 = !var89; +var87 = var90; +goto RET_LABEL88; +RET_LABEL88:(void)0; } -var78 = var79; +var86 = var87; } -if (var78){ -var83 = NEW_nitc__auto_super_init__AutoSuperInitVisitor(&type_nitc__auto_super_init__AutoSuperInitVisitor); +if (var86){ +var91 = NEW_nitc__auto_super_init__AutoSuperInitVisitor(&type_nitc__auto_super_init__AutoSuperInitVisitor); { -{ /* Inline kernel#Object#init (var83) on */ -RET_LABEL84:(void)0; +{ /* Inline kernel$Object$init (var91) on */ +RET_LABEL92:(void)0; } } -var_v = var83; +var_v = var91; { -nitc___nitc__Visitor___enter_visit(var_v, var_nblock); /* Direct call parser_nodes#Visitor#enter_visit on */ +nitc___nitc__Visitor___enter_visit(var_v, var_nblock); /* Direct call parser_nodes$Visitor$enter_visit on */ } { -{ /* Inline auto_super_init#AutoSuperInitVisitor#has_explicit_super_init (var_v) on */ -var87 = var_v->attrs[COLOR_nitc__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init].val; /* _has_explicit_super_init on */ -var85 = var87; -RET_LABEL86:(void)0; +{ /* Inline auto_super_init$AutoSuperInitVisitor$has_explicit_super_init (var_v) on */ +var95 = var_v->attrs[COLOR_nitc__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init].val; /* _has_explicit_super_init on */ +var93 = var95; +RET_LABEL94:(void)0; } } -var_anode = var85; +var_anode = var93; if (var_anode == NULL) { -var88 = 0; /* is null */ +var96 = 0; /* is null */ } else { -var88 = 1; /* arg is null and recv is not */ +var96 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_anode,((val*)NULL)) on */ -var_other68 = ((val*)NULL); +{ /* Inline kernel$Object$!= (var_anode,((val*)NULL)) on */ +var_other72 = ((val*)NULL); { -var91 = ((short int(*)(val* self, val* p0))(var_anode->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_anode, var_other68); /* == on */ +var99 = ((short int(*)(val* self, val* p0))(var_anode->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_anode, var_other72); /* == on */ } -var92 = !var91; -var89 = var92; -goto RET_LABEL90; -RET_LABEL90:(void)0; +var100 = !var99; +var97 = var100; +goto RET_LABEL98; +RET_LABEL98:(void)0; } -var88 = var89; +var96 = var97; } -if (var88){ +if (var96){ if (var_nosuper == NULL) { -var93 = 0; /* is null */ +var101 = 0; /* is null */ } else { -var93 = 1; /* arg is null and recv is not */ +var101 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_nosuper,((val*)NULL)) on */ -var_other68 = ((val*)NULL); +{ /* Inline kernel$Object$!= (var_nosuper,((val*)NULL)) on */ +var_other72 = ((val*)NULL); { -var96 = ((short int(*)(val* self, val* p0))(var_nosuper->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_nosuper, var_other68); /* == on */ +var104 = ((short int(*)(val* self, val* p0))(var_nosuper->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_nosuper, var_other72); /* == on */ } -var97 = !var96; -var94 = var97; -goto RET_LABEL95; -RET_LABEL95:(void)0; +var105 = !var104; +var102 = var105; +goto RET_LABEL103; +RET_LABEL103:(void)0; } -var93 = var94; +var101 = var102; } -if (var93){ -if (likely(varonce98!=NULL)) { -var99 = varonce98; +if (var101){ +if (likely(varonce106!=NULL)) { +var107 = varonce106; } else { -var100 = "Error: method is annotated `nosuper` but a super-constructor call is present."; -var101 = core__flat___NativeString___to_s_full(var100, 77l, 77l); -var99 = var101; -varonce98 = var99; +var108 = "Error: method is annotated `nosuper` but a super-constructor call is present."; +var110 = (val*)(77l<<2|1); +var111 = (val*)(77l<<2|1); +var112 = (val*)((long)(0)<<2|3); +var113 = (val*)((long)(0)<<2|3); +var109 = core__flat___CString___to_s_unsafe(var108, var110, var111, var112, var113); +var107 = var109; +varonce106 = var107; } { -nitc___nitc__ModelBuilder___error(var_modelbuilder, var_anode, var99); /* Direct call modelbuilder_base#ModelBuilder#error on */ +nitc___nitc__ModelBuilder___error(var_modelbuilder, var_anode, var107); /* Direct call modelbuilder_base$ModelBuilder$error on */ } } else { } @@ -741,571 +852,646 @@ goto RET_LABEL; } else { } { -{ /* Inline auto_super_init#AutoSuperInitVisitor#is_broken (var_v) on */ -var104 = var_v->attrs[COLOR_nitc__auto_super_init__AutoSuperInitVisitor___is_broken].s; /* _is_broken on */ -var102 = var104; -RET_LABEL103:(void)0; +{ /* Inline auto_super_init$AutoSuperInitVisitor$is_broken (var_v) on */ +var116 = var_v->attrs[COLOR_nitc__auto_super_init__AutoSuperInitVisitor___is_broken].s; /* _is_broken on */ +var114 = var116; +RET_LABEL115:(void)0; } } -if (var102){ +if (var114){ goto RET_LABEL; } else { } } else { } if (var_nosuper == NULL) { -var105 = 0; /* is null */ +var117 = 0; /* is null */ } else { -var105 = 1; /* arg is null and recv is not */ +var117 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_nosuper,((val*)NULL)) on */ -var_other68 = ((val*)NULL); +{ /* Inline kernel$Object$!= (var_nosuper,((val*)NULL)) on */ +var_other72 = ((val*)NULL); { -var108 = ((short int(*)(val* self, val* p0))(var_nosuper->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_nosuper, var_other68); /* == on */ +var120 = ((short int(*)(val* self, val* p0))(var_nosuper->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_nosuper, var_other72); /* == on */ } -var109 = !var108; -var106 = var109; -goto RET_LABEL107; -RET_LABEL107:(void)0; +var121 = !var120; +var118 = var121; +goto RET_LABEL119; +RET_LABEL119:(void)0; } -var105 = var106; +var117 = var118; } -if (var105){ +if (var117){ goto RET_LABEL; } else { } { -var110 = nitc___nitc__MPropDef___is_intro(var_mpropdef); +var122 = nitc___nitc__MPropDef___is_intro(var_mpropdef); } -var111 = !var110; -if (var111){ +var123 = !var122; +if (var123){ { -{ /* Inline auto_super_init#AMethPropdef#auto_super_call= (self,1) on */ +{ /* Inline auto_super_init$AMethPropdef$auto_super_call= (self,1) on */ self->attrs[COLOR_nitc__auto_super_init__AMethPropdef___auto_super_call].s = 1; /* _auto_super_call on */ -RET_LABEL112:(void)0; +RET_LABEL124:(void)0; } } { -{ /* Inline modelize_property#MPropDef#has_supercall= (var_mpropdef,1) on */ +{ /* Inline modelize_property$MPropDef$has_supercall= (var_mpropdef,1) on */ var_mpropdef->attrs[COLOR_nitc__modelize_property__MPropDef___has_supercall].s = 1; /* _has_supercall on */ -RET_LABEL113:(void)0; +RET_LABEL125:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var_modelbuilder) on */ -var116 = var_modelbuilder->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var116 == NULL)) { +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var_modelbuilder) on */ +var128 = var_modelbuilder->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var128 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base, 47); fatal_exit(1); } -var114 = var116; -RET_LABEL115:(void)0; +var126 = var128; +RET_LABEL127:(void)0; } } -if (unlikely(varonce117==NULL)) { -var118 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce119!=NULL)) { -var120 = varonce119; +if (unlikely(varonce129==NULL)) { +var130 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce131!=NULL)) { +var132 = varonce131; } else { -var121 = "Auto-super call for "; -var122 = core__flat___NativeString___to_s_full(var121, 20l, 20l); -var120 = var122; -varonce119 = var120; -} -((struct instance_core__NativeArray*)var118)->values[0]=var120; +var133 = "Auto-super call for "; +var135 = (val*)(20l<<2|1); +var136 = (val*)(20l<<2|1); +var137 = (val*)((long)(0)<<2|3); +var138 = (val*)((long)(0)<<2|3); +var134 = core__flat___CString___to_s_unsafe(var133, var135, var136, var137, var138); +var132 = var134; +varonce131 = var132; +} +((struct instance_core__NativeArray*)var130)->values[0]=var132; } else { -var118 = varonce117; -varonce117 = NULL; +var130 = varonce129; +varonce129 = NULL; } { -var123 = ((val*(*)(val* self))(var_mpropdef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mpropdef); /* to_s on */ +var139 = ((val*(*)(val* self))(var_mpropdef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mpropdef); /* to_s on */ } -((struct instance_core__NativeArray*)var118)->values[1]=var123; +((struct instance_core__NativeArray*)var130)->values[1]=var139; { -var124 = ((val*(*)(val* self))(var118->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var118); /* native_to_s on */ +var140 = ((val*(*)(val* self))(var130->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var130); /* native_to_s on */ } -varonce117 = var118; +varonce129 = var130; { -nitc___nitc__ToolContext___info(var114, var124, 4l); /* Direct call toolcontext#ToolContext#info on */ +nitc___nitc__ToolContext___info(var126, var140, 4l); /* Direct call toolcontext$ToolContext$info on */ } goto RET_LABEL; } else { } -var125 = NEW_core__Array(&type_core__Array__nitc__CallSite); +var141 = NEW_core__Array(&type_core__Array__nitc__CallSite); { -core___core__Array___core__kernel__Object__init(var125); /* Direct call array#Array#init on */ +core___core__Array___core__kernel__Object__init(var141); /* Direct call array$Array$init on */ } -var_auto_super_inits = var125; +var_auto_super_inits = var141; { -{ /* Inline modelize_property#ModelBuilder#the_root_init_mmethod (var_modelbuilder) on */ -var128 = var_modelbuilder->attrs[COLOR_nitc__modelize_property__ModelBuilder___the_root_init_mmethod].val; /* _the_root_init_mmethod on */ -var126 = var128; -RET_LABEL127:(void)0; +{ /* Inline modelize_property$ModelBuilder$the_root_init_mmethod (var_modelbuilder) on */ +var144 = var_modelbuilder->attrs[COLOR_nitc__modelize_property__ModelBuilder___the_root_init_mmethod].val; /* _the_root_init_mmethod on */ +var142 = var144; +RET_LABEL143:(void)0; } } -var_the_root_init_mmethod = var126; +var_the_root_init_mmethod = var142; if (var_the_root_init_mmethod == NULL) { -var130 = 0; /* is null */ +var146 = 0; /* is null */ } else { -var130 = 1; /* arg is null and recv is not */ +var146 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_the_root_init_mmethod,((val*)NULL)) on */ -var_other68 = ((val*)NULL); +{ /* Inline kernel$Object$!= (var_the_root_init_mmethod,((val*)NULL)) on */ +var_other72 = ((val*)NULL); { -var133 = ((short int(*)(val* self, val* p0))(var_the_root_init_mmethod->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_the_root_init_mmethod, var_other68); /* == on */ +var149 = ((short int(*)(val* self, val* p0))(var_the_root_init_mmethod->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_the_root_init_mmethod, var_other72); /* == on */ } -var134 = !var133; -var131 = var134; -goto RET_LABEL132; -RET_LABEL132:(void)0; +var150 = !var149; +var147 = var150; +goto RET_LABEL148; +RET_LABEL148:(void)0; } -var130 = var131; +var146 = var147; } -var_135 = var130; -if (var130){ +var_151 = var146; +if (var146){ { -var136 = core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var_auto_super_inits); +var152 = core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var_auto_super_inits); } -var129 = var136; +var145 = var152; } else { -var129 = var_135; +var145 = var_151; } -if (var129){ +if (var145){ { -var137 = nitc___nitc__MProperty___lookup_definitions(var_the_root_init_mmethod, var_mmodule, var_anchor); +var153 = nitc___nitc__MProperty___lookup_definitions(var_the_root_init_mmethod, var_mmodule, var_anchor); } -var_candidatedefs = var137; +var_candidatedefs = var153; { -var138 = core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var_candidatedefs); +var154 = core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var_candidatedefs); } -if (var138){ +if (var154){ { -{ /* Inline modelbuilder_base#ANode#is_broken= (self,1) on */ +{ /* Inline modelbuilder_base$ANode$is_broken= (self,1) on */ self->attrs[COLOR_nitc__modelbuilder_base__ANode___is_broken].s = 1; /* _is_broken on */ -RET_LABEL139:(void)0; +RET_LABEL155:(void)0; } } goto RET_LABEL; } else { } { -var140 = core___core__SequenceRead___Collection__first(var_candidatedefs); +var156 = core___core__SequenceRead___Collection__first(var_candidatedefs); } -var_candidatedef = var140; +var_candidatedef = var156; { -{ /* Inline array#AbstractArrayRead#length (var_candidatedefs) on */ -var143 = var_candidatedefs->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ -var141 = var143; -RET_LABEL142:(void)0; +{ /* Inline array$AbstractArrayRead$length (var_candidatedefs) on */ +var159 = var_candidatedefs->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ +var157 = var159; +RET_LABEL158:(void)0; } } { -{ /* Inline kernel#Int#> (var141,1l) on */ +{ /* Inline kernel$Int$> (var157,1l) on */ /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */ /* <1l:Int> isa OTHER */ -var146 = 1; /* easy <1l:Int> isa OTHER*/ -if (unlikely(!var146)) { -var_class_name149 = type_core__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name149); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 730); +var162 = 1; /* easy <1l:Int> isa OTHER*/ +if (unlikely(!var162)) { +var_class_name165 = type_core__Int.name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name165); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 727); fatal_exit(1); } -var150 = var141 > 1l; -var144 = var150; -goto RET_LABEL145; -RET_LABEL145:(void)0; +var166 = var157 > 1l; +var160 = var166; +goto RET_LABEL161; +RET_LABEL161:(void)0; } } -if (var144){ +if (var160){ { -var151 = core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_candidatedefs, 1l); +var167 = core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_candidatedefs, 1l); } -var_cd2 = var151; -if (unlikely(varonce152==NULL)) { -var153 = NEW_core__NativeArray(9l, &type_core__NativeArray__core__String); -if (likely(varonce154!=NULL)) { -var155 = varonce154; -} else { -var156 = "Error: cannot do an implicit constructor call to conflicting inherited inits `"; -var157 = core__flat___NativeString___to_s_full(var156, 78l, 78l); -var155 = var157; -varonce154 = var155; -} -((struct instance_core__NativeArray*)var153)->values[0]=var155; -if (likely(varonce158!=NULL)) { -var159 = varonce158; -} else { -var160 = "("; -var161 = core__flat___NativeString___to_s_full(var160, 1l, 1l); -var159 = var161; -varonce158 = var159; -} -((struct instance_core__NativeArray*)var153)->values[2]=var159; -if (likely(varonce162!=NULL)) { -var163 = varonce162; -} else { -var164 = "`) and `"; -var165 = core__flat___NativeString___to_s_full(var164, 8l, 8l); -var163 = var165; -varonce162 = var163; -} -((struct instance_core__NativeArray*)var153)->values[4]=var163; -if (likely(varonce166!=NULL)) { -var167 = varonce166; -} else { -var168 = "("; -var169 = core__flat___NativeString___to_s_full(var168, 1l, 1l); -var167 = var169; -varonce166 = var167; -} -((struct instance_core__NativeArray*)var153)->values[6]=var167; +var_cd2 = var167; +if (unlikely(varonce168==NULL)) { +var169 = NEW_core__NativeArray((int)9l, &type_core__NativeArray__core__String); if (likely(varonce170!=NULL)) { var171 = varonce170; } else { -var172 = "`). NOTE: Do not mix old-style and new-style init!"; -var173 = core__flat___NativeString___to_s_full(var172, 50l, 50l); +var172 = "Error: cannot do an implicit constructor call to conflicting inherited inits `"; +var174 = (val*)(78l<<2|1); +var175 = (val*)(78l<<2|1); +var176 = (val*)((long)(0)<<2|3); +var177 = (val*)((long)(0)<<2|3); +var173 = core__flat___CString___to_s_unsafe(var172, var174, var175, var176, var177); var171 = var173; varonce170 = var171; } -((struct instance_core__NativeArray*)var153)->values[8]=var171; +((struct instance_core__NativeArray*)var169)->values[0]=var171; +if (likely(varonce178!=NULL)) { +var179 = varonce178; } else { -var153 = varonce152; -varonce152 = NULL; +var180 = "("; +var182 = (val*)(1l<<2|1); +var183 = (val*)(1l<<2|1); +var184 = (val*)((long)(0)<<2|3); +var185 = (val*)((long)(0)<<2|3); +var181 = core__flat___CString___to_s_unsafe(var180, var182, var183, var184, var185); +var179 = var181; +varonce178 = var179; +} +((struct instance_core__NativeArray*)var169)->values[2]=var179; +if (likely(varonce186!=NULL)) { +var187 = varonce186; +} else { +var188 = "`) and `"; +var190 = (val*)(8l<<2|1); +var191 = (val*)(8l<<2|1); +var192 = (val*)((long)(0)<<2|3); +var193 = (val*)((long)(0)<<2|3); +var189 = core__flat___CString___to_s_unsafe(var188, var190, var191, var192, var193); +var187 = var189; +varonce186 = var187; +} +((struct instance_core__NativeArray*)var169)->values[4]=var187; +if (likely(varonce194!=NULL)) { +var195 = varonce194; +} else { +var196 = "("; +var198 = (val*)(1l<<2|1); +var199 = (val*)(1l<<2|1); +var200 = (val*)((long)(0)<<2|3); +var201 = (val*)((long)(0)<<2|3); +var197 = core__flat___CString___to_s_unsafe(var196, var198, var199, var200, var201); +var195 = var197; +varonce194 = var195; +} +((struct instance_core__NativeArray*)var169)->values[6]=var195; +if (likely(varonce202!=NULL)) { +var203 = varonce202; +} else { +var204 = "`). NOTE: Do not mix old-style and new-style init!"; +var206 = (val*)(50l<<2|1); +var207 = (val*)(50l<<2|1); +var208 = (val*)((long)(0)<<2|3); +var209 = (val*)((long)(0)<<2|3); +var205 = core__flat___CString___to_s_unsafe(var204, var206, var207, var208, var209); +var203 = var205; +varonce202 = var203; +} +((struct instance_core__NativeArray*)var169)->values[8]=var203; +} else { +var169 = varonce168; +varonce168 = NULL; } { -var174 = ((val*(*)(val* self))(var_cd2->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_cd2); /* to_s on */ +var210 = ((val*(*)(val* self))(var_cd2->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_cd2); /* to_s on */ } -((struct instance_core__NativeArray*)var153)->values[1]=var174; +((struct instance_core__NativeArray*)var169)->values[1]=var210; { -{ /* Inline model#MMethodDef#initializers (var_cd2) on */ -var177 = var_cd2->attrs[COLOR_nitc__model__MMethodDef___initializers].val; /* _initializers on */ -if (unlikely(var177 == NULL)) { +{ /* Inline model$MMethodDef$initializers (var_cd2) on */ +var213 = var_cd2->attrs[COLOR_nitc__model__MMethodDef___initializers].val; /* _initializers on */ +if (unlikely(var213 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2363); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2492); fatal_exit(1); } -var175 = var177; -RET_LABEL176:(void)0; +var211 = var213; +RET_LABEL212:(void)0; } } -if (likely(varonce178!=NULL)) { -var179 = varonce178; +if (likely(varonce214!=NULL)) { +var215 = varonce214; } else { -var180 = ", "; -var181 = core__flat___NativeString___to_s_full(var180, 2l, 2l); -var179 = var181; -varonce178 = var179; +var216 = ", "; +var218 = (val*)(2l<<2|1); +var219 = (val*)(2l<<2|1); +var220 = (val*)((long)(0)<<2|3); +var221 = (val*)((long)(0)<<2|3); +var217 = core__flat___CString___to_s_unsafe(var216, var218, var219, var220, var221); +var215 = var217; +varonce214 = var215; } { -var182 = core__abstract_text___Collection___join(var175, var179); +var222 = core__abstract_text___Collection___join(var211, var215, ((val*)NULL)); } -((struct instance_core__NativeArray*)var153)->values[3]=var182; +((struct instance_core__NativeArray*)var169)->values[3]=var222; { -var183 = ((val*(*)(val* self))(var_candidatedef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_candidatedef); /* to_s on */ +var223 = ((val*(*)(val* self))(var_candidatedef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_candidatedef); /* to_s on */ } -((struct instance_core__NativeArray*)var153)->values[5]=var183; +((struct instance_core__NativeArray*)var169)->values[5]=var223; { -{ /* Inline model#MMethodDef#initializers (var_candidatedef) on */ -var186 = var_candidatedef->attrs[COLOR_nitc__model__MMethodDef___initializers].val; /* _initializers on */ -if (unlikely(var186 == NULL)) { +{ /* Inline model$MMethodDef$initializers (var_candidatedef) on */ +var226 = var_candidatedef->attrs[COLOR_nitc__model__MMethodDef___initializers].val; /* _initializers on */ +if (unlikely(var226 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2363); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2492); fatal_exit(1); } -var184 = var186; -RET_LABEL185:(void)0; +var224 = var226; +RET_LABEL225:(void)0; } } -if (likely(varonce187!=NULL)) { -var188 = varonce187; +if (likely(varonce227!=NULL)) { +var228 = varonce227; } else { -var189 = ", "; -var190 = core__flat___NativeString___to_s_full(var189, 2l, 2l); -var188 = var190; -varonce187 = var188; +var229 = ", "; +var231 = (val*)(2l<<2|1); +var232 = (val*)(2l<<2|1); +var233 = (val*)((long)(0)<<2|3); +var234 = (val*)((long)(0)<<2|3); +var230 = core__flat___CString___to_s_unsafe(var229, var231, var232, var233, var234); +var228 = var230; +varonce227 = var228; } { -var191 = core__abstract_text___Collection___join(var184, var188); +var235 = core__abstract_text___Collection___join(var224, var228, ((val*)NULL)); } -((struct instance_core__NativeArray*)var153)->values[7]=var191; +((struct instance_core__NativeArray*)var169)->values[7]=var235; { -var192 = ((val*(*)(val* self))(var153->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var153); /* native_to_s on */ +var236 = ((val*(*)(val* self))(var169->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var169); /* native_to_s on */ } -varonce152 = var153; +varonce168 = var169; { -nitc___nitc__ModelBuilder___error(var_modelbuilder, self, var192); /* Direct call modelbuilder_base#ModelBuilder#error on */ +nitc___nitc__ModelBuilder___error(var_modelbuilder, self, var236); /* Direct call modelbuilder_base$ModelBuilder$error on */ } { -{ /* Inline modelbuilder_base#ANode#is_broken= (self,1) on */ +{ /* Inline modelbuilder_base$ANode$is_broken= (self,1) on */ self->attrs[COLOR_nitc__modelbuilder_base__ANode___is_broken].s = 1; /* _is_broken on */ -RET_LABEL193:(void)0; +RET_LABEL237:(void)0; } } goto RET_LABEL; } else { } { -{ /* Inline model#MMethodDef#new_msignature (var_candidatedef) on */ -var197 = var_candidatedef->attrs[COLOR_nitc__model__MMethodDef___new_msignature].val; /* _new_msignature on */ -var195 = var197; -RET_LABEL196:(void)0; +{ /* Inline model$MMethodDef$new_msignature (var_candidatedef) on */ +var241 = var_candidatedef->attrs[COLOR_nitc__model__MMethodDef___new_msignature].val; /* _new_msignature on */ +var239 = var241; +RET_LABEL240:(void)0; } } -if (var195!=NULL) { -var194 = var195; +if (var239!=NULL) { +var238 = var239; } else { { -{ /* Inline model#MMethodDef#msignature (var_candidatedef) on */ -var200 = var_candidatedef->attrs[COLOR_nitc__model__MMethodDef___msignature].val; /* _msignature on */ -var198 = var200; -RET_LABEL199:(void)0; +{ /* Inline model$MMethodDef$msignature (var_candidatedef) on */ +var244 = var_candidatedef->attrs[COLOR_nitc__model__MMethodDef___msignature].val; /* _msignature on */ +var242 = var244; +RET_LABEL243:(void)0; } } -var194 = var198; +var238 = var242; } -var_msignature = var194; +var_msignature = var238; if (var_msignature == 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__auto_super_init, 125); fatal_exit(1); } else { -var201 = nitc___nitc__MSignature___MType__resolve_for(var_msignature, var_recvtype, var_anchor, var_mmodule, 1); +var245 = nitc___nitc__MSignature___MType__resolve_for(var_msignature, var_recvtype, var_anchor, var_mmodule, 1); } -var_msignature = var201; +var_msignature = var245; { -var202 = nitc___nitc__MSignature___arity(var_msignature); +var246 = nitc___nitc__MSignature___arity(var_msignature); } { -{ /* Inline kernel#Int#> (var202,0l) on */ +{ /* Inline kernel$Int$> (var246,0l) on */ /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */ /* <0l:Int> isa OTHER */ -var205 = 1; /* easy <0l:Int> isa OTHER*/ -if (unlikely(!var205)) { -var_class_name208 = type_core__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name208); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 730); +var249 = 1; /* easy <0l:Int> isa OTHER*/ +if (unlikely(!var249)) { +var_class_name252 = type_core__Int.name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name252); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 727); fatal_exit(1); } -var209 = var202 > 0l; -var203 = var209; -goto RET_LABEL204; -RET_LABEL204:(void)0; +var253 = var246 > 0l; +var247 = var253; +goto RET_LABEL248; +RET_LABEL248:(void)0; } } -if (var203){ -if (unlikely(varonce210==NULL)) { -var211 = NEW_core__NativeArray(6l, &type_core__NativeArray__core__String); -if (likely(varonce212!=NULL)) { -var213 = varonce212; +if (var247){ +if (unlikely(varonce254==NULL)) { +var255 = NEW_core__NativeArray((int)6l, &type_core__NativeArray__core__String); +if (likely(varonce256!=NULL)) { +var257 = varonce256; } else { -var214 = "Error: cannot do an implicit constructor call to `"; -var215 = core__flat___NativeString___to_s_full(var214, 50l, 50l); -var213 = var215; -varonce212 = var213; -} -((struct instance_core__NativeArray*)var211)->values[0]=var213; -if (likely(varonce216!=NULL)) { -var217 = varonce216; +var258 = "Error: cannot do an implicit constructor call to `"; +var260 = (val*)(50l<<2|1); +var261 = (val*)(50l<<2|1); +var262 = (val*)((long)(0)<<2|3); +var263 = (val*)((long)(0)<<2|3); +var259 = core__flat___CString___to_s_unsafe(var258, var260, var261, var262, var263); +var257 = var259; +varonce256 = var257; +} +((struct instance_core__NativeArray*)var255)->values[0]=var257; +if (likely(varonce264!=NULL)) { +var265 = varonce264; } else { -var218 = "`. Expected at least `"; -var219 = core__flat___NativeString___to_s_full(var218, 22l, 22l); -var217 = var219; -varonce216 = var217; -} -((struct instance_core__NativeArray*)var211)->values[3]=var217; -if (likely(varonce220!=NULL)) { -var221 = varonce220; +var266 = "`. Expected at least `"; +var268 = (val*)(22l<<2|1); +var269 = (val*)(22l<<2|1); +var270 = (val*)((long)(0)<<2|3); +var271 = (val*)((long)(0)<<2|3); +var267 = core__flat___CString___to_s_unsafe(var266, var268, var269, var270, var271); +var265 = var267; +varonce264 = var265; +} +((struct instance_core__NativeArray*)var255)->values[3]=var265; +if (likely(varonce272!=NULL)) { +var273 = varonce272; } else { -var222 = "` arguments."; -var223 = core__flat___NativeString___to_s_full(var222, 12l, 12l); -var221 = var223; -varonce220 = var221; -} -((struct instance_core__NativeArray*)var211)->values[5]=var221; +var274 = "` arguments."; +var276 = (val*)(12l<<2|1); +var277 = (val*)(12l<<2|1); +var278 = (val*)((long)(0)<<2|3); +var279 = (val*)((long)(0)<<2|3); +var275 = core__flat___CString___to_s_unsafe(var274, var276, var277, var278, var279); +var273 = var275; +varonce272 = var273; +} +((struct instance_core__NativeArray*)var255)->values[5]=var273; } else { -var211 = varonce210; -varonce210 = NULL; +var255 = varonce254; +varonce254 = NULL; } { -var224 = ((val*(*)(val* self))(var_candidatedef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_candidatedef); /* to_s on */ +var280 = ((val*(*)(val* self))(var_candidatedef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_candidatedef); /* to_s on */ } -((struct instance_core__NativeArray*)var211)->values[1]=var224; +((struct instance_core__NativeArray*)var255)->values[1]=var280; { -var225 = ((val*(*)(val* self))(var_msignature->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_msignature); /* to_s on */ +var281 = ((val*(*)(val* self))(var_msignature->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_msignature); /* to_s on */ } -((struct instance_core__NativeArray*)var211)->values[2]=var225; +((struct instance_core__NativeArray*)var255)->values[2]=var281; { -var226 = nitc___nitc__MSignature___arity(var_msignature); +var282 = nitc___nitc__MSignature___arity(var_msignature); } -var227 = core__flat___Int___core__abstract_text__Object__to_s(var226); -((struct instance_core__NativeArray*)var211)->values[4]=var227; +var283 = core__flat___Int___core__abstract_text__Object__to_s(var282); +((struct instance_core__NativeArray*)var255)->values[4]=var283; { -var228 = ((val*(*)(val* self))(var211->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var211); /* native_to_s on */ +var284 = ((val*(*)(val* self))(var255->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var255); /* native_to_s on */ } -varonce210 = var211; +varonce254 = var255; { -nitc___nitc__ModelBuilder___error(var_modelbuilder, self, var228); /* Direct call modelbuilder_base#ModelBuilder#error on */ +nitc___nitc__ModelBuilder___error(var_modelbuilder, self, var284); /* Direct call modelbuilder_base$ModelBuilder$error on */ } { -{ /* Inline modelbuilder_base#ANode#is_broken= (self,1) on */ +{ /* Inline modelbuilder_base$ANode$is_broken= (self,1) on */ self->attrs[COLOR_nitc__modelbuilder_base__ANode___is_broken].s = 1; /* _is_broken on */ -RET_LABEL229:(void)0; +RET_LABEL285:(void)0; } } goto RET_LABEL; } else { } -var230 = NEW_nitc__CallSite(&type_nitc__CallSite); +var286 = NEW_nitc__CallSite(&type_nitc__CallSite); { -var231 = nitc___nitc__AMethPropdef___ANode__hot_location(self); +var287 = nitc___nitc__AMethPropdef___ANode__hot_location(self); } { -((void(*)(val* self, val* p0))(var230->class->vft[COLOR_nitc__typing__CallSite__location_61d]))(var230, var231); /* location= on */ +((void(*)(val* self, val* p0))(var286->class->vft[COLOR_nitc__typing__CallSite__location_61d]))(var286, var287); /* location= on */ } { -((void(*)(val* self, val* p0))(var230->class->vft[COLOR_nitc__typing__CallSite__recv_61d]))(var230, var_recvtype); /* recv= on */ +((void(*)(val* self, val* p0))(var286->class->vft[COLOR_nitc__typing__CallSite__recv_61d]))(var286, var_recvtype); /* recv= on */ } { -((void(*)(val* self, val* p0))(var230->class->vft[COLOR_nitc__typing__CallSite__mmodule_61d]))(var230, var_mmodule); /* mmodule= on */ +((void(*)(val* self, val* p0))(var286->class->vft[COLOR_nitc__typing__CallSite__mmodule_61d]))(var286, var_mmodule); /* mmodule= on */ } { -((void(*)(val* self, val* p0))(var230->class->vft[COLOR_nitc__typing__CallSite__anchor_61d]))(var230, var_anchor); /* anchor= on */ +((void(*)(val* self, val* p0))(var286->class->vft[COLOR_nitc__typing__CallSite__anchor_61d]))(var286, var_anchor); /* anchor= on */ } { -((void(*)(val* self, short int p0))(var230->class->vft[COLOR_nitc__typing__CallSite__recv_is_self_61d]))(var230, 1); /* recv_is_self= on */ +((void(*)(val* self, short int p0))(var286->class->vft[COLOR_nitc__typing__CallSite__recv_is_self_61d]))(var286, 1); /* recv_is_self= on */ } { -((void(*)(val* self, val* p0))(var230->class->vft[COLOR_nitc__typing__CallSite__mproperty_61d]))(var230, var_the_root_init_mmethod); /* mproperty= on */ +((void(*)(val* self, val* p0))(var286->class->vft[COLOR_nitc__typing__CallSite__mproperty_61d]))(var286, var_the_root_init_mmethod); /* mproperty= on */ } { -((void(*)(val* self, val* p0))(var230->class->vft[COLOR_nitc__typing__CallSite__mpropdef_61d]))(var230, var_candidatedef); /* mpropdef= on */ +((void(*)(val* self, val* p0))(var286->class->vft[COLOR_nitc__typing__CallSite__mpropdef_61d]))(var286, var_candidatedef); /* mpropdef= on */ } { -((void(*)(val* self, val* p0))(var230->class->vft[COLOR_nitc__typing__CallSite__msignature_61d]))(var230, var_msignature); /* msignature= on */ +((void(*)(val* self, val* p0))(var286->class->vft[COLOR_nitc__typing__CallSite__msignature_61d]))(var286, var_msignature); /* msignature= on */ } { -((void(*)(val* self, short int p0))(var230->class->vft[COLOR_nitc__typing__CallSite__erasure_cast_61d]))(var230, 0); /* erasure_cast= on */ +((void(*)(val* self, short int p0))(var286->class->vft[COLOR_nitc__typing__CallSite__erasure_cast_61d]))(var286, 0); /* erasure_cast= on */ } { -((void(*)(val* self))(var230->class->vft[COLOR_core__kernel__Object__init]))(var230); /* init on */ +((void(*)(val* self))(var286->class->vft[COLOR_core__kernel__Object__init]))(var286); /* init on */ } -var_callsite = var230; +var_callsite = var286; { -core___core__Array___core__abstract_collection__SimpleCollection__add(var_auto_super_inits, var_callsite); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var_auto_super_inits, var_callsite); /* Direct call array$Array$add on */ } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var_modelbuilder) on */ -var234 = var_modelbuilder->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var234 == NULL)) { +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var_modelbuilder) on */ +var290 = var_modelbuilder->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var290 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base, 47); fatal_exit(1); } -var232 = var234; -RET_LABEL233:(void)0; +var288 = var290; +RET_LABEL289:(void)0; } } -if (unlikely(varonce235==NULL)) { -var236 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce237!=NULL)) { -var238 = varonce237; +if (unlikely(varonce291==NULL)) { +var292 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce293!=NULL)) { +var294 = varonce293; } else { -var239 = "Auto-super init for "; -var240 = core__flat___NativeString___to_s_full(var239, 20l, 20l); -var238 = var240; -varonce237 = var238; -} -((struct instance_core__NativeArray*)var236)->values[0]=var238; -if (likely(varonce241!=NULL)) { -var242 = varonce241; +var295 = "Auto-super init for "; +var297 = (val*)(20l<<2|1); +var298 = (val*)(20l<<2|1); +var299 = (val*)((long)(0)<<2|3); +var300 = (val*)((long)(0)<<2|3); +var296 = core__flat___CString___to_s_unsafe(var295, var297, var298, var299, var300); +var294 = var296; +varonce293 = var294; +} +((struct instance_core__NativeArray*)var292)->values[0]=var294; +if (likely(varonce301!=NULL)) { +var302 = varonce301; } else { -var243 = " to "; -var244 = core__flat___NativeString___to_s_full(var243, 4l, 4l); -var242 = var244; -varonce241 = var242; -} -((struct instance_core__NativeArray*)var236)->values[2]=var242; +var303 = " to "; +var305 = (val*)(4l<<2|1); +var306 = (val*)(4l<<2|1); +var307 = (val*)((long)(0)<<2|3); +var308 = (val*)((long)(0)<<2|3); +var304 = core__flat___CString___to_s_unsafe(var303, var305, var306, var307, var308); +var302 = var304; +varonce301 = var302; +} +((struct instance_core__NativeArray*)var292)->values[2]=var302; } else { -var236 = varonce235; -varonce235 = NULL; +var292 = varonce291; +varonce291 = NULL; } { -var245 = ((val*(*)(val* self))(var_mpropdef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mpropdef); /* to_s on */ +var309 = ((val*(*)(val* self))(var_mpropdef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mpropdef); /* to_s on */ } -((struct instance_core__NativeArray*)var236)->values[1]=var245; +((struct instance_core__NativeArray*)var292)->values[1]=var309; { -var246 = nitc___nitc__MProperty___nitc__model_base__MEntity__full_name(var_the_root_init_mmethod); +var310 = nitc___nitc__MProperty___nitc__model_base__MEntity__full_name(var_the_root_init_mmethod); } -((struct instance_core__NativeArray*)var236)->values[3]=var246; +((struct instance_core__NativeArray*)var292)->values[3]=var310; { -var247 = ((val*(*)(val* self))(var236->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var236); /* native_to_s on */ +var311 = ((val*(*)(val* self))(var292->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var292); /* native_to_s on */ } -varonce235 = var236; +varonce291 = var292; { -nitc___nitc__ToolContext___info(var232, var247, 4l); /* Direct call toolcontext#ToolContext#info on */ +nitc___nitc__ToolContext___info(var288, var311, 4l); /* Direct call toolcontext$ToolContext$info on */ } } else { } { -var248 = core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var_auto_super_inits); +var312 = core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var_auto_super_inits); } -if (var248){ -if (unlikely(varonce249==NULL)) { -var250 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce251!=NULL)) { -var252 = varonce251; +if (var312){ +if (unlikely(varonce313==NULL)) { +var314 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce315!=NULL)) { +var316 = varonce315; } else { -var253 = "Error: no constructors to call implicitly in `"; -var254 = core__flat___NativeString___to_s_full(var253, 46l, 46l); -var252 = var254; -varonce251 = var252; -} -((struct instance_core__NativeArray*)var250)->values[0]=var252; -if (likely(varonce255!=NULL)) { -var256 = varonce255; +var317 = "Error: no constructors to call implicitly in `"; +var319 = (val*)(46l<<2|1); +var320 = (val*)(46l<<2|1); +var321 = (val*)((long)(0)<<2|3); +var322 = (val*)((long)(0)<<2|3); +var318 = core__flat___CString___to_s_unsafe(var317, var319, var320, var321, var322); +var316 = var318; +varonce315 = var316; +} +((struct instance_core__NativeArray*)var314)->values[0]=var316; +if (likely(varonce323!=NULL)) { +var324 = varonce323; } else { -var257 = "`. Call one explicitly."; -var258 = core__flat___NativeString___to_s_full(var257, 23l, 23l); -var256 = var258; -varonce255 = var256; -} -((struct instance_core__NativeArray*)var250)->values[2]=var256; +var325 = "`. Call one explicitly."; +var327 = (val*)(23l<<2|1); +var328 = (val*)(23l<<2|1); +var329 = (val*)((long)(0)<<2|3); +var330 = (val*)((long)(0)<<2|3); +var326 = core__flat___CString___to_s_unsafe(var325, var327, var328, var329, var330); +var324 = var326; +varonce323 = var324; +} +((struct instance_core__NativeArray*)var314)->values[2]=var324; } else { -var250 = varonce249; -varonce249 = NULL; +var314 = varonce313; +varonce313 = NULL; } { -var259 = ((val*(*)(val* self))(var_mpropdef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mpropdef); /* to_s on */ +var331 = ((val*(*)(val* self))(var_mpropdef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mpropdef); /* to_s on */ } -((struct instance_core__NativeArray*)var250)->values[1]=var259; +((struct instance_core__NativeArray*)var314)->values[1]=var331; { -var260 = ((val*(*)(val* self))(var250->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var250); /* native_to_s on */ +var332 = ((val*(*)(val* self))(var314->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var314); /* native_to_s on */ } -varonce249 = var250; +varonce313 = var314; { -nitc___nitc__ModelBuilder___error(var_modelbuilder, self, var260); /* Direct call modelbuilder_base#ModelBuilder#error on */ +nitc___nitc__ModelBuilder___error(var_modelbuilder, self, var332); /* Direct call modelbuilder_base$ModelBuilder$error on */ } goto RET_LABEL; } else { } { -{ /* Inline auto_super_init#AMethPropdef#auto_super_inits= (self,var_auto_super_inits) on */ +{ /* Inline auto_super_init$AMethPropdef$auto_super_inits= (self,var_auto_super_inits) on */ self->attrs[COLOR_nitc__auto_super_init__AMethPropdef___auto_super_inits].val = var_auto_super_inits; /* _auto_super_inits on */ -RET_LABEL261:(void)0; +RET_LABEL333:(void)0; } } RET_LABEL:; } -/* method auto_super_init#ANode#accept_auto_super_init for (self: ANode, AutoSuperInitVisitor) */ +/* method auto_super_init$ANode$accept_auto_super_init for (self: ANode, AutoSuperInitVisitor) */ void nitc__auto_super_init___ANode___accept_auto_super_init(val* self, val* p0) { val* var_v /* var v: AutoSuperInitVisitor */; var_v = p0; RET_LABEL:; } -/* method auto_super_init#ASendExpr#accept_auto_super_init for (self: ASendExpr, AutoSuperInitVisitor) */ +/* method auto_super_init$ASendExpr$accept_auto_super_init for (self: ASendExpr, AutoSuperInitVisitor) */ void nitc__auto_super_init___ASendExpr___ANode__accept_auto_super_init(val* self, val* p0) { val* var_v /* var v: AutoSuperInitVisitor */; val* var /* : nullable CallSite */; @@ -1322,7 +1508,7 @@ short int var13 /* : Bool */; short int var15 /* : Bool */; var_v = p0; { -{ /* Inline typing#ASendExpr#callsite (self) on */ +{ /* Inline typing$ASendExpr$callsite (self) on */ var2 = self->attrs[COLOR_nitc__typing__ASendExpr___callsite].val; /* _callsite on */ var = var2; RET_LABEL1:(void)0; @@ -1335,10 +1521,10 @@ var3 = 1; /* is null */ var3 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_callsite,((val*)NULL)) on */ +{ /* Inline kernel$Object$== (var_callsite,((val*)NULL)) on */ var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_callsite,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var_callsite,var_other) on */ var8 = var_callsite == var_other; var6 = var8; goto RET_LABEL7; @@ -1353,7 +1539,7 @@ var3 = var4; } if (var3){ { -{ /* Inline auto_super_init#AutoSuperInitVisitor#is_broken= (var_v,1) on */ +{ /* Inline auto_super_init$AutoSuperInitVisitor$is_broken= (var_v,1) on */ var_v->attrs[COLOR_nitc__auto_super_init__AutoSuperInitVisitor___is_broken].s = 1; /* _is_broken on */ RET_LABEL9:(void)0; } @@ -1362,11 +1548,14 @@ goto RET_LABEL; } else { } { -{ /* Inline typing#CallSite#mproperty (var_callsite) on */ +{ /* Inline typing$CallSite$mproperty (var_callsite) on */ var12 = var_callsite->attrs[COLOR_nitc__typing__CallSite___mproperty].val; /* _mproperty on */ if (unlikely(var12 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing, 653); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing, 656); fatal_exit(1); } var10 = var12; @@ -1374,7 +1563,7 @@ RET_LABEL11:(void)0; } } { -{ /* Inline model#MMethod#is_init (var10) on */ +{ /* Inline model$MMethod$is_init (var10) on */ var15 = var10->attrs[COLOR_nitc__model__MMethod___is_init].s; /* _is_init on */ var13 = var15; RET_LABEL14:(void)0; @@ -1382,7 +1571,7 @@ RET_LABEL14:(void)0; } if (var13){ { -{ /* Inline auto_super_init#AutoSuperInitVisitor#has_explicit_super_init= (var_v,self) on */ +{ /* Inline auto_super_init$AutoSuperInitVisitor$has_explicit_super_init= (var_v,self) on */ var_v->attrs[COLOR_nitc__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init].val = self; /* _has_explicit_super_init on */ RET_LABEL16:(void)0; } @@ -1391,12 +1580,12 @@ RET_LABEL16:(void)0; } RET_LABEL:; } -/* method auto_super_init#ASuperExpr#accept_auto_super_init for (self: ASuperExpr, AutoSuperInitVisitor) */ +/* method auto_super_init$ASuperExpr$accept_auto_super_init for (self: ASuperExpr, AutoSuperInitVisitor) */ void nitc__auto_super_init___ASuperExpr___ANode__accept_auto_super_init(val* self, val* p0) { val* var_v /* var v: AutoSuperInitVisitor */; var_v = p0; { -{ /* Inline auto_super_init#AutoSuperInitVisitor#has_explicit_super_init= (var_v,self) on */ +{ /* Inline auto_super_init$AutoSuperInitVisitor$has_explicit_super_init= (var_v,self) on */ var_v->attrs[COLOR_nitc__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init].val = self; /* _has_explicit_super_init on */ RET_LABEL1:(void)0; }