-var = var_res;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method separate_compiler#SeparateCompilerVisitor#call for (self: SeparateCompilerVisitor, MMethodDef, MClassType, Array[RuntimeVariable]): nullable RuntimeVariable */
-val* nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__call(val* self, val* p0, val* p1, val* p2) {
-val* var /* : nullable RuntimeVariable */;
-val* var_mmethoddef /* var mmethoddef: MMethodDef */;
-val* var_recvtype /* var recvtype: MClassType */;
-val* var_arguments /* var arguments: Array[RuntimeVariable] */;
-long var1 /* : Int */;
-long var3 /* : Int */;
-val* var4 /* : nullable MSignature */;
-val* var6 /* : nullable MSignature */;
-long var7 /* : Int */;
-long var8 /* : Int */;
-short int var10 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-long var11 /* : Int */;
-short int var12 /* : Bool */;
-short int var14 /* : Bool */;
-val* var15 /* : NativeArray[String] */;
-static val* varonce;
-static val* varonce16;
-val* var17 /* : String */;
-char* var18 /* : NativeString */;
-val* var19 /* : String */;
-static val* varonce20;
-val* var21 /* : String */;
-char* var22 /* : NativeString */;
-val* var23 /* : String */;
-static val* varonce24;
-val* var25 /* : String */;
-char* var26 /* : NativeString */;
-val* var27 /* : String */;
-val* var28 /* : String */;
-long var29 /* : Int */;
-long var31 /* : Int */;
-val* var32 /* : String */;
-val* var33 /* : String */;
-val* var34 /* : nullable MSignature */;
-val* var36 /* : nullable MSignature */;
-val* var37 /* : nullable MType */;
-val* var39 /* : nullable MType */;
-val* var_ret /* var ret: nullable MType */;
-short int var40 /* : Bool */;
-short int var41 /* : Bool */;
-val* var_other /* var other: nullable Object */;
-short int var43 /* : Bool */;
-short int var45 /* : Bool */;
-val* var_res /* var res: nullable RuntimeVariable */;
-val* var46 /* : MClassDef */;
-val* var48 /* : MClassDef */;
-val* var49 /* : MClassType */;
-val* var51 /* : MClassType */;
-val* var52 /* : MClassDef */;
-val* var54 /* : MClassDef */;
-val* var55 /* : MClassType */;
-val* var57 /* : MClassType */;
-val* var58 /* : MClassDef */;
-val* var60 /* : MClassDef */;
-val* var61 /* : MModule */;
-val* var63 /* : MModule */;
-val* var64 /* : MType */;
-val* var65 /* : RuntimeVariable */;
-short int var66 /* : Bool */;
-short int var67 /* : Bool */;
-short int var68 /* : Bool */;
-short int var70 /* : Bool */;
-short int var_ /* var : Bool */;
-val* var71 /* : AbstractCompiler */;
-val* var73 /* : AbstractCompiler */;
-val* var74 /* : ModelBuilder */;
-val* var76 /* : ModelBuilder */;
-val* var77 /* : ToolContext */;
-val* var79 /* : ToolContext */;
-val* var80 /* : OptionBool */;
-val* var82 /* : OptionBool */;
-val* var83 /* : nullable Object */;
-val* var85 /* : nullable Object */;
-short int var86 /* : Bool */;
-short int var87 /* : Bool */;
-short int var_88 /* var : Bool */;
-short int var89 /* : Bool */;
-val* var90 /* : AbstractCompiler */;
-val* var92 /* : AbstractCompiler */;
-val* var93 /* : ModelBuilder */;
-val* var95 /* : ModelBuilder */;
-val* var96 /* : ToolContext */;
-val* var98 /* : ToolContext */;
-val* var99 /* : OptionBool */;
-val* var101 /* : OptionBool */;
-val* var102 /* : nullable Object */;
-val* var104 /* : nullable Object */;
-short int var105 /* : Bool */;
-short int var_106 /* var : Bool */;
-short int var107 /* : Bool */;
-val* var108 /* : AbstractCompiler */;
-val* var110 /* : AbstractCompiler */;
-val* var111 /* : ModelBuilder */;
-val* var113 /* : ModelBuilder */;
-val* var_114 /* var : ModelBuilder */;
-long var115 /* : Int */;
-long var117 /* : Int */;
-long var118 /* : Int */;
-short int var120 /* : Bool */;
-int cltype121;
-int idtype122;
-const char* var_class_name123;
-long var124 /* : Int */;
-val* var126 /* : AbstractCompiler */;
-val* var128 /* : AbstractCompiler */;
-val* var129 /* : ModelBuilder */;
-val* var131 /* : ModelBuilder */;
-val* var132 /* : ToolContext */;
-val* var134 /* : ToolContext */;
-val* var135 /* : OptionBool */;
-val* var137 /* : OptionBool */;
-val* var138 /* : nullable Object */;
-val* var140 /* : nullable Object */;
-short int var141 /* : Bool */;
-static val* varonce142;
-val* var143 /* : String */;
-char* var144 /* : NativeString */;
-val* var145 /* : String */;
-val* var146 /* : StaticFrame */;
-val* var_frame /* var frame: StaticFrame */;
-static val* varonce147;
-val* var148 /* : String */;
-char* var149 /* : NativeString */;
-val* var150 /* : String */;
-val* var151 /* : String */;
-val* var154 /* : nullable StaticFrame */;
-val* var156 /* : nullable StaticFrame */;
-val* var_old_frame /* var old_frame: nullable StaticFrame */;
-val* var159 /* : NativeArray[String] */;
-static val* varonce158;
-static val* varonce160;
-val* var161 /* : String */;
-char* var162 /* : NativeString */;
-val* var163 /* : String */;
-static val* varonce164;
-val* var165 /* : String */;
-char* var166 /* : NativeString */;
-val* var167 /* : String */;
-static val* varonce168;
-val* var169 /* : String */;
-char* var170 /* : NativeString */;
-val* var171 /* : String */;
-static val* varonce172;
-val* var173 /* : String */;
-char* var174 /* : NativeString */;
-val* var175 /* : String */;
-val* var176 /* : String */;
-static val* varonce177;
-val* var178 /* : String */;
-char* var179 /* : NativeString */;
-val* var180 /* : String */;
-val* var181 /* : String */;
-val* var182 /* : nullable Object */;
-val* var183 /* : String */;
-val* var184 /* : String */;
-val* var185 /* : nullable RuntimeVariable */;
-val* var187 /* : NativeArray[String] */;
-static val* varonce186;
-static val* varonce188;
-val* var189 /* : String */;
-char* var190 /* : NativeString */;
-val* var191 /* : String */;
-val* var192 /* : nullable String */;
-val* var194 /* : nullable String */;
-val* var195 /* : String */;
-static val* varonce196;
-val* var197 /* : String */;
-char* var198 /* : NativeString */;
-val* var199 /* : String */;
-val* var201 /* : AbstractCompiler */;
-val* var203 /* : AbstractCompiler */;
-val* var204 /* : ModelBuilder */;
-val* var206 /* : ModelBuilder */;
-val* var_207 /* var : ModelBuilder */;
-long var208 /* : Int */;
-long var210 /* : Int */;
-long var211 /* : Int */;
-short int var213 /* : Bool */;
-int cltype214;
-int idtype215;
-const char* var_class_name216;
-long var217 /* : Int */;
-val* var219 /* : AbstractCompiler */;
-val* var221 /* : AbstractCompiler */;
-val* var222 /* : ModelBuilder */;
-val* var224 /* : ModelBuilder */;
-val* var225 /* : ToolContext */;
-val* var227 /* : ToolContext */;
-val* var228 /* : OptionBool */;
-val* var230 /* : OptionBool */;
-val* var231 /* : nullable Object */;
-val* var233 /* : nullable Object */;
-short int var234 /* : Bool */;
-static val* varonce235;
-val* var236 /* : String */;
-char* var237 /* : NativeString */;
-val* var238 /* : String */;
-val* var239 /* : String */;
-short int var240 /* : Bool */;
-short int var241 /* : Bool */;
-short int var243 /* : Bool */;
-short int var245 /* : Bool */;
-val* var247 /* : NativeArray[String] */;
-static val* varonce246;
-static val* varonce248;
-val* var249 /* : String */;
-char* var250 /* : NativeString */;
-val* var251 /* : String */;
-static val* varonce252;
-val* var253 /* : String */;
-char* var254 /* : NativeString */;
-val* var255 /* : String */;
-static val* varonce256;
-val* var257 /* : String */;
-char* var258 /* : NativeString */;
-val* var259 /* : String */;
-static val* varonce260;
-val* var261 /* : String */;
-char* var262 /* : NativeString */;
-val* var263 /* : String */;
-val* var264 /* : String */;
-static val* varonce265;
-val* var266 /* : String */;
-char* var267 /* : NativeString */;
-val* var268 /* : String */;
-val* var269 /* : String */;
-val* var270 /* : String */;
-val* var271 /* : nullable Object */;
-val* var272 /* : String */;
-val* var273 /* : String */;
-val* var275 /* : NativeArray[String] */;
-static val* varonce274;
-static val* varonce276;
-val* var277 /* : String */;
-char* var278 /* : NativeString */;
-val* var279 /* : String */;
-static val* varonce280;
-val* var281 /* : String */;
-char* var282 /* : NativeString */;
-val* var283 /* : String */;
-static val* varonce284;
-val* var285 /* : String */;
-char* var286 /* : NativeString */;
-val* var287 /* : String */;
-val* var288 /* : String */;
-val* var289 /* : String */;
-static val* varonce290;
-val* var291 /* : String */;
-char* var292 /* : NativeString */;
-val* var293 /* : String */;
-val* var294 /* : String */;
-val* var295 /* : String */;
-var_mmethoddef = p0;
-var_recvtype = p1;
-var_arguments = p2;
-{
-{ /* Inline array#AbstractArrayRead#length (var_arguments) on <var_arguments:Array[RuntimeVariable]> */
-var3 = var_arguments->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on <var_arguments:Array[RuntimeVariable]> */
-var1 = var3;
-RET_LABEL2:(void)0;
-}
-}
-{
-{ /* Inline model#MMethodDef#msignature (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
-var6 = var_mmethoddef->attrs[COLOR_nitc__model__MMethodDef___msignature].val; /* _msignature on <var_mmethoddef:MMethodDef> */
-var4 = var6;
-RET_LABEL5:(void)0;
-}
-}
-if (var4 == NULL) {
-PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1524);
-fatal_exit(1);
-} else {
-var7 = nitc___nitc__MSignature___arity(var4);
-}
-{
-{ /* Inline kernel#Int#+ (var7,1l) on <var7:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var10 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var10)) {
-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, 731);
-fatal_exit(1);
-}
-var11 = var7 + 1l;
-var8 = var11;
-goto RET_LABEL9;
-RET_LABEL9:(void)0;
-}
-}
-{
-{ /* Inline kernel#Int#== (var1,var8) on <var1:Int> */
-var14 = var1 == var8;
-var12 = var14;
-goto RET_LABEL13;
-RET_LABEL13:(void)0;
-}
-}
-if (unlikely(!var12)) {
-if (unlikely(varonce==NULL)) {
-var15 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String);
-if (likely(varonce16!=NULL)) {
-var17 = varonce16;
-} else {
-var18 = "Invalid arity for ";
-var19 = core__flat___NativeString___to_s_full(var18, 18l, 18l);
-var17 = var19;
-varonce16 = var17;
-}
-((struct instance_core__NativeArray*)var15)->values[0]=var17;
-if (likely(varonce20!=NULL)) {
-var21 = varonce20;
-} else {
-var22 = ". ";
-var23 = core__flat___NativeString___to_s_full(var22, 2l, 2l);
-var21 = var23;
-varonce20 = var21;
-}
-((struct instance_core__NativeArray*)var15)->values[2]=var21;
-if (likely(varonce24!=NULL)) {
-var25 = varonce24;
-} else {
-var26 = " arguments given.";
-var27 = core__flat___NativeString___to_s_full(var26, 17l, 17l);
-var25 = var27;
-varonce24 = var25;
-}
-((struct instance_core__NativeArray*)var15)->values[4]=var25;
-} else {
-var15 = varonce;
-varonce = NULL;
-}
-{
-var28 = ((val*(*)(val* self))(var_mmethoddef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mmethoddef); /* to_s on <var_mmethoddef:MMethodDef>*/
-}
-((struct instance_core__NativeArray*)var15)->values[1]=var28;
-{
-{ /* Inline array#AbstractArrayRead#length (var_arguments) on <var_arguments:Array[RuntimeVariable]> */
-var31 = var_arguments->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on <var_arguments:Array[RuntimeVariable]> */
-var29 = var31;
-RET_LABEL30:(void)0;
-}
-}
-var32 = core__flat___Int___core__abstract_text__Object__to_s(var29);
-((struct instance_core__NativeArray*)var15)->values[3]=var32;
-{
-var33 = ((val*(*)(val* self))(var15->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var15); /* native_to_s on <var15:NativeArray[String]>*/
-}
-varonce = var15;
-{
-nitc___nitc__AbstractCompilerVisitor___debug(self, var33); /* Direct call abstract_compiler#AbstractCompilerVisitor#debug on <self:SeparateCompilerVisitor>*/
-}
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1524);
-fatal_exit(1);
-}
-{
-{ /* Inline model#MMethodDef#msignature (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
-var36 = var_mmethoddef->attrs[COLOR_nitc__model__MMethodDef___msignature].val; /* _msignature on <var_mmethoddef:MMethodDef> */
-var34 = var36;
-RET_LABEL35:(void)0;
-}
-}
-if (var34 == NULL) {
-PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1527);
-fatal_exit(1);
-} else {
-{ /* Inline model#MSignature#return_mtype (var34) on <var34:nullable MSignature> */
-if (unlikely(var34 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Receiver is null");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1795);
-fatal_exit(1);
-}
-var39 = var34->attrs[COLOR_nitc__model__MSignature___return_mtype].val; /* _return_mtype on <var34:nullable MSignature> */
-var37 = var39;
-RET_LABEL38:(void)0;
-}
-}
-var_ret = var37;
-if (var_ret == NULL) {
-var40 = 1; /* is null */
-} else {
-var40 = 0; /* arg is null but recv is not */
-}
-if (0) {
-{ /* Inline kernel#Object#== (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
-var_other = ((val*)NULL);
-{
-{ /* Inline kernel#Object#is_same_instance (var_ret,var_other) on <var_ret:nullable MType(MType)> */
-var45 = var_ret == var_other;
-var43 = var45;
-goto RET_LABEL44;
-RET_LABEL44:(void)0;
-}
-}
-var41 = var43;
-goto RET_LABEL42;
-RET_LABEL42:(void)0;
-}
-var40 = var41;
-}
-if (var40){
-var_res = ((val*)NULL);
-} else {
-{
-{ /* Inline model#MPropDef#mclassdef (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
-var48 = var_mmethoddef->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <var_mmethoddef:MMethodDef> */
-if (unlikely(var48 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2227);
-fatal_exit(1);
-}
-var46 = var48;
-RET_LABEL47:(void)0;
-}
-}
-{
-{ /* Inline model#MClassDef#bound_mtype (var46) on <var46:MClassDef> */
-var51 = var46->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on <var46:MClassDef> */
-if (unlikely(var51 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 579);
-fatal_exit(1);
-}
-var49 = var51;
-RET_LABEL50:(void)0;
-}
-}
-{
-{ /* Inline model#MPropDef#mclassdef (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
-var54 = var_mmethoddef->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <var_mmethoddef:MMethodDef> */
-if (unlikely(var54 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2227);
-fatal_exit(1);
-}
-var52 = var54;
-RET_LABEL53:(void)0;
-}
-}
-{
-{ /* Inline model#MClassDef#bound_mtype (var52) on <var52:MClassDef> */
-var57 = var52->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on <var52:MClassDef> */
-if (unlikely(var57 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 579);
-fatal_exit(1);
-}
-var55 = var57;
-RET_LABEL56:(void)0;
-}
-}
-{
-{ /* Inline model#MPropDef#mclassdef (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
-var60 = var_mmethoddef->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on <var_mmethoddef:MMethodDef> */
-if (unlikely(var60 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2227);
-fatal_exit(1);
-}
-var58 = var60;
-RET_LABEL59:(void)0;
-}
-}
-{
-{ /* Inline model#MClassDef#mmodule (var58) on <var58:MClassDef> */
-var63 = var58->attrs[COLOR_nitc__model__MClassDef___mmodule].val; /* _mmodule on <var58:MClassDef> */
-if (unlikely(var63 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 573);
-fatal_exit(1);
-}
-var61 = var63;
-RET_LABEL62:(void)0;
-}
-}
-{
-var64 = ((val*(*)(val* self, val* p0, val* p1, val* p2, short int p3))(var_ret->class->vft[COLOR_nitc__model__MType__resolve_for]))(var_ret, var49, var55, var61, 1); /* resolve_for on <var_ret:nullable MType(MType)>*/
-}
-var_ret = var64;
-{
-var65 = nitc___nitc__AbstractCompilerVisitor___new_var(self, var_ret);
-}
-var_res = var65;
-}
-{
-{ /* Inline model#MMethodDef#is_intern (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
-var70 = var_mmethoddef->attrs[COLOR_nitc__model__MMethodDef___is_intern].s; /* _is_intern on <var_mmethoddef:MMethodDef> */
-var68 = var70;
-RET_LABEL69:(void)0;
-}
-}
-var_ = var68;
-if (var68){
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
-var73 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateCompilerVisitor> */
-if (unlikely(var73 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
-fatal_exit(1);
-}
-var71 = var73;
-RET_LABEL72:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var71) on <var71:AbstractCompiler(SeparateCompiler)> */
-var76 = var71->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var71:AbstractCompiler(SeparateCompiler)> */
-if (unlikely(var76 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538);
-fatal_exit(1);
-}
-var74 = var76;
-RET_LABEL75:(void)0;
-}
-}
-{
-{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var74) on <var74:ModelBuilder> */
-var79 = var74->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on <var74:ModelBuilder> */
-if (unlikely(var79 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base, 47);
-fatal_exit(1);
-}
-var77 = var79;
-RET_LABEL78:(void)0;
-}
-}
-{
-{ /* Inline separate_compiler#ToolContext#opt_no_inline_intern (var77) on <var77:ToolContext> */
-var82 = var77->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_inline_intern].val; /* _opt_no_inline_intern on <var77:ToolContext> */
-if (unlikely(var82 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_inline_intern");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 26);
-fatal_exit(1);
-}
-var80 = var82;
-RET_LABEL81:(void)0;
-}
-}
-{
-{ /* Inline opts#Option#value (var80) on <var80:OptionBool> */
-var85 = var80->attrs[COLOR_opts__Option___value].val; /* _value on <var80:OptionBool> */
-var83 = var85;
-RET_LABEL84:(void)0;
-}
-}
-var86 = (short int)((long)(var83)>>2);
-var87 = !var86;
-var67 = var87;
-} else {
-var67 = var_;
-}
-var_88 = var67;
-if (var67){
-var66 = var_88;
-} else {
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
-var92 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateCompilerVisitor> */
-if (unlikely(var92 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
-fatal_exit(1);
-}
-var90 = var92;
-RET_LABEL91:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var90) on <var90:AbstractCompiler(SeparateCompiler)> */
-var95 = var90->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var90:AbstractCompiler(SeparateCompiler)> */
-if (unlikely(var95 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538);
-fatal_exit(1);
-}
-var93 = var95;
-RET_LABEL94:(void)0;
-}
-}
-{
-{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var93) on <var93:ModelBuilder> */
-var98 = var93->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on <var93:ModelBuilder> */
-if (unlikely(var98 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base, 47);
-fatal_exit(1);
-}
-var96 = var98;
-RET_LABEL97:(void)0;
-}
-}
-{
-{ /* Inline separate_compiler#ToolContext#opt_inline_some_methods (var96) on <var96:ToolContext> */
-var101 = var96->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_inline_some_methods].val; /* _opt_inline_some_methods on <var96:ToolContext> */
-if (unlikely(var101 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_inline_some_methods");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 48);
-fatal_exit(1);
-}
-var99 = var101;
-RET_LABEL100:(void)0;
-}
-}
-{
-{ /* Inline opts#Option#value (var99) on <var99:OptionBool> */
-var104 = var99->attrs[COLOR_opts__Option___value].val; /* _value on <var99:OptionBool> */
-var102 = var104;
-RET_LABEL103:(void)0;
-}
-}
-var105 = (short int)((long)(var102)>>2);
-var_106 = var105;
-if (var105){
-{
-var107 = nitc__abstract_compiler___MMethodDef___can_inline(var_mmethoddef, self);
-}
-var89 = var107;
-} else {
-var89 = var_106;
-}
-var66 = var89;
-}
-if (var66){
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
-var110 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateCompilerVisitor> */
-if (unlikely(var110 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
-fatal_exit(1);
-}
-var108 = var110;
-RET_LABEL109:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var108) on <var108:AbstractCompiler(SeparateCompiler)> */
-var113 = var108->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var108:AbstractCompiler(SeparateCompiler)> */
-if (unlikely(var113 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538);
-fatal_exit(1);
-}
-var111 = var113;
-RET_LABEL112:(void)0;
-}
-}
-var_114 = var111;
-{
-{ /* Inline separate_compiler#ModelBuilder#nb_invok_by_inline (var_114) on <var_114:ModelBuilder> */
-var117 = var_114->attrs[COLOR_nitc__separate_compiler__ModelBuilder___nb_invok_by_inline].l; /* _nb_invok_by_inline on <var_114:ModelBuilder> */
-var115 = var117;
-RET_LABEL116:(void)0;
-}
-}
-{
-{ /* Inline kernel#Int#+ (var115,1l) on <var115:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var120 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var120)) {
-var_class_name123 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name123);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
-fatal_exit(1);
-}
-var124 = var115 + 1l;
-var118 = var124;
-goto RET_LABEL119;
-RET_LABEL119:(void)0;
-}
-}
-{
-{ /* Inline separate_compiler#ModelBuilder#nb_invok_by_inline= (var_114,var118) on <var_114:ModelBuilder> */
-var_114->attrs[COLOR_nitc__separate_compiler__ModelBuilder___nb_invok_by_inline].l = var118; /* _nb_invok_by_inline on <var_114:ModelBuilder> */
-RET_LABEL125:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
-var128 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateCompilerVisitor> */
-if (unlikely(var128 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
-fatal_exit(1);
-}
-var126 = var128;
-RET_LABEL127:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var126) on <var126:AbstractCompiler(SeparateCompiler)> */
-var131 = var126->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var126:AbstractCompiler(SeparateCompiler)> */
-if (unlikely(var131 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538);
-fatal_exit(1);
-}
-var129 = var131;
-RET_LABEL130:(void)0;
-}
-}
-{
-{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var129) on <var129:ModelBuilder> */
-var134 = var129->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on <var129:ModelBuilder> */
-if (unlikely(var134 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base, 47);
-fatal_exit(1);
-}
-var132 = var134;
-RET_LABEL133:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#ToolContext#opt_invocation_metrics (var132) on <var132:ToolContext> */
-var137 = var132->attrs[COLOR_nitc__abstract_compiler__ToolContext___opt_invocation_metrics].val; /* _opt_invocation_metrics on <var132:ToolContext> */
-if (unlikely(var137 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_invocation_metrics");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 62);
-fatal_exit(1);
-}
-var135 = var137;
-RET_LABEL136:(void)0;
-}
-}
-{
-{ /* Inline opts#Option#value (var135) on <var135:OptionBool> */
-var140 = var135->attrs[COLOR_opts__Option___value].val; /* _value on <var135:OptionBool> */
-var138 = var140;
-RET_LABEL139:(void)0;
-}
-}
-var141 = (short int)((long)(var138)>>2);
-if (var141){
-if (likely(varonce142!=NULL)) {
-var143 = varonce142;
-} else {
-var144 = "count_invoke_by_inline++;";
-var145 = core__flat___NativeString___to_s_full(var144, 25l, 25l);
-var143 = var145;
-varonce142 = var143;
-}
-{
-nitc___nitc__AbstractCompilerVisitor___add(self, var143); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
-}
-} else {
-}
-var146 = NEW_nitc__StaticFrame(&type_nitc__StaticFrame);
-{
-((void(*)(val* self, val* p0))(var146->class->vft[COLOR_nitc__abstract_compiler__StaticFrame__visitor_61d]))(var146, self); /* visitor= on <var146:StaticFrame>*/
-}
-{
-((void(*)(val* self, val* p0))(var146->class->vft[COLOR_nitc__abstract_compiler__StaticFrame__mpropdef_61d]))(var146, var_mmethoddef); /* mpropdef= on <var146:StaticFrame>*/
-}
-{
-((void(*)(val* self, val* p0))(var146->class->vft[COLOR_nitc__abstract_compiler__StaticFrame__receiver_61d]))(var146, var_recvtype); /* receiver= on <var146:StaticFrame>*/
-}
-{
-((void(*)(val* self, val* p0))(var146->class->vft[COLOR_nitc__abstract_compiler__StaticFrame__arguments_61d]))(var146, var_arguments); /* arguments= on <var146:StaticFrame>*/
-}
-{
-((void(*)(val* self))(var146->class->vft[COLOR_core__kernel__Object__init]))(var146); /* init on <var146:StaticFrame>*/
-}
-var_frame = var146;
-if (likely(varonce147!=NULL)) {
-var148 = varonce147;
-} else {
-var149 = "RET_LABEL";
-var150 = core__flat___NativeString___to_s_full(var149, 9l, 9l);
-var148 = var150;
-varonce147 = var148;
-}
-{
-var151 = nitc___nitc__AbstractCompilerVisitor___get_name(self, var148);
-}
-{
-{ /* Inline abstract_compiler#StaticFrame#returnlabel= (var_frame,var151) on <var_frame:StaticFrame> */
-var_frame->attrs[COLOR_nitc__abstract_compiler__StaticFrame___returnlabel].val = var151; /* _returnlabel on <var_frame:StaticFrame> */
-RET_LABEL152:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#StaticFrame#returnvar= (var_frame,var_res) on <var_frame:StaticFrame> */
-var_frame->attrs[COLOR_nitc__abstract_compiler__StaticFrame___returnvar].val = var_res; /* _returnvar on <var_frame:StaticFrame> */
-RET_LABEL153:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
-var156 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <self:SeparateCompilerVisitor> */
-var154 = var156;
-RET_LABEL155:(void)0;
-}
-}
-var_old_frame = var154;
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#frame= (self,var_frame) on <self:SeparateCompilerVisitor> */
-self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame].val = var_frame; /* _frame on <self:SeparateCompilerVisitor> */
-RET_LABEL157:(void)0;
-}
-}
-if (unlikely(varonce158==NULL)) {
-var159 = NEW_core__NativeArray(7l, &type_core__NativeArray__core__String);
-if (likely(varonce160!=NULL)) {
-var161 = varonce160;
-} else {
-var162 = "{ /* Inline ";
-var163 = core__flat___NativeString___to_s_full(var162, 12l, 12l);
-var161 = var163;
-varonce160 = var161;
-}
-((struct instance_core__NativeArray*)var159)->values[0]=var161;
-if (likely(varonce164!=NULL)) {
-var165 = varonce164;
-} else {
-var166 = " (";
-var167 = core__flat___NativeString___to_s_full(var166, 2l, 2l);
-var165 = var167;
-varonce164 = var165;
-}
-((struct instance_core__NativeArray*)var159)->values[2]=var165;
-if (likely(varonce168!=NULL)) {
-var169 = varonce168;
-} else {
-var170 = ") on ";
-var171 = core__flat___NativeString___to_s_full(var170, 5l, 5l);
-var169 = var171;
-varonce168 = var169;
-}
-((struct instance_core__NativeArray*)var159)->values[4]=var169;
-if (likely(varonce172!=NULL)) {
-var173 = varonce172;
-} else {
-var174 = " */";
-var175 = core__flat___NativeString___to_s_full(var174, 3l, 3l);
-var173 = var175;
-varonce172 = var173;
-}
-((struct instance_core__NativeArray*)var159)->values[6]=var173;
-} else {
-var159 = varonce158;
-varonce158 = NULL;
-}
-{
-var176 = ((val*(*)(val* self))(var_mmethoddef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mmethoddef); /* to_s on <var_mmethoddef:MMethodDef>*/
-}
-((struct instance_core__NativeArray*)var159)->values[1]=var176;
-if (likely(varonce177!=NULL)) {
-var178 = varonce177;
-} else {
-var179 = ",";
-var180 = core__flat___NativeString___to_s_full(var179, 1l, 1l);
-var178 = var180;
-varonce177 = var178;
-}
-{
-var181 = core__abstract_text___Collection___join(var_arguments, var178);
-}
-((struct instance_core__NativeArray*)var159)->values[3]=var181;
-{
-var182 = core___core__SequenceRead___Collection__first(var_arguments);
-}
-{
-var183 = nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var182);
-}
-((struct instance_core__NativeArray*)var159)->values[5]=var183;
-{
-var184 = ((val*(*)(val* self))(var159->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var159); /* native_to_s on <var159:NativeArray[String]>*/
-}
-varonce158 = var159;
-{
-nitc___nitc__AbstractCompilerVisitor___add(self, var184); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
-}
-{
-var185 = nitc__abstract_compiler___MMethodDef___compile_inside_to_c(var_mmethoddef, self, var_arguments);
-}
-if (unlikely(varonce186==NULL)) {
-var187 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String);
-if (likely(varonce188!=NULL)) {
-var189 = varonce188;
-} else {
-var190 = ":(void)0;";
-var191 = core__flat___NativeString___to_s_full(var190, 9l, 9l);
-var189 = var191;
-varonce188 = var189;
-}
-((struct instance_core__NativeArray*)var187)->values[1]=var189;
-} else {
-var187 = varonce186;
-varonce186 = NULL;
-}
-{
-{ /* Inline abstract_compiler#StaticFrame#returnlabel (var_frame) on <var_frame:StaticFrame> */
-var194 = var_frame->attrs[COLOR_nitc__abstract_compiler__StaticFrame___returnlabel].val; /* _returnlabel on <var_frame:StaticFrame> */
-var192 = var194;
-RET_LABEL193:(void)0;
-}
-}
-if (unlikely(var192 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Cast failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1546);
-fatal_exit(1);
-}
-((struct instance_core__NativeArray*)var187)->values[0]=var192;
-{
-var195 = ((val*(*)(val* self))(var187->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var187); /* native_to_s on <var187:NativeArray[String]>*/
-}
-varonce186 = var187;
-{
-nitc___nitc__AbstractCompilerVisitor___add(self, var195); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
-}
-if (likely(varonce196!=NULL)) {
-var197 = varonce196;
-} else {
-var198 = "}";
-var199 = core__flat___NativeString___to_s_full(var198, 1l, 1l);
-var197 = var199;
-varonce196 = var197;
-}
-{
-nitc___nitc__AbstractCompilerVisitor___add(self, var197); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
-}
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#frame= (self,var_old_frame) on <self:SeparateCompilerVisitor> */
-self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame].val = var_old_frame; /* _frame on <self:SeparateCompilerVisitor> */
-RET_LABEL200:(void)0;
-}
-}
-var = var_res;
-goto RET_LABEL;
-} else {
-}
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
-var203 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateCompilerVisitor> */
-if (unlikely(var203 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
-fatal_exit(1);
-}
-var201 = var203;
-RET_LABEL202:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var201) on <var201:AbstractCompiler(SeparateCompiler)> */
-var206 = var201->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var201:AbstractCompiler(SeparateCompiler)> */
-if (unlikely(var206 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538);
-fatal_exit(1);
-}
-var204 = var206;
-RET_LABEL205:(void)0;
-}
-}
-var_207 = var204;
-{
-{ /* Inline separate_compiler#ModelBuilder#nb_invok_by_direct (var_207) on <var_207:ModelBuilder> */
-var210 = var_207->attrs[COLOR_nitc__separate_compiler__ModelBuilder___nb_invok_by_direct].l; /* _nb_invok_by_direct on <var_207:ModelBuilder> */
-var208 = var210;
-RET_LABEL209:(void)0;
-}
-}
-{
-{ /* Inline kernel#Int#+ (var208,1l) on <var208:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var213 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var213)) {
-var_class_name216 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name216);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
-fatal_exit(1);
-}
-var217 = var208 + 1l;
-var211 = var217;
-goto RET_LABEL212;
-RET_LABEL212:(void)0;
-}
-}
-{
-{ /* Inline separate_compiler#ModelBuilder#nb_invok_by_direct= (var_207,var211) on <var_207:ModelBuilder> */
-var_207->attrs[COLOR_nitc__separate_compiler__ModelBuilder___nb_invok_by_direct].l = var211; /* _nb_invok_by_direct on <var_207:ModelBuilder> */
-RET_LABEL218:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
-var221 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <self:SeparateCompilerVisitor> */
-if (unlikely(var221 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133);
-fatal_exit(1);
-}
-var219 = var221;
-RET_LABEL220:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var219) on <var219:AbstractCompiler(SeparateCompiler)> */
-var224 = var219->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var219:AbstractCompiler(SeparateCompiler)> */
-if (unlikely(var224 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538);
-fatal_exit(1);
-}
-var222 = var224;
-RET_LABEL223:(void)0;
-}
-}
-{
-{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var222) on <var222:ModelBuilder> */
-var227 = var222->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on <var222:ModelBuilder> */
-if (unlikely(var227 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base, 47);
-fatal_exit(1);
-}
-var225 = var227;
-RET_LABEL226:(void)0;
-}
-}
-{
-{ /* Inline abstract_compiler#ToolContext#opt_invocation_metrics (var225) on <var225:ToolContext> */
-var230 = var225->attrs[COLOR_nitc__abstract_compiler__ToolContext___opt_invocation_metrics].val; /* _opt_invocation_metrics on <var225:ToolContext> */
-if (unlikely(var230 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_invocation_metrics");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 62);