X-Git-Url: http://nitlanguage.org diff --git a/c_src/nitc__separate_erasure_compiler.sep.1.c b/c_src/nitc__separate_erasure_compiler.sep.1.c index 693608c..8f49220 100644 --- a/c_src/nitc__separate_erasure_compiler.sep.1.c +++ b/c_src/nitc__separate_erasure_compiler.sep.1.c @@ -1,10 +1,13 @@ #include "nitc__separate_erasure_compiler.sep.0.h" -/* method separate_erasure_compiler#ToolContext#opt_erasure for (self: ToolContext): OptionBool */ +/* method separate_erasure_compiler$ToolContext$opt_erasure for (self: ToolContext): OptionBool */ val* nitc__separate_erasure_compiler___ToolContext___opt_erasure(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_erasure].val; /* _opt_erasure on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_erasure"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 22); fatal_exit(1); @@ -13,12 +16,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_erasure_compiler#ToolContext#opt_rta for (self: ToolContext): OptionBool */ +/* method separate_erasure_compiler$ToolContext$opt_rta for (self: ToolContext): OptionBool */ val* nitc__separate_erasure_compiler___ToolContext___opt_rta(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_rta].val; /* _opt_rta on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_rta"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 24); fatal_exit(1); @@ -27,12 +33,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_erasure_compiler#ToolContext#opt_no_check_erasure_cast for (self: ToolContext): OptionBool */ +/* method separate_erasure_compiler$ToolContext$opt_no_check_erasure_cast for (self: ToolContext): OptionBool */ val* nitc__separate_erasure_compiler___ToolContext___opt_no_check_erasure_cast(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_no_check_erasure_cast].val; /* _opt_no_check_erasure_cast on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_check_erasure_cast"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 26); fatal_exit(1); @@ -41,7 +50,7 @@ var = var1; RET_LABEL:; return var; } -/* method separate_erasure_compiler#ToolContext#init for (self: ToolContext) */ +/* method separate_erasure_compiler$ToolContext$init for (self: ToolContext) */ void nitc__separate_erasure_compiler___ToolContext___core__kernel__Object__init(val* self) { val* var /* : OptionContext */; val* var2 /* : OptionContext */; @@ -57,11 +66,14 @@ val* var13 /* : NativeArray[Option] */; ((void(*)(val* self))(self->class->vft[COLOR_nitc__separate_erasure_compiler___ToolContext___core__kernel__Object__init]))(self); /* init on */ } { -{ /* Inline toolcontext#ToolContext#option_context (self) on */ +{ /* Inline toolcontext$ToolContext$option_context (self) on */ var2 = self->attrs[COLOR_nitc__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__toolcontext, 342); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__toolcontext, 357); fatal_exit(1); } var = var2; @@ -69,9 +81,12 @@ RET_LABEL1:(void)0; } } { -{ /* Inline separate_erasure_compiler#ToolContext#opt_erasure (self) on */ +{ /* Inline separate_erasure_compiler$ToolContext$opt_erasure (self) on */ var5 = self->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_erasure].val; /* _opt_erasure on */ if (unlikely(var5 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_erasure"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 22); fatal_exit(1); @@ -81,9 +96,12 @@ RET_LABEL4:(void)0; } } { -{ /* Inline separate_erasure_compiler#ToolContext#opt_no_check_erasure_cast (self) on */ +{ /* Inline separate_erasure_compiler$ToolContext$opt_no_check_erasure_cast (self) on */ var8 = self->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_no_check_erasure_cast].val; /* _opt_no_check_erasure_cast on */ if (unlikely(var8 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_check_erasure_cast"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 26); fatal_exit(1); @@ -93,9 +111,12 @@ RET_LABEL7:(void)0; } } { -{ /* Inline separate_erasure_compiler#ToolContext#opt_rta (self) on */ +{ /* Inline separate_erasure_compiler$ToolContext$opt_rta (self) on */ var11 = self->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_rta].val; /* _opt_rta on */ if (unlikely(var11 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_rta"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 24); fatal_exit(1); @@ -106,7 +127,7 @@ RET_LABEL10:(void)0; } var12 = NEW_core__Array(&type_core__Array__opts__Option); { /* var12 = array_instance Array[Option] */ -var13 = NEW_core__NativeArray(3l, &type_core__NativeArray__opts__Option); +var13 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var13)->values[0] = (val*) var3; ((struct instance_core__NativeArray*)var13)->values[1] = (val*) var6; ((struct instance_core__NativeArray*)var13)->values[2] = (val*) var9; @@ -115,11 +136,11 @@ var13 = NEW_core__NativeArray(3l, &type_core__NativeArray__opts__Option); } } { -opts___opts__OptionContext___add_option(var, var12); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var, var12); /* Direct call opts$OptionContext$add_option on */ } RET_LABEL:; } -/* method separate_erasure_compiler#ToolContext#process_options for (self: ToolContext, Sequence[String]) */ +/* method separate_erasure_compiler$ToolContext$process_options for (self: ToolContext, Sequence[String]) */ void nitc__separate_erasure_compiler___ToolContext___process_options(val* self, val* p0) { val* var_args /* var args: Sequence[String] */; val* var /* : OptionBool */; @@ -153,9 +174,12 @@ var_args = p0; ((void(*)(val* self, val* p0))(self->class->vft[COLOR_nitc__separate_erasure_compiler___ToolContext___process_options]))(self, p0); /* process_options on */ } { -{ /* Inline abstract_compiler#ToolContext#opt_no_check_all (self) on */ +{ /* Inline abstract_compiler$ToolContext$opt_no_check_all (self) on */ var2 = self->attrs[COLOR_nitc__abstract_compiler__ToolContext___opt_no_check_all].val; /* _opt_no_check_all on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_check_all"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 58); fatal_exit(1); @@ -165,7 +189,7 @@ RET_LABEL1:(void)0; } } { -{ /* Inline opts#Option#value (var) on */ +{ /* Inline opts$Option$value (var) on */ var5 = var->attrs[COLOR_opts__Option___value].val; /* _value on */ var3 = var5; RET_LABEL4:(void)0; @@ -174,9 +198,12 @@ RET_LABEL4:(void)0; var6 = (short int)((long)(var3)>>2); if (var6){ { -{ /* Inline separate_erasure_compiler#ToolContext#opt_no_check_erasure_cast (self) on */ +{ /* Inline separate_erasure_compiler$ToolContext$opt_no_check_erasure_cast (self) on */ var9 = self->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_no_check_erasure_cast].val; /* _opt_no_check_erasure_cast on */ if (unlikely(var9 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_check_erasure_cast"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 26); fatal_exit(1); @@ -186,7 +213,7 @@ RET_LABEL8:(void)0; } } { -{ /* Inline opts#Option#value= (var7,1) on */ +{ /* Inline opts$Option$value= (var7,1) on */ /* Covariant cast for argument 0 (value) <1:Bool> isa VALUE */ /* <1:Bool> isa VALUE */ type_struct = var7->type->resolution_table->types[COLOR_opts__Option__VALUE]; @@ -211,9 +238,12 @@ RET_LABEL10:(void)0; } else { } { -{ /* Inline separate_erasure_compiler#ToolContext#opt_erasure (self) on */ +{ /* Inline separate_erasure_compiler$ToolContext$opt_erasure (self) on */ var15 = self->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_erasure].val; /* _opt_erasure on */ if (unlikely(var15 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_erasure"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 22); fatal_exit(1); @@ -223,7 +253,7 @@ RET_LABEL14:(void)0; } } { -{ /* Inline opts#Option#value (var13) on */ +{ /* Inline opts$Option$value (var13) on */ var18 = var13->attrs[COLOR_opts__Option___value].val; /* _value on */ var16 = var18; RET_LABEL17:(void)0; @@ -232,9 +262,12 @@ RET_LABEL17:(void)0; var19 = (short int)((long)(var16)>>2); if (var19){ { -{ /* Inline separate_compiler#ToolContext#opt_no_tag_primitives (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_no_tag_primitives (self) on */ var22 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_tag_primitives].val; /* _opt_no_tag_primitives on */ if (unlikely(var22 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_tag_primitives"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 32); fatal_exit(1); @@ -244,7 +277,7 @@ RET_LABEL21:(void)0; } } { -{ /* Inline opts#Option#value= (var20,1) on */ +{ /* Inline opts$Option$value= (var20,1) on */ /* Covariant cast for argument 0 (value) <1:Bool> isa VALUE */ /* <1:Bool> isa VALUE */ type_struct27 = var20->type->resolution_table->types[COLOR_opts__Option__VALUE]; @@ -270,7 +303,7 @@ RET_LABEL23:(void)0; } RET_LABEL:; } -/* method separate_erasure_compiler#ErasureCompilerPhase#process_mainmodule for (self: ErasureCompilerPhase, MModule, SequenceRead[MModule]) */ +/* method separate_erasure_compiler$ErasureCompilerPhase$process_mainmodule for (self: ErasureCompilerPhase, MModule, SequenceRead[MModule]) */ void nitc___nitc__ErasureCompilerPhase___nitc__modelbuilder__Phase__process_mainmodule(val* self, val* p0, val* p1) { val* var_mainmodule /* var mainmodule: MModule */; val* var_given_mmodules /* var given_mmodules: SequenceRead[MModule] */; @@ -298,11 +331,14 @@ val* var25 /* : RapidTypeAnalysis */; var_mainmodule = p0; var_given_mmodules = p1; { -{ /* Inline phase#Phase#toolcontext (self) on */ +{ /* Inline phase$Phase$toolcontext (self) on */ var2 = self->attrs[COLOR_nitc__phase__Phase___toolcontext].val; /* _toolcontext on */ if (unlikely(var2 == 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); } var = var2; @@ -310,9 +346,12 @@ RET_LABEL1:(void)0; } } { -{ /* Inline separate_erasure_compiler#ToolContext#opt_erasure (var) on */ +{ /* Inline separate_erasure_compiler$ToolContext$opt_erasure (var) on */ var5 = var->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_erasure].val; /* _opt_erasure on */ if (unlikely(var5 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_erasure"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 22); fatal_exit(1); @@ -322,7 +361,7 @@ RET_LABEL4:(void)0; } } { -{ /* Inline opts#Option#value (var3) on */ +{ /* Inline opts$Option$value (var3) on */ var8 = var3->attrs[COLOR_opts__Option___value].val; /* _value on */ var6 = var8; RET_LABEL7:(void)0; @@ -335,11 +374,14 @@ goto RET_LABEL; } else { } { -{ /* Inline phase#Phase#toolcontext (self) on */ +{ /* Inline phase$Phase$toolcontext (self) on */ var13 = self->attrs[COLOR_nitc__phase__Phase___toolcontext].val; /* _toolcontext on */ if (unlikely(var13 == 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); } var11 = var13; @@ -352,11 +394,14 @@ var14 = nitc__modelbuilder_base___ToolContext___modelbuilder(var11); var_modelbuilder = var14; var_analysis = ((val*)NULL); { -{ /* Inline phase#Phase#toolcontext (self) on */ +{ /* Inline phase$Phase$toolcontext (self) on */ var17 = self->attrs[COLOR_nitc__phase__Phase___toolcontext].val; /* _toolcontext on */ if (unlikely(var17 == 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); } var15 = var17; @@ -364,9 +409,12 @@ RET_LABEL16:(void)0; } } { -{ /* Inline separate_erasure_compiler#ToolContext#opt_rta (var15) on */ +{ /* Inline separate_erasure_compiler$ToolContext$opt_rta (var15) on */ var20 = var15->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_rta].val; /* _opt_rta on */ if (unlikely(var20 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_rta"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 24); fatal_exit(1); @@ -376,7 +424,7 @@ RET_LABEL19:(void)0; } } { -{ /* Inline opts#Option#value (var18) on */ +{ /* Inline opts$Option$value (var18) on */ var23 = var18->attrs[COLOR_opts__Option___value].val; /* _value on */ var21 = var23; RET_LABEL22:(void)0; @@ -391,11 +439,11 @@ var_analysis = var25; } else { } { -nitc__separate_erasure_compiler___ModelBuilder___run_separate_erasure_compiler(var_modelbuilder, var_mainmodule, var_analysis); /* Direct call separate_erasure_compiler#ModelBuilder#run_separate_erasure_compiler on */ +nitc__separate_erasure_compiler___ModelBuilder___run_separate_erasure_compiler(var_modelbuilder, var_mainmodule, var_analysis); /* Direct call separate_erasure_compiler$ModelBuilder$run_separate_erasure_compiler on */ } RET_LABEL:; } -/* method separate_erasure_compiler#ModelBuilder#run_separate_erasure_compiler for (self: ModelBuilder, MModule, nullable RapidTypeAnalysis) */ +/* method separate_erasure_compiler$ModelBuilder$run_separate_erasure_compiler for (self: ModelBuilder, MModule, nullable RapidTypeAnalysis) */ void nitc__separate_erasure_compiler___ModelBuilder___run_separate_erasure_compiler(val* self, val* p0, val* p1) { val* var_mainmodule /* var mainmodule: MModule */; val* var_runtime_type_analysis /* var runtime_type_analysis: nullable RapidTypeAnalysis */; @@ -407,43 +455,55 @@ val* var4 /* : ToolContext */; val* var6 /* : ToolContext */; static val* varonce; val* var7 /* : String */; -char* var8 /* : NativeString */; +char* var8 /* : CString */; val* var9 /* : String */; -val* var10 /* : SeparateErasureCompiler */; +val* var10 /* : nullable Int */; +val* var11 /* : nullable Int */; +val* var12 /* : nullable Bool */; +val* var13 /* : nullable Bool */; +val* var14 /* : SeparateErasureCompiler */; val* var_compiler /* var compiler: SeparateErasureCompiler */; -val* var11 /* : Sys */; -long var12 /* : Int */; -long var14 /* : Int */; +val* var15 /* : Sys */; +long var16 /* : Int */; +long var18 /* : Int */; long var_time1 /* var time1: Int */; -val* var15 /* : ToolContext */; -val* var17 /* : ToolContext */; -val* var19 /* : NativeArray[String] */; -static val* varonce18; -static val* varonce20; -val* var21 /* : String */; -char* var22 /* : NativeString */; -val* var23 /* : String */; +val* var19 /* : ToolContext */; +val* var21 /* : ToolContext */; +val* var23 /* : NativeArray[String] */; +static val* varonce22; static val* varonce24; val* var25 /* : String */; -char* var26 /* : NativeString */; +char* var26 /* : CString */; val* var27 /* : String */; -long var28 /* : Int */; -short int var30 /* : Bool */; +val* var28 /* : nullable Int */; +val* var29 /* : nullable Int */; +val* var30 /* : nullable Bool */; +val* var31 /* : nullable Bool */; +static val* varonce32; +val* var33 /* : String */; +char* var34 /* : CString */; +val* var35 /* : String */; +val* var36 /* : nullable Int */; +val* var37 /* : nullable Int */; +val* var38 /* : nullable Bool */; +val* var39 /* : nullable Bool */; +long var40 /* : Int */; +short int var42 /* : Bool */; int cltype; int idtype; const char* var_class_name; -long var31 /* : Int */; -val* var32 /* : String */; -val* var33 /* : String */; +long var43 /* : Int */; +val* var44 /* : String */; +val* var45 /* : String */; var_mainmodule = p0; var_runtime_type_analysis = p1; var = glob_sys; { -{ /* Inline time#Sys#get_time (var) on */ +{ /* Inline time$Sys$get_time (var) on */ struct nitni_instance* var_for_c_0; var_for_c_0 = nit_alloc(sizeof(struct nitni_instance)); var_for_c_0->value = var; -var3 = time___Sys_get_time___impl(var_for_c_0); +var3 = core__time___Sys_get_time___impl(var_for_c_0); var1 = var3; goto RET_LABEL2; RET_LABEL2:(void)0; @@ -451,9 +511,12 @@ RET_LABEL2:(void)0; } var_time0 = var1; { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on */ +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (self) on */ var6 = self->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ if (unlikely(var6 == 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); @@ -466,119 +529,137 @@ if (likely(varonce!=NULL)) { var7 = varonce; } else { var8 = "*** GENERATING C ***"; -var9 = core__flat___NativeString___to_s_full(var8, 20l, 20l); +var10 = (val*)(20l<<2|1); +var11 = (val*)(20l<<2|1); +var12 = (val*)((long)(0)<<2|3); +var13 = (val*)((long)(0)<<2|3); +var9 = core__flat___CString___to_s_unsafe(var8, var10, var11, var12, var13); var7 = var9; varonce = var7; } { -nitc___nitc__ToolContext___info(var4, var7, 1l); /* Direct call toolcontext#ToolContext#info on */ +nitc___nitc__ToolContext___info(var4, var7, 1l); /* Direct call toolcontext$ToolContext$info on */ } -var10 = NEW_nitc__SeparateErasureCompiler(&type_nitc__SeparateErasureCompiler); +var14 = NEW_nitc__SeparateErasureCompiler(&type_nitc__SeparateErasureCompiler); { -((void(*)(val* self, val* p0))(var10->class->vft[COLOR_nitc__abstract_compiler__AbstractCompiler__mainmodule_61d]))(var10, var_mainmodule); /* mainmodule= on */ +((void(*)(val* self, val* p0))(var14->class->vft[COLOR_nitc__abstract_compiler__AbstractCompiler__mainmodule_61d]))(var14, var_mainmodule); /* mainmodule= on */ } { -((void(*)(val* self, val* p0))(var10->class->vft[COLOR_nitc__abstract_compiler__AbstractCompiler__modelbuilder_61d]))(var10, self); /* modelbuilder= on */ +((void(*)(val* self, val* p0))(var14->class->vft[COLOR_nitc__abstract_compiler__AbstractCompiler__modelbuilder_61d]))(var14, self); /* modelbuilder= on */ } { -((void(*)(val* self, val* p0))(var10->class->vft[COLOR_nitc__separate_compiler__SeparateCompiler__runtime_type_analysis_61d]))(var10, var_runtime_type_analysis); /* runtime_type_analysis= on */ +((void(*)(val* self, val* p0))(var14->class->vft[COLOR_nitc__separate_compiler__SeparateCompiler__runtime_type_analysis_61d]))(var14, var_runtime_type_analysis); /* runtime_type_analysis= on */ } { -((void(*)(val* self))(var10->class->vft[COLOR_core__kernel__Object__init]))(var10); /* init on */ +((void(*)(val* self))(var14->class->vft[COLOR_core__kernel__Object__init]))(var14); /* init on */ } -var_compiler = var10; +var_compiler = var14; { -nitc___nitc__SeparateCompiler___nitc__abstract_compiler__AbstractCompiler__do_compilation(var_compiler); /* Direct call separate_compiler#SeparateCompiler#do_compilation on */ +nitc___nitc__SeparateCompiler___nitc__abstract_compiler__AbstractCompiler__do_compilation(var_compiler); /* Direct call separate_compiler$SeparateCompiler$do_compilation on */ } { -nitc___nitc__SeparateCompiler___nitc__abstract_compiler__AbstractCompiler__display_stats(var_compiler); /* Direct call separate_compiler#SeparateCompiler#display_stats on */ +nitc___nitc__SeparateCompiler___nitc__abstract_compiler__AbstractCompiler__display_stats(var_compiler); /* Direct call separate_compiler$SeparateCompiler$display_stats on */ } -var11 = glob_sys; +var15 = glob_sys; { -{ /* Inline time#Sys#get_time (var11) on */ +{ /* Inline time$Sys$get_time (var15) on */ struct nitni_instance* var_for_c_0; var_for_c_0 = nit_alloc(sizeof(struct nitni_instance)); -var_for_c_0->value = var11; -var14 = time___Sys_get_time___impl(var_for_c_0); -var12 = var14; -goto RET_LABEL13; -RET_LABEL13:(void)0; +var_for_c_0->value = var15; +var18 = core__time___Sys_get_time___impl(var_for_c_0); +var16 = var18; +goto RET_LABEL17; +RET_LABEL17:(void)0; } } -var_time1 = var12; +var_time1 = var16; { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on */ -var17 = self->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var17 == NULL)) { +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (self) on */ +var21 = self->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var21 == 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); } -var15 = var17; -RET_LABEL16:(void)0; -} +var19 = var21; +RET_LABEL20:(void)0; } -if (unlikely(varonce18==NULL)) { -var19 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce20!=NULL)) { -var21 = varonce20; -} else { -var22 = "*** END GENERATING C: "; -var23 = core__flat___NativeString___to_s_full(var22, 22l, 22l); -var21 = var23; -varonce20 = var21; } -((struct instance_core__NativeArray*)var19)->values[0]=var21; +if (unlikely(varonce22==NULL)) { +var23 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); if (likely(varonce24!=NULL)) { var25 = varonce24; } else { -var26 = " ***"; -var27 = core__flat___NativeString___to_s_full(var26, 4l, 4l); +var26 = "*** END GENERATING C: "; +var28 = (val*)(22l<<2|1); +var29 = (val*)(22l<<2|1); +var30 = (val*)((long)(0)<<2|3); +var31 = (val*)((long)(0)<<2|3); +var27 = core__flat___CString___to_s_unsafe(var26, var28, var29, var30, var31); var25 = var27; varonce24 = var25; } -((struct instance_core__NativeArray*)var19)->values[2]=var25; +((struct instance_core__NativeArray*)var23)->values[0]=var25; +if (likely(varonce32!=NULL)) { +var33 = varonce32; +} else { +var34 = " ***"; +var36 = (val*)(4l<<2|1); +var37 = (val*)(4l<<2|1); +var38 = (val*)((long)(0)<<2|3); +var39 = (val*)((long)(0)<<2|3); +var35 = core__flat___CString___to_s_unsafe(var34, var36, var37, var38, var39); +var33 = var35; +varonce32 = var33; +} +((struct instance_core__NativeArray*)var23)->values[2]=var33; } else { -var19 = varonce18; -varonce18 = NULL; +var23 = varonce22; +varonce22 = NULL; } { -{ /* Inline kernel#Int#- (var_time1,var_time0) on */ +{ /* Inline kernel$Int$- (var_time1,var_time0) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ -var30 = 1; /* easy isa OTHER*/ -if (unlikely(!var30)) { +var42 = 1; /* easy isa OTHER*/ +if (unlikely(!var42)) { 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, 734); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731); fatal_exit(1); } -var31 = var_time1 - var_time0; -var28 = var31; -goto RET_LABEL29; -RET_LABEL29:(void)0; +var43 = var_time1 - var_time0; +var40 = var43; +goto RET_LABEL41; +RET_LABEL41:(void)0; } } -var32 = core__flat___Int___core__abstract_text__Object__to_s(var28); -((struct instance_core__NativeArray*)var19)->values[1]=var32; +var44 = core__flat___Int___core__abstract_text__Object__to_s(var40); +((struct instance_core__NativeArray*)var23)->values[1]=var44; { -var33 = ((val*(*)(val* self))(var19->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var19); /* native_to_s on */ +var45 = ((val*(*)(val* self))(var23->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var23); /* native_to_s on */ } -varonce18 = var19; +varonce22 = var23; { -nitc___nitc__ToolContext___info(var15, var33, 2l); /* Direct call toolcontext#ToolContext#info on */ +nitc___nitc__ToolContext___info(var19, var45, 2l); /* Direct call toolcontext$ToolContext$info on */ } { -nitc__abstract_compiler___ModelBuilder___write_and_make(self, var_compiler); /* Direct call abstract_compiler#ModelBuilder#write_and_make on */ +nitc__abstract_compiler___ModelBuilder___write_and_make(self, var_compiler); /* Direct call abstract_compiler$ModelBuilder$write_and_make on */ } RET_LABEL:; } -/* method separate_erasure_compiler#SeparateErasureCompiler#class_ids for (self: SeparateErasureCompiler): Map[MClass, Int] */ +/* method separate_erasure_compiler$SeparateErasureCompiler$class_ids for (self: SeparateErasureCompiler): Map[MClass, Int] */ val* nitc___nitc__SeparateErasureCompiler___class_ids(val* self) { val* var /* : Map[MClass, Int] */; val* var1 /* : Map[MClass, Int] */; var1 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_ids].val; /* _class_ids on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_ids"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 84); fatal_exit(1); @@ -587,17 +668,20 @@ var = var1; RET_LABEL:; return var; } -/* method separate_erasure_compiler#SeparateErasureCompiler#class_ids= for (self: SeparateErasureCompiler, Map[MClass, Int]) */ +/* method separate_erasure_compiler$SeparateErasureCompiler$class_ids= for (self: SeparateErasureCompiler, Map[MClass, Int]) */ void nitc___nitc__SeparateErasureCompiler___class_ids_61d(val* self, val* p0) { self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_ids].val = p0; /* _class_ids on */ RET_LABEL:; } -/* method separate_erasure_compiler#SeparateErasureCompiler#class_colors for (self: SeparateErasureCompiler): Map[MClass, Int] */ +/* method separate_erasure_compiler$SeparateErasureCompiler$class_colors for (self: SeparateErasureCompiler): Map[MClass, Int] */ val* nitc___nitc__SeparateErasureCompiler___class_colors(val* self) { val* var /* : Map[MClass, Int] */; val* var1 /* : Map[MClass, Int] */; var1 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_colors].val; /* _class_colors on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 85); fatal_exit(1); @@ -606,17 +690,20 @@ var = var1; RET_LABEL:; return var; } -/* method separate_erasure_compiler#SeparateErasureCompiler#class_colors= for (self: SeparateErasureCompiler, Map[MClass, Int]) */ +/* method separate_erasure_compiler$SeparateErasureCompiler$class_colors= for (self: SeparateErasureCompiler, Map[MClass, Int]) */ void nitc___nitc__SeparateErasureCompiler___class_colors_61d(val* self, val* p0) { self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_colors].val = p0; /* _class_colors on */ RET_LABEL:; } -/* method separate_erasure_compiler#SeparateErasureCompiler#vt_colors for (self: SeparateErasureCompiler): Map[MVirtualTypeProp, Int] */ +/* method separate_erasure_compiler$SeparateErasureCompiler$vt_colors for (self: SeparateErasureCompiler): Map[MVirtualTypeProp, Int] */ val* nitc___nitc__SeparateErasureCompiler___vt_colors(val* self) { val* var /* : Map[MVirtualTypeProp, Int] */; val* var1 /* : Map[MVirtualTypeProp, Int] */; var1 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_colors].val; /* _vt_colors on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _vt_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 86); fatal_exit(1); @@ -625,12 +712,12 @@ var = var1; RET_LABEL:; return var; } -/* method separate_erasure_compiler#SeparateErasureCompiler#vt_colors= for (self: SeparateErasureCompiler, Map[MVirtualTypeProp, Int]) */ +/* method separate_erasure_compiler$SeparateErasureCompiler$vt_colors= for (self: SeparateErasureCompiler, Map[MVirtualTypeProp, Int]) */ void nitc___nitc__SeparateErasureCompiler___vt_colors_61d(val* self, val* p0) { self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_colors].val = p0; /* _vt_colors on */ RET_LABEL:; } -/* method separate_erasure_compiler#SeparateErasureCompiler#init for (self: SeparateErasureCompiler) */ +/* method separate_erasure_compiler$SeparateErasureCompiler$init for (self: SeparateErasureCompiler) */ void nitc___nitc__SeparateErasureCompiler___core__kernel__Object__init(val* self) { val* var /* : MModule */; val* var2 /* : MModule */; @@ -674,11 +761,14 @@ val* var35 /* : Map[MClass, Array[nullable MPropDef]] */; ((void(*)(val* self))(self->class->vft[COLOR_nitc___nitc__SeparateErasureCompiler___core__kernel__Object__init]))(self); /* init on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var2 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } var = var2; @@ -691,24 +781,24 @@ var3 = nitc__model___MModule___flatten_mclass_hierarchy(var); var_poset = var3; var4 = NEW_core__HashSet(&type_core__HashSet__nitc__MClass); { -core___core__HashSet___from(var4, var_poset); /* Direct call hash_collection#HashSet#from on */ +core___core__HashSet___from(var4, var_poset); /* Direct call hash_collection$HashSet$from on */ } var_mclasses = var4; var5 = NEW_nitc__POSetColorer(&type_nitc__POSetColorer__nitc__MClass); { -{ /* Inline kernel#Object#init (var5) on */ +{ /* Inline kernel$Object$init (var5) on */ RET_LABEL6:(void)0; } } var_colorer = var5; { -nitc___nitc__POSetColorer___colorize(var_colorer, var_poset); /* Direct call coloring#POSetColorer#colorize on */ +nitc___nitc__POSetColorer___colorize(var_colorer, var_poset); /* Direct call coloring$POSetColorer$colorize on */ } { var7 = nitc___nitc__POSetColorer___ids(var_colorer); } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#class_ids= (self,var7) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$class_ids= (self,var7) on */ self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_ids].val = var7; /* _class_ids on */ RET_LABEL8:(void)0; } @@ -717,7 +807,7 @@ RET_LABEL8:(void)0; var9 = nitc___nitc__POSetColorer___colors(var_colorer); } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#class_colors= (self,var9) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$class_colors= (self,var9) on */ self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_colors].val = var9; /* _class_colors on */ RET_LABEL10:(void)0; } @@ -726,14 +816,14 @@ RET_LABEL10:(void)0; var11 = nitc___nitc__SeparateErasureCompiler___build_class_typing_tables(self, var_mclasses); } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#class_tables= (self,var11) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$class_tables= (self,var11) on */ self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_tables].val = var11; /* _class_tables on */ RET_LABEL12:(void)0; } } var13 = NEW_core__HashMap(&type_core__HashMap__nitc__MClass__core__Set__nitc__MVirtualTypeProp); { -core___core__HashMap___core__kernel__Object__init(var13); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var13); /* Direct call hash_collection$HashMap$init on */ } var_vts = var13; var_ = var_mclasses; @@ -755,17 +845,20 @@ var17 = ((val*(*)(val* self))((((long)var_15&3)?class_info[((long)var_15&3)]:var var_mclass = var17; var18 = NEW_core__HashSet(&type_core__HashSet__nitc__MVirtualTypeProp); { -core___core__HashSet___core__kernel__Object__init(var18); /* Direct call hash_collection#HashSet#init on */ +core___core__HashSet___core__kernel__Object__init(var18); /* Direct call hash_collection$HashSet$init on */ } { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_vts, var_mclass, var18); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_vts, var_mclass, var18); /* Direct call hash_collection$HashMap$[]= on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var21 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var21 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } var19 = var21; @@ -843,7 +936,7 @@ var_vt_colorer = var31; var33 = nitc___nitc__POSetBucketsColorer___colorize(var_vt_colorer, var_vts); } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#vt_colors= (self,var33) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$vt_colors= (self,var33) on */ self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_colors].val = var33; /* _vt_colors on */ RET_LABEL34:(void)0; } @@ -852,14 +945,14 @@ RET_LABEL34:(void)0; var35 = nitc___nitc__SeparateErasureCompiler___build_vt_tables(self, var_mclasses); } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#vt_tables= (self,var35) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$vt_tables= (self,var35) on */ self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_tables].val = var35; /* _vt_tables on */ RET_LABEL36:(void)0; } } RET_LABEL:; } -/* method separate_erasure_compiler#SeparateErasureCompiler#build_vt_tables for (self: SeparateErasureCompiler, Set[MClass]): Map[MClass, Array[nullable MPropDef]] */ +/* method separate_erasure_compiler$SeparateErasureCompiler$build_vt_tables for (self: SeparateErasureCompiler, Set[MClass]): Map[MClass, Array[nullable MPropDef]] */ val* nitc___nitc__SeparateErasureCompiler___build_vt_tables(val* self, val* p0) { val* var /* : Map[MClass, Array[nullable MPropDef]] */; val* var_mclasses /* var mclasses: Set[MClass] */; @@ -1003,7 +1096,7 @@ short int var160 /* : Bool */; var_mclasses = p0; var1 = NEW_core__HashMap(&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MPropDef); { -core___core__HashMap___core__kernel__Object__init(var1); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var1); /* Direct call hash_collection$HashMap$init on */ } var_tables = var1; var_ = var_mclasses; @@ -1025,20 +1118,23 @@ var5 = ((val*(*)(val* self))((((long)var_3&3)?class_info[((long)var_3&3)]:var_3- var_mclass = var5; var6 = NEW_core__Array(&type_core__Array__nullable__nitc__MPropDef); { -core___core__Array___core__kernel__Object__init(var6); /* Direct call array#Array#init on */ +core___core__Array___core__kernel__Object__init(var6); /* Direct call array$Array$init on */ } var_table = var6; var7 = NEW_core__Array(&type_core__Array__nitc__MClass); { -core___core__Array___core__kernel__Object__init(var7); /* Direct call array#Array#init on */ +core___core__Array___core__kernel__Object__init(var7); /* Direct call array$Array$init on */ } var_parents = var7; { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var10 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var10 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } var8 = var10; @@ -1053,11 +1149,14 @@ var12 = poset___poset__POSet___core__abstract_collection__Collection__has(var11, } if (var12){ { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var15 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var15 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } var13 = var15; @@ -1075,11 +1174,14 @@ var18 = ((val*(*)(val* self))((((long)var17&3)?class_info[((long)var17&3)]:var17 } var_parents = var18; { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var21 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var21 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } var19 = var21; @@ -1087,7 +1189,7 @@ RET_LABEL20:(void)0; } } { -nitc__model___MModule___linearize_mclasses(var19, var_parents); /* Direct call model#MModule#linearize_mclasses on */ +nitc__model___MModule___linearize_mclasses(var19, var_parents); /* Direct call model$MModule$linearize_mclasses on */ } } else { } @@ -1109,10 +1211,10 @@ var27 = ((val*(*)(val* self))((((long)var_24&3)?class_info[((long)var_24&3)]:var } var_parent = var27; { -{ /* Inline kernel#Object#== (var_parent,var_mclass) on */ +{ /* Inline kernel$Object$== (var_parent,var_mclass) on */ var_other = var_mclass; { -{ /* Inline kernel#Object#is_same_instance (var_parent,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var_parent,var_other) on */ var32 = var_parent == var_other; var30 = var32; goto RET_LABEL31; @@ -1129,11 +1231,14 @@ goto BREAK_label33; } else { } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var36 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var36 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } var34 = var36; @@ -1174,9 +1279,12 @@ goto BREAK_label46; } else { } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#vt_colors (self) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$vt_colors (self) on */ var49 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_colors].val; /* _vt_colors on */ if (unlikely(var49 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _vt_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 86); fatal_exit(1); @@ -1191,21 +1299,21 @@ var50 = ((val*(*)(val* self, val* p0))((((long)var47&3)?class_info[((long)var47& var51 = (long)(var50)>>2; var_color = var51; { -{ /* Inline array#AbstractArrayRead#length (var_table) on */ +{ /* Inline array$AbstractArrayRead$length (var_table) on */ var54 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var52 = var54; RET_LABEL53:(void)0; } } { -{ /* Inline kernel#Int#<= (var52,var_color) on */ +{ /* Inline kernel$Int$<= (var52,var_color) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ var57 = 1; /* easy isa OTHER*/ if (unlikely(!var57)) { 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, 727); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 724); fatal_exit(1); } var60 = var52 <= var_color; @@ -1216,7 +1324,7 @@ RET_LABEL56:(void)0; } if (var55){ { -{ /* Inline array#AbstractArrayRead#length (var_table) on */ +{ /* Inline array$AbstractArrayRead$length (var_table) on */ var63 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var61 = var63; RET_LABEL62:(void)0; @@ -1226,14 +1334,14 @@ var_i = var61; var_64 = var_color; for(;;) { { -{ /* Inline kernel#Int#< (var_i,var_64) on */ +{ /* Inline kernel$Int$< (var_i,var_64) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ var67 = 1; /* easy isa OTHER*/ if (unlikely(!var67)) { var_class_name70 = type_core__Int.name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name70); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 725); fatal_exit(1); } var71 = var_i < var_64; @@ -1247,7 +1355,7 @@ if (var65){ goto BREAK_label72; } { -core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_i, ((val*)NULL)); /* Direct call array#Array#[]= on */ +core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_i, ((val*)NULL)); /* Direct call array$Array$[]= on */ } { var73 = core___core__Int___Discrete__successor(var_i, 1l); @@ -1258,11 +1366,14 @@ BREAK_label72: (void)0; } else { } { -{ /* Inline model#MProperty#mpropdefs (var_mproperty) on */ +{ /* Inline model$MProperty$mpropdefs (var_mproperty) on */ var76 = var_mproperty->attrs[COLOR_nitc__model__MProperty___mpropdefs].val; /* _mpropdefs on */ if (unlikely(var76 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdefs"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1981); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2092); fatal_exit(1); } var74 = var76; @@ -1287,11 +1398,14 @@ var82 = ((val*(*)(val* self))((((long)var_79&3)?class_info[((long)var_79&3)]:var } var_mpropdef = var82; { -{ /* Inline model#MPropDef#mclassdef (var_mpropdef) on */ +{ /* Inline model$MPropDef$mclassdef (var_mpropdef) on */ var85 = var_mpropdef->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on */ if (unlikely(var85 == 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); } var83 = var85; @@ -1299,11 +1413,14 @@ RET_LABEL84:(void)0; } } { -{ /* Inline model#MClassDef#mclass (var83) on */ +{ /* Inline model$MClassDef$mclass (var83) on */ var88 = var83->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on */ if (unlikely(var88 == 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); } var86 = var88; @@ -1311,10 +1428,10 @@ RET_LABEL87:(void)0; } } { -{ /* Inline kernel#Object#== (var86,var_parent) on */ +{ /* Inline kernel$Object$== (var86,var_parent) on */ var_other = var_parent; { -{ /* Inline kernel#Object#is_same_instance (var86,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var86,var_other) on */ var93 = var86 == var_other; var91 = var93; goto RET_LABEL92; @@ -1328,7 +1445,7 @@ RET_LABEL90:(void)0; } if (var89){ { -core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_color, var_mpropdef); /* Direct call array#Array#[]= on */ +core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_color, var_mpropdef); /* Direct call array$Array$[]= on */ } } else { } @@ -1359,11 +1476,14 @@ BREAK_label26: (void)0; ((void(*)(val* self))((((long)var_24&3)?class_info[((long)var_24&3)]:var_24->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_24); /* finish on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var96 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var96 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } var94 = var96; @@ -1404,9 +1524,12 @@ goto BREAK_label109; } else { } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#vt_colors (self) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$vt_colors (self) on */ var112 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_colors].val; /* _vt_colors on */ if (unlikely(var112 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _vt_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 86); fatal_exit(1); @@ -1421,21 +1544,21 @@ var113 = ((val*(*)(val* self, val* p0))((((long)var110&3)?class_info[((long)var1 var114 = (long)(var113)>>2; var_color115 = var114; { -{ /* Inline array#AbstractArrayRead#length (var_table) on */ +{ /* Inline array$AbstractArrayRead$length (var_table) on */ var118 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var116 = var118; RET_LABEL117:(void)0; } } { -{ /* Inline kernel#Int#<= (var116,var_color115) on */ +{ /* Inline kernel$Int$<= (var116,var_color115) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ var121 = 1; /* easy isa OTHER*/ if (unlikely(!var121)) { var_class_name124 = type_core__Int.name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name124); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 727); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 724); fatal_exit(1); } var125 = var116 <= var_color115; @@ -1446,7 +1569,7 @@ RET_LABEL120:(void)0; } if (var119){ { -{ /* Inline array#AbstractArrayRead#length (var_table) on */ +{ /* Inline array$AbstractArrayRead$length (var_table) on */ var128 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var126 = var128; RET_LABEL127:(void)0; @@ -1456,14 +1579,14 @@ var_i129 = var126; var_130 = var_color115; for(;;) { { -{ /* Inline kernel#Int#< (var_i129,var_130) on */ +{ /* Inline kernel$Int$< (var_i129,var_130) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ var133 = 1; /* easy isa OTHER*/ if (unlikely(!var133)) { var_class_name136 = type_core__Int.name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name136); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 725); fatal_exit(1); } var137 = var_i129 < var_130; @@ -1477,7 +1600,7 @@ if (var131){ goto BREAK_label138; } { -core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_i129, ((val*)NULL)); /* Direct call array#Array#[]= on */ +core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_i129, ((val*)NULL)); /* Direct call array$Array$[]= on */ } { var139 = core___core__Int___Discrete__successor(var_i129, 1l); @@ -1488,11 +1611,14 @@ BREAK_label138: (void)0; } else { } { -{ /* Inline model#MProperty#mpropdefs (var_mproperty104) on */ +{ /* Inline model$MProperty$mpropdefs (var_mproperty104) on */ var142 = var_mproperty104->attrs[COLOR_nitc__model__MProperty___mpropdefs].val; /* _mpropdefs on */ if (unlikely(var142 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdefs"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1981); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2092); fatal_exit(1); } var140 = var142; @@ -1517,11 +1643,14 @@ var148 = ((val*(*)(val* self))((((long)var_145&3)?class_info[((long)var_145&3)]: } var_mpropdef149 = var148; { -{ /* Inline model#MPropDef#mclassdef (var_mpropdef149) on */ +{ /* Inline model$MPropDef$mclassdef (var_mpropdef149) on */ var152 = var_mpropdef149->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on */ if (unlikely(var152 == 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); } var150 = var152; @@ -1529,11 +1658,14 @@ RET_LABEL151:(void)0; } } { -{ /* Inline model#MClassDef#mclass (var150) on */ +{ /* Inline model$MClassDef$mclass (var150) on */ var155 = var150->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on */ if (unlikely(var155 == 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); } var153 = var155; @@ -1541,10 +1673,10 @@ RET_LABEL154:(void)0; } } { -{ /* Inline kernel#Object#== (var153,var_mclass) on */ +{ /* Inline kernel$Object$== (var153,var_mclass) on */ var_other = var_mclass; { -{ /* Inline kernel#Object#is_same_instance (var153,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var153,var_other) on */ var160 = var153 == var_other; var158 = var160; goto RET_LABEL159; @@ -1558,7 +1690,7 @@ RET_LABEL157:(void)0; } if (var156){ { -core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_color115, var_mpropdef149); /* Direct call array#Array#[]= on */ +core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_color115, var_mpropdef149); /* Direct call array$Array$[]= on */ } } else { } @@ -1580,7 +1712,7 @@ BREAK_label102: (void)0; ((void(*)(val* self))((((long)var_100&3)?class_info[((long)var_100&3)]:var_100->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_100); /* finish on */ } { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_tables, var_mclass, var_table); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_tables, var_mclass, var_table); /* Direct call hash_collection$HashMap$[]= on */ } { ((void(*)(val* self))((((long)var_3&3)?class_info[((long)var_3&3)]:var_3->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_3); /* next on */ @@ -1595,7 +1727,7 @@ goto RET_LABEL; RET_LABEL:; return var; } -/* method separate_erasure_compiler#SeparateErasureCompiler#build_class_typing_tables for (self: SeparateErasureCompiler, Set[MClass]): Map[MClass, Array[nullable MClass]] */ +/* method separate_erasure_compiler$SeparateErasureCompiler$build_class_typing_tables for (self: SeparateErasureCompiler, Set[MClass]): Map[MClass, Array[nullable MClass]] */ val* nitc___nitc__SeparateErasureCompiler___build_class_typing_tables(val* self, val* p0) { val* var /* : Map[MClass, Array[nullable MClass]] */; val* var_mclasses /* var mclasses: Set[MClass] */; @@ -1653,7 +1785,7 @@ long var49 /* : Int */; var_mclasses = p0; var1 = NEW_core__HashMap(&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MClass); { -core___core__HashMap___core__kernel__Object__init(var1); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var1); /* Direct call hash_collection$HashMap$init on */ } var_tables = var1; var_ = var_mclasses; @@ -1675,20 +1807,23 @@ var5 = ((val*(*)(val* self))((((long)var_3&3)?class_info[((long)var_3&3)]:var_3- var_mclass = var5; var6 = NEW_core__Array(&type_core__Array__nullable__nitc__MClass); { -core___core__Array___core__kernel__Object__init(var6); /* Direct call array#Array#init on */ +core___core__Array___core__kernel__Object__init(var6); /* Direct call array$Array$init on */ } var_table = var6; var7 = NEW_core__Array(&type_core__Array__nitc__MClass); { -core___core__Array___core__kernel__Object__init(var7); /* Direct call array#Array#init on */ +core___core__Array___core__kernel__Object__init(var7); /* Direct call array$Array$init on */ } var_supers = var7; { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var10 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var10 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } var8 = var10; @@ -1703,11 +1838,14 @@ var12 = poset___poset__POSet___core__abstract_collection__Collection__has(var11, } if (var12){ { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var15 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var15 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } var13 = var15; @@ -1744,9 +1882,12 @@ var24 = ((val*(*)(val* self))((((long)var_21&3)?class_info[((long)var_21&3)]:var } var_sup = var24; { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#class_colors (self) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$class_colors (self) on */ var27 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_colors].val; /* _class_colors on */ if (unlikely(var27 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 85); fatal_exit(1); @@ -1761,21 +1902,21 @@ var28 = ((val*(*)(val* self, val* p0))((((long)var25&3)?class_info[((long)var25& var29 = (long)(var28)>>2; var_color = var29; { -{ /* Inline array#AbstractArrayRead#length (var_table) on */ +{ /* Inline array$AbstractArrayRead$length (var_table) on */ var32 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var30 = var32; RET_LABEL31:(void)0; } } { -{ /* Inline kernel#Int#<= (var30,var_color) on */ +{ /* Inline kernel$Int$<= (var30,var_color) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ var35 = 1; /* easy isa OTHER*/ if (unlikely(!var35)) { 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, 727); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 724); fatal_exit(1); } var36 = var30 <= var_color; @@ -1786,7 +1927,7 @@ RET_LABEL34:(void)0; } if (var33){ { -{ /* Inline array#AbstractArrayRead#length (var_table) on */ +{ /* Inline array$AbstractArrayRead$length (var_table) on */ var39 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var37 = var39; RET_LABEL38:(void)0; @@ -1796,14 +1937,14 @@ var_i = var37; var_40 = var_color; for(;;) { { -{ /* Inline kernel#Int#< (var_i,var_40) on */ +{ /* Inline kernel$Int$< (var_i,var_40) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ var43 = 1; /* easy isa OTHER*/ if (unlikely(!var43)) { var_class_name46 = type_core__Int.name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name46); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 725); fatal_exit(1); } var47 = var_i < var_40; @@ -1817,7 +1958,7 @@ if (var41){ goto BREAK_label48; } { -core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_i, ((val*)NULL)); /* Direct call array#Array#[]= on */ +core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_i, ((val*)NULL)); /* Direct call array$Array$[]= on */ } { var49 = core___core__Int___Discrete__successor(var_i, 1l); @@ -1828,7 +1969,7 @@ BREAK_label48: (void)0; } else { } { -core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_color, var_sup); /* Direct call array#Array#[]= on */ +core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_color, var_sup); /* Direct call array$Array$[]= on */ } { ((void(*)(val* self))((((long)var_21&3)?class_info[((long)var_21&3)]:var_21->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_21); /* next on */ @@ -1839,7 +1980,7 @@ BREAK_label23: (void)0; ((void(*)(val* self))((((long)var_21&3)?class_info[((long)var_21&3)]:var_21->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_21); /* finish on */ } { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_tables, var_mclass, var_table); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_tables, var_mclass, var_table); /* Direct call hash_collection$HashMap$[]= on */ } { ((void(*)(val* self))((((long)var_3&3)?class_info[((long)var_3&3)]:var_3->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_3); /* next on */ @@ -1854,50 +1995,77 @@ goto RET_LABEL; RET_LABEL:; return var; } -/* method separate_erasure_compiler#SeparateErasureCompiler#compile_header_structs for (self: SeparateErasureCompiler) */ +/* method separate_erasure_compiler$SeparateErasureCompiler$compile_header_structs for (self: SeparateErasureCompiler) */ void nitc___nitc__SeparateErasureCompiler___nitc__abstract_compiler__AbstractCompiler__compile_header_structs(val* self) { val* var /* : CodeWriter */; val* var2 /* : CodeWriter */; static val* varonce; val* var3 /* : String */; -char* var4 /* : NativeString */; +char* var4 /* : CString */; val* var5 /* : String */; -val* var6 /* : CodeWriter */; -val* var8 /* : CodeWriter */; -static val* varonce9; -val* var10 /* : String */; -char* var11 /* : NativeString */; -val* var12 /* : String */; -val* var13 /* : CodeWriter */; -val* var15 /* : CodeWriter */; -static val* varonce16; -val* var17 /* : String */; -char* var18 /* : NativeString */; -val* var19 /* : String */; -val* var20 /* : CodeWriter */; -val* var22 /* : CodeWriter */; -static val* varonce23; -val* var24 /* : String */; -char* var25 /* : NativeString */; -val* var26 /* : String */; -val* var27 /* : CodeWriter */; -val* var29 /* : CodeWriter */; -static val* varonce30; -val* var31 /* : String */; -char* var32 /* : NativeString */; -val* var33 /* : String */; +val* var6 /* : nullable Int */; +val* var7 /* : nullable Int */; +val* var8 /* : nullable Bool */; +val* var9 /* : nullable Bool */; +val* var10 /* : CodeWriter */; +val* var12 /* : CodeWriter */; +static val* varonce13; +val* var14 /* : String */; +char* var15 /* : CString */; +val* var16 /* : String */; +val* var17 /* : nullable Int */; +val* var18 /* : nullable Int */; +val* var19 /* : nullable Bool */; +val* var20 /* : nullable Bool */; +val* var21 /* : CodeWriter */; +val* var23 /* : CodeWriter */; +static val* varonce24; +val* var25 /* : String */; +char* var26 /* : CString */; +val* var27 /* : String */; +val* var28 /* : nullable Int */; +val* var29 /* : nullable Int */; +val* var30 /* : nullable Bool */; +val* var31 /* : nullable Bool */; +val* var32 /* : CodeWriter */; val* var34 /* : CodeWriter */; -val* var36 /* : CodeWriter */; -static val* varonce37; +static val* varonce35; +val* var36 /* : String */; +char* var37 /* : CString */; val* var38 /* : String */; -char* var39 /* : NativeString */; -val* var40 /* : String */; +val* var39 /* : nullable Int */; +val* var40 /* : nullable Int */; +val* var41 /* : nullable Bool */; +val* var42 /* : nullable Bool */; +val* var43 /* : CodeWriter */; +val* var45 /* : CodeWriter */; +static val* varonce46; +val* var47 /* : String */; +char* var48 /* : CString */; +val* var49 /* : String */; +val* var50 /* : nullable Int */; +val* var51 /* : nullable Int */; +val* var52 /* : nullable Bool */; +val* var53 /* : nullable Bool */; +val* var54 /* : CodeWriter */; +val* var56 /* : CodeWriter */; +static val* varonce57; +val* var58 /* : String */; +char* var59 /* : CString */; +val* var60 /* : String */; +val* var61 /* : nullable Int */; +val* var62 /* : nullable Int */; +val* var63 /* : nullable Bool */; +val* var64 /* : nullable Bool */; { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ var2 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } var = var2; @@ -1908,134 +2076,173 @@ if (likely(varonce!=NULL)) { var3 = varonce; } else { var4 = "typedef void(*nitmethod_t)(void); /* general C type representing a Nit method. */"; -var5 = core__flat___NativeString___to_s_full(var4, 81l, 81l); +var6 = (val*)(81l<<2|1); +var7 = (val*)(81l<<2|1); +var8 = (val*)((long)(0)<<2|3); +var9 = (val*)((long)(0)<<2|3); +var5 = core__flat___CString___to_s_unsafe(var4, var6, var7, var8, var9); var3 = var5; varonce = var3; } { -nitc___nitc__CodeWriter___add_decl(var, var3); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var, var3); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -nitc___nitc__SeparateCompiler___compile_header_attribute_structs(self); /* Direct call separate_compiler#SeparateCompiler#compile_header_attribute_structs on */ +nitc___nitc__SeparateCompiler___compile_header_attribute_structs(self); /* Direct call separate_compiler$SeparateCompiler$compile_header_attribute_structs on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var8 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var8 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var12 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var12 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var6 = var8; -RET_LABEL7:(void)0; +var10 = var12; +RET_LABEL11:(void)0; } } -if (likely(varonce9!=NULL)) { -var10 = varonce9; +if (likely(varonce13!=NULL)) { +var14 = varonce13; } else { -var11 = "struct class { int id; const char *name; int box_kind; int color; const struct vts_table *vts_table; const struct type_table *type_table; nitmethod_t vft[]; }; /* general C type representing a Nit class. */"; -var12 = core__flat___NativeString___to_s_full(var11, 206l, 206l); -var10 = var12; -varonce9 = var10; +var15 = "struct class { int id; const char *name; int box_kind; int color; const struct vts_table *vts_table; const struct type_table *type_table; nitmethod_t vft[]; }; /* general C type representing a Nit class. */"; +var17 = (val*)(206l<<2|1); +var18 = (val*)(206l<<2|1); +var19 = (val*)((long)(0)<<2|3); +var20 = (val*)((long)(0)<<2|3); +var16 = core__flat___CString___to_s_unsafe(var15, var17, var18, var19, var20); +var14 = var16; +varonce13 = var14; } { -nitc___nitc__CodeWriter___add_decl(var6, var10); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var10, var14); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var15 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var15 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var23 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var23 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var13 = var15; -RET_LABEL14:(void)0; +var21 = var23; +RET_LABEL22:(void)0; } } -if (likely(varonce16!=NULL)) { -var17 = varonce16; +if (likely(varonce24!=NULL)) { +var25 = varonce24; } else { -var18 = "struct type_table { int size; int table[]; }; /* colorized type table. */"; -var19 = core__flat___NativeString___to_s_full(var18, 73l, 73l); -var17 = var19; -varonce16 = var17; +var26 = "struct type_table { int size; int table[]; }; /* colorized type table. */"; +var28 = (val*)(73l<<2|1); +var29 = (val*)(73l<<2|1); +var30 = (val*)((long)(0)<<2|3); +var31 = (val*)((long)(0)<<2|3); +var27 = core__flat___CString___to_s_unsafe(var26, var28, var29, var30, var31); +var25 = var27; +varonce24 = var25; } { -nitc___nitc__CodeWriter___add_decl(var13, var17); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var21, var25); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var22 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var22 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var34 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var34 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var20 = var22; -RET_LABEL21:(void)0; +var32 = var34; +RET_LABEL33:(void)0; } } -if (likely(varonce23!=NULL)) { -var24 = varonce23; +if (likely(varonce35!=NULL)) { +var36 = varonce35; } else { -var25 = "struct vts_entry { short int is_nullable; const struct class *class; }; /* link (nullable or not) between the vts and is bound. */"; -var26 = core__flat___NativeString___to_s_full(var25, 130l, 130l); -var24 = var26; -varonce23 = var24; +var37 = "struct vts_entry { short int is_nullable; const struct class *class; }; /* link (nullable or not) between the vts and is bound. */"; +var39 = (val*)(130l<<2|1); +var40 = (val*)(130l<<2|1); +var41 = (val*)((long)(0)<<2|3); +var42 = (val*)((long)(0)<<2|3); +var38 = core__flat___CString___to_s_unsafe(var37, var39, var40, var41, var42); +var36 = var38; +varonce35 = var36; } { -nitc___nitc__CodeWriter___add_decl(var20, var24); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var32, var36); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var29 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var29 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var45 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var45 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var27 = var29; -RET_LABEL28:(void)0; +var43 = var45; +RET_LABEL44:(void)0; } } -if (likely(varonce30!=NULL)) { -var31 = varonce30; +if (likely(varonce46!=NULL)) { +var47 = varonce46; } else { -var32 = "struct vts_table { int dummy; const struct vts_entry vts[]; }; /* vts list of a C type representation. */"; -var33 = core__flat___NativeString___to_s_full(var32, 105l, 105l); -var31 = var33; -varonce30 = var31; +var48 = "struct vts_table { int dummy; const struct vts_entry vts[]; }; /* vts list of a C type representation. */"; +var50 = (val*)(105l<<2|1); +var51 = (val*)(105l<<2|1); +var52 = (val*)((long)(0)<<2|3); +var53 = (val*)((long)(0)<<2|3); +var49 = core__flat___CString___to_s_unsafe(var48, var50, var51, var52, var53); +var47 = var49; +varonce46 = var47; } { -nitc___nitc__CodeWriter___add_decl(var27, var31); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var43, var47); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var36 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var36 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var56 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var56 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var34 = var36; -RET_LABEL35:(void)0; +var54 = var56; +RET_LABEL55:(void)0; } } -if (likely(varonce37!=NULL)) { -var38 = varonce37; +if (likely(varonce57!=NULL)) { +var58 = varonce57; } else { -var39 = "typedef struct instance { const struct class *class; nitattribute_t attrs[1]; } val; /* general C type representing a Nit instance. */"; -var40 = core__flat___NativeString___to_s_full(var39, 134l, 134l); -var38 = var40; -varonce37 = var38; +var59 = "typedef struct instance { const struct class *class; nitattribute_t attrs[1]; } val; /* general C type representing a Nit instance. */"; +var61 = (val*)(134l<<2|1); +var62 = (val*)(134l<<2|1); +var63 = (val*)((long)(0)<<2|3); +var64 = (val*)((long)(0)<<2|3); +var60 = core__flat___CString___to_s_unsafe(var59, var61, var62, var63, var64); +var58 = var60; +varonce57 = var58; } { -nitc___nitc__CodeWriter___add_decl(var34, var38); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var54, var58); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } RET_LABEL:; } -/* method separate_erasure_compiler#SeparateErasureCompiler#compile_class_to_c for (self: SeparateErasureCompiler, MClass) */ +/* method separate_erasure_compiler$SeparateErasureCompiler$compile_class_to_c for (self: SeparateErasureCompiler, MClass) */ void nitc___nitc__SeparateErasureCompiler___nitc__separate_compiler__SeparateCompiler__compile_class_to_c(val* self, val* p0) { val* var_mclass /* var mclass: MClass */; val* var /* : MClassDef */; @@ -2079,1031 +2286,1646 @@ val* var35 /* : String */; val* var37 /* : String */; static val* varonce; val* var38 /* : String */; -char* var39 /* : NativeString */; +char* var39 /* : CString */; val* var40 /* : String */; -short int var41 /* : Bool */; -short int var43 /* : Bool */; -short int var44 /* : Bool */; -val* var46 /* : NativeArray[String] */; -static val* varonce45; -static val* varonce47; -val* var48 /* : String */; -char* var49 /* : NativeString */; -val* var50 /* : String */; +val* var41 /* : nullable Int */; +val* var42 /* : nullable Int */; +val* var43 /* : nullable Bool */; +val* var44 /* : nullable Bool */; +short int var45 /* : Bool */; +short int var47 /* : Bool */; +short int var48 /* : Bool */; +val* var50 /* : NativeArray[String] */; +static val* varonce49; static val* varonce51; val* var52 /* : String */; -char* var53 /* : NativeString */; +char* var53 /* : CString */; val* var54 /* : String */; -val* var55 /* : String */; -val* var57 /* : NativeArray[String] */; -static val* varonce56; -static val* varonce58; -val* var59 /* : String */; -char* var60 /* : NativeString */; -val* var61 /* : String */; +val* var55 /* : nullable Int */; +val* var56 /* : nullable Int */; +val* var57 /* : nullable Bool */; +val* var58 /* : nullable Bool */; +static val* varonce59; +val* var60 /* : String */; +char* var61 /* : CString */; val* var62 /* : String */; -val* var64 /* : NativeArray[String] */; -static val* varonce63; -static val* varonce65; -val* var66 /* : String */; -char* var67 /* : NativeString */; -val* var68 /* : String */; -static val* varonce69; -val* var70 /* : String */; -char* var71 /* : NativeString */; -val* var72 /* : String */; +val* var63 /* : nullable Int */; +val* var64 /* : nullable Int */; +val* var65 /* : nullable Bool */; +val* var66 /* : nullable Bool */; +val* var67 /* : String */; +val* var69 /* : NativeArray[String] */; +static val* varonce68; +static val* varonce70; +val* var71 /* : String */; +char* var72 /* : CString */; val* var73 /* : String */; -val* var75 /* : NativeArray[String] */; -static val* varonce74; -static val* varonce76; -val* var77 /* : String */; -char* var78 /* : NativeString */; -val* var79 /* : String */; -static val* varonce80; -val* var81 /* : String */; -char* var82 /* : NativeString */; -val* var83 /* : String */; +val* var74 /* : nullable Int */; +val* var75 /* : nullable Int */; +val* var76 /* : nullable Bool */; +val* var77 /* : nullable Bool */; +val* var78 /* : String */; +val* var80 /* : NativeArray[String] */; +static val* varonce79; +static val* varonce81; +val* var82 /* : String */; +char* var83 /* : CString */; val* var84 /* : String */; -val* var86 /* : NativeArray[String] */; -static val* varonce85; -static val* varonce87; -val* var88 /* : String */; -char* var89 /* : NativeString */; +val* var85 /* : nullable Int */; +val* var86 /* : nullable Int */; +val* var87 /* : nullable Bool */; +val* var88 /* : nullable Bool */; +static val* varonce89; val* var90 /* : String */; -static val* varonce91; +char* var91 /* : CString */; val* var92 /* : String */; -char* var93 /* : NativeString */; -val* var94 /* : String */; -val* var95 /* : String */; -val* var97 /* : NativeArray[String] */; -static val* varonce96; +val* var93 /* : nullable Int */; +val* var94 /* : nullable Int */; +val* var95 /* : nullable Bool */; +val* var96 /* : nullable Bool */; +val* var97 /* : String */; +val* var99 /* : NativeArray[String] */; static val* varonce98; -val* var99 /* : String */; -char* var100 /* : NativeString */; +static val* varonce100; val* var101 /* : String */; -val* var102 /* : Map[MClass, Int] */; -val* var104 /* : Map[MClass, Int] */; -val* var105 /* : nullable Object */; -val* var106 /* : String */; -long var107 /* : Int */; -val* var108 /* : String */; -val* var110 /* : NativeArray[String] */; -static val* varonce109; -static val* varonce111; -val* var112 /* : String */; -char* var113 /* : NativeString */; -val* var114 /* : String */; -static val* varonce115; +char* var102 /* : CString */; +val* var103 /* : String */; +val* var104 /* : nullable Int */; +val* var105 /* : nullable Int */; +val* var106 /* : nullable Bool */; +val* var107 /* : nullable Bool */; +static val* varonce108; +val* var109 /* : String */; +char* var110 /* : CString */; +val* var111 /* : String */; +val* var112 /* : nullable Int */; +val* var113 /* : nullable Int */; +val* var114 /* : nullable Bool */; +val* var115 /* : nullable Bool */; val* var116 /* : String */; -char* var117 /* : NativeString */; -val* var118 /* : String */; -val* var119 /* : String */; -val* var121 /* : String */; +val* var118 /* : NativeArray[String] */; +static val* varonce117; +static val* varonce119; +val* var120 /* : String */; +char* var121 /* : CString */; val* var122 /* : String */; -val* var124 /* : NativeArray[String] */; -static val* varonce123; -static val* varonce125; -val* var126 /* : String */; -char* var127 /* : NativeString */; +val* var123 /* : nullable Int */; +val* var124 /* : nullable Int */; +val* var125 /* : nullable Bool */; +val* var126 /* : nullable Bool */; +static val* varonce127; val* var128 /* : String */; -long var129 /* : Int */; +char* var129 /* : CString */; val* var130 /* : String */; -val* var131 /* : String */; -val* var133 /* : NativeArray[String] */; -static val* varonce132; -static val* varonce134; +val* var131 /* : nullable Int */; +val* var132 /* : nullable Int */; +val* var133 /* : nullable Bool */; +val* var134 /* : nullable Bool */; val* var135 /* : String */; -char* var136 /* : NativeString */; -val* var137 /* : String */; -val* var138 /* : Map[MClass, Int] */; -val* var140 /* : Map[MClass, Int] */; -val* var141 /* : nullable Object */; -val* var142 /* : String */; -long var143 /* : Int */; -val* var144 /* : String */; -short int var145 /* : Bool */; -short int var146 /* : Bool */; -val* var148 /* : NativeArray[String] */; -static val* varonce147; -static val* varonce149; +val* var137 /* : NativeArray[String] */; +static val* varonce136; +static val* varonce138; +val* var139 /* : String */; +char* var140 /* : CString */; +val* var141 /* : String */; +val* var142 /* : nullable Int */; +val* var143 /* : nullable Int */; +val* var144 /* : nullable Bool */; +val* var145 /* : nullable Bool */; +val* var146 /* : Map[MClass, Int] */; +val* var148 /* : Map[MClass, Int] */; +val* var149 /* : nullable Object */; val* var150 /* : String */; -char* var151 /* : NativeString */; +long var151 /* : Int */; val* var152 /* : String */; -val* var153 /* : String */; -val* var155 /* : NativeArray[String] */; -static val* varonce154; -static val* varonce156; -val* var157 /* : String */; -char* var158 /* : NativeString */; -val* var159 /* : String */; -static val* varonce160; -val* var161 /* : String */; -char* var162 /* : NativeString */; -val* var163 /* : String */; +val* var154 /* : NativeArray[String] */; +static val* varonce153; +static val* varonce155; +val* var156 /* : String */; +char* var157 /* : CString */; +val* var158 /* : String */; +val* var159 /* : nullable Int */; +val* var160 /* : nullable Int */; +val* var161 /* : nullable Bool */; +val* var162 /* : nullable Bool */; +static val* varonce163; val* var164 /* : String */; -static val* varonce165; +char* var165 /* : CString */; val* var166 /* : String */; -char* var167 /* : NativeString */; -val* var168 /* : String */; -val* var170 /* : NativeArray[String] */; -static val* varonce169; -static val* varonce171; -val* var172 /* : String */; -char* var173 /* : NativeString */; +val* var167 /* : nullable Int */; +val* var168 /* : nullable Int */; +val* var169 /* : nullable Bool */; +val* var170 /* : nullable Bool */; +val* var171 /* : String */; +val* var173 /* : String */; val* var174 /* : String */; +val* var176 /* : NativeArray[String] */; static val* varonce175; -val* var176 /* : String */; -char* var177 /* : NativeString */; +static val* varonce177; val* var178 /* : String */; -val* var179 /* : String */; -static val* varonce180; -val* var181 /* : String */; -char* var182 /* : NativeString */; -val* var183 /* : String */; -val* var184 /* : Map[MClass, Array[nullable MPropDef]] */; -val* var186 /* : Map[MClass, Array[nullable MPropDef]] */; -val* var187 /* : nullable Object */; -val* var_vft /* var vft: nullable Array[nullable MPropDef] */; -short int var188 /* : Bool */; -short int var189 /* : Bool */; -short int var191 /* : Bool */; -short int var192 /* : Bool */; -long var_i /* var i: Int */; -long var193 /* : Int */; -long var195 /* : Int */; -long var_196 /* var : Int */; -short int var197 /* : Bool */; -short int var199 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -short int var200 /* : Bool */; +char* var179 /* : CString */; +val* var180 /* : String */; +val* var181 /* : nullable Int */; +val* var182 /* : nullable Int */; +val* var183 /* : nullable Bool */; +val* var184 /* : nullable Bool */; +long var185 /* : Int */; +val* var186 /* : String */; +val* var187 /* : String */; +val* var189 /* : NativeArray[String] */; +static val* varonce188; +static val* varonce190; +val* var191 /* : String */; +char* var192 /* : CString */; +val* var193 /* : String */; +val* var194 /* : nullable Int */; +val* var195 /* : nullable Int */; +val* var196 /* : nullable Bool */; +val* var197 /* : nullable Bool */; +val* var198 /* : Map[MClass, Int] */; +val* var200 /* : Map[MClass, Int] */; val* var201 /* : nullable Object */; -val* var_mpropdef /* var mpropdef: nullable MPropDef */; -short int var202 /* : Bool */; -short int var203 /* : Bool */; -val* var_other205 /* var other: nullable Object */; +val* var202 /* : String */; +long var203 /* : Int */; +val* var204 /* : String */; +short int var205 /* : Bool */; short int var206 /* : Bool */; -short int var208 /* : Bool */; +val* var208 /* : NativeArray[String] */; +static val* varonce207; static val* varonce209; val* var210 /* : String */; -char* var211 /* : NativeString */; +char* var211 /* : CString */; val* var212 /* : String */; -short int var213 /* : Bool */; -int cltype214; -int idtype215; -short int var216 /* : Bool */; -short int var217 /* : Bool */; -short int var218 /* : Bool */; -short int var220 /* : Bool */; -short int var221 /* : Bool */; -short int var_222 /* var : Bool */; -val* var223 /* : HashSet[MMethodDef] */; -val* var225 /* : HashSet[MMethodDef] */; -short int var226 /* : Bool */; -short int var227 /* : Bool */; -val* var229 /* : NativeArray[String] */; +val* var213 /* : nullable Int */; +val* var214 /* : nullable Int */; +val* var215 /* : nullable Bool */; +val* var216 /* : nullable Bool */; +val* var217 /* : String */; +val* var219 /* : NativeArray[String] */; +static val* varonce218; +static val* varonce220; +val* var221 /* : String */; +char* var222 /* : CString */; +val* var223 /* : String */; +val* var224 /* : nullable Int */; +val* var225 /* : nullable Int */; +val* var226 /* : nullable Bool */; +val* var227 /* : nullable Bool */; static val* varonce228; -static val* varonce230; +val* var229 /* : String */; +char* var230 /* : CString */; val* var231 /* : String */; -char* var232 /* : NativeString */; -val* var233 /* : String */; -static val* varonce234; -val* var235 /* : String */; -char* var236 /* : NativeString */; -val* var237 /* : String */; -static val* varonce238; -val* var239 /* : String */; -char* var240 /* : NativeString */; -val* var241 /* : String */; -static val* varonce242; -val* var243 /* : String */; -char* var244 /* : NativeString */; -val* var245 /* : String */; -val* var246 /* : MModule */; -val* var248 /* : MModule */; -val* var249 /* : String */; +val* var232 /* : nullable Int */; +val* var233 /* : nullable Int */; +val* var234 /* : nullable Bool */; +val* var235 /* : nullable Bool */; +val* var236 /* : String */; +static val* varonce237; +val* var238 /* : String */; +char* var239 /* : CString */; +val* var240 /* : String */; +val* var241 /* : nullable Int */; +val* var242 /* : nullable Int */; +val* var243 /* : nullable Bool */; +val* var244 /* : nullable Bool */; +val* var246 /* : NativeArray[String] */; +static val* varonce245; +static val* varonce247; +val* var248 /* : String */; +char* var249 /* : CString */; val* var250 /* : String */; -val* var251 /* : String */; -val* var252 /* : String */; -val* var254 /* : SeparateRuntimeFunction */; -val* var_rf /* var rf: SeparateRuntimeFunction */; -val* var255 /* : String */; -val* var257 /* : NativeArray[String] */; -static val* varonce256; -static val* varonce258; -val* var259 /* : String */; -char* var260 /* : NativeString */; -val* var261 /* : String */; -static val* varonce262; +val* var251 /* : nullable Int */; +val* var252 /* : nullable Int */; +val* var253 /* : nullable Bool */; +val* var254 /* : nullable Bool */; +static val* varonce255; +val* var256 /* : String */; +char* var257 /* : CString */; +val* var258 /* : String */; +val* var259 /* : nullable Int */; +val* var260 /* : nullable Int */; +val* var261 /* : nullable Bool */; +val* var262 /* : nullable Bool */; val* var263 /* : String */; -char* var264 /* : NativeString */; +static val* varonce264; val* var265 /* : String */; -static val* varonce266; +char* var266 /* : CString */; val* var267 /* : String */; -char* var268 /* : NativeString */; -val* var269 /* : String */; -val* var270 /* : String */; -val* var271 /* : String */; -val* var272 /* : String */; -long var273 /* : Int */; -static val* varonce274; -val* var275 /* : String */; -char* var276 /* : NativeString */; -val* var277 /* : String */; -static val* varonce278; -val* var279 /* : String */; -char* var280 /* : NativeString */; -val* var281 /* : String */; -val* var283 /* : NativeArray[String] */; -static val* varonce282; -static val* varonce284; -val* var285 /* : String */; -char* var286 /* : NativeString */; -val* var287 /* : String */; -static val* varonce288; -val* var289 /* : String */; -char* var290 /* : NativeString */; -val* var291 /* : String */; -val* var292 /* : String */; -val* var294 /* : NativeArray[String] */; -static val* varonce293; -static val* varonce295; -val* var296 /* : String */; -char* var297 /* : NativeString */; +val* var268 /* : nullable Int */; +val* var269 /* : nullable Int */; +val* var270 /* : nullable Bool */; +val* var271 /* : nullable Bool */; +val* var272 /* : Map[MClass, Array[nullable MPropDef]] */; +val* var274 /* : Map[MClass, Array[nullable MPropDef]] */; +val* var275 /* : nullable Object */; +val* var_vft /* var vft: nullable Array[nullable MPropDef] */; +short int var276 /* : Bool */; +short int var277 /* : Bool */; +short int var279 /* : Bool */; +short int var280 /* : Bool */; +long var_i /* var i: Int */; +long var281 /* : Int */; +long var283 /* : Int */; +long var_284 /* var : Int */; +short int var285 /* : Bool */; +short int var287 /* : Bool */; +int cltype; +int idtype; +const char* var_class_name; +short int var288 /* : Bool */; +val* var289 /* : nullable Object */; +val* var_mpropdef /* var mpropdef: nullable MPropDef */; +short int var290 /* : Bool */; +short int var291 /* : Bool */; +val* var_other293 /* var other: nullable Object */; +short int var294 /* : Bool */; +short int var296 /* : Bool */; +static val* varonce297; val* var298 /* : String */; -long var299 /* : Int */; -long var301 /* : Int */; -val* var302 /* : String */; -val* var303 /* : String */; -static val* varonce304; -val* var305 /* : String */; -char* var306 /* : NativeString */; -val* var307 /* : String */; -val* var_308 /* var : Array[nullable MClass] */; -val* var309 /* : IndexedIterator[nullable Object] */; -val* var_310 /* var : IndexedIterator[nullable MClass] */; -short int var311 /* : Bool */; -val* var313 /* : nullable Object */; -val* var_msuper /* var msuper: nullable MClass */; -short int var314 /* : Bool */; -short int var315 /* : Bool */; -short int var317 /* : Bool */; +char* var299 /* : CString */; +val* var300 /* : String */; +val* var301 /* : nullable Int */; +val* var302 /* : nullable Int */; +val* var303 /* : nullable Bool */; +val* var304 /* : nullable Bool */; +short int var305 /* : Bool */; +int cltype306; +int idtype307; +short int var308 /* : Bool */; +short int var309 /* : Bool */; +short int var310 /* : Bool */; +short int var312 /* : Bool */; +short int var313 /* : Bool */; +short int var_314 /* var : Bool */; +val* var315 /* : HashSet[MMethodDef] */; +val* var317 /* : HashSet[MMethodDef] */; +short int var318 /* : Bool */; short int var319 /* : Bool */; +val* var321 /* : NativeArray[String] */; static val* varonce320; -val* var321 /* : String */; -char* var322 /* : NativeString */; +static val* varonce322; val* var323 /* : String */; -val* var325 /* : NativeArray[String] */; -static val* varonce324; -static val* varonce326; -val* var327 /* : String */; -char* var328 /* : NativeString */; -val* var329 /* : String */; +char* var324 /* : CString */; +val* var325 /* : String */; +val* var326 /* : nullable Int */; +val* var327 /* : nullable Int */; +val* var328 /* : nullable Bool */; +val* var329 /* : nullable Bool */; static val* varonce330; val* var331 /* : String */; -char* var332 /* : NativeString */; +char* var332 /* : CString */; val* var333 /* : String */; -val* var334 /* : Map[MClass, Int] */; -val* var336 /* : Map[MClass, Int] */; -val* var337 /* : nullable Object */; -val* var338 /* : String */; -long var339 /* : Int */; -val* var340 /* : String */; +val* var334 /* : nullable Int */; +val* var335 /* : nullable Int */; +val* var336 /* : nullable Bool */; +val* var337 /* : nullable Bool */; +static val* varonce338; +val* var339 /* : String */; +char* var340 /* : CString */; val* var341 /* : String */; -static val* varonce342; -val* var343 /* : String */; -char* var344 /* : NativeString */; -val* var345 /* : String */; +val* var342 /* : nullable Int */; +val* var343 /* : nullable Int */; +val* var344 /* : nullable Bool */; +val* var345 /* : nullable Bool */; static val* varonce346; val* var347 /* : String */; -char* var348 /* : NativeString */; +char* var348 /* : CString */; val* var349 /* : String */; -short int var350 /* : Bool */; -short int var351 /* : Bool */; -short int var_352 /* var : Bool */; -val* var353 /* : MClass */; -val* var355 /* : MClass */; -val* var356 /* : String */; +val* var350 /* : nullable Int */; +val* var351 /* : nullable Int */; +val* var352 /* : nullable Bool */; +val* var353 /* : nullable Bool */; +val* var354 /* : MModule */; +val* var356 /* : MModule */; +val* var357 /* : String */; val* var358 /* : String */; -static val* varonce359; +val* var359 /* : String */; val* var360 /* : String */; -char* var361 /* : NativeString */; -val* var362 /* : String */; -short int var363 /* : Bool */; -val* var364 /* : CodeWriter */; -val* var366 /* : CodeWriter */; -val* var368 /* : NativeArray[String] */; -static val* varonce367; -static val* varonce369; -val* var370 /* : String */; -char* var371 /* : NativeString */; -val* var372 /* : String */; -static val* varonce373; -val* var374 /* : String */; -char* var375 /* : NativeString */; -val* var376 /* : String */; +val* var362 /* : SeparateRuntimeFunction */; +val* var_rf /* var rf: SeparateRuntimeFunction */; +val* var363 /* : String */; +val* var365 /* : NativeArray[String] */; +static val* varonce364; +static val* varonce366; +val* var367 /* : String */; +char* var368 /* : CString */; +val* var369 /* : String */; +val* var370 /* : nullable Int */; +val* var371 /* : nullable Int */; +val* var372 /* : nullable Bool */; +val* var373 /* : nullable Bool */; +static val* varonce374; +val* var375 /* : String */; +char* var376 /* : CString */; val* var377 /* : String */; -val* var378 /* : CodeWriter */; -val* var380 /* : CodeWriter */; -static val* varonce381; -val* var382 /* : String */; -char* var383 /* : NativeString */; -val* var384 /* : String */; -val* var385 /* : CodeWriter */; -val* var387 /* : CodeWriter */; -val* var389 /* : NativeArray[String] */; -static val* varonce388; -static val* varonce390; +val* var378 /* : nullable Int */; +val* var379 /* : nullable Int */; +val* var380 /* : nullable Bool */; +val* var381 /* : nullable Bool */; +static val* varonce382; +val* var383 /* : String */; +char* var384 /* : CString */; +val* var385 /* : String */; +val* var386 /* : nullable Int */; +val* var387 /* : nullable Int */; +val* var388 /* : nullable Bool */; +val* var389 /* : nullable Bool */; +val* var390 /* : String */; val* var391 /* : String */; -char* var392 /* : NativeString */; -val* var393 /* : String */; -val* var394 /* : String */; +val* var392 /* : String */; +long var393 /* : Int */; +static val* varonce394; val* var395 /* : String */; -val* var396 /* : CodeWriter */; -val* var398 /* : CodeWriter */; -static val* varonce399; -val* var400 /* : String */; -char* var401 /* : NativeString */; -val* var402 /* : String */; -val* var404 /* : NativeArray[String] */; -static val* varonce403; -static val* varonce405; -val* var406 /* : String */; -char* var407 /* : NativeString */; -val* var408 /* : String */; -val* var409 /* : String */; +char* var396 /* : CString */; +val* var397 /* : String */; +val* var398 /* : nullable Int */; +val* var399 /* : nullable Int */; +val* var400 /* : nullable Bool */; +val* var401 /* : nullable Bool */; +static val* varonce402; +val* var403 /* : String */; +char* var404 /* : CString */; +val* var405 /* : String */; +val* var406 /* : nullable Int */; +val* var407 /* : nullable Int */; +val* var408 /* : nullable Bool */; +val* var409 /* : nullable Bool */; val* var411 /* : NativeArray[String] */; static val* varonce410; static val* varonce412; val* var413 /* : String */; -char* var414 /* : NativeString */; +char* var414 /* : CString */; val* var415 /* : String */; -static val* varonce416; -val* var417 /* : String */; -char* var418 /* : NativeString */; -val* var419 /* : String */; +val* var416 /* : nullable Int */; +val* var417 /* : nullable Int */; +val* var418 /* : nullable Bool */; +val* var419 /* : nullable Bool */; static val* varonce420; val* var421 /* : String */; -char* var422 /* : NativeString */; +char* var422 /* : CString */; val* var423 /* : String */; -val* var424 /* : String */; -val* var425 /* : String */; -val* var427 /* : NativeArray[String] */; -static val* varonce426; -static val* varonce428; -val* var429 /* : String */; -char* var430 /* : NativeString */; -val* var431 /* : String */; -static val* varonce432; -val* var433 /* : String */; -char* var434 /* : NativeString */; -val* var435 /* : String */; -val* var436 /* : String */; -val* var437 /* : String */; -val* var439 /* : NativeArray[String] */; -static val* varonce438; -static val* varonce440; -val* var441 /* : String */; -char* var442 /* : NativeString */; +val* var424 /* : nullable Int */; +val* var425 /* : nullable Int */; +val* var426 /* : nullable Bool */; +val* var427 /* : nullable Bool */; +val* var428 /* : String */; +val* var430 /* : NativeArray[String] */; +static val* varonce429; +static val* varonce431; +val* var432 /* : String */; +char* var433 /* : CString */; +val* var434 /* : String */; +val* var435 /* : nullable Int */; +val* var436 /* : nullable Int */; +val* var437 /* : nullable Bool */; +val* var438 /* : nullable Bool */; +long var439 /* : Int */; +long var441 /* : Int */; +val* var442 /* : String */; val* var443 /* : String */; static val* varonce444; val* var445 /* : String */; -char* var446 /* : NativeString */; +char* var446 /* : CString */; val* var447 /* : String */; -static val* varonce448; -val* var449 /* : String */; -char* var450 /* : NativeString */; -val* var451 /* : String */; -val* var452 /* : String */; -val* var453 /* : String */; -val* var454 /* : String */; -val* var456 /* : NativeArray[String] */; -static val* varonce455; -static val* varonce457; -val* var458 /* : String */; -char* var459 /* : NativeString */; -val* var460 /* : String */; -static val* varonce461; -val* var462 /* : String */; -char* var463 /* : NativeString */; -val* var464 /* : String */; -static val* varonce465; -val* var466 /* : String */; -char* var467 /* : NativeString */; -val* var468 /* : String */; -val* var469 /* : String */; -val* var471 /* : NativeArray[String] */; -static val* varonce470; +val* var448 /* : nullable Int */; +val* var449 /* : nullable Int */; +val* var450 /* : nullable Bool */; +val* var451 /* : nullable Bool */; +val* var_452 /* var : Array[nullable MClass] */; +val* var453 /* : IndexedIterator[nullable Object] */; +val* var_454 /* var : IndexedIterator[nullable MClass] */; +short int var455 /* : Bool */; +val* var457 /* : nullable Object */; +val* var_msuper /* var msuper: nullable MClass */; +short int var458 /* : Bool */; +short int var459 /* : Bool */; +short int var461 /* : Bool */; +short int var463 /* : Bool */; +static val* varonce464; +val* var465 /* : String */; +char* var466 /* : CString */; +val* var467 /* : String */; +val* var468 /* : nullable Int */; +val* var469 /* : nullable Int */; +val* var470 /* : nullable Bool */; +val* var471 /* : nullable Bool */; +val* var473 /* : NativeArray[String] */; static val* varonce472; -val* var473 /* : String */; -char* var474 /* : NativeString */; +static val* varonce474; val* var475 /* : String */; -val* var476 /* : String */; -val* var478 /* : NativeArray[String] */; -static val* varonce477; -static val* varonce479; -val* var480 /* : String */; -char* var481 /* : NativeString */; -val* var482 /* : String */; -static val* varonce483; -val* var484 /* : String */; -char* var485 /* : NativeString */; -val* var486 /* : String */; -val* var487 /* : String */; -static val* varonce488; -val* var489 /* : String */; -char* var490 /* : NativeString */; -val* var491 /* : String */; -static val* varonce492; -val* var493 /* : String */; -char* var494 /* : NativeString */; -val* var495 /* : String */; -static val* varonce496; +char* var476 /* : CString */; +val* var477 /* : String */; +val* var478 /* : nullable Int */; +val* var479 /* : nullable Int */; +val* var480 /* : nullable Bool */; +val* var481 /* : nullable Bool */; +static val* varonce482; +val* var483 /* : String */; +char* var484 /* : CString */; +val* var485 /* : String */; +val* var486 /* : nullable Int */; +val* var487 /* : nullable Int */; +val* var488 /* : nullable Bool */; +val* var489 /* : nullable Bool */; +val* var490 /* : Map[MClass, Int] */; +val* var492 /* : Map[MClass, Int] */; +val* var493 /* : nullable Object */; +val* var494 /* : String */; +long var495 /* : Int */; +val* var496 /* : String */; val* var497 /* : String */; -char* var498 /* : NativeString */; +static val* varonce498; val* var499 /* : String */; -val* var500 /* : MClass */; -val* var502 /* : MClass */; -val* var503 /* : String */; -val* var505 /* : String */; +char* var500 /* : CString */; +val* var501 /* : String */; +val* var502 /* : nullable Int */; +val* var503 /* : nullable Int */; +val* var504 /* : nullable Bool */; +val* var505 /* : nullable Bool */; static val* varonce506; val* var507 /* : String */; -char* var508 /* : NativeString */; +char* var508 /* : CString */; val* var509 /* : String */; -short int var510 /* : Bool */; -short int var512 /* : Bool */; -short int var513 /* : Bool */; -val* var514 /* : SeparateCompilerVisitor */; -val* var516 /* : NativeArray[String] */; -static val* varonce515; -static val* varonce517; -val* var518 /* : String */; -char* var519 /* : NativeString */; +val* var510 /* : nullable Int */; +val* var511 /* : nullable Int */; +val* var512 /* : nullable Bool */; +val* var513 /* : nullable Bool */; +short int var514 /* : Bool */; +short int var515 /* : Bool */; +short int var_516 /* var : Bool */; +val* var517 /* : MClass */; +val* var519 /* : MClass */; val* var520 /* : String */; -val* var521 /* : String */; -val* var523 /* : NativeArray[String] */; -static val* varonce522; -static val* varonce524; -val* var525 /* : String */; -char* var526 /* : NativeString */; -val* var527 /* : String */; -static val* varonce528; -val* var529 /* : String */; -char* var530 /* : NativeString */; -val* var531 /* : String */; -val* var532 /* : String */; -val* var533 /* : String */; -val* var535 /* : NativeArray[String] */; -static val* varonce534; -static val* varonce536; -val* var537 /* : String */; -char* var538 /* : NativeString */; -val* var539 /* : String */; -static val* varonce540; -val* var541 /* : String */; -char* var542 /* : NativeString */; -val* var543 /* : String */; -val* var544 /* : String */; -val* var545 /* : String */; -val* var547 /* : NativeArray[String] */; -static val* varonce546; -static val* varonce548; -val* var549 /* : String */; -char* var550 /* : NativeString */; -val* var551 /* : String */; -static val* varonce552; +val* var522 /* : String */; +static val* varonce523; +val* var524 /* : String */; +char* var525 /* : CString */; +val* var526 /* : String */; +val* var527 /* : nullable Int */; +val* var528 /* : nullable Int */; +val* var529 /* : nullable Bool */; +val* var530 /* : nullable Bool */; +short int var531 /* : Bool */; +val* var532 /* : CodeWriter */; +val* var534 /* : CodeWriter */; +val* var536 /* : NativeArray[String] */; +static val* varonce535; +static val* varonce537; +val* var538 /* : String */; +char* var539 /* : CString */; +val* var540 /* : String */; +val* var541 /* : nullable Int */; +val* var542 /* : nullable Int */; +val* var543 /* : nullable Bool */; +val* var544 /* : nullable Bool */; +static val* varonce545; +val* var546 /* : String */; +char* var547 /* : CString */; +val* var548 /* : String */; +val* var549 /* : nullable Int */; +val* var550 /* : nullable Int */; +val* var551 /* : nullable Bool */; +val* var552 /* : nullable Bool */; val* var553 /* : String */; -char* var554 /* : NativeString */; -val* var555 /* : String */; -val* var556 /* : String */; -val* var557 /* : String */; -val* var559 /* : NativeArray[String] */; -static val* varonce558; -static val* varonce560; -val* var561 /* : String */; -char* var562 /* : NativeString */; -val* var563 /* : String */; -val* var564 /* : String */; -val* var565 /* : String */; -static val* varonce566; -val* var567 /* : String */; -char* var568 /* : NativeString */; -val* var569 /* : String */; -val* var570 /* : RuntimeVariable */; -val* var_res /* var res: RuntimeVariable */; -val* var573 /* : NativeArray[String] */; -static val* varonce572; -static val* varonce574; -val* var575 /* : String */; -char* var576 /* : NativeString */; -val* var577 /* : String */; -static val* varonce578; +val* var554 /* : CodeWriter */; +val* var556 /* : CodeWriter */; +static val* varonce557; +val* var558 /* : String */; +char* var559 /* : CString */; +val* var560 /* : String */; +val* var561 /* : nullable Int */; +val* var562 /* : nullable Int */; +val* var563 /* : nullable Bool */; +val* var564 /* : nullable Bool */; +val* var565 /* : CodeWriter */; +val* var567 /* : CodeWriter */; +val* var569 /* : NativeArray[String] */; +static val* varonce568; +static val* varonce570; +val* var571 /* : String */; +char* var572 /* : CString */; +val* var573 /* : String */; +val* var574 /* : nullable Int */; +val* var575 /* : nullable Int */; +val* var576 /* : nullable Bool */; +val* var577 /* : nullable Bool */; +val* var578 /* : String */; val* var579 /* : String */; -char* var580 /* : NativeString */; -val* var581 /* : String */; -val* var582 /* : String */; -val* var583 /* : String */; +val* var580 /* : CodeWriter */; +val* var582 /* : CodeWriter */; +static val* varonce583; val* var584 /* : String */; -val* var586 /* : NativeArray[String] */; -static val* varonce585; -static val* varonce587; -val* var588 /* : String */; -char* var589 /* : NativeString */; -val* var590 /* : String */; -val* var591 /* : String */; -val* var593 /* : NativeArray[String] */; -static val* varonce592; -static val* varonce594; -val* var595 /* : String */; -char* var596 /* : NativeString */; -val* var597 /* : String */; -static val* varonce598; -val* var599 /* : String */; -char* var600 /* : NativeString */; +char* var585 /* : CString */; +val* var586 /* : String */; +val* var587 /* : nullable Int */; +val* var588 /* : nullable Int */; +val* var589 /* : nullable Bool */; +val* var590 /* : nullable Bool */; +val* var592 /* : NativeArray[String] */; +static val* varonce591; +static val* varonce593; +val* var594 /* : String */; +char* var595 /* : CString */; +val* var596 /* : String */; +val* var597 /* : nullable Int */; +val* var598 /* : nullable Int */; +val* var599 /* : nullable Bool */; +val* var600 /* : nullable Bool */; val* var601 /* : String */; -val* var602 /* : String */; -val* var603 /* : String */; -val* var605 /* : NativeArray[String] */; +val* var603 /* : NativeArray[String] */; +static val* varonce602; static val* varonce604; -static val* varonce606; +val* var605 /* : String */; +char* var606 /* : CString */; val* var607 /* : String */; -char* var608 /* : NativeString */; -val* var609 /* : String */; -static val* varonce610; -val* var611 /* : String */; -char* var612 /* : NativeString */; +val* var608 /* : nullable Int */; +val* var609 /* : nullable Int */; +val* var610 /* : nullable Bool */; +val* var611 /* : nullable Bool */; +static val* varonce612; val* var613 /* : String */; -static val* varonce614; +char* var614 /* : CString */; val* var615 /* : String */; -char* var616 /* : NativeString */; -val* var617 /* : String */; -val* var618 /* : String */; -val* var619 /* : String */; -val* var620 /* : String */; -val* var622 /* : NativeArray[String] */; -static val* varonce621; -static val* varonce623; -val* var624 /* : String */; -char* var625 /* : NativeString */; -val* var626 /* : String */; -static val* varonce627; +val* var616 /* : nullable Int */; +val* var617 /* : nullable Int */; +val* var618 /* : nullable Bool */; +val* var619 /* : nullable Bool */; +static val* varonce620; +val* var621 /* : String */; +char* var622 /* : CString */; +val* var623 /* : String */; +val* var624 /* : nullable Int */; +val* var625 /* : nullable Int */; +val* var626 /* : nullable Bool */; +val* var627 /* : nullable Bool */; val* var628 /* : String */; -char* var629 /* : NativeString */; -val* var630 /* : String */; -val* var631 /* : String */; -val* var632 /* : String */; -static val* varonce633; -val* var634 /* : String */; -char* var635 /* : NativeString */; -val* var636 /* : String */; -val* var637 /* : String */; -val* var639 /* : String */; +val* var629 /* : String */; +val* var631 /* : NativeArray[String] */; +static val* varonce630; +static val* varonce632; +val* var633 /* : String */; +char* var634 /* : CString */; +val* var635 /* : String */; +val* var636 /* : nullable Int */; +val* var637 /* : nullable Int */; +val* var638 /* : nullable Bool */; +val* var639 /* : nullable Bool */; static val* varonce640; val* var641 /* : String */; -char* var642 /* : NativeString */; +char* var642 /* : CString */; val* var643 /* : String */; -short int var644 /* : Bool */; -val* var645 /* : CodeWriter */; -val* var647 /* : CodeWriter */; -val* var649 /* : NativeArray[String] */; -static val* varonce648; +val* var644 /* : nullable Int */; +val* var645 /* : nullable Int */; +val* var646 /* : nullable Bool */; +val* var647 /* : nullable Bool */; +val* var648 /* : String */; +val* var649 /* : String */; +val* var651 /* : NativeArray[String] */; static val* varonce650; -val* var651 /* : String */; -char* var652 /* : NativeString */; +static val* varonce652; val* var653 /* : String */; -static val* varonce654; +char* var654 /* : CString */; val* var655 /* : String */; -char* var656 /* : NativeString */; -val* var657 /* : String */; -val* var658 /* : String */; -val* var659 /* : CodeWriter */; -val* var661 /* : CodeWriter */; -static val* varonce662; +val* var656 /* : nullable Int */; +val* var657 /* : nullable Int */; +val* var658 /* : nullable Bool */; +val* var659 /* : nullable Bool */; +static val* varonce660; +val* var661 /* : String */; +char* var662 /* : CString */; val* var663 /* : String */; -char* var664 /* : NativeString */; -val* var665 /* : String */; -val* var666 /* : CodeWriter */; -val* var668 /* : CodeWriter */; -static val* varonce669; -val* var670 /* : String */; -char* var671 /* : NativeString */; -val* var672 /* : String */; -val* var673 /* : CodeWriter */; -val* var675 /* : CodeWriter */; -static val* varonce676; +val* var664 /* : nullable Int */; +val* var665 /* : nullable Int */; +val* var666 /* : nullable Bool */; +val* var667 /* : nullable Bool */; +static val* varonce668; +val* var669 /* : String */; +char* var670 /* : CString */; +val* var671 /* : String */; +val* var672 /* : nullable Int */; +val* var673 /* : nullable Int */; +val* var674 /* : nullable Bool */; +val* var675 /* : nullable Bool */; +val* var676 /* : String */; val* var677 /* : String */; -char* var678 /* : NativeString */; -val* var679 /* : String */; -val* var680 /* : CodeWriter */; -val* var682 /* : CodeWriter */; -static val* varonce683; +val* var678 /* : String */; +val* var680 /* : NativeArray[String] */; +static val* varonce679; +static val* varonce681; +val* var682 /* : String */; +char* var683 /* : CString */; val* var684 /* : String */; -char* var685 /* : NativeString */; -val* var686 /* : String */; -val* var688 /* : NativeArray[String] */; -static val* varonce687; +val* var685 /* : nullable Int */; +val* var686 /* : nullable Int */; +val* var687 /* : nullable Bool */; +val* var688 /* : nullable Bool */; static val* varonce689; val* var690 /* : String */; -char* var691 /* : NativeString */; +char* var691 /* : CString */; val* var692 /* : String */; -val* var693 /* : String */; -val* var695 /* : NativeArray[String] */; -static val* varonce694; -static val* varonce696; -val* var697 /* : String */; -char* var698 /* : NativeString */; -val* var699 /* : String */; -static val* varonce700; -val* var701 /* : String */; -char* var702 /* : NativeString */; -val* var703 /* : String */; -val* var704 /* : String */; +val* var693 /* : nullable Int */; +val* var694 /* : nullable Int */; +val* var695 /* : nullable Bool */; +val* var696 /* : nullable Bool */; +static val* varonce697; +val* var698 /* : String */; +char* var699 /* : CString */; +val* var700 /* : String */; +val* var701 /* : nullable Int */; +val* var702 /* : nullable Int */; +val* var703 /* : nullable Bool */; +val* var704 /* : nullable Bool */; val* var705 /* : String */; val* var707 /* : NativeArray[String] */; static val* varonce706; static val* varonce708; val* var709 /* : String */; -char* var710 /* : NativeString */; +char* var710 /* : CString */; val* var711 /* : String */; -static val* varonce712; -val* var713 /* : String */; -char* var714 /* : NativeString */; -val* var715 /* : String */; +val* var712 /* : nullable Int */; +val* var713 /* : nullable Int */; +val* var714 /* : nullable Bool */; +val* var715 /* : nullable Bool */; val* var716 /* : String */; -val* var717 /* : String */; -val* var719 /* : NativeArray[String] */; -static val* varonce718; -static val* varonce720; -val* var721 /* : String */; -char* var722 /* : NativeString */; -val* var723 /* : String */; -static val* varonce724; -val* var725 /* : String */; -char* var726 /* : NativeString */; -val* var727 /* : String */; +val* var718 /* : NativeArray[String] */; +static val* varonce717; +static val* varonce719; +val* var720 /* : String */; +char* var721 /* : CString */; +val* var722 /* : String */; +val* var723 /* : nullable Int */; +val* var724 /* : nullable Int */; +val* var725 /* : nullable Bool */; +val* var726 /* : nullable Bool */; +static val* varonce727; val* var728 /* : String */; -val* var729 /* : String */; -static val* varonce730; -val* var731 /* : String */; -char* var732 /* : NativeString */; -val* var733 /* : String */; -val* var734 /* : String */; -val* var_res735 /* var res: String */; -val* var737 /* : NativeArray[String] */; +char* var729 /* : CString */; +val* var730 /* : String */; +val* var731 /* : nullable Int */; +val* var732 /* : nullable Int */; +val* var733 /* : nullable Bool */; +val* var734 /* : nullable Bool */; +val* var735 /* : String */; static val* varonce736; -static val* varonce738; +val* var737 /* : String */; +char* var738 /* : CString */; val* var739 /* : String */; -char* var740 /* : NativeString */; -val* var741 /* : String */; -static val* varonce742; -val* var743 /* : String */; -char* var744 /* : NativeString */; +val* var740 /* : nullable Int */; +val* var741 /* : nullable Int */; +val* var742 /* : nullable Bool */; +val* var743 /* : nullable Bool */; +static val* varonce744; val* var745 /* : String */; -static val* varonce746; +char* var746 /* : CString */; val* var747 /* : String */; -char* var748 /* : NativeString */; -val* var749 /* : String */; -val* var750 /* : String */; -val* var751 /* : Array[MType] */; -val* var752 /* : nullable Object */; -val* var_mtype_elt /* var mtype_elt: MType */; -val* var754 /* : NativeArray[String] */; -static val* varonce753; -static val* varonce755; -val* var756 /* : String */; -char* var757 /* : NativeString */; -val* var758 /* : String */; -static val* varonce759; -val* var760 /* : String */; -char* var761 /* : NativeString */; -val* var762 /* : String */; -static val* varonce763; -val* var764 /* : String */; -char* var765 /* : NativeString */; -val* var766 /* : String */; +val* var748 /* : nullable Int */; +val* var749 /* : nullable Int */; +val* var750 /* : nullable Bool */; +val* var751 /* : nullable Bool */; +static val* varonce752; +val* var753 /* : String */; +char* var754 /* : CString */; +val* var755 /* : String */; +val* var756 /* : nullable Int */; +val* var757 /* : nullable Int */; +val* var758 /* : nullable Bool */; +val* var759 /* : nullable Bool */; +val* var760 /* : MClass */; +val* var762 /* : MClass */; +val* var763 /* : String */; +val* var765 /* : String */; +static val* varonce766; val* var767 /* : String */; -val* var768 /* : String */; -val* var770 /* : NativeArray[String] */; -static val* varonce769; -static val* varonce771; -val* var772 /* : String */; -char* var773 /* : NativeString */; -val* var774 /* : String */; -val* var775 /* : String */; -val* var777 /* : NativeArray[String] */; -static val* varonce776; -static val* varonce778; -val* var779 /* : String */; -char* var780 /* : NativeString */; -val* var781 /* : String */; -static val* varonce782; -val* var783 /* : String */; -char* var784 /* : NativeString */; -val* var785 /* : String */; -val* var786 /* : String */; -val* var788 /* : NativeArray[String] */; -static val* varonce787; -static val* varonce789; -val* var790 /* : String */; -char* var791 /* : NativeString */; -val* var792 /* : String */; +char* var768 /* : CString */; +val* var769 /* : String */; +val* var770 /* : nullable Int */; +val* var771 /* : nullable Int */; +val* var772 /* : nullable Bool */; +val* var773 /* : nullable Bool */; +short int var774 /* : Bool */; +short int var776 /* : Bool */; +short int var777 /* : Bool */; +val* var778 /* : SeparateCompilerVisitor */; +val* var780 /* : NativeArray[String] */; +static val* varonce779; +static val* varonce781; +val* var782 /* : String */; +char* var783 /* : CString */; +val* var784 /* : String */; +val* var785 /* : nullable Int */; +val* var786 /* : nullable Int */; +val* var787 /* : nullable Bool */; +val* var788 /* : nullable Bool */; +val* var789 /* : String */; +val* var791 /* : NativeArray[String] */; +static val* varonce790; +static val* varonce792; val* var793 /* : String */; -val* var795 /* : NativeArray[String] */; -static val* varonce794; -static val* varonce796; -val* var797 /* : String */; -char* var798 /* : NativeString */; -val* var799 /* : String */; +char* var794 /* : CString */; +val* var795 /* : String */; +val* var796 /* : nullable Int */; +val* var797 /* : nullable Int */; +val* var798 /* : nullable Bool */; +val* var799 /* : nullable Bool */; static val* varonce800; val* var801 /* : String */; -char* var802 /* : NativeString */; +char* var802 /* : CString */; val* var803 /* : String */; -val* var804 /* : String */; -static val* varonce805; -val* var806 /* : String */; -char* var807 /* : NativeString */; +val* var804 /* : nullable Int */; +val* var805 /* : nullable Int */; +val* var806 /* : nullable Bool */; +val* var807 /* : nullable Bool */; val* var808 /* : String */; -short int var809 /* : Bool */; -val* var810 /* : MClass */; -val* var812 /* : MClass */; -val* var813 /* : MClassKind */; -val* var815 /* : MClassKind */; -val* var816 /* : Sys */; -val* var817 /* : MClassKind */; -short int var818 /* : Bool */; -short int var820 /* : Bool */; -short int var822 /* : Bool */; -short int var_823 /* var : Bool */; -val* var824 /* : MClass */; -val* var826 /* : MClass */; -val* var827 /* : String */; +val* var809 /* : String */; +val* var811 /* : NativeArray[String] */; +static val* varonce810; +static val* varonce812; +val* var813 /* : String */; +char* var814 /* : CString */; +val* var815 /* : String */; +val* var816 /* : nullable Int */; +val* var817 /* : nullable Int */; +val* var818 /* : nullable Bool */; +val* var819 /* : nullable Bool */; +static val* varonce820; +val* var821 /* : String */; +char* var822 /* : CString */; +val* var823 /* : String */; +val* var824 /* : nullable Int */; +val* var825 /* : nullable Int */; +val* var826 /* : nullable Bool */; +val* var827 /* : nullable Bool */; +val* var828 /* : String */; val* var829 /* : String */; +val* var831 /* : NativeArray[String] */; static val* varonce830; -val* var831 /* : String */; -char* var832 /* : NativeString */; +static val* varonce832; val* var833 /* : String */; -short int var834 /* : Bool */; -short int var836 /* : Bool */; -short int var837 /* : Bool */; -val* var838 /* : MModule */; -val* var840 /* : MModule */; -val* var841 /* : MClassType */; -val* var_pointer_type /* var pointer_type: MClassType */; -val* var843 /* : NativeArray[String] */; -static val* varonce842; -static val* varonce844; -val* var845 /* : String */; -char* var846 /* : NativeString */; -val* var847 /* : String */; +char* var834 /* : CString */; +val* var835 /* : String */; +val* var836 /* : nullable Int */; +val* var837 /* : nullable Int */; +val* var838 /* : nullable Bool */; +val* var839 /* : nullable Bool */; +static val* varonce840; +val* var841 /* : String */; +char* var842 /* : CString */; +val* var843 /* : String */; +val* var844 /* : nullable Int */; +val* var845 /* : nullable Int */; +val* var846 /* : nullable Bool */; +val* var847 /* : nullable Bool */; val* var848 /* : String */; -val* var850 /* : NativeArray[String] */; -static val* varonce849; -static val* varonce851; -val* var852 /* : String */; -char* var853 /* : NativeString */; -val* var854 /* : String */; -static val* varonce855; -val* var856 /* : String */; -char* var857 /* : NativeString */; -val* var858 /* : String */; -val* var859 /* : String */; +val* var849 /* : String */; +val* var851 /* : NativeArray[String] */; +static val* varonce850; +static val* varonce852; +val* var853 /* : String */; +char* var854 /* : CString */; +val* var855 /* : String */; +val* var856 /* : nullable Int */; +val* var857 /* : nullable Int */; +val* var858 /* : nullable Bool */; +val* var859 /* : nullable Bool */; val* var860 /* : String */; -val* var862 /* : NativeArray[String] */; -static val* varonce861; -static val* varonce863; -val* var864 /* : String */; -char* var865 /* : NativeString */; -val* var866 /* : String */; -static val* varonce867; -val* var868 /* : String */; -char* var869 /* : NativeString */; -val* var870 /* : String */; -val* var871 /* : String */; -val* var872 /* : String */; -val* var874 /* : NativeArray[String] */; -static val* varonce873; -static val* varonce875; -val* var876 /* : String */; -char* var877 /* : NativeString */; -val* var878 /* : String */; -static val* varonce879; -val* var880 /* : String */; -char* var881 /* : NativeString */; -val* var882 /* : String */; +val* var861 /* : String */; +static val* varonce862; +val* var863 /* : String */; +char* var864 /* : CString */; +val* var865 /* : String */; +val* var866 /* : nullable Int */; +val* var867 /* : nullable Int */; +val* var868 /* : nullable Bool */; +val* var869 /* : nullable Bool */; +val* var870 /* : RuntimeVariable */; +val* var_res /* var res: RuntimeVariable */; +val* var873 /* : NativeArray[String] */; +static val* varonce872; +static val* varonce874; +val* var875 /* : String */; +char* var876 /* : CString */; +val* var877 /* : String */; +val* var878 /* : nullable Int */; +val* var879 /* : nullable Int */; +val* var880 /* : nullable Bool */; +val* var881 /* : nullable Bool */; +static val* varonce882; val* var883 /* : String */; -val* var884 /* : String */; -val* var886 /* : NativeArray[String] */; -static val* varonce885; -static val* varonce887; -val* var888 /* : String */; -char* var889 /* : NativeString */; +char* var884 /* : CString */; +val* var885 /* : String */; +val* var886 /* : nullable Int */; +val* var887 /* : nullable Int */; +val* var888 /* : nullable Bool */; +val* var889 /* : nullable Bool */; val* var890 /* : String */; val* var891 /* : String */; val* var892 /* : String */; +val* var894 /* : NativeArray[String] */; static val* varonce893; -val* var894 /* : String */; -char* var895 /* : NativeString */; +static val* varonce895; val* var896 /* : String */; -val* var897 /* : RuntimeVariable */; -val* var_res898 /* var res: RuntimeVariable */; -val* var901 /* : NativeArray[String] */; -static val* varonce900; -static val* varonce902; +char* var897 /* : CString */; +val* var898 /* : String */; +val* var899 /* : nullable Int */; +val* var900 /* : nullable Int */; +val* var901 /* : nullable Bool */; +val* var902 /* : nullable Bool */; val* var903 /* : String */; -char* var904 /* : NativeString */; -val* var905 /* : String */; +val* var905 /* : NativeArray[String] */; +static val* varonce904; static val* varonce906; val* var907 /* : String */; -char* var908 /* : NativeString */; +char* var908 /* : CString */; val* var909 /* : String */; -val* var910 /* : String */; -val* var911 /* : String */; -val* var912 /* : String */; -val* var914 /* : NativeArray[String] */; -static val* varonce913; -static val* varonce915; -val* var916 /* : String */; -char* var917 /* : NativeString */; -val* var918 /* : String */; -val* var919 /* : String */; -val* var921 /* : NativeArray[String] */; -static val* varonce920; -static val* varonce922; +val* var910 /* : nullable Int */; +val* var911 /* : nullable Int */; +val* var912 /* : nullable Bool */; +val* var913 /* : nullable Bool */; +static val* varonce914; +val* var915 /* : String */; +char* var916 /* : CString */; +val* var917 /* : String */; +val* var918 /* : nullable Int */; +val* var919 /* : nullable Int */; +val* var920 /* : nullable Bool */; +val* var921 /* : nullable Bool */; +val* var922 /* : String */; val* var923 /* : String */; -char* var924 /* : NativeString */; -val* var925 /* : String */; +val* var925 /* : NativeArray[String] */; +static val* varonce924; static val* varonce926; val* var927 /* : String */; -char* var928 /* : NativeString */; +char* var928 /* : CString */; val* var929 /* : String */; -val* var930 /* : String */; -val* var931 /* : String */; -val* var933 /* : NativeArray[String] */; -static val* varonce932; +val* var930 /* : nullable Int */; +val* var931 /* : nullable Int */; +val* var932 /* : nullable Bool */; +val* var933 /* : nullable Bool */; static val* varonce934; val* var935 /* : String */; -char* var936 /* : NativeString */; +char* var936 /* : CString */; val* var937 /* : String */; -static val* varonce938; -val* var939 /* : String */; -char* var940 /* : NativeString */; -val* var941 /* : String */; +val* var938 /* : nullable Int */; +val* var939 /* : nullable Int */; +val* var940 /* : nullable Bool */; +val* var941 /* : nullable Bool */; static val* varonce942; val* var943 /* : String */; -char* var944 /* : NativeString */; +char* var944 /* : CString */; val* var945 /* : String */; -val* var946 /* : String */; -val* var947 /* : String */; -val* var948 /* : String */; -val* var950 /* : NativeArray[String] */; -static val* varonce949; -static val* varonce951; +val* var946 /* : nullable Int */; +val* var947 /* : nullable Int */; +val* var948 /* : nullable Bool */; +val* var949 /* : nullable Bool */; +val* var950 /* : String */; +val* var951 /* : String */; val* var952 /* : String */; -char* var953 /* : NativeString */; -val* var954 /* : String */; +val* var954 /* : NativeArray[String] */; +static val* varonce953; static val* varonce955; val* var956 /* : String */; -char* var957 /* : NativeString */; +char* var957 /* : CString */; val* var958 /* : String */; -val* var959 /* : String */; -val* var960 /* : String */; -static val* varonce961; -val* var962 /* : String */; -char* var963 /* : NativeString */; +val* var959 /* : nullable Int */; +val* var960 /* : nullable Int */; +val* var961 /* : nullable Bool */; +val* var962 /* : nullable Bool */; +static val* varonce963; val* var964 /* : String */; -val* var966 /* : NativeArray[String] */; -static val* varonce965; -static val* varonce967; -val* var968 /* : String */; -char* var969 /* : NativeString */; -val* var970 /* : String */; +char* var965 /* : CString */; +val* var966 /* : String */; +val* var967 /* : nullable Int */; +val* var968 /* : nullable Int */; +val* var969 /* : nullable Bool */; +val* var970 /* : nullable Bool */; val* var971 /* : String */; -val* var973 /* : NativeArray[String] */; -static val* varonce972; -static val* varonce974; -val* var975 /* : String */; -char* var976 /* : NativeString */; -val* var977 /* : String */; -static val* varonce978; -val* var979 /* : String */; -char* var980 /* : NativeString */; +val* var972 /* : String */; +static val* varonce973; +val* var974 /* : String */; +char* var975 /* : CString */; +val* var976 /* : String */; +val* var977 /* : nullable Int */; +val* var978 /* : nullable Int */; +val* var979 /* : nullable Bool */; +val* var980 /* : nullable Bool */; val* var981 /* : String */; -val* var982 /* : String */; val* var983 /* : String */; -val* var985 /* : NativeArray[String] */; static val* varonce984; -static val* varonce986; +val* var985 /* : String */; +char* var986 /* : CString */; val* var987 /* : String */; -char* var988 /* : NativeString */; -val* var989 /* : String */; -static val* varonce990; -val* var991 /* : String */; -char* var992 /* : NativeString */; -val* var993 /* : String */; -val* var994 /* : String */; -val* var995 /* : String */; +val* var988 /* : nullable Int */; +val* var989 /* : nullable Int */; +val* var990 /* : nullable Bool */; +val* var991 /* : nullable Bool */; +short int var992 /* : Bool */; +val* var993 /* : CodeWriter */; +val* var995 /* : CodeWriter */; val* var997 /* : NativeArray[String] */; static val* varonce996; static val* varonce998; val* var999 /* : String */; -char* var1000 /* : NativeString */; +char* var1000 /* : CString */; val* var1001 /* : String */; -static val* varonce1002; -val* var1003 /* : String */; -char* var1004 /* : NativeString */; -val* var1005 /* : String */; -val* var1006 /* : String */; +val* var1002 /* : nullable Int */; +val* var1003 /* : nullable Int */; +val* var1004 /* : nullable Bool */; +val* var1005 /* : nullable Bool */; +static val* varonce1006; val* var1007 /* : String */; -val* var1009 /* : NativeArray[String] */; -static val* varonce1008; -static val* varonce1010; -val* var1011 /* : String */; -char* var1012 /* : NativeString */; -val* var1013 /* : String */; +char* var1008 /* : CString */; +val* var1009 /* : String */; +val* var1010 /* : nullable Int */; +val* var1011 /* : nullable Int */; +val* var1012 /* : nullable Bool */; +val* var1013 /* : nullable Bool */; val* var1014 /* : String */; -val* var1015 /* : String */; -static val* varonce1016; -val* var1017 /* : String */; -char* var1018 /* : NativeString */; +val* var1015 /* : CodeWriter */; +val* var1017 /* : CodeWriter */; +static val* varonce1018; val* var1019 /* : String */; -val* var1020 /* : RuntimeVariable */; -val* var_res1021 /* var res: RuntimeVariable */; -val* var1023 /* : Map[MClass, Array[nullable MProperty]] */; -val* var1025 /* : Map[MClass, Array[nullable MProperty]] */; -val* var1026 /* : nullable Object */; -val* var_attrs /* var attrs: nullable Array[nullable MProperty] */; -short int var1027 /* : Bool */; -short int var1028 /* : Bool */; -val* var1030 /* : NativeArray[String] */; +char* var1020 /* : CString */; +val* var1021 /* : String */; +val* var1022 /* : nullable Int */; +val* var1023 /* : nullable Int */; +val* var1024 /* : nullable Bool */; +val* var1025 /* : nullable Bool */; +val* var1026 /* : CodeWriter */; +val* var1028 /* : CodeWriter */; static val* varonce1029; -static val* varonce1031; +val* var1030 /* : String */; +char* var1031 /* : CString */; val* var1032 /* : String */; -char* var1033 /* : NativeString */; -val* var1034 /* : String */; -val* var1035 /* : String */; -val* var1036 /* : String */; -val* var1038 /* : NativeArray[String] */; -static val* varonce1037; -static val* varonce1039; -val* var1040 /* : String */; -char* var1041 /* : NativeString */; -val* var1042 /* : String */; -static val* varonce1043; -val* var1044 /* : String */; -char* var1045 /* : NativeString */; -val* var1046 /* : String */; -val* var1047 /* : String */; -long var1048 /* : Int */; -long var1050 /* : Int */; -val* var1051 /* : String */; +val* var1033 /* : nullable Int */; +val* var1034 /* : nullable Int */; +val* var1035 /* : nullable Bool */; +val* var1036 /* : nullable Bool */; +val* var1037 /* : CodeWriter */; +val* var1039 /* : CodeWriter */; +static val* varonce1040; +val* var1041 /* : String */; +char* var1042 /* : CString */; +val* var1043 /* : String */; +val* var1044 /* : nullable Int */; +val* var1045 /* : nullable Int */; +val* var1046 /* : nullable Bool */; +val* var1047 /* : nullable Bool */; +val* var1048 /* : CodeWriter */; +val* var1050 /* : CodeWriter */; +static val* varonce1051; val* var1052 /* : String */; -val* var1054 /* : NativeArray[String] */; -static val* varonce1053; -static val* varonce1055; -val* var1056 /* : String */; -char* var1057 /* : NativeString */; -val* var1058 /* : String */; -val* var1059 /* : String */; -val* var1061 /* : NativeArray[String] */; -static val* varonce1060; -static val* varonce1062; -val* var1063 /* : String */; -char* var1064 /* : NativeString */; -val* var1065 /* : String */; -static val* varonce1066; -val* var1067 /* : String */; -char* var1068 /* : NativeString */; +char* var1053 /* : CString */; +val* var1054 /* : String */; +val* var1055 /* : nullable Int */; +val* var1056 /* : nullable Int */; +val* var1057 /* : nullable Bool */; +val* var1058 /* : nullable Bool */; +val* var1060 /* : NativeArray[String] */; +static val* varonce1059; +static val* varonce1061; +val* var1062 /* : String */; +char* var1063 /* : CString */; +val* var1064 /* : String */; +val* var1065 /* : nullable Int */; +val* var1066 /* : nullable Int */; +val* var1067 /* : nullable Bool */; +val* var1068 /* : nullable Bool */; val* var1069 /* : String */; -val* var1070 /* : String */; -val* var1071 /* : String */; -short int var1072 /* : Bool */; -short int var1073 /* : Bool */; -short int var1075 /* : Bool */; -short int var1076 /* : Bool */; -val* var1078 /* : NativeArray[String] */; -static val* varonce1077; -static val* varonce1079; -val* var1080 /* : String */; -char* var1081 /* : NativeString */; -val* var1082 /* : String */; -static val* varonce1083; -val* var1084 /* : String */; -char* var1085 /* : NativeString */; -val* var1086 /* : String */; -val* var1087 /* : String */; +val* var1071 /* : NativeArray[String] */; +static val* varonce1070; +static val* varonce1072; +val* var1073 /* : String */; +char* var1074 /* : CString */; +val* var1075 /* : String */; +val* var1076 /* : nullable Int */; +val* var1077 /* : nullable Int */; +val* var1078 /* : nullable Bool */; +val* var1079 /* : nullable Bool */; +static val* varonce1080; +val* var1081 /* : String */; +char* var1082 /* : CString */; +val* var1083 /* : String */; +val* var1084 /* : nullable Int */; +val* var1085 /* : nullable Int */; +val* var1086 /* : nullable Bool */; +val* var1087 /* : nullable Bool */; val* var1088 /* : String */; -static val* varonce1089; -val* var1090 /* : String */; -char* var1091 /* : NativeString */; -val* var1092 /* : String */; +val* var1089 /* : String */; +val* var1091 /* : NativeArray[String] */; +static val* varonce1090; +static val* varonce1092; +val* var1093 /* : String */; +char* var1094 /* : CString */; +val* var1095 /* : String */; +val* var1096 /* : nullable Int */; +val* var1097 /* : nullable Int */; +val* var1098 /* : nullable Bool */; +val* var1099 /* : nullable Bool */; +static val* varonce1100; +val* var1101 /* : String */; +char* var1102 /* : CString */; +val* var1103 /* : String */; +val* var1104 /* : nullable Int */; +val* var1105 /* : nullable Int */; +val* var1106 /* : nullable Bool */; +val* var1107 /* : nullable Bool */; +val* var1108 /* : String */; +val* var1109 /* : String */; +val* var1111 /* : NativeArray[String] */; +static val* varonce1110; +static val* varonce1112; +val* var1113 /* : String */; +char* var1114 /* : CString */; +val* var1115 /* : String */; +val* var1116 /* : nullable Int */; +val* var1117 /* : nullable Int */; +val* var1118 /* : nullable Bool */; +val* var1119 /* : nullable Bool */; +static val* varonce1120; +val* var1121 /* : String */; +char* var1122 /* : CString */; +val* var1123 /* : String */; +val* var1124 /* : nullable Int */; +val* var1125 /* : nullable Int */; +val* var1126 /* : nullable Bool */; +val* var1127 /* : nullable Bool */; +val* var1128 /* : String */; +val* var1129 /* : String */; +static val* varonce1130; +val* var1131 /* : String */; +char* var1132 /* : CString */; +val* var1133 /* : String */; +val* var1134 /* : nullable Int */; +val* var1135 /* : nullable Int */; +val* var1136 /* : nullable Bool */; +val* var1137 /* : nullable Bool */; +val* var1138 /* : String */; +val* var_res1139 /* var res: String */; +val* var1141 /* : NativeArray[String] */; +static val* varonce1140; +static val* varonce1142; +val* var1143 /* : String */; +char* var1144 /* : CString */; +val* var1145 /* : String */; +val* var1146 /* : nullable Int */; +val* var1147 /* : nullable Int */; +val* var1148 /* : nullable Bool */; +val* var1149 /* : nullable Bool */; +static val* varonce1150; +val* var1151 /* : String */; +char* var1152 /* : CString */; +val* var1153 /* : String */; +val* var1154 /* : nullable Int */; +val* var1155 /* : nullable Int */; +val* var1156 /* : nullable Bool */; +val* var1157 /* : nullable Bool */; +static val* varonce1158; +val* var1159 /* : String */; +char* var1160 /* : CString */; +val* var1161 /* : String */; +val* var1162 /* : nullable Int */; +val* var1163 /* : nullable Int */; +val* var1164 /* : nullable Bool */; +val* var1165 /* : nullable Bool */; +val* var1166 /* : String */; +val* var1167 /* : Array[MType] */; +val* var1168 /* : nullable Object */; +val* var_mtype_elt /* var mtype_elt: MType */; +val* var1170 /* : NativeArray[String] */; +static val* varonce1169; +static val* varonce1171; +val* var1172 /* : String */; +char* var1173 /* : CString */; +val* var1174 /* : String */; +val* var1175 /* : nullable Int */; +val* var1176 /* : nullable Int */; +val* var1177 /* : nullable Bool */; +val* var1178 /* : nullable Bool */; +static val* varonce1179; +val* var1180 /* : String */; +char* var1181 /* : CString */; +val* var1182 /* : String */; +val* var1183 /* : nullable Int */; +val* var1184 /* : nullable Int */; +val* var1185 /* : nullable Bool */; +val* var1186 /* : nullable Bool */; +static val* varonce1187; +val* var1188 /* : String */; +char* var1189 /* : CString */; +val* var1190 /* : String */; +val* var1191 /* : nullable Int */; +val* var1192 /* : nullable Int */; +val* var1193 /* : nullable Bool */; +val* var1194 /* : nullable Bool */; +val* var1195 /* : String */; +val* var1196 /* : String */; +val* var1198 /* : NativeArray[String] */; +static val* varonce1197; +static val* varonce1199; +val* var1200 /* : String */; +char* var1201 /* : CString */; +val* var1202 /* : String */; +val* var1203 /* : nullable Int */; +val* var1204 /* : nullable Int */; +val* var1205 /* : nullable Bool */; +val* var1206 /* : nullable Bool */; +val* var1207 /* : String */; +val* var1209 /* : NativeArray[String] */; +static val* varonce1208; +static val* varonce1210; +val* var1211 /* : String */; +char* var1212 /* : CString */; +val* var1213 /* : String */; +val* var1214 /* : nullable Int */; +val* var1215 /* : nullable Int */; +val* var1216 /* : nullable Bool */; +val* var1217 /* : nullable Bool */; +static val* varonce1218; +val* var1219 /* : String */; +char* var1220 /* : CString */; +val* var1221 /* : String */; +val* var1222 /* : nullable Int */; +val* var1223 /* : nullable Int */; +val* var1224 /* : nullable Bool */; +val* var1225 /* : nullable Bool */; +val* var1226 /* : String */; +val* var1228 /* : NativeArray[String] */; +static val* varonce1227; +static val* varonce1229; +val* var1230 /* : String */; +char* var1231 /* : CString */; +val* var1232 /* : String */; +val* var1233 /* : nullable Int */; +val* var1234 /* : nullable Int */; +val* var1235 /* : nullable Bool */; +val* var1236 /* : nullable Bool */; +val* var1237 /* : String */; +val* var1239 /* : NativeArray[String] */; +static val* varonce1238; +static val* varonce1240; +val* var1241 /* : String */; +char* var1242 /* : CString */; +val* var1243 /* : String */; +val* var1244 /* : nullable Int */; +val* var1245 /* : nullable Int */; +val* var1246 /* : nullable Bool */; +val* var1247 /* : nullable Bool */; +static val* varonce1248; +val* var1249 /* : String */; +char* var1250 /* : CString */; +val* var1251 /* : String */; +val* var1252 /* : nullable Int */; +val* var1253 /* : nullable Int */; +val* var1254 /* : nullable Bool */; +val* var1255 /* : nullable Bool */; +val* var1256 /* : String */; +static val* varonce1257; +val* var1258 /* : String */; +char* var1259 /* : CString */; +val* var1260 /* : String */; +val* var1261 /* : nullable Int */; +val* var1262 /* : nullable Int */; +val* var1263 /* : nullable Bool */; +val* var1264 /* : nullable Bool */; +short int var1265 /* : Bool */; +val* var1266 /* : MClass */; +val* var1268 /* : MClass */; +val* var1269 /* : MClassKind */; +val* var1271 /* : MClassKind */; +val* var1272 /* : Sys */; +val* var1273 /* : MClassKind */; +short int var1274 /* : Bool */; +short int var1276 /* : Bool */; +short int var1278 /* : Bool */; +short int var_1279 /* var : Bool */; +val* var1280 /* : MClass */; +val* var1282 /* : MClass */; +val* var1283 /* : String */; +val* var1285 /* : String */; +static val* varonce1286; +val* var1287 /* : String */; +char* var1288 /* : CString */; +val* var1289 /* : String */; +val* var1290 /* : nullable Int */; +val* var1291 /* : nullable Int */; +val* var1292 /* : nullable Bool */; +val* var1293 /* : nullable Bool */; +short int var1294 /* : Bool */; +short int var1296 /* : Bool */; +short int var1297 /* : Bool */; +val* var1298 /* : MModule */; +val* var1300 /* : MModule */; +val* var1301 /* : MClassType */; +val* var_pointer_type /* var pointer_type: MClassType */; +val* var1303 /* : NativeArray[String] */; +static val* varonce1302; +static val* varonce1304; +val* var1305 /* : String */; +char* var1306 /* : CString */; +val* var1307 /* : String */; +val* var1308 /* : nullable Int */; +val* var1309 /* : nullable Int */; +val* var1310 /* : nullable Bool */; +val* var1311 /* : nullable Bool */; +val* var1312 /* : String */; +val* var1314 /* : NativeArray[String] */; +static val* varonce1313; +static val* varonce1315; +val* var1316 /* : String */; +char* var1317 /* : CString */; +val* var1318 /* : String */; +val* var1319 /* : nullable Int */; +val* var1320 /* : nullable Int */; +val* var1321 /* : nullable Bool */; +val* var1322 /* : nullable Bool */; +static val* varonce1323; +val* var1324 /* : String */; +char* var1325 /* : CString */; +val* var1326 /* : String */; +val* var1327 /* : nullable Int */; +val* var1328 /* : nullable Int */; +val* var1329 /* : nullable Bool */; +val* var1330 /* : nullable Bool */; +val* var1331 /* : String */; +val* var1332 /* : String */; +val* var1334 /* : NativeArray[String] */; +static val* varonce1333; +static val* varonce1335; +val* var1336 /* : String */; +char* var1337 /* : CString */; +val* var1338 /* : String */; +val* var1339 /* : nullable Int */; +val* var1340 /* : nullable Int */; +val* var1341 /* : nullable Bool */; +val* var1342 /* : nullable Bool */; +static val* varonce1343; +val* var1344 /* : String */; +char* var1345 /* : CString */; +val* var1346 /* : String */; +val* var1347 /* : nullable Int */; +val* var1348 /* : nullable Int */; +val* var1349 /* : nullable Bool */; +val* var1350 /* : nullable Bool */; +val* var1351 /* : String */; +val* var1352 /* : String */; +val* var1354 /* : NativeArray[String] */; +static val* varonce1353; +static val* varonce1355; +val* var1356 /* : String */; +char* var1357 /* : CString */; +val* var1358 /* : String */; +val* var1359 /* : nullable Int */; +val* var1360 /* : nullable Int */; +val* var1361 /* : nullable Bool */; +val* var1362 /* : nullable Bool */; +static val* varonce1363; +val* var1364 /* : String */; +char* var1365 /* : CString */; +val* var1366 /* : String */; +val* var1367 /* : nullable Int */; +val* var1368 /* : nullable Int */; +val* var1369 /* : nullable Bool */; +val* var1370 /* : nullable Bool */; +val* var1371 /* : String */; +val* var1372 /* : String */; +val* var1374 /* : NativeArray[String] */; +static val* varonce1373; +static val* varonce1375; +val* var1376 /* : String */; +char* var1377 /* : CString */; +val* var1378 /* : String */; +val* var1379 /* : nullable Int */; +val* var1380 /* : nullable Int */; +val* var1381 /* : nullable Bool */; +val* var1382 /* : nullable Bool */; +val* var1383 /* : String */; +val* var1384 /* : String */; +static val* varonce1385; +val* var1386 /* : String */; +char* var1387 /* : CString */; +val* var1388 /* : String */; +val* var1389 /* : nullable Int */; +val* var1390 /* : nullable Int */; +val* var1391 /* : nullable Bool */; +val* var1392 /* : nullable Bool */; +val* var1393 /* : RuntimeVariable */; +val* var_res1394 /* var res: RuntimeVariable */; +val* var1397 /* : NativeArray[String] */; +static val* varonce1396; +static val* varonce1398; +val* var1399 /* : String */; +char* var1400 /* : CString */; +val* var1401 /* : String */; +val* var1402 /* : nullable Int */; +val* var1403 /* : nullable Int */; +val* var1404 /* : nullable Bool */; +val* var1405 /* : nullable Bool */; +static val* varonce1406; +val* var1407 /* : String */; +char* var1408 /* : CString */; +val* var1409 /* : String */; +val* var1410 /* : nullable Int */; +val* var1411 /* : nullable Int */; +val* var1412 /* : nullable Bool */; +val* var1413 /* : nullable Bool */; +val* var1414 /* : String */; +val* var1415 /* : String */; +val* var1416 /* : String */; +val* var1418 /* : NativeArray[String] */; +static val* varonce1417; +static val* varonce1419; +val* var1420 /* : String */; +char* var1421 /* : CString */; +val* var1422 /* : String */; +val* var1423 /* : nullable Int */; +val* var1424 /* : nullable Int */; +val* var1425 /* : nullable Bool */; +val* var1426 /* : nullable Bool */; +val* var1427 /* : String */; +val* var1429 /* : NativeArray[String] */; +static val* varonce1428; +static val* varonce1430; +val* var1431 /* : String */; +char* var1432 /* : CString */; +val* var1433 /* : String */; +val* var1434 /* : nullable Int */; +val* var1435 /* : nullable Int */; +val* var1436 /* : nullable Bool */; +val* var1437 /* : nullable Bool */; +static val* varonce1438; +val* var1439 /* : String */; +char* var1440 /* : CString */; +val* var1441 /* : String */; +val* var1442 /* : nullable Int */; +val* var1443 /* : nullable Int */; +val* var1444 /* : nullable Bool */; +val* var1445 /* : nullable Bool */; +val* var1446 /* : String */; +val* var1447 /* : String */; +val* var1449 /* : NativeArray[String] */; +static val* varonce1448; +static val* varonce1450; +val* var1451 /* : String */; +char* var1452 /* : CString */; +val* var1453 /* : String */; +val* var1454 /* : nullable Int */; +val* var1455 /* : nullable Int */; +val* var1456 /* : nullable Bool */; +val* var1457 /* : nullable Bool */; +static val* varonce1458; +val* var1459 /* : String */; +char* var1460 /* : CString */; +val* var1461 /* : String */; +val* var1462 /* : nullable Int */; +val* var1463 /* : nullable Int */; +val* var1464 /* : nullable Bool */; +val* var1465 /* : nullable Bool */; +static val* varonce1466; +val* var1467 /* : String */; +char* var1468 /* : CString */; +val* var1469 /* : String */; +val* var1470 /* : nullable Int */; +val* var1471 /* : nullable Int */; +val* var1472 /* : nullable Bool */; +val* var1473 /* : nullable Bool */; +val* var1474 /* : String */; +val* var1475 /* : String */; +val* var1476 /* : String */; +val* var1478 /* : NativeArray[String] */; +static val* varonce1477; +static val* varonce1479; +val* var1480 /* : String */; +char* var1481 /* : CString */; +val* var1482 /* : String */; +val* var1483 /* : nullable Int */; +val* var1484 /* : nullable Int */; +val* var1485 /* : nullable Bool */; +val* var1486 /* : nullable Bool */; +static val* varonce1487; +val* var1488 /* : String */; +char* var1489 /* : CString */; +val* var1490 /* : String */; +val* var1491 /* : nullable Int */; +val* var1492 /* : nullable Int */; +val* var1493 /* : nullable Bool */; +val* var1494 /* : nullable Bool */; +val* var1495 /* : String */; +val* var1496 /* : String */; +static val* varonce1497; +val* var1498 /* : String */; +char* var1499 /* : CString */; +val* var1500 /* : String */; +val* var1501 /* : nullable Int */; +val* var1502 /* : nullable Int */; +val* var1503 /* : nullable Bool */; +val* var1504 /* : nullable Bool */; +val* var1506 /* : NativeArray[String] */; +static val* varonce1505; +static val* varonce1507; +val* var1508 /* : String */; +char* var1509 /* : CString */; +val* var1510 /* : String */; +val* var1511 /* : nullable Int */; +val* var1512 /* : nullable Int */; +val* var1513 /* : nullable Bool */; +val* var1514 /* : nullable Bool */; +val* var1515 /* : String */; +val* var1517 /* : NativeArray[String] */; +static val* varonce1516; +static val* varonce1518; +val* var1519 /* : String */; +char* var1520 /* : CString */; +val* var1521 /* : String */; +val* var1522 /* : nullable Int */; +val* var1523 /* : nullable Int */; +val* var1524 /* : nullable Bool */; +val* var1525 /* : nullable Bool */; +static val* varonce1526; +val* var1527 /* : String */; +char* var1528 /* : CString */; +val* var1529 /* : String */; +val* var1530 /* : nullable Int */; +val* var1531 /* : nullable Int */; +val* var1532 /* : nullable Bool */; +val* var1533 /* : nullable Bool */; +val* var1534 /* : String */; +val* var1535 /* : String */; +val* var1537 /* : NativeArray[String] */; +static val* varonce1536; +static val* varonce1538; +val* var1539 /* : String */; +char* var1540 /* : CString */; +val* var1541 /* : String */; +val* var1542 /* : nullable Int */; +val* var1543 /* : nullable Int */; +val* var1544 /* : nullable Bool */; +val* var1545 /* : nullable Bool */; +static val* varonce1546; +val* var1547 /* : String */; +char* var1548 /* : CString */; +val* var1549 /* : String */; +val* var1550 /* : nullable Int */; +val* var1551 /* : nullable Int */; +val* var1552 /* : nullable Bool */; +val* var1553 /* : nullable Bool */; +val* var1554 /* : String */; +val* var1555 /* : String */; +val* var1557 /* : NativeArray[String] */; +static val* varonce1556; +static val* varonce1558; +val* var1559 /* : String */; +char* var1560 /* : CString */; +val* var1561 /* : String */; +val* var1562 /* : nullable Int */; +val* var1563 /* : nullable Int */; +val* var1564 /* : nullable Bool */; +val* var1565 /* : nullable Bool */; +static val* varonce1566; +val* var1567 /* : String */; +char* var1568 /* : CString */; +val* var1569 /* : String */; +val* var1570 /* : nullable Int */; +val* var1571 /* : nullable Int */; +val* var1572 /* : nullable Bool */; +val* var1573 /* : nullable Bool */; +val* var1574 /* : String */; +val* var1575 /* : String */; +val* var1577 /* : NativeArray[String] */; +static val* varonce1576; +static val* varonce1578; +val* var1579 /* : String */; +char* var1580 /* : CString */; +val* var1581 /* : String */; +val* var1582 /* : nullable Int */; +val* var1583 /* : nullable Int */; +val* var1584 /* : nullable Bool */; +val* var1585 /* : nullable Bool */; +val* var1586 /* : String */; +val* var1587 /* : String */; +static val* varonce1588; +val* var1589 /* : String */; +char* var1590 /* : CString */; +val* var1591 /* : String */; +val* var1592 /* : nullable Int */; +val* var1593 /* : nullable Int */; +val* var1594 /* : nullable Bool */; +val* var1595 /* : nullable Bool */; +val* var1596 /* : RuntimeVariable */; +val* var_res1597 /* var res: RuntimeVariable */; +val* var1599 /* : Map[MClass, Array[nullable MProperty]] */; +val* var1601 /* : Map[MClass, Array[nullable MProperty]] */; +val* var1602 /* : nullable Object */; +val* var_attrs /* var attrs: nullable Array[nullable MProperty] */; +short int var1603 /* : Bool */; +short int var1604 /* : Bool */; +val* var1606 /* : NativeArray[String] */; +static val* varonce1605; +static val* varonce1607; +val* var1608 /* : String */; +char* var1609 /* : CString */; +val* var1610 /* : String */; +val* var1611 /* : nullable Int */; +val* var1612 /* : nullable Int */; +val* var1613 /* : nullable Bool */; +val* var1614 /* : nullable Bool */; +val* var1615 /* : String */; +val* var1616 /* : String */; +val* var1618 /* : NativeArray[String] */; +static val* varonce1617; +static val* varonce1619; +val* var1620 /* : String */; +char* var1621 /* : CString */; +val* var1622 /* : String */; +val* var1623 /* : nullable Int */; +val* var1624 /* : nullable Int */; +val* var1625 /* : nullable Bool */; +val* var1626 /* : nullable Bool */; +static val* varonce1627; +val* var1628 /* : String */; +char* var1629 /* : CString */; +val* var1630 /* : String */; +val* var1631 /* : nullable Int */; +val* var1632 /* : nullable Int */; +val* var1633 /* : nullable Bool */; +val* var1634 /* : nullable Bool */; +val* var1635 /* : String */; +long var1636 /* : Int */; +long var1638 /* : Int */; +val* var1639 /* : String */; +val* var1640 /* : String */; +val* var1642 /* : NativeArray[String] */; +static val* varonce1641; +static val* varonce1643; +val* var1644 /* : String */; +char* var1645 /* : CString */; +val* var1646 /* : String */; +val* var1647 /* : nullable Int */; +val* var1648 /* : nullable Int */; +val* var1649 /* : nullable Bool */; +val* var1650 /* : nullable Bool */; +val* var1651 /* : String */; +val* var1653 /* : NativeArray[String] */; +static val* varonce1652; +static val* varonce1654; +val* var1655 /* : String */; +char* var1656 /* : CString */; +val* var1657 /* : String */; +val* var1658 /* : nullable Int */; +val* var1659 /* : nullable Int */; +val* var1660 /* : nullable Bool */; +val* var1661 /* : nullable Bool */; +static val* varonce1662; +val* var1663 /* : String */; +char* var1664 /* : CString */; +val* var1665 /* : String */; +val* var1666 /* : nullable Int */; +val* var1667 /* : nullable Int */; +val* var1668 /* : nullable Bool */; +val* var1669 /* : nullable Bool */; +val* var1670 /* : String */; +val* var1671 /* : String */; +short int var1672 /* : Bool */; +short int var1673 /* : Bool */; +short int var1675 /* : Bool */; +short int var1676 /* : Bool */; +val* var1678 /* : NativeArray[String] */; +static val* varonce1677; +static val* varonce1679; +val* var1680 /* : String */; +char* var1681 /* : CString */; +val* var1682 /* : String */; +val* var1683 /* : nullable Int */; +val* var1684 /* : nullable Int */; +val* var1685 /* : nullable Bool */; +val* var1686 /* : nullable Bool */; +static val* varonce1687; +val* var1688 /* : String */; +char* var1689 /* : CString */; +val* var1690 /* : String */; +val* var1691 /* : nullable Int */; +val* var1692 /* : nullable Int */; +val* var1693 /* : nullable Bool */; +val* var1694 /* : nullable Bool */; +val* var1695 /* : String */; +val* var1696 /* : String */; +static val* varonce1697; +val* var1698 /* : String */; +char* var1699 /* : CString */; +val* var1700 /* : String */; +val* var1701 /* : nullable Int */; +val* var1702 /* : nullable Int */; +val* var1703 /* : nullable Bool */; +val* var1704 /* : nullable Bool */; var_mclass = p0; { -{ /* Inline model#MClass#intro (var_mclass) on */ +{ /* Inline model$MClass$intro (var_mclass) on */ var2 = var_mclass->attrs[COLOR_nitc__model__MClass___intro].val; /* _intro on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 483); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 496); fatal_exit(1); } var = var2; @@ -3111,11 +3933,14 @@ RET_LABEL1:(void)0; } } { -{ /* Inline model#MClassDef#bound_mtype (var) on */ +{ /* Inline model$MClassDef$bound_mtype (var) on */ var5 = var->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on */ if (unlikely(var5 == 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); } var3 = var5; @@ -3128,9 +3953,12 @@ var6 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass); } var_c_name = var6; { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#class_tables (self) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$class_tables (self) on */ var9 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_tables].val; /* _class_tables on */ if (unlikely(var9 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_tables"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 427); fatal_exit(1); @@ -3148,7 +3976,7 @@ var11 = nitc___nitc__SeparateErasureCompiler___nitc__abstract_compiler__Abstract } var_v = var11; { -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (self) on */ var14 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ var12 = var14; RET_LABEL13:(void)0; @@ -3165,7 +3993,7 @@ var20 = 0; /* is null */ var20 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_rta,((val*)NULL)) on */ +{ /* Inline kernel$Object$!= (var_rta,((val*)NULL)) on */ var_other = ((val*)NULL); { var23 = ((short int(*)(val* self, val* p0))(var_rta->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_rta, var_other); /* == on */ @@ -3184,9 +4012,12 @@ var18 = var_; var_25 = var18; if (var18){ { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_classes (var_rta) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_classes (var_rta) on */ var28 = var_rta->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_classes].val; /* _live_classes on */ if (unlikely(var28 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_classes"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 69); fatal_exit(1); @@ -3216,11 +4047,14 @@ var16 = var_31; var_34 = var16; if (var16){ { -{ /* Inline model#MClass#name (var_mclass) on */ +{ /* Inline model$MClass$name (var_mclass) on */ var37 = var_mclass->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ if (unlikely(var37 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 385); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 396); fatal_exit(1); } var35 = var37; @@ -3231,23 +4065,27 @@ if (likely(varonce!=NULL)) { var38 = varonce; } else { var39 = "NativeArray"; -var40 = core__flat___NativeString___to_s_full(var39, 11l, 11l); +var41 = (val*)(11l<<2|1); +var42 = (val*)(11l<<2|1); +var43 = (val*)((long)(0)<<2|3); +var44 = (val*)((long)(0)<<2|3); +var40 = core__flat___CString___to_s_unsafe(var39, var41, var42, var43, var44); var38 = var40; varonce = var38; } { -{ /* Inline kernel#Object#!= (var35,var38) on */ +{ /* Inline kernel$Object$!= (var35,var38) on */ var_other = var38; { -var43 = ((short int(*)(val* self, val* p0))(var35->class->vft[COLOR_core__kernel__Object___61d_61d]))(var35, var_other); /* == on */ +var47 = ((short int(*)(val* self, val* p0))(var35->class->vft[COLOR_core__kernel__Object___61d_61d]))(var35, var_other); /* == on */ } -var44 = !var43; -var41 = var44; -goto RET_LABEL42; -RET_LABEL42:(void)0; +var48 = !var47; +var45 = var48; +goto RET_LABEL46; +RET_LABEL46:(void)0; } } -var15 = var41; +var15 = var45; } else { var15 = var_34; } @@ -3255,3237 +4093,3929 @@ if (var15){ var_is_dead = 1; } else { } -if (unlikely(varonce45==NULL)) { -var46 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce47!=NULL)) { -var48 = varonce47; -} else { -var49 = "/* runtime class "; -var50 = core__flat___NativeString___to_s_full(var49, 17l, 17l); -var48 = var50; -varonce47 = var48; -} -((struct instance_core__NativeArray*)var46)->values[0]=var48; +if (unlikely(varonce49==NULL)) { +var50 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); if (likely(varonce51!=NULL)) { var52 = varonce51; } else { -var53 = " */"; -var54 = core__flat___NativeString___to_s_full(var53, 3l, 3l); +var53 = "/* runtime class "; +var55 = (val*)(17l<<2|1); +var56 = (val*)(17l<<2|1); +var57 = (val*)((long)(0)<<2|3); +var58 = (val*)((long)(0)<<2|3); +var54 = core__flat___CString___to_s_unsafe(var53, var55, var56, var57, var58); var52 = var54; varonce51 = var52; } -((struct instance_core__NativeArray*)var46)->values[2]=var52; +((struct instance_core__NativeArray*)var50)->values[0]=var52; +if (likely(varonce59!=NULL)) { +var60 = varonce59; +} else { +var61 = " */"; +var63 = (val*)(3l<<2|1); +var64 = (val*)(3l<<2|1); +var65 = (val*)((long)(0)<<2|3); +var66 = (val*)((long)(0)<<2|3); +var62 = core__flat___CString___to_s_unsafe(var61, var63, var64, var65, var66); +var60 = var62; +varonce59 = var60; +} +((struct instance_core__NativeArray*)var50)->values[2]=var60; } else { -var46 = varonce45; -varonce45 = NULL; +var50 = varonce49; +varonce49 = NULL; } -((struct instance_core__NativeArray*)var46)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var50)->values[1]=var_c_name; { -var55 = ((val*(*)(val* self))(var46->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var46); /* native_to_s on */ +var67 = ((val*(*)(val* self))(var50->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var50); /* native_to_s on */ } -varonce45 = var46; +varonce49 = var50; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var55); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var67); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce56==NULL)) { -var57 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce58!=NULL)) { -var59 = varonce58; +if (unlikely(varonce68==NULL)) { +var69 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce70!=NULL)) { +var71 = varonce70; } else { -var60 = "class_"; -var61 = core__flat___NativeString___to_s_full(var60, 6l, 6l); -var59 = var61; -varonce58 = var59; +var72 = "class_"; +var74 = (val*)(6l<<2|1); +var75 = (val*)(6l<<2|1); +var76 = (val*)((long)(0)<<2|3); +var77 = (val*)((long)(0)<<2|3); +var73 = core__flat___CString___to_s_unsafe(var72, var74, var75, var76, var77); +var71 = var73; +varonce70 = var71; } -((struct instance_core__NativeArray*)var57)->values[0]=var59; +((struct instance_core__NativeArray*)var69)->values[0]=var71; } else { -var57 = varonce56; -varonce56 = NULL; +var69 = varonce68; +varonce68 = NULL; } -((struct instance_core__NativeArray*)var57)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var69)->values[1]=var_c_name; { -var62 = ((val*(*)(val* self))(var57->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var57); /* native_to_s on */ +var78 = ((val*(*)(val* self))(var69->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var69); /* native_to_s on */ } -varonce56 = var57; -if (unlikely(varonce63==NULL)) { -var64 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce65!=NULL)) { -var66 = varonce65; +varonce68 = var69; +if (unlikely(varonce79==NULL)) { +var80 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce81!=NULL)) { +var82 = varonce81; } else { -var67 = "extern const struct class class_"; -var68 = core__flat___NativeString___to_s_full(var67, 32l, 32l); -var66 = var68; -varonce65 = var66; +var83 = "extern const struct class class_"; +var85 = (val*)(32l<<2|1); +var86 = (val*)(32l<<2|1); +var87 = (val*)((long)(0)<<2|3); +var88 = (val*)((long)(0)<<2|3); +var84 = core__flat___CString___to_s_unsafe(var83, var85, var86, var87, var88); +var82 = var84; +varonce81 = var82; } -((struct instance_core__NativeArray*)var64)->values[0]=var66; -if (likely(varonce69!=NULL)) { -var70 = varonce69; +((struct instance_core__NativeArray*)var80)->values[0]=var82; +if (likely(varonce89!=NULL)) { +var90 = varonce89; } else { -var71 = ";"; -var72 = core__flat___NativeString___to_s_full(var71, 1l, 1l); -var70 = var72; -varonce69 = var70; +var91 = ";"; +var93 = (val*)(1l<<2|1); +var94 = (val*)(1l<<2|1); +var95 = (val*)((long)(0)<<2|3); +var96 = (val*)((long)(0)<<2|3); +var92 = core__flat___CString___to_s_unsafe(var91, var93, var94, var95, var96); +var90 = var92; +varonce89 = var90; } -((struct instance_core__NativeArray*)var64)->values[2]=var70; +((struct instance_core__NativeArray*)var80)->values[2]=var90; } else { -var64 = varonce63; -varonce63 = NULL; +var80 = varonce79; +varonce79 = NULL; } -((struct instance_core__NativeArray*)var64)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var80)->values[1]=var_c_name; { -var73 = ((val*(*)(val* self))(var64->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var64); /* native_to_s on */ +var97 = ((val*(*)(val* self))(var80->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var80); /* native_to_s on */ } -varonce63 = var64; +varonce79 = var80; { -nitc___nitc__AbstractCompiler___provide_declaration(self, var62, var73); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var78, var97); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } -if (unlikely(varonce74==NULL)) { -var75 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce76!=NULL)) { -var77 = varonce76; +if (unlikely(varonce98==NULL)) { +var99 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce100!=NULL)) { +var101 = varonce100; } else { -var78 = "extern const struct type_table type_table_"; -var79 = core__flat___NativeString___to_s_full(var78, 42l, 42l); -var77 = var79; -varonce76 = var77; +var102 = "extern const struct type_table type_table_"; +var104 = (val*)(42l<<2|1); +var105 = (val*)(42l<<2|1); +var106 = (val*)((long)(0)<<2|3); +var107 = (val*)((long)(0)<<2|3); +var103 = core__flat___CString___to_s_unsafe(var102, var104, var105, var106, var107); +var101 = var103; +varonce100 = var101; } -((struct instance_core__NativeArray*)var75)->values[0]=var77; -if (likely(varonce80!=NULL)) { -var81 = varonce80; +((struct instance_core__NativeArray*)var99)->values[0]=var101; +if (likely(varonce108!=NULL)) { +var109 = varonce108; } else { -var82 = ";"; -var83 = core__flat___NativeString___to_s_full(var82, 1l, 1l); -var81 = var83; -varonce80 = var81; +var110 = ";"; +var112 = (val*)(1l<<2|1); +var113 = (val*)(1l<<2|1); +var114 = (val*)((long)(0)<<2|3); +var115 = (val*)((long)(0)<<2|3); +var111 = core__flat___CString___to_s_unsafe(var110, var112, var113, var114, var115); +var109 = var111; +varonce108 = var109; } -((struct instance_core__NativeArray*)var75)->values[2]=var81; +((struct instance_core__NativeArray*)var99)->values[2]=var109; } else { -var75 = varonce74; -varonce74 = NULL; +var99 = varonce98; +varonce98 = NULL; } -((struct instance_core__NativeArray*)var75)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var99)->values[1]=var_c_name; { -var84 = ((val*(*)(val* self))(var75->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var75); /* native_to_s on */ +var116 = ((val*(*)(val* self))(var99->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var99); /* native_to_s on */ } -varonce74 = var75; +varonce98 = var99; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var84); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var116); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce85==NULL)) { -var86 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce87!=NULL)) { -var88 = varonce87; +if (unlikely(varonce117==NULL)) { +var118 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce119!=NULL)) { +var120 = varonce119; } else { -var89 = "const struct class class_"; -var90 = core__flat___NativeString___to_s_full(var89, 25l, 25l); -var88 = var90; -varonce87 = var88; +var121 = "const struct class class_"; +var123 = (val*)(25l<<2|1); +var124 = (val*)(25l<<2|1); +var125 = (val*)((long)(0)<<2|3); +var126 = (val*)((long)(0)<<2|3); +var122 = core__flat___CString___to_s_unsafe(var121, var123, var124, var125, var126); +var120 = var122; +varonce119 = var120; } -((struct instance_core__NativeArray*)var86)->values[0]=var88; -if (likely(varonce91!=NULL)) { -var92 = varonce91; +((struct instance_core__NativeArray*)var118)->values[0]=var120; +if (likely(varonce127!=NULL)) { +var128 = varonce127; } else { -var93 = " = {"; -var94 = core__flat___NativeString___to_s_full(var93, 4l, 4l); -var92 = var94; -varonce91 = var92; +var129 = " = {"; +var131 = (val*)(4l<<2|1); +var132 = (val*)(4l<<2|1); +var133 = (val*)((long)(0)<<2|3); +var134 = (val*)((long)(0)<<2|3); +var130 = core__flat___CString___to_s_unsafe(var129, var131, var132, var133, var134); +var128 = var130; +varonce127 = var128; } -((struct instance_core__NativeArray*)var86)->values[2]=var92; +((struct instance_core__NativeArray*)var118)->values[2]=var128; } else { -var86 = varonce85; -varonce85 = NULL; +var118 = varonce117; +varonce117 = NULL; } -((struct instance_core__NativeArray*)var86)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var118)->values[1]=var_c_name; { -var95 = ((val*(*)(val* self))(var86->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var86); /* native_to_s on */ +var135 = ((val*(*)(val* self))(var118->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var118); /* native_to_s on */ } -varonce85 = var86; +varonce117 = var118; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var95); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var135); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce96==NULL)) { -var97 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce98!=NULL)) { -var99 = varonce98; +if (unlikely(varonce136==NULL)) { +var137 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce138!=NULL)) { +var139 = varonce138; } else { -var100 = ","; -var101 = core__flat___NativeString___to_s_full(var100, 1l, 1l); -var99 = var101; -varonce98 = var99; +var140 = ","; +var142 = (val*)(1l<<2|1); +var143 = (val*)(1l<<2|1); +var144 = (val*)((long)(0)<<2|3); +var145 = (val*)((long)(0)<<2|3); +var141 = core__flat___CString___to_s_unsafe(var140, var142, var143, var144, var145); +var139 = var141; +varonce138 = var139; } -((struct instance_core__NativeArray*)var97)->values[1]=var99; +((struct instance_core__NativeArray*)var137)->values[1]=var139; } else { -var97 = varonce96; -varonce96 = NULL; +var137 = varonce136; +varonce136 = NULL; } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#class_ids (self) on */ -var104 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_ids].val; /* _class_ids on */ -if (unlikely(var104 == NULL)) { +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$class_ids (self) on */ +var148 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_ids].val; /* _class_ids on */ +if (unlikely(var148 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_ids"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 84); fatal_exit(1); } -var102 = var104; -RET_LABEL103:(void)0; +var146 = var148; +RET_LABEL147:(void)0; } } { -var105 = ((val*(*)(val* self, val* p0))((((long)var102&3)?class_info[((long)var102&3)]:var102->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var102, var_mclass); /* [] on */ +var149 = ((val*(*)(val* self, val* p0))((((long)var146&3)?class_info[((long)var146&3)]:var146->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var146, var_mclass); /* [] on */ } -var107 = (long)(var105)>>2; -var106 = core__flat___Int___core__abstract_text__Object__to_s(var107); -((struct instance_core__NativeArray*)var97)->values[0]=var106; +var151 = (long)(var149)>>2; +var150 = core__flat___Int___core__abstract_text__Object__to_s(var151); +((struct instance_core__NativeArray*)var137)->values[0]=var150; { -var108 = ((val*(*)(val* self))(var97->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var97); /* native_to_s on */ +var152 = ((val*(*)(val* self))(var137->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var137); /* native_to_s on */ } -varonce96 = var97; +varonce136 = var137; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var108); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var152); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce109==NULL)) { -var110 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce111!=NULL)) { -var112 = varonce111; +if (unlikely(varonce153==NULL)) { +var154 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce155!=NULL)) { +var156 = varonce155; } else { -var113 = "\""; -var114 = core__flat___NativeString___to_s_full(var113, 1l, 1l); -var112 = var114; -varonce111 = var112; +var157 = "\""; +var159 = (val*)(1l<<2|1); +var160 = (val*)(1l<<2|1); +var161 = (val*)((long)(0)<<2|3); +var162 = (val*)((long)(0)<<2|3); +var158 = core__flat___CString___to_s_unsafe(var157, var159, var160, var161, var162); +var156 = var158; +varonce155 = var156; } -((struct instance_core__NativeArray*)var110)->values[0]=var112; -if (likely(varonce115!=NULL)) { -var116 = varonce115; +((struct instance_core__NativeArray*)var154)->values[0]=var156; +if (likely(varonce163!=NULL)) { +var164 = varonce163; } else { -var117 = "\", /* class_name_string */"; -var118 = core__flat___NativeString___to_s_full(var117, 26l, 26l); -var116 = var118; -varonce115 = var116; +var165 = "\", /* class_name_string */"; +var167 = (val*)(26l<<2|1); +var168 = (val*)(26l<<2|1); +var169 = (val*)((long)(0)<<2|3); +var170 = (val*)((long)(0)<<2|3); +var166 = core__flat___CString___to_s_unsafe(var165, var167, var168, var169, var170); +var164 = var166; +varonce163 = var164; } -((struct instance_core__NativeArray*)var110)->values[2]=var116; +((struct instance_core__NativeArray*)var154)->values[2]=var164; } else { -var110 = varonce109; -varonce109 = NULL; +var154 = varonce153; +varonce153 = NULL; } { -{ /* Inline model#MClass#name (var_mclass) on */ -var121 = var_mclass->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ -if (unlikely(var121 == NULL)) { +{ /* Inline model$MClass$name (var_mclass) on */ +var173 = var_mclass->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ +if (unlikely(var173 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 385); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 396); fatal_exit(1); } -var119 = var121; -RET_LABEL120:(void)0; +var171 = var173; +RET_LABEL172:(void)0; } } -((struct instance_core__NativeArray*)var110)->values[1]=var119; +((struct instance_core__NativeArray*)var154)->values[1]=var171; { -var122 = ((val*(*)(val* self))(var110->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var110); /* native_to_s on */ +var174 = ((val*(*)(val* self))(var154->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var154); /* native_to_s on */ } -varonce109 = var110; +varonce153 = var154; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var122); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var174); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce123==NULL)) { -var124 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce125!=NULL)) { -var126 = varonce125; +if (unlikely(varonce175==NULL)) { +var176 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce177!=NULL)) { +var178 = varonce177; } else { -var127 = ", /* box_kind */"; -var128 = core__flat___NativeString___to_s_full(var127, 16l, 16l); -var126 = var128; -varonce125 = var126; +var179 = ", /* box_kind */"; +var181 = (val*)(16l<<2|1); +var182 = (val*)(16l<<2|1); +var183 = (val*)((long)(0)<<2|3); +var184 = (val*)((long)(0)<<2|3); +var180 = core__flat___CString___to_s_unsafe(var179, var181, var182, var183, var184); +var178 = var180; +varonce177 = var178; } -((struct instance_core__NativeArray*)var124)->values[1]=var126; +((struct instance_core__NativeArray*)var176)->values[1]=var178; } else { -var124 = varonce123; -varonce123 = NULL; +var176 = varonce175; +varonce175 = NULL; } { -var129 = nitc___nitc__SeparateCompiler___box_kind_of(self, var_mclass); +var185 = nitc___nitc__SeparateCompiler___box_kind_of(self, var_mclass); } -var130 = core__flat___Int___core__abstract_text__Object__to_s(var129); -((struct instance_core__NativeArray*)var124)->values[0]=var130; +var186 = core__flat___Int___core__abstract_text__Object__to_s(var185); +((struct instance_core__NativeArray*)var176)->values[0]=var186; { -var131 = ((val*(*)(val* self))(var124->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var124); /* native_to_s on */ +var187 = ((val*(*)(val* self))(var176->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var176); /* native_to_s on */ } -varonce123 = var124; +varonce175 = var176; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var131); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var187); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce132==NULL)) { -var133 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce134!=NULL)) { -var135 = varonce134; +if (unlikely(varonce188==NULL)) { +var189 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce190!=NULL)) { +var191 = varonce190; } else { -var136 = ","; -var137 = core__flat___NativeString___to_s_full(var136, 1l, 1l); -var135 = var137; -varonce134 = var135; +var192 = ","; +var194 = (val*)(1l<<2|1); +var195 = (val*)(1l<<2|1); +var196 = (val*)((long)(0)<<2|3); +var197 = (val*)((long)(0)<<2|3); +var193 = core__flat___CString___to_s_unsafe(var192, var194, var195, var196, var197); +var191 = var193; +varonce190 = var191; } -((struct instance_core__NativeArray*)var133)->values[1]=var135; +((struct instance_core__NativeArray*)var189)->values[1]=var191; } else { -var133 = varonce132; -varonce132 = NULL; +var189 = varonce188; +varonce188 = NULL; } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#class_colors (self) on */ -var140 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_colors].val; /* _class_colors on */ -if (unlikely(var140 == NULL)) { +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$class_colors (self) on */ +var200 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_colors].val; /* _class_colors on */ +if (unlikely(var200 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 85); fatal_exit(1); } -var138 = var140; -RET_LABEL139:(void)0; +var198 = var200; +RET_LABEL199:(void)0; } } { -var141 = ((val*(*)(val* self, val* p0))((((long)var138&3)?class_info[((long)var138&3)]:var138->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var138, var_mclass); /* [] on */ +var201 = ((val*(*)(val* self, val* p0))((((long)var198&3)?class_info[((long)var198&3)]:var198->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var198, var_mclass); /* [] on */ } -var143 = (long)(var141)>>2; -var142 = core__flat___Int___core__abstract_text__Object__to_s(var143); -((struct instance_core__NativeArray*)var133)->values[0]=var142; +var203 = (long)(var201)>>2; +var202 = core__flat___Int___core__abstract_text__Object__to_s(var203); +((struct instance_core__NativeArray*)var189)->values[0]=var202; { -var144 = ((val*(*)(val* self))(var133->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var133); /* native_to_s on */ +var204 = ((val*(*)(val* self))(var189->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var189); /* native_to_s on */ } -varonce132 = var133; +varonce188 = var189; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var144); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var204); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -var145 = !var_is_dead; -if (var145){ +var205 = !var_is_dead; +if (var205){ { -var146 = nitc___nitc__SeparateErasureCompiler___build_class_vts_table(self, var_mclass); +var206 = nitc___nitc__SeparateErasureCompiler___build_class_vts_table(self, var_mclass); } -if (var146){ -if (unlikely(varonce147==NULL)) { -var148 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce149!=NULL)) { -var150 = varonce149; +if (var206){ +if (unlikely(varonce207==NULL)) { +var208 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce209!=NULL)) { +var210 = varonce209; } else { -var151 = "vts_table_"; -var152 = core__flat___NativeString___to_s_full(var151, 10l, 10l); -var150 = var152; -varonce149 = var150; +var211 = "vts_table_"; +var213 = (val*)(10l<<2|1); +var214 = (val*)(10l<<2|1); +var215 = (val*)((long)(0)<<2|3); +var216 = (val*)((long)(0)<<2|3); +var212 = core__flat___CString___to_s_unsafe(var211, var213, var214, var215, var216); +var210 = var212; +varonce209 = var210; } -((struct instance_core__NativeArray*)var148)->values[0]=var150; +((struct instance_core__NativeArray*)var208)->values[0]=var210; } else { -var148 = varonce147; -varonce147 = NULL; +var208 = varonce207; +varonce207 = NULL; } -((struct instance_core__NativeArray*)var148)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var208)->values[1]=var_c_name; { -var153 = ((val*(*)(val* self))(var148->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var148); /* native_to_s on */ +var217 = ((val*(*)(val* self))(var208->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var208); /* native_to_s on */ } -varonce147 = var148; +varonce207 = var208; { -nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var153); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on */ +nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var217); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on */ } -if (unlikely(varonce154==NULL)) { -var155 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce156!=NULL)) { -var157 = varonce156; +if (unlikely(varonce218==NULL)) { +var219 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce220!=NULL)) { +var221 = varonce220; } else { -var158 = "&vts_table_"; -var159 = core__flat___NativeString___to_s_full(var158, 11l, 11l); -var157 = var159; -varonce156 = var157; +var222 = "&vts_table_"; +var224 = (val*)(11l<<2|1); +var225 = (val*)(11l<<2|1); +var226 = (val*)((long)(0)<<2|3); +var227 = (val*)((long)(0)<<2|3); +var223 = core__flat___CString___to_s_unsafe(var222, var224, var225, var226, var227); +var221 = var223; +varonce220 = var221; } -((struct instance_core__NativeArray*)var155)->values[0]=var157; -if (likely(varonce160!=NULL)) { -var161 = varonce160; +((struct instance_core__NativeArray*)var219)->values[0]=var221; +if (likely(varonce228!=NULL)) { +var229 = varonce228; } else { -var162 = ","; -var163 = core__flat___NativeString___to_s_full(var162, 1l, 1l); -var161 = var163; -varonce160 = var161; +var230 = ","; +var232 = (val*)(1l<<2|1); +var233 = (val*)(1l<<2|1); +var234 = (val*)((long)(0)<<2|3); +var235 = (val*)((long)(0)<<2|3); +var231 = core__flat___CString___to_s_unsafe(var230, var232, var233, var234, var235); +var229 = var231; +varonce228 = var229; } -((struct instance_core__NativeArray*)var155)->values[2]=var161; +((struct instance_core__NativeArray*)var219)->values[2]=var229; } else { -var155 = varonce154; -varonce154 = NULL; +var219 = varonce218; +varonce218 = NULL; } -((struct instance_core__NativeArray*)var155)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var219)->values[1]=var_c_name; { -var164 = ((val*(*)(val* self))(var155->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var155); /* native_to_s on */ +var236 = ((val*(*)(val* self))(var219->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var219); /* native_to_s on */ } -varonce154 = var155; +varonce218 = var219; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var164); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var236); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } } else { -if (likely(varonce165!=NULL)) { -var166 = varonce165; +if (likely(varonce237!=NULL)) { +var238 = varonce237; } else { -var167 = "NULL,"; -var168 = core__flat___NativeString___to_s_full(var167, 5l, 5l); -var166 = var168; -varonce165 = var166; +var239 = "NULL,"; +var241 = (val*)(5l<<2|1); +var242 = (val*)(5l<<2|1); +var243 = (val*)((long)(0)<<2|3); +var244 = (val*)((long)(0)<<2|3); +var240 = core__flat___CString___to_s_unsafe(var239, var241, var242, var243, var244); +var238 = var240; +varonce237 = var238; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var166); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var238); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } } -if (unlikely(varonce169==NULL)) { -var170 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce171!=NULL)) { -var172 = varonce171; +if (unlikely(varonce245==NULL)) { +var246 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce247!=NULL)) { +var248 = varonce247; } else { -var173 = "&type_table_"; -var174 = core__flat___NativeString___to_s_full(var173, 12l, 12l); -var172 = var174; -varonce171 = var172; +var249 = "&type_table_"; +var251 = (val*)(12l<<2|1); +var252 = (val*)(12l<<2|1); +var253 = (val*)((long)(0)<<2|3); +var254 = (val*)((long)(0)<<2|3); +var250 = core__flat___CString___to_s_unsafe(var249, var251, var252, var253, var254); +var248 = var250; +varonce247 = var248; } -((struct instance_core__NativeArray*)var170)->values[0]=var172; -if (likely(varonce175!=NULL)) { -var176 = varonce175; +((struct instance_core__NativeArray*)var246)->values[0]=var248; +if (likely(varonce255!=NULL)) { +var256 = varonce255; } else { -var177 = ","; -var178 = core__flat___NativeString___to_s_full(var177, 1l, 1l); -var176 = var178; -varonce175 = var176; +var257 = ","; +var259 = (val*)(1l<<2|1); +var260 = (val*)(1l<<2|1); +var261 = (val*)((long)(0)<<2|3); +var262 = (val*)((long)(0)<<2|3); +var258 = core__flat___CString___to_s_unsafe(var257, var259, var260, var261, var262); +var256 = var258; +varonce255 = var256; } -((struct instance_core__NativeArray*)var170)->values[2]=var176; +((struct instance_core__NativeArray*)var246)->values[2]=var256; } else { -var170 = varonce169; -varonce169 = NULL; +var246 = varonce245; +varonce245 = NULL; } -((struct instance_core__NativeArray*)var170)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var246)->values[1]=var_c_name; { -var179 = ((val*(*)(val* self))(var170->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var170); /* native_to_s on */ +var263 = ((val*(*)(val* self))(var246->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var246); /* native_to_s on */ } -varonce169 = var170; +varonce245 = var246; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var179); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var263); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (likely(varonce180!=NULL)) { -var181 = varonce180; +if (likely(varonce264!=NULL)) { +var265 = varonce264; } else { -var182 = "{"; -var183 = core__flat___NativeString___to_s_full(var182, 1l, 1l); -var181 = var183; -varonce180 = var181; +var266 = "{"; +var268 = (val*)(1l<<2|1); +var269 = (val*)(1l<<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; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var181); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var265); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } { -{ /* Inline separate_compiler#SeparateCompiler#method_tables (self) on */ -var186 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___method_tables].val; /* _method_tables on */ -if (unlikely(var186 == NULL)) { +{ /* Inline separate_compiler$SeparateCompiler$method_tables (self) on */ +var274 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___method_tables].val; /* _method_tables on */ +if (unlikely(var274 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _method_tables"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1067); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1073); fatal_exit(1); } -var184 = var186; -RET_LABEL185:(void)0; +var272 = var274; +RET_LABEL273:(void)0; } } { -var187 = ((val*(*)(val* self, val* p0))((((long)var184&3)?class_info[((long)var184&3)]:var184->class)->vft[COLOR_core__abstract_collection__MapRead__get_or_null]))(var184, var_mclass); /* get_or_null on */ +var275 = ((val*(*)(val* self, val* p0))((((long)var272&3)?class_info[((long)var272&3)]:var272->class)->vft[COLOR_core__abstract_collection__MapRead__get_or_null]))(var272, var_mclass); /* get_or_null on */ } -var_vft = var187; +var_vft = var275; if (var_vft == NULL) { -var188 = 0; /* is null */ +var276 = 0; /* is null */ } else { -var188 = 1; /* arg is null and recv is not */ +var276 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_vft,((val*)NULL)) on */ +{ /* Inline kernel$Object$!= (var_vft,((val*)NULL)) on */ var_other = ((val*)NULL); { -var191 = ((short int(*)(val* self, val* p0))(var_vft->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_vft, var_other); /* == on */ +var279 = ((short int(*)(val* self, val* p0))(var_vft->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_vft, var_other); /* == on */ } -var192 = !var191; -var189 = var192; -goto RET_LABEL190; -RET_LABEL190:(void)0; +var280 = !var279; +var277 = var280; +goto RET_LABEL278; +RET_LABEL278:(void)0; } -var188 = var189; +var276 = var277; } -if (var188){ +if (var276){ var_i = 0l; { -{ /* Inline array#AbstractArrayRead#length (var_vft) on */ -var195 = var_vft->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ -var193 = var195; -RET_LABEL194:(void)0; +{ /* Inline array$AbstractArrayRead$length (var_vft) on */ +var283 = var_vft->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ +var281 = var283; +RET_LABEL282:(void)0; } } -var_196 = var193; +var_284 = var281; for(;;) { { -{ /* Inline kernel#Int#< (var_i,var_196) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var199 = 1; /* easy isa OTHER*/ -if (unlikely(!var199)) { +{ /* Inline kernel$Int$< (var_i,var_284) on */ +/* Covariant cast for argument 0 (i) isa OTHER */ +/* isa OTHER */ +var287 = 1; /* easy isa OTHER*/ +if (unlikely(!var287)) { 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, 728); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 725); fatal_exit(1); } -var200 = var_i < var_196; -var197 = var200; -goto RET_LABEL198; -RET_LABEL198:(void)0; +var288 = var_i < var_284; +var285 = var288; +goto RET_LABEL286; +RET_LABEL286:(void)0; } } -if (var197){ +if (var285){ } else { goto BREAK_label; } { -var201 = core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_vft, var_i); +var289 = core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_vft, var_i); } -var_mpropdef = var201; +var_mpropdef = var289; if (var_mpropdef == NULL) { -var202 = 1; /* is null */ +var290 = 1; /* is null */ } else { -var202 = 0; /* arg is null but recv is not */ +var290 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_mpropdef,((val*)NULL)) on */ -var_other205 = ((val*)NULL); +{ /* Inline kernel$Object$== (var_mpropdef,((val*)NULL)) on */ +var_other293 = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_mpropdef,var_other205) on */ -var208 = var_mpropdef == var_other205; -var206 = var208; -goto RET_LABEL207; -RET_LABEL207:(void)0; +{ /* Inline kernel$Object$is_same_instance (var_mpropdef,var_other293) on */ +var296 = var_mpropdef == var_other293; +var294 = var296; +goto RET_LABEL295; +RET_LABEL295:(void)0; } } -var203 = var206; -goto RET_LABEL204; -RET_LABEL204:(void)0; +var291 = var294; +goto RET_LABEL292; +RET_LABEL292:(void)0; } -var202 = var203; +var290 = var291; } -if (var202){ -if (likely(varonce209!=NULL)) { -var210 = varonce209; +if (var290){ +if (likely(varonce297!=NULL)) { +var298 = varonce297; } else { -var211 = "NULL, /* empty */"; -var212 = core__flat___NativeString___to_s_full(var211, 17l, 17l); -var210 = var212; -varonce209 = var210; +var299 = "NULL, /* empty */"; +var301 = (val*)(17l<<2|1); +var302 = (val*)(17l<<2|1); +var303 = (val*)((long)(0)<<2|3); +var304 = (val*)((long)(0)<<2|3); +var300 = core__flat___CString___to_s_unsafe(var299, var301, var302, var303, var304); +var298 = var300; +varonce297 = var298; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var210); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var298); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } } else { /* isa MMethodDef */ -cltype214 = type_nitc__MMethodDef.color; -idtype215 = type_nitc__MMethodDef.id; -if(cltype214 >= var_mpropdef->type->table_size) { -var213 = 0; +cltype306 = type_nitc__MMethodDef.color; +idtype307 = type_nitc__MMethodDef.id; +if(cltype306 >= var_mpropdef->type->table_size) { +var305 = 0; } else { -var213 = var_mpropdef->type->type_table[cltype214] == idtype215; +var305 = var_mpropdef->type->type_table[cltype306] == idtype307; +} +if (unlikely(!var305)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); } -if (unlikely(!var213)) { PRINT_ERROR("Runtime error: %s", "Assert failed"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 237); fatal_exit(1); } if (var_rta == NULL) { -var217 = 0; /* is null */ +var309 = 0; /* is null */ } else { -var217 = 1; /* arg is null and recv is not */ +var309 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_rta,((val*)NULL)) on */ +{ /* Inline kernel$Object$!= (var_rta,((val*)NULL)) on */ var_other = ((val*)NULL); { -var220 = ((short int(*)(val* self, val* p0))(var_rta->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_rta, var_other); /* == on */ +var312 = ((short int(*)(val* self, val* p0))(var_rta->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_rta, var_other); /* == on */ } -var221 = !var220; -var218 = var221; -goto RET_LABEL219; -RET_LABEL219:(void)0; +var313 = !var312; +var310 = var313; +goto RET_LABEL311; +RET_LABEL311:(void)0; } -var217 = var218; +var309 = var310; } -var_222 = var217; -if (var217){ +var_314 = var309; +if (var309){ { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_methoddefs (var_rta) on */ -var225 = var_rta->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_methoddefs].val; /* _live_methoddefs on */ -if (unlikely(var225 == NULL)) { +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_methoddefs (var_rta) on */ +var317 = var_rta->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_methoddefs].val; /* _live_methoddefs on */ +if (unlikely(var317 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_methoddefs"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 79); fatal_exit(1); } -var223 = var225; -RET_LABEL224:(void)0; +var315 = var317; +RET_LABEL316:(void)0; } } { -var226 = core___core__HashSet___core__abstract_collection__Collection__has(var223, var_mpropdef); +var318 = core___core__HashSet___core__abstract_collection__Collection__has(var315, var_mpropdef); } -var227 = !var226; -var216 = var227; +var319 = !var318; +var308 = var319; } else { -var216 = var_222; +var308 = var_314; } -if (var216){ -if (unlikely(varonce228==NULL)) { -var229 = NEW_core__NativeArray(7l, &type_core__NativeArray__core__String); -if (likely(varonce230!=NULL)) { -var231 = varonce230; +if (var308){ +if (unlikely(varonce320==NULL)) { +var321 = NEW_core__NativeArray((int)7l, &type_core__NativeArray__core__String); +if (likely(varonce322!=NULL)) { +var323 = varonce322; } else { -var232 = "NULL, /* DEAD "; -var233 = core__flat___NativeString___to_s_full(var232, 14l, 14l); -var231 = var233; -varonce230 = var231; +var324 = "NULL, /* DEAD "; +var326 = (val*)(14l<<2|1); +var327 = (val*)(14l<<2|1); +var328 = (val*)((long)(0)<<2|3); +var329 = (val*)((long)(0)<<2|3); +var325 = core__flat___CString___to_s_unsafe(var324, var326, var327, var328, var329); +var323 = var325; +varonce322 = var323; } -((struct instance_core__NativeArray*)var229)->values[0]=var231; -if (likely(varonce234!=NULL)) { -var235 = varonce234; +((struct instance_core__NativeArray*)var321)->values[0]=var323; +if (likely(varonce330!=NULL)) { +var331 = varonce330; } else { -var236 = ":"; -var237 = core__flat___NativeString___to_s_full(var236, 1l, 1l); -var235 = var237; -varonce234 = var235; +var332 = ":"; +var334 = (val*)(1l<<2|1); +var335 = (val*)(1l<<2|1); +var336 = (val*)((long)(0)<<2|3); +var337 = (val*)((long)(0)<<2|3); +var333 = core__flat___CString___to_s_unsafe(var332, var334, var335, var336, var337); +var331 = var333; +varonce330 = var331; } -((struct instance_core__NativeArray*)var229)->values[2]=var235; -if (likely(varonce238!=NULL)) { -var239 = varonce238; +((struct instance_core__NativeArray*)var321)->values[2]=var331; +if (likely(varonce338!=NULL)) { +var339 = varonce338; } else { -var240 = ":"; -var241 = core__flat___NativeString___to_s_full(var240, 1l, 1l); -var239 = var241; -varonce238 = var239; +var340 = ":"; +var342 = (val*)(1l<<2|1); +var343 = (val*)(1l<<2|1); +var344 = (val*)((long)(0)<<2|3); +var345 = (val*)((long)(0)<<2|3); +var341 = core__flat___CString___to_s_unsafe(var340, var342, var343, var344, var345); +var339 = var341; +varonce338 = var339; } -((struct instance_core__NativeArray*)var229)->values[4]=var239; -if (likely(varonce242!=NULL)) { -var243 = varonce242; +((struct instance_core__NativeArray*)var321)->values[4]=var339; +if (likely(varonce346!=NULL)) { +var347 = varonce346; } else { -var244 = " */"; -var245 = core__flat___NativeString___to_s_full(var244, 3l, 3l); -var243 = var245; -varonce242 = var243; +var348 = " */"; +var350 = (val*)(3l<<2|1); +var351 = (val*)(3l<<2|1); +var352 = (val*)((long)(0)<<2|3); +var353 = (val*)((long)(0)<<2|3); +var349 = core__flat___CString___to_s_unsafe(var348, var350, var351, var352, var353); +var347 = var349; +varonce346 = var347; } -((struct instance_core__NativeArray*)var229)->values[6]=var243; +((struct instance_core__NativeArray*)var321)->values[6]=var347; } else { -var229 = varonce228; -varonce228 = NULL; +var321 = varonce320; +varonce320 = NULL; } { -{ /* Inline model#MClass#intro_mmodule (var_mclass) on */ -var248 = var_mclass->attrs[COLOR_nitc__model__MClass___intro_mmodule].val; /* _intro_mmodule on */ -if (unlikely(var248 == NULL)) { +{ /* Inline model$MClass$intro_mmodule (var_mclass) on */ +var356 = var_mclass->attrs[COLOR_nitc__model__MClass___intro_mmodule].val; /* _intro_mmodule on */ +if (unlikely(var356 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 380); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 390); fatal_exit(1); } -var246 = var248; -RET_LABEL247:(void)0; +var354 = var356; +RET_LABEL355:(void)0; } } { -var249 = ((val*(*)(val* self))(var246->class->vft[COLOR_core__abstract_text__Object__to_s]))(var246); /* to_s on */ +var357 = ((val*(*)(val* self))(var354->class->vft[COLOR_core__abstract_text__Object__to_s]))(var354); /* to_s on */ } -((struct instance_core__NativeArray*)var229)->values[1]=var249; +((struct instance_core__NativeArray*)var321)->values[1]=var357; { -var250 = ((val*(*)(val* self))(var_mclass->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mclass); /* to_s on */ +var358 = ((val*(*)(val* self))(var_mclass->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mclass); /* to_s on */ } -((struct instance_core__NativeArray*)var229)->values[3]=var250; +((struct instance_core__NativeArray*)var321)->values[3]=var358; { -var251 = ((val*(*)(val* self))(var_mpropdef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mpropdef); /* to_s on */ +var359 = ((val*(*)(val* self))(var_mpropdef->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mpropdef); /* to_s on */ } -((struct instance_core__NativeArray*)var229)->values[5]=var251; +((struct instance_core__NativeArray*)var321)->values[5]=var359; { -var252 = ((val*(*)(val* self))(var229->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var229); /* native_to_s on */ +var360 = ((val*(*)(val* self))(var321->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var321); /* native_to_s on */ } -varonce228 = var229; +varonce320 = var321; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var252); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var360); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -goto BREAK_label253; +goto BREAK_label361; } else { } { -var254 = nitc__separate_compiler___MMethodDef___virtual_runtime_function(var_mpropdef); +var362 = nitc__separate_compiler___MMethodDef___virtual_runtime_function(var_mpropdef); } -var_rf = var254; +var_rf = var362; { -var255 = nitc___nitc__AbstractRuntimeFunction___c_name(var_rf); +var363 = nitc___nitc__AbstractRuntimeFunction___c_name(var_rf); } { -nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var255); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on */ +nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var363); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on */ } -if (unlikely(varonce256==NULL)) { -var257 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce258!=NULL)) { -var259 = varonce258; +if (unlikely(varonce364==NULL)) { +var365 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String); +if (likely(varonce366!=NULL)) { +var367 = varonce366; } else { -var260 = "(nitmethod_t)"; -var261 = core__flat___NativeString___to_s_full(var260, 13l, 13l); -var259 = var261; -varonce258 = var259; +var368 = "(nitmethod_t)"; +var370 = (val*)(13l<<2|1); +var371 = (val*)(13l<<2|1); +var372 = (val*)((long)(0)<<2|3); +var373 = (val*)((long)(0)<<2|3); +var369 = core__flat___CString___to_s_unsafe(var368, var370, var371, var372, var373); +var367 = var369; +varonce366 = var367; } -((struct instance_core__NativeArray*)var257)->values[0]=var259; -if (likely(varonce262!=NULL)) { -var263 = varonce262; +((struct instance_core__NativeArray*)var365)->values[0]=var367; +if (likely(varonce374!=NULL)) { +var375 = varonce374; } else { -var264 = ", /* pointer to "; -var265 = core__flat___NativeString___to_s_full(var264, 16l, 16l); -var263 = var265; -varonce262 = var263; +var376 = ", /* pointer to "; +var378 = (val*)(16l<<2|1); +var379 = (val*)(16l<<2|1); +var380 = (val*)((long)(0)<<2|3); +var381 = (val*)((long)(0)<<2|3); +var377 = core__flat___CString___to_s_unsafe(var376, var378, var379, var380, var381); +var375 = var377; +varonce374 = var375; } -((struct instance_core__NativeArray*)var257)->values[2]=var263; -if (likely(varonce266!=NULL)) { -var267 = varonce266; +((struct instance_core__NativeArray*)var365)->values[2]=var375; +if (likely(varonce382!=NULL)) { +var383 = varonce382; } else { -var268 = " */"; -var269 = core__flat___NativeString___to_s_full(var268, 3l, 3l); -var267 = var269; -varonce266 = var267; +var384 = " */"; +var386 = (val*)(3l<<2|1); +var387 = (val*)(3l<<2|1); +var388 = (val*)((long)(0)<<2|3); +var389 = (val*)((long)(0)<<2|3); +var385 = core__flat___CString___to_s_unsafe(var384, var386, var387, var388, var389); +var383 = var385; +varonce382 = var383; } -((struct instance_core__NativeArray*)var257)->values[4]=var267; +((struct instance_core__NativeArray*)var365)->values[4]=var383; } else { -var257 = varonce256; -varonce256 = NULL; +var365 = varonce364; +varonce364 = NULL; } { -var270 = nitc___nitc__AbstractRuntimeFunction___c_name(var_rf); +var390 = nitc___nitc__AbstractRuntimeFunction___c_name(var_rf); } -((struct instance_core__NativeArray*)var257)->values[1]=var270; +((struct instance_core__NativeArray*)var365)->values[1]=var390; { -var271 = nitc___nitc__MPropDef___nitc__model_base__MEntity__full_name(var_mpropdef); +var391 = nitc___nitc__MPropDef___nitc__model_base__MEntity__full_name(var_mpropdef); } -((struct instance_core__NativeArray*)var257)->values[3]=var271; +((struct instance_core__NativeArray*)var365)->values[3]=var391; { -var272 = ((val*(*)(val* self))(var257->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var257); /* native_to_s on */ +var392 = ((val*(*)(val* self))(var365->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var365); /* native_to_s on */ } -varonce256 = var257; +varonce364 = var365; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var272); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var392); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } } -BREAK_label253: (void)0; +BREAK_label361: (void)0; { -var273 = core___core__Int___Discrete__successor(var_i, 1l); +var393 = core___core__Int___Discrete__successor(var_i, 1l); } -var_i = var273; +var_i = var393; } BREAK_label: (void)0; } else { } -if (likely(varonce274!=NULL)) { -var275 = varonce274; +if (likely(varonce394!=NULL)) { +var395 = varonce394; } else { -var276 = "}"; -var277 = core__flat___NativeString___to_s_full(var276, 1l, 1l); -var275 = var277; -varonce274 = var275; +var396 = "}"; +var398 = (val*)(1l<<2|1); +var399 = (val*)(1l<<2|1); +var400 = (val*)((long)(0)<<2|3); +var401 = (val*)((long)(0)<<2|3); +var397 = core__flat___CString___to_s_unsafe(var396, var398, var399, var400, var401); +var395 = var397; +varonce394 = var395; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var275); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var395); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } } else { } -if (likely(varonce278!=NULL)) { -var279 = varonce278; +if (likely(varonce402!=NULL)) { +var403 = varonce402; } else { -var280 = "};"; -var281 = core__flat___NativeString___to_s_full(var280, 2l, 2l); -var279 = var281; -varonce278 = var279; +var404 = "};"; +var406 = (val*)(2l<<2|1); +var407 = (val*)(2l<<2|1); +var408 = (val*)((long)(0)<<2|3); +var409 = (val*)((long)(0)<<2|3); +var405 = core__flat___CString___to_s_unsafe(var404, var406, var407, var408, var409); +var403 = var405; +varonce402 = var403; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var279); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var403); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce282==NULL)) { -var283 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce284!=NULL)) { -var285 = varonce284; +if (unlikely(varonce410==NULL)) { +var411 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce412!=NULL)) { +var413 = varonce412; } else { -var286 = "const struct type_table type_table_"; -var287 = core__flat___NativeString___to_s_full(var286, 35l, 35l); -var285 = var287; -varonce284 = var285; +var414 = "const struct type_table type_table_"; +var416 = (val*)(35l<<2|1); +var417 = (val*)(35l<<2|1); +var418 = (val*)((long)(0)<<2|3); +var419 = (val*)((long)(0)<<2|3); +var415 = core__flat___CString___to_s_unsafe(var414, var416, var417, var418, var419); +var413 = var415; +varonce412 = var413; } -((struct instance_core__NativeArray*)var283)->values[0]=var285; -if (likely(varonce288!=NULL)) { -var289 = varonce288; +((struct instance_core__NativeArray*)var411)->values[0]=var413; +if (likely(varonce420!=NULL)) { +var421 = varonce420; } else { -var290 = " = {"; -var291 = core__flat___NativeString___to_s_full(var290, 4l, 4l); -var289 = var291; -varonce288 = var289; +var422 = " = {"; +var424 = (val*)(4l<<2|1); +var425 = (val*)(4l<<2|1); +var426 = (val*)((long)(0)<<2|3); +var427 = (val*)((long)(0)<<2|3); +var423 = core__flat___CString___to_s_unsafe(var422, var424, var425, var426, var427); +var421 = var423; +varonce420 = var421; } -((struct instance_core__NativeArray*)var283)->values[2]=var289; +((struct instance_core__NativeArray*)var411)->values[2]=var421; } else { -var283 = varonce282; -varonce282 = NULL; +var411 = varonce410; +varonce410 = NULL; } -((struct instance_core__NativeArray*)var283)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var411)->values[1]=var_c_name; { -var292 = ((val*(*)(val* self))(var283->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var283); /* native_to_s on */ +var428 = ((val*(*)(val* self))(var411->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var411); /* native_to_s on */ } -varonce282 = var283; +varonce410 = var411; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var292); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var428); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce293==NULL)) { -var294 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce295!=NULL)) { -var296 = varonce295; +if (unlikely(varonce429==NULL)) { +var430 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce431!=NULL)) { +var432 = varonce431; } else { -var297 = ","; -var298 = core__flat___NativeString___to_s_full(var297, 1l, 1l); -var296 = var298; -varonce295 = var296; +var433 = ","; +var435 = (val*)(1l<<2|1); +var436 = (val*)(1l<<2|1); +var437 = (val*)((long)(0)<<2|3); +var438 = (val*)((long)(0)<<2|3); +var434 = core__flat___CString___to_s_unsafe(var433, var435, var436, var437, var438); +var432 = var434; +varonce431 = var432; } -((struct instance_core__NativeArray*)var294)->values[1]=var296; +((struct instance_core__NativeArray*)var430)->values[1]=var432; } else { -var294 = varonce293; -varonce293 = NULL; +var430 = varonce429; +varonce429 = NULL; } { -{ /* Inline array#AbstractArrayRead#length (var_class_table) on */ -var301 = var_class_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ -var299 = var301; -RET_LABEL300:(void)0; +{ /* Inline array$AbstractArrayRead$length (var_class_table) on */ +var441 = var_class_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ +var439 = var441; +RET_LABEL440:(void)0; } } -var302 = core__flat___Int___core__abstract_text__Object__to_s(var299); -((struct instance_core__NativeArray*)var294)->values[0]=var302; +var442 = core__flat___Int___core__abstract_text__Object__to_s(var439); +((struct instance_core__NativeArray*)var430)->values[0]=var442; { -var303 = ((val*(*)(val* self))(var294->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var294); /* native_to_s on */ +var443 = ((val*(*)(val* self))(var430->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var430); /* native_to_s on */ } -varonce293 = var294; +varonce429 = var430; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var303); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var443); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (likely(varonce304!=NULL)) { -var305 = varonce304; +if (likely(varonce444!=NULL)) { +var445 = varonce444; } else { -var306 = "{"; -var307 = core__flat___NativeString___to_s_full(var306, 1l, 1l); -var305 = var307; -varonce304 = var305; +var446 = "{"; +var448 = (val*)(1l<<2|1); +var449 = (val*)(1l<<2|1); +var450 = (val*)((long)(0)<<2|3); +var451 = (val*)((long)(0)<<2|3); +var447 = core__flat___CString___to_s_unsafe(var446, var448, var449, var450, var451); +var445 = var447; +varonce444 = var445; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var305); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var445); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -var_308 = var_class_table; +var_452 = var_class_table; { -var309 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_308); +var453 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_452); } -var_310 = var309; +var_454 = var453; for(;;) { { -var311 = ((short int(*)(val* self))((((long)var_310&3)?class_info[((long)var_310&3)]:var_310->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_310); /* is_ok on */ +var455 = ((short int(*)(val* self))((((long)var_454&3)?class_info[((long)var_454&3)]:var_454->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_454); /* is_ok on */ } -if (var311){ +if (var455){ } else { -goto BREAK_label312; +goto BREAK_label456; } { -var313 = ((val*(*)(val* self))((((long)var_310&3)?class_info[((long)var_310&3)]:var_310->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_310); /* item on */ +var457 = ((val*(*)(val* self))((((long)var_454&3)?class_info[((long)var_454&3)]:var_454->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_454); /* item on */ } -var_msuper = var313; +var_msuper = var457; if (var_msuper == NULL) { -var314 = 1; /* is null */ +var458 = 1; /* is null */ } else { -var314 = 0; /* arg is null but recv is not */ +var458 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_msuper,((val*)NULL)) on */ -var_other205 = ((val*)NULL); +{ /* Inline kernel$Object$== (var_msuper,((val*)NULL)) on */ +var_other293 = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_msuper,var_other205) on */ -var319 = var_msuper == var_other205; -var317 = var319; -goto RET_LABEL318; -RET_LABEL318:(void)0; +{ /* Inline kernel$Object$is_same_instance (var_msuper,var_other293) on */ +var463 = var_msuper == var_other293; +var461 = var463; +goto RET_LABEL462; +RET_LABEL462:(void)0; } } -var315 = var317; -goto RET_LABEL316; -RET_LABEL316:(void)0; +var459 = var461; +goto RET_LABEL460; +RET_LABEL460:(void)0; } -var314 = var315; +var458 = var459; } -if (var314){ -if (likely(varonce320!=NULL)) { -var321 = varonce320; +if (var458){ +if (likely(varonce464!=NULL)) { +var465 = varonce464; } else { -var322 = "-1, /* empty */"; -var323 = core__flat___NativeString___to_s_full(var322, 15l, 15l); -var321 = var323; -varonce320 = var321; +var466 = "-1, /* empty */"; +var468 = (val*)(15l<<2|1); +var469 = (val*)(15l<<2|1); +var470 = (val*)((long)(0)<<2|3); +var471 = (val*)((long)(0)<<2|3); +var467 = core__flat___CString___to_s_unsafe(var466, var468, var469, var470, var471); +var465 = var467; +varonce464 = var465; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var321); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var465); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } } else { -if (unlikely(varonce324==NULL)) { -var325 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce326!=NULL)) { -var327 = varonce326; +if (unlikely(varonce472==NULL)) { +var473 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce474!=NULL)) { +var475 = varonce474; } else { -var328 = ", /* "; -var329 = core__flat___NativeString___to_s_full(var328, 5l, 5l); -var327 = var329; -varonce326 = var327; +var476 = ", /* "; +var478 = (val*)(5l<<2|1); +var479 = (val*)(5l<<2|1); +var480 = (val*)((long)(0)<<2|3); +var481 = (val*)((long)(0)<<2|3); +var477 = core__flat___CString___to_s_unsafe(var476, var478, var479, var480, var481); +var475 = var477; +varonce474 = var475; } -((struct instance_core__NativeArray*)var325)->values[1]=var327; -if (likely(varonce330!=NULL)) { -var331 = varonce330; +((struct instance_core__NativeArray*)var473)->values[1]=var475; +if (likely(varonce482!=NULL)) { +var483 = varonce482; } else { -var332 = " */"; -var333 = core__flat___NativeString___to_s_full(var332, 3l, 3l); -var331 = var333; -varonce330 = var331; +var484 = " */"; +var486 = (val*)(3l<<2|1); +var487 = (val*)(3l<<2|1); +var488 = (val*)((long)(0)<<2|3); +var489 = (val*)((long)(0)<<2|3); +var485 = core__flat___CString___to_s_unsafe(var484, var486, var487, var488, var489); +var483 = var485; +varonce482 = var483; } -((struct instance_core__NativeArray*)var325)->values[3]=var331; +((struct instance_core__NativeArray*)var473)->values[3]=var483; } else { -var325 = varonce324; -varonce324 = NULL; +var473 = varonce472; +varonce472 = NULL; } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#class_ids (self) on */ -var336 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_ids].val; /* _class_ids on */ -if (unlikely(var336 == NULL)) { +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$class_ids (self) on */ +var492 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_ids].val; /* _class_ids on */ +if (unlikely(var492 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_ids"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 84); fatal_exit(1); } -var334 = var336; -RET_LABEL335:(void)0; +var490 = var492; +RET_LABEL491:(void)0; } } { -var337 = ((val*(*)(val* self, val* p0))((((long)var334&3)?class_info[((long)var334&3)]:var334->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var334, var_msuper); /* [] on */ +var493 = ((val*(*)(val* self, val* p0))((((long)var490&3)?class_info[((long)var490&3)]:var490->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var490, var_msuper); /* [] on */ } -var339 = (long)(var337)>>2; -var338 = core__flat___Int___core__abstract_text__Object__to_s(var339); -((struct instance_core__NativeArray*)var325)->values[0]=var338; +var495 = (long)(var493)>>2; +var494 = core__flat___Int___core__abstract_text__Object__to_s(var495); +((struct instance_core__NativeArray*)var473)->values[0]=var494; { -var340 = ((val*(*)(val* self))(var_msuper->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_msuper); /* to_s on */ +var496 = ((val*(*)(val* self))(var_msuper->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_msuper); /* to_s on */ } -((struct instance_core__NativeArray*)var325)->values[2]=var340; +((struct instance_core__NativeArray*)var473)->values[2]=var496; { -var341 = ((val*(*)(val* self))(var325->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var325); /* native_to_s on */ +var497 = ((val*(*)(val* self))(var473->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var473); /* native_to_s on */ } -varonce324 = var325; +varonce472 = var473; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var341); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var497); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } } { -((void(*)(val* self))((((long)var_310&3)?class_info[((long)var_310&3)]:var_310->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_310); /* next on */ +((void(*)(val* self))((((long)var_454&3)?class_info[((long)var_454&3)]:var_454->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_454); /* next on */ } } -BREAK_label312: (void)0; +BREAK_label456: (void)0; { -((void(*)(val* self))((((long)var_310&3)?class_info[((long)var_310&3)]:var_310->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_310); /* finish on */ +((void(*)(val* self))((((long)var_454&3)?class_info[((long)var_454&3)]:var_454->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_454); /* finish on */ } -if (likely(varonce342!=NULL)) { -var343 = varonce342; +if (likely(varonce498!=NULL)) { +var499 = varonce498; } else { -var344 = "}"; -var345 = core__flat___NativeString___to_s_full(var344, 1l, 1l); -var343 = var345; -varonce342 = var343; +var500 = "}"; +var502 = (val*)(1l<<2|1); +var503 = (val*)(1l<<2|1); +var504 = (val*)((long)(0)<<2|3); +var505 = (val*)((long)(0)<<2|3); +var501 = core__flat___CString___to_s_unsafe(var500, var502, var503, var504, var505); +var499 = var501; +varonce498 = var499; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var343); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var499); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (likely(varonce346!=NULL)) { -var347 = varonce346; +if (likely(varonce506!=NULL)) { +var507 = varonce506; } else { -var348 = "};"; -var349 = core__flat___NativeString___to_s_full(var348, 2l, 2l); -var347 = var349; -varonce346 = var347; +var508 = "};"; +var510 = (val*)(2l<<2|1); +var511 = (val*)(2l<<2|1); +var512 = (val*)((long)(0)<<2|3); +var513 = (val*)((long)(0)<<2|3); +var509 = core__flat___CString___to_s_unsafe(var508, var510, var511, var512, var513); +var507 = var509; +varonce506 = var507; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var347); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var507); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } { -var351 = nitc__abstract_compiler___MClassType___MType__is_c_primitive(var_mtype); +var515 = nitc__abstract_compiler___MClassType___MType__is_c_primitive(var_mtype); } -var_352 = var351; -if (var351){ -var350 = var_352; +var_516 = var515; +if (var515){ +var514 = var_516; } else { { -{ /* Inline model#MClassType#mclass (var_mtype) on */ -var355 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ -if (unlikely(var355 == NULL)) { +{ /* Inline model$MClassType$mclass (var_mtype) on */ +var519 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ +if (unlikely(var519 == 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, 1163); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1197); fatal_exit(1); } -var353 = var355; -RET_LABEL354:(void)0; +var517 = var519; +RET_LABEL518:(void)0; } } { -{ /* Inline model#MClass#name (var353) on */ -var358 = var353->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ -if (unlikely(var358 == NULL)) { +{ /* Inline model$MClass$name (var517) on */ +var522 = var517->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ +if (unlikely(var522 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 385); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 396); fatal_exit(1); } -var356 = var358; -RET_LABEL357:(void)0; +var520 = var522; +RET_LABEL521:(void)0; } } -if (likely(varonce359!=NULL)) { -var360 = varonce359; +if (likely(varonce523!=NULL)) { +var524 = varonce523; } else { -var361 = "Pointer"; -var362 = core__flat___NativeString___to_s_full(var361, 7l, 7l); -var360 = var362; -varonce359 = var360; +var525 = "Pointer"; +var527 = (val*)(7l<<2|1); +var528 = (val*)(7l<<2|1); +var529 = (val*)((long)(0)<<2|3); +var530 = (val*)((long)(0)<<2|3); +var526 = core__flat___CString___to_s_unsafe(var525, var527, var528, var529, var530); +var524 = var526; +varonce523 = var524; } { -var363 = ((short int(*)(val* self, val* p0))(var356->class->vft[COLOR_core__kernel__Object___61d_61d]))(var356, var360); /* == on */ +var531 = ((short int(*)(val* self, val* p0))(var520->class->vft[COLOR_core__kernel__Object___61d_61d]))(var520, var524); /* == on */ } -var350 = var363; +var514 = var531; } -if (var350){ +if (var514){ { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var366 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var366 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var534 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var534 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var364 = var366; -RET_LABEL365:(void)0; +var532 = var534; +RET_LABEL533:(void)0; } } -if (unlikely(varonce367==NULL)) { -var368 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce369!=NULL)) { -var370 = varonce369; +if (unlikely(varonce535==NULL)) { +var536 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce537!=NULL)) { +var538 = varonce537; } else { -var371 = "struct instance_"; -var372 = core__flat___NativeString___to_s_full(var371, 16l, 16l); -var370 = var372; -varonce369 = var370; +var539 = "struct instance_"; +var541 = (val*)(16l<<2|1); +var542 = (val*)(16l<<2|1); +var543 = (val*)((long)(0)<<2|3); +var544 = (val*)((long)(0)<<2|3); +var540 = core__flat___CString___to_s_unsafe(var539, var541, var542, var543, var544); +var538 = var540; +varonce537 = var538; } -((struct instance_core__NativeArray*)var368)->values[0]=var370; -if (likely(varonce373!=NULL)) { -var374 = varonce373; +((struct instance_core__NativeArray*)var536)->values[0]=var538; +if (likely(varonce545!=NULL)) { +var546 = varonce545; } else { -var375 = " {"; -var376 = core__flat___NativeString___to_s_full(var375, 2l, 2l); -var374 = var376; -varonce373 = var374; +var547 = " {"; +var549 = (val*)(2l<<2|1); +var550 = (val*)(2l<<2|1); +var551 = (val*)((long)(0)<<2|3); +var552 = (val*)((long)(0)<<2|3); +var548 = core__flat___CString___to_s_unsafe(var547, var549, var550, var551, var552); +var546 = var548; +varonce545 = var546; } -((struct instance_core__NativeArray*)var368)->values[2]=var374; +((struct instance_core__NativeArray*)var536)->values[2]=var546; } else { -var368 = varonce367; -varonce367 = NULL; +var536 = varonce535; +varonce535 = NULL; } -((struct instance_core__NativeArray*)var368)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var536)->values[1]=var_c_name; { -var377 = ((val*(*)(val* self))(var368->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var368); /* native_to_s on */ +var553 = ((val*(*)(val* self))(var536->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var536); /* native_to_s on */ } -varonce367 = var368; +varonce535 = var536; { -nitc___nitc__CodeWriter___add_decl(var364, var377); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var532, var553); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var380 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var380 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var556 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var556 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var378 = var380; -RET_LABEL379:(void)0; +var554 = var556; +RET_LABEL555:(void)0; } } -if (likely(varonce381!=NULL)) { -var382 = varonce381; +if (likely(varonce557!=NULL)) { +var558 = varonce557; } else { -var383 = "const struct class *class;"; -var384 = core__flat___NativeString___to_s_full(var383, 26l, 26l); -var382 = var384; -varonce381 = var382; +var559 = "const struct class *class;"; +var561 = (val*)(26l<<2|1); +var562 = (val*)(26l<<2|1); +var563 = (val*)((long)(0)<<2|3); +var564 = (val*)((long)(0)<<2|3); +var560 = core__flat___CString___to_s_unsafe(var559, var561, var562, var563, var564); +var558 = var560; +varonce557 = var558; } { -nitc___nitc__CodeWriter___add_decl(var378, var382); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var554, var558); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var387 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var387 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var567 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var567 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var385 = var387; -RET_LABEL386:(void)0; +var565 = var567; +RET_LABEL566:(void)0; } } -if (unlikely(varonce388==NULL)) { -var389 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce390!=NULL)) { -var391 = varonce390; +if (unlikely(varonce568==NULL)) { +var569 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce570!=NULL)) { +var571 = varonce570; } else { -var392 = " value;"; -var393 = core__flat___NativeString___to_s_full(var392, 7l, 7l); -var391 = var393; -varonce390 = var391; +var572 = " value;"; +var574 = (val*)(7l<<2|1); +var575 = (val*)(7l<<2|1); +var576 = (val*)((long)(0)<<2|3); +var577 = (val*)((long)(0)<<2|3); +var573 = core__flat___CString___to_s_unsafe(var572, var574, var575, var576, var577); +var571 = var573; +varonce570 = var571; } -((struct instance_core__NativeArray*)var389)->values[1]=var391; +((struct instance_core__NativeArray*)var569)->values[1]=var571; } else { -var389 = varonce388; -varonce388 = NULL; +var569 = varonce568; +varonce568 = NULL; } { -var394 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); +var578 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); } -((struct instance_core__NativeArray*)var389)->values[0]=var394; +((struct instance_core__NativeArray*)var569)->values[0]=var578; { -var395 = ((val*(*)(val* self))(var389->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var389); /* native_to_s on */ +var579 = ((val*(*)(val* self))(var569->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var569); /* native_to_s on */ } -varonce388 = var389; +varonce568 = var569; { -nitc___nitc__CodeWriter___add_decl(var385, var395); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var565, var579); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var398 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var398 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var582 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var582 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var396 = var398; -RET_LABEL397:(void)0; +var580 = var582; +RET_LABEL581:(void)0; } } -if (likely(varonce399!=NULL)) { -var400 = varonce399; +if (likely(varonce583!=NULL)) { +var584 = varonce583; } else { -var401 = "};"; -var402 = core__flat___NativeString___to_s_full(var401, 2l, 2l); -var400 = var402; -varonce399 = var400; +var585 = "};"; +var587 = (val*)(2l<<2|1); +var588 = (val*)(2l<<2|1); +var589 = (val*)((long)(0)<<2|3); +var590 = (val*)((long)(0)<<2|3); +var586 = core__flat___CString___to_s_unsafe(var585, var587, var588, var589, var590); +var584 = var586; +varonce583 = var584; } { -nitc___nitc__CodeWriter___add_decl(var396, var400); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var580, var584); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } -if (unlikely(varonce403==NULL)) { -var404 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce405!=NULL)) { -var406 = varonce405; +if (unlikely(varonce591==NULL)) { +var592 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce593!=NULL)) { +var594 = varonce593; } else { -var407 = "BOX_"; -var408 = core__flat___NativeString___to_s_full(var407, 4l, 4l); -var406 = var408; -varonce405 = var406; +var595 = "BOX_"; +var597 = (val*)(4l<<2|1); +var598 = (val*)(4l<<2|1); +var599 = (val*)((long)(0)<<2|3); +var600 = (val*)((long)(0)<<2|3); +var596 = core__flat___CString___to_s_unsafe(var595, var597, var598, var599, var600); +var594 = var596; +varonce593 = var594; } -((struct instance_core__NativeArray*)var404)->values[0]=var406; +((struct instance_core__NativeArray*)var592)->values[0]=var594; } else { -var404 = varonce403; -varonce403 = NULL; +var592 = varonce591; +varonce591 = NULL; } -((struct instance_core__NativeArray*)var404)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var592)->values[1]=var_c_name; { -var409 = ((val*(*)(val* self))(var404->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var404); /* native_to_s on */ +var601 = ((val*(*)(val* self))(var592->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var592); /* native_to_s on */ } -varonce403 = var404; -if (unlikely(varonce410==NULL)) { -var411 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce412!=NULL)) { -var413 = varonce412; +varonce591 = var592; +if (unlikely(varonce602==NULL)) { +var603 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String); +if (likely(varonce604!=NULL)) { +var605 = varonce604; } else { -var414 = "val* BOX_"; -var415 = core__flat___NativeString___to_s_full(var414, 9l, 9l); -var413 = var415; -varonce412 = var413; +var606 = "val* BOX_"; +var608 = (val*)(9l<<2|1); +var609 = (val*)(9l<<2|1); +var610 = (val*)((long)(0)<<2|3); +var611 = (val*)((long)(0)<<2|3); +var607 = core__flat___CString___to_s_unsafe(var606, var608, var609, var610, var611); +var605 = var607; +varonce604 = var605; } -((struct instance_core__NativeArray*)var411)->values[0]=var413; -if (likely(varonce416!=NULL)) { -var417 = varonce416; +((struct instance_core__NativeArray*)var603)->values[0]=var605; +if (likely(varonce612!=NULL)) { +var613 = varonce612; } else { -var418 = "("; -var419 = core__flat___NativeString___to_s_full(var418, 1l, 1l); -var417 = var419; -varonce416 = var417; +var614 = "("; +var616 = (val*)(1l<<2|1); +var617 = (val*)(1l<<2|1); +var618 = (val*)((long)(0)<<2|3); +var619 = (val*)((long)(0)<<2|3); +var615 = core__flat___CString___to_s_unsafe(var614, var616, var617, var618, var619); +var613 = var615; +varonce612 = var613; } -((struct instance_core__NativeArray*)var411)->values[2]=var417; -if (likely(varonce420!=NULL)) { -var421 = varonce420; +((struct instance_core__NativeArray*)var603)->values[2]=var613; +if (likely(varonce620!=NULL)) { +var621 = varonce620; } else { -var422 = ");"; -var423 = core__flat___NativeString___to_s_full(var422, 2l, 2l); -var421 = var423; -varonce420 = var421; +var622 = ");"; +var624 = (val*)(2l<<2|1); +var625 = (val*)(2l<<2|1); +var626 = (val*)((long)(0)<<2|3); +var627 = (val*)((long)(0)<<2|3); +var623 = core__flat___CString___to_s_unsafe(var622, var624, var625, var626, var627); +var621 = var623; +varonce620 = var621; } -((struct instance_core__NativeArray*)var411)->values[4]=var421; +((struct instance_core__NativeArray*)var603)->values[4]=var621; } else { -var411 = varonce410; -varonce410 = NULL; +var603 = varonce602; +varonce602 = NULL; } -((struct instance_core__NativeArray*)var411)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var603)->values[1]=var_c_name; { -var424 = nitc__abstract_compiler___MClassType___MType__ctype_extern(var_mtype); +var628 = nitc__abstract_compiler___MClassType___MType__ctype_extern(var_mtype); } -((struct instance_core__NativeArray*)var411)->values[3]=var424; +((struct instance_core__NativeArray*)var603)->values[3]=var628; { -var425 = ((val*(*)(val* self))(var411->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var411); /* native_to_s on */ +var629 = ((val*(*)(val* self))(var603->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var603); /* native_to_s on */ } -varonce410 = var411; +varonce602 = var603; { -nitc___nitc__AbstractCompiler___provide_declaration(self, var409, var425); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var601, var629); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } -if (unlikely(varonce426==NULL)) { -var427 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce428!=NULL)) { -var429 = varonce428; +if (unlikely(varonce630==NULL)) { +var631 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce632!=NULL)) { +var633 = varonce632; } else { -var430 = "/* allocate "; -var431 = core__flat___NativeString___to_s_full(var430, 12l, 12l); -var429 = var431; -varonce428 = var429; +var634 = "/* allocate "; +var636 = (val*)(12l<<2|1); +var637 = (val*)(12l<<2|1); +var638 = (val*)((long)(0)<<2|3); +var639 = (val*)((long)(0)<<2|3); +var635 = core__flat___CString___to_s_unsafe(var634, var636, var637, var638, var639); +var633 = var635; +varonce632 = var633; } -((struct instance_core__NativeArray*)var427)->values[0]=var429; -if (likely(varonce432!=NULL)) { -var433 = varonce432; +((struct instance_core__NativeArray*)var631)->values[0]=var633; +if (likely(varonce640!=NULL)) { +var641 = varonce640; } else { -var434 = " */"; -var435 = core__flat___NativeString___to_s_full(var434, 3l, 3l); -var433 = var435; -varonce432 = var433; +var642 = " */"; +var644 = (val*)(3l<<2|1); +var645 = (val*)(3l<<2|1); +var646 = (val*)((long)(0)<<2|3); +var647 = (val*)((long)(0)<<2|3); +var643 = core__flat___CString___to_s_unsafe(var642, var644, var645, var646, var647); +var641 = var643; +varonce640 = var641; } -((struct instance_core__NativeArray*)var427)->values[2]=var433; +((struct instance_core__NativeArray*)var631)->values[2]=var641; } else { -var427 = varonce426; -varonce426 = NULL; +var631 = varonce630; +varonce630 = NULL; } { -var436 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ +var648 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ } -((struct instance_core__NativeArray*)var427)->values[1]=var436; +((struct instance_core__NativeArray*)var631)->values[1]=var648; { -var437 = ((val*(*)(val* self))(var427->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var427); /* native_to_s on */ +var649 = ((val*(*)(val* self))(var631->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var631); /* native_to_s on */ } -varonce426 = var427; +varonce630 = var631; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var437); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var649); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce438==NULL)) { -var439 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce440!=NULL)) { -var441 = varonce440; +if (unlikely(varonce650==NULL)) { +var651 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String); +if (likely(varonce652!=NULL)) { +var653 = varonce652; } else { -var442 = "val* BOX_"; -var443 = core__flat___NativeString___to_s_full(var442, 9l, 9l); -var441 = var443; -varonce440 = var441; +var654 = "val* BOX_"; +var656 = (val*)(9l<<2|1); +var657 = (val*)(9l<<2|1); +var658 = (val*)((long)(0)<<2|3); +var659 = (val*)((long)(0)<<2|3); +var655 = core__flat___CString___to_s_unsafe(var654, var656, var657, var658, var659); +var653 = var655; +varonce652 = var653; } -((struct instance_core__NativeArray*)var439)->values[0]=var441; -if (likely(varonce444!=NULL)) { -var445 = varonce444; +((struct instance_core__NativeArray*)var651)->values[0]=var653; +if (likely(varonce660!=NULL)) { +var661 = varonce660; } else { -var446 = "("; -var447 = core__flat___NativeString___to_s_full(var446, 1l, 1l); -var445 = var447; -varonce444 = var445; +var662 = "("; +var664 = (val*)(1l<<2|1); +var665 = (val*)(1l<<2|1); +var666 = (val*)((long)(0)<<2|3); +var667 = (val*)((long)(0)<<2|3); +var663 = core__flat___CString___to_s_unsafe(var662, var664, var665, var666, var667); +var661 = var663; +varonce660 = var661; } -((struct instance_core__NativeArray*)var439)->values[2]=var445; -if (likely(varonce448!=NULL)) { -var449 = varonce448; +((struct instance_core__NativeArray*)var651)->values[2]=var661; +if (likely(varonce668!=NULL)) { +var669 = varonce668; } else { -var450 = " value) {"; -var451 = core__flat___NativeString___to_s_full(var450, 9l, 9l); -var449 = var451; -varonce448 = var449; +var670 = " value) {"; +var672 = (val*)(9l<<2|1); +var673 = (val*)(9l<<2|1); +var674 = (val*)((long)(0)<<2|3); +var675 = (val*)((long)(0)<<2|3); +var671 = core__flat___CString___to_s_unsafe(var670, var672, var673, var674, var675); +var669 = var671; +varonce668 = var669; } -((struct instance_core__NativeArray*)var439)->values[4]=var449; +((struct instance_core__NativeArray*)var651)->values[4]=var669; } else { -var439 = varonce438; -varonce438 = NULL; +var651 = varonce650; +varonce650 = NULL; } { -var452 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_mtype); /* c_name on */ +var676 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_mtype); /* c_name on */ } -((struct instance_core__NativeArray*)var439)->values[1]=var452; +((struct instance_core__NativeArray*)var651)->values[1]=var676; { -var453 = nitc__abstract_compiler___MClassType___MType__ctype_extern(var_mtype); +var677 = nitc__abstract_compiler___MClassType___MType__ctype_extern(var_mtype); } -((struct instance_core__NativeArray*)var439)->values[3]=var453; +((struct instance_core__NativeArray*)var651)->values[3]=var677; { -var454 = ((val*(*)(val* self))(var439->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var439); /* native_to_s on */ +var678 = ((val*(*)(val* self))(var651->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var651); /* native_to_s on */ } -varonce438 = var439; +varonce650 = var651; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var454); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var678); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce455==NULL)) { -var456 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce457!=NULL)) { -var458 = varonce457; +if (unlikely(varonce679==NULL)) { +var680 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String); +if (likely(varonce681!=NULL)) { +var682 = varonce681; } else { -var459 = "struct instance_"; -var460 = core__flat___NativeString___to_s_full(var459, 16l, 16l); -var458 = var460; -varonce457 = var458; +var683 = "struct instance_"; +var685 = (val*)(16l<<2|1); +var686 = (val*)(16l<<2|1); +var687 = (val*)((long)(0)<<2|3); +var688 = (val*)((long)(0)<<2|3); +var684 = core__flat___CString___to_s_unsafe(var683, var685, var686, var687, var688); +var682 = var684; +varonce681 = var682; } -((struct instance_core__NativeArray*)var456)->values[0]=var458; -if (likely(varonce461!=NULL)) { -var462 = varonce461; +((struct instance_core__NativeArray*)var680)->values[0]=var682; +if (likely(varonce689!=NULL)) { +var690 = varonce689; } else { -var463 = "*res = nit_alloc(sizeof(struct instance_"; -var464 = core__flat___NativeString___to_s_full(var463, 40l, 40l); -var462 = var464; -varonce461 = var462; +var691 = "*res = nit_alloc(sizeof(struct instance_"; +var693 = (val*)(40l<<2|1); +var694 = (val*)(40l<<2|1); +var695 = (val*)((long)(0)<<2|3); +var696 = (val*)((long)(0)<<2|3); +var692 = core__flat___CString___to_s_unsafe(var691, var693, var694, var695, var696); +var690 = var692; +varonce689 = var690; } -((struct instance_core__NativeArray*)var456)->values[2]=var462; -if (likely(varonce465!=NULL)) { -var466 = varonce465; +((struct instance_core__NativeArray*)var680)->values[2]=var690; +if (likely(varonce697!=NULL)) { +var698 = varonce697; } else { -var467 = "));"; -var468 = core__flat___NativeString___to_s_full(var467, 3l, 3l); -var466 = var468; -varonce465 = var466; +var699 = "));"; +var701 = (val*)(3l<<2|1); +var702 = (val*)(3l<<2|1); +var703 = (val*)((long)(0)<<2|3); +var704 = (val*)((long)(0)<<2|3); +var700 = core__flat___CString___to_s_unsafe(var699, var701, var702, var703, var704); +var698 = var700; +varonce697 = var698; } -((struct instance_core__NativeArray*)var456)->values[4]=var466; +((struct instance_core__NativeArray*)var680)->values[4]=var698; } else { -var456 = varonce455; -varonce455 = NULL; +var680 = varonce679; +varonce679 = NULL; } -((struct instance_core__NativeArray*)var456)->values[1]=var_c_name; -((struct instance_core__NativeArray*)var456)->values[3]=var_c_name; +((struct instance_core__NativeArray*)var680)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var680)->values[3]=var_c_name; { -var469 = ((val*(*)(val* self))(var456->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var456); /* native_to_s on */ +var705 = ((val*(*)(val* self))(var680->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var680); /* native_to_s on */ } -varonce455 = var456; +varonce679 = var680; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var469); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var705); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (unlikely(varonce470==NULL)) { -var471 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce472!=NULL)) { -var473 = varonce472; +if (unlikely(varonce706==NULL)) { +var707 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce708!=NULL)) { +var709 = varonce708; } else { -var474 = "class_"; -var475 = core__flat___NativeString___to_s_full(var474, 6l, 6l); -var473 = var475; -varonce472 = var473; +var710 = "class_"; +var712 = (val*)(6l<<2|1); +var713 = (val*)(6l<<2|1); +var714 = (val*)((long)(0)<<2|3); +var715 = (val*)((long)(0)<<2|3); +var711 = core__flat___CString___to_s_unsafe(var710, var712, var713, var714, var715); +var709 = var711; +varonce708 = var709; } -((struct instance_core__NativeArray*)var471)->values[0]=var473; +((struct instance_core__NativeArray*)var707)->values[0]=var709; } else { -var471 = varonce470; -varonce470 = NULL; +var707 = varonce706; +varonce706 = NULL; } -((struct instance_core__NativeArray*)var471)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var707)->values[1]=var_c_name; { -var476 = ((val*(*)(val* self))(var471->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var471); /* native_to_s on */ +var716 = ((val*(*)(val* self))(var707->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var707); /* native_to_s on */ } -varonce470 = var471; +varonce706 = var707; { -nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var476); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on */ +nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var716); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on */ } -if (unlikely(varonce477==NULL)) { -var478 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce479!=NULL)) { -var480 = varonce479; +if (unlikely(varonce717==NULL)) { +var718 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce719!=NULL)) { +var720 = varonce719; } else { -var481 = "res->class = &class_"; -var482 = core__flat___NativeString___to_s_full(var481, 20l, 20l); -var480 = var482; -varonce479 = var480; +var721 = "res->class = &class_"; +var723 = (val*)(20l<<2|1); +var724 = (val*)(20l<<2|1); +var725 = (val*)((long)(0)<<2|3); +var726 = (val*)((long)(0)<<2|3); +var722 = core__flat___CString___to_s_unsafe(var721, var723, var724, var725, var726); +var720 = var722; +varonce719 = var720; } -((struct instance_core__NativeArray*)var478)->values[0]=var480; -if (likely(varonce483!=NULL)) { -var484 = varonce483; +((struct instance_core__NativeArray*)var718)->values[0]=var720; +if (likely(varonce727!=NULL)) { +var728 = varonce727; } else { -var485 = ";"; -var486 = core__flat___NativeString___to_s_full(var485, 1l, 1l); -var484 = var486; -varonce483 = var484; +var729 = ";"; +var731 = (val*)(1l<<2|1); +var732 = (val*)(1l<<2|1); +var733 = (val*)((long)(0)<<2|3); +var734 = (val*)((long)(0)<<2|3); +var730 = core__flat___CString___to_s_unsafe(var729, var731, var732, var733, var734); +var728 = var730; +varonce727 = var728; } -((struct instance_core__NativeArray*)var478)->values[2]=var484; +((struct instance_core__NativeArray*)var718)->values[2]=var728; } else { -var478 = varonce477; -varonce477 = NULL; +var718 = varonce717; +varonce717 = NULL; } -((struct instance_core__NativeArray*)var478)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var718)->values[1]=var_c_name; { -var487 = ((val*(*)(val* self))(var478->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var478); /* native_to_s on */ +var735 = ((val*(*)(val* self))(var718->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var718); /* native_to_s on */ } -varonce477 = var478; +varonce717 = var718; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var487); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var735); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (likely(varonce488!=NULL)) { -var489 = varonce488; +if (likely(varonce736!=NULL)) { +var737 = varonce736; } else { -var490 = "res->value = value;"; -var491 = core__flat___NativeString___to_s_full(var490, 19l, 19l); -var489 = var491; -varonce488 = var489; +var738 = "res->value = value;"; +var740 = (val*)(19l<<2|1); +var741 = (val*)(19l<<2|1); +var742 = (val*)((long)(0)<<2|3); +var743 = (val*)((long)(0)<<2|3); +var739 = core__flat___CString___to_s_unsafe(var738, var740, var741, var742, var743); +var737 = var739; +varonce736 = var737; } { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var489); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var737); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (likely(varonce492!=NULL)) { -var493 = varonce492; +if (likely(varonce744!=NULL)) { +var745 = varonce744; } else { -var494 = "return (val*)res;"; -var495 = core__flat___NativeString___to_s_full(var494, 17l, 17l); -var493 = var495; -varonce492 = var493; +var746 = "return (val*)res;"; +var748 = (val*)(17l<<2|1); +var749 = (val*)(17l<<2|1); +var750 = (val*)((long)(0)<<2|3); +var751 = (val*)((long)(0)<<2|3); +var747 = core__flat___CString___to_s_unsafe(var746, var748, var749, var750, var751); +var745 = var747; +varonce744 = var745; } { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var493); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var745); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (likely(varonce496!=NULL)) { -var497 = varonce496; +if (likely(varonce752!=NULL)) { +var753 = varonce752; } else { -var498 = "}"; -var499 = core__flat___NativeString___to_s_full(var498, 1l, 1l); -var497 = var499; -varonce496 = var497; +var754 = "}"; +var756 = (val*)(1l<<2|1); +var757 = (val*)(1l<<2|1); +var758 = (val*)((long)(0)<<2|3); +var759 = (val*)((long)(0)<<2|3); +var755 = core__flat___CString___to_s_unsafe(var754, var756, var757, var758, var759); +var753 = var755; +varonce752 = var753; } { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var497); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var753); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } { -{ /* Inline model#MClassType#mclass (var_mtype) on */ -var502 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ -if (unlikely(var502 == NULL)) { +{ /* Inline model$MClassType$mclass (var_mtype) on */ +var762 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ +if (unlikely(var762 == 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, 1163); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1197); fatal_exit(1); } -var500 = var502; -RET_LABEL501:(void)0; +var760 = var762; +RET_LABEL761:(void)0; } } { -{ /* Inline model#MClass#name (var500) on */ -var505 = var500->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ -if (unlikely(var505 == NULL)) { +{ /* Inline model$MClass$name (var760) on */ +var765 = var760->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ +if (unlikely(var765 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 385); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 396); fatal_exit(1); } -var503 = var505; -RET_LABEL504:(void)0; +var763 = var765; +RET_LABEL764:(void)0; } } -if (likely(varonce506!=NULL)) { -var507 = varonce506; +if (likely(varonce766!=NULL)) { +var767 = varonce766; } else { -var508 = "Pointer"; -var509 = core__flat___NativeString___to_s_full(var508, 7l, 7l); -var507 = var509; -varonce506 = var507; +var768 = "Pointer"; +var770 = (val*)(7l<<2|1); +var771 = (val*)(7l<<2|1); +var772 = (val*)((long)(0)<<2|3); +var773 = (val*)((long)(0)<<2|3); +var769 = core__flat___CString___to_s_unsafe(var768, var770, var771, var772, var773); +var767 = var769; +varonce766 = var767; } { -{ /* Inline kernel#Object#!= (var503,var507) on */ -var_other = var507; +{ /* Inline kernel$Object$!= (var763,var767) on */ +var_other = var767; { -var512 = ((short int(*)(val* self, val* p0))(var503->class->vft[COLOR_core__kernel__Object___61d_61d]))(var503, var_other); /* == on */ +var776 = ((short int(*)(val* self, val* p0))(var763->class->vft[COLOR_core__kernel__Object___61d_61d]))(var763, var_other); /* == on */ } -var513 = !var512; -var510 = var513; -goto RET_LABEL511; -RET_LABEL511:(void)0; +var777 = !var776; +var774 = var777; +goto RET_LABEL775; +RET_LABEL775:(void)0; } } -if (var510){ +if (var774){ goto RET_LABEL; } else { } { -var514 = nitc___nitc__SeparateErasureCompiler___nitc__abstract_compiler__AbstractCompiler__new_visitor(self); +var778 = nitc___nitc__SeparateErasureCompiler___nitc__abstract_compiler__AbstractCompiler__new_visitor(self); } -var_v = var514; -if (unlikely(varonce515==NULL)) { -var516 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce517!=NULL)) { -var518 = varonce517; +var_v = var778; +if (unlikely(varonce779==NULL)) { +var780 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce781!=NULL)) { +var782 = varonce781; } else { -var519 = "NEW_"; -var520 = core__flat___NativeString___to_s_full(var519, 4l, 4l); -var518 = var520; -varonce517 = var518; +var783 = "NEW_"; +var785 = (val*)(4l<<2|1); +var786 = (val*)(4l<<2|1); +var787 = (val*)((long)(0)<<2|3); +var788 = (val*)((long)(0)<<2|3); +var784 = core__flat___CString___to_s_unsafe(var783, var785, var786, var787, var788); +var782 = var784; +varonce781 = var782; } -((struct instance_core__NativeArray*)var516)->values[0]=var518; +((struct instance_core__NativeArray*)var780)->values[0]=var782; } else { -var516 = varonce515; -varonce515 = NULL; +var780 = varonce779; +varonce779 = NULL; } -((struct instance_core__NativeArray*)var516)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var780)->values[1]=var_c_name; { -var521 = ((val*(*)(val* self))(var516->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var516); /* native_to_s on */ +var789 = ((val*(*)(val* self))(var780->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var780); /* native_to_s on */ } -varonce515 = var516; -if (unlikely(varonce522==NULL)) { -var523 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce524!=NULL)) { -var525 = varonce524; +varonce779 = var780; +if (unlikely(varonce790==NULL)) { +var791 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce792!=NULL)) { +var793 = varonce792; } else { -var526 = " NEW_"; -var527 = core__flat___NativeString___to_s_full(var526, 5l, 5l); -var525 = var527; -varonce524 = var525; +var794 = " NEW_"; +var796 = (val*)(5l<<2|1); +var797 = (val*)(5l<<2|1); +var798 = (val*)((long)(0)<<2|3); +var799 = (val*)((long)(0)<<2|3); +var795 = core__flat___CString___to_s_unsafe(var794, var796, var797, var798, var799); +var793 = var795; +varonce792 = var793; } -((struct instance_core__NativeArray*)var523)->values[1]=var525; -if (likely(varonce528!=NULL)) { -var529 = varonce528; +((struct instance_core__NativeArray*)var791)->values[1]=var793; +if (likely(varonce800!=NULL)) { +var801 = varonce800; } else { -var530 = "();"; -var531 = core__flat___NativeString___to_s_full(var530, 3l, 3l); -var529 = var531; -varonce528 = var529; +var802 = "();"; +var804 = (val*)(3l<<2|1); +var805 = (val*)(3l<<2|1); +var806 = (val*)((long)(0)<<2|3); +var807 = (val*)((long)(0)<<2|3); +var803 = core__flat___CString___to_s_unsafe(var802, var804, var805, var806, var807); +var801 = var803; +varonce800 = var801; } -((struct instance_core__NativeArray*)var523)->values[3]=var529; +((struct instance_core__NativeArray*)var791)->values[3]=var801; } else { -var523 = varonce522; -varonce522 = NULL; +var791 = varonce790; +varonce790 = NULL; } { -var532 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); +var808 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); } -((struct instance_core__NativeArray*)var523)->values[0]=var532; -((struct instance_core__NativeArray*)var523)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var791)->values[0]=var808; +((struct instance_core__NativeArray*)var791)->values[2]=var_c_name; { -var533 = ((val*(*)(val* self))(var523->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var523); /* native_to_s on */ +var809 = ((val*(*)(val* self))(var791->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var791); /* native_to_s on */ } -varonce522 = var523; +varonce790 = var791; { -nitc___nitc__AbstractCompiler___provide_declaration(self, var521, var533); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var789, var809); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } -if (unlikely(varonce534==NULL)) { -var535 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce536!=NULL)) { -var537 = varonce536; +if (unlikely(varonce810==NULL)) { +var811 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce812!=NULL)) { +var813 = varonce812; } else { -var538 = "/* allocate "; -var539 = core__flat___NativeString___to_s_full(var538, 12l, 12l); -var537 = var539; -varonce536 = var537; +var814 = "/* allocate "; +var816 = (val*)(12l<<2|1); +var817 = (val*)(12l<<2|1); +var818 = (val*)((long)(0)<<2|3); +var819 = (val*)((long)(0)<<2|3); +var815 = core__flat___CString___to_s_unsafe(var814, var816, var817, var818, var819); +var813 = var815; +varonce812 = var813; } -((struct instance_core__NativeArray*)var535)->values[0]=var537; -if (likely(varonce540!=NULL)) { -var541 = varonce540; +((struct instance_core__NativeArray*)var811)->values[0]=var813; +if (likely(varonce820!=NULL)) { +var821 = varonce820; } else { -var542 = " */"; -var543 = core__flat___NativeString___to_s_full(var542, 3l, 3l); -var541 = var543; -varonce540 = var541; +var822 = " */"; +var824 = (val*)(3l<<2|1); +var825 = (val*)(3l<<2|1); +var826 = (val*)((long)(0)<<2|3); +var827 = (val*)((long)(0)<<2|3); +var823 = core__flat___CString___to_s_unsafe(var822, var824, var825, var826, var827); +var821 = var823; +varonce820 = var821; } -((struct instance_core__NativeArray*)var535)->values[2]=var541; +((struct instance_core__NativeArray*)var811)->values[2]=var821; } else { -var535 = varonce534; -varonce534 = NULL; +var811 = varonce810; +varonce810 = NULL; } { -var544 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ +var828 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ } -((struct instance_core__NativeArray*)var535)->values[1]=var544; +((struct instance_core__NativeArray*)var811)->values[1]=var828; { -var545 = ((val*(*)(val* self))(var535->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var535); /* native_to_s on */ +var829 = ((val*(*)(val* self))(var811->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var811); /* native_to_s on */ } -varonce534 = var535; +varonce810 = var811; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var545); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var829); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce546==NULL)) { -var547 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce548!=NULL)) { -var549 = varonce548; +if (unlikely(varonce830==NULL)) { +var831 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce832!=NULL)) { +var833 = varonce832; } else { -var550 = " NEW_"; -var551 = core__flat___NativeString___to_s_full(var550, 5l, 5l); -var549 = var551; -varonce548 = var549; +var834 = " NEW_"; +var836 = (val*)(5l<<2|1); +var837 = (val*)(5l<<2|1); +var838 = (val*)((long)(0)<<2|3); +var839 = (val*)((long)(0)<<2|3); +var835 = core__flat___CString___to_s_unsafe(var834, var836, var837, var838, var839); +var833 = var835; +varonce832 = var833; } -((struct instance_core__NativeArray*)var547)->values[1]=var549; -if (likely(varonce552!=NULL)) { -var553 = varonce552; +((struct instance_core__NativeArray*)var831)->values[1]=var833; +if (likely(varonce840!=NULL)) { +var841 = varonce840; } else { -var554 = "() {"; -var555 = core__flat___NativeString___to_s_full(var554, 4l, 4l); -var553 = var555; -varonce552 = var553; +var842 = "() {"; +var844 = (val*)(4l<<2|1); +var845 = (val*)(4l<<2|1); +var846 = (val*)((long)(0)<<2|3); +var847 = (val*)((long)(0)<<2|3); +var843 = core__flat___CString___to_s_unsafe(var842, var844, var845, var846, var847); +var841 = var843; +varonce840 = var841; } -((struct instance_core__NativeArray*)var547)->values[3]=var553; +((struct instance_core__NativeArray*)var831)->values[3]=var841; } else { -var547 = varonce546; -varonce546 = NULL; +var831 = varonce830; +varonce830 = NULL; } { -var556 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); +var848 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); } -((struct instance_core__NativeArray*)var547)->values[0]=var556; -((struct instance_core__NativeArray*)var547)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var831)->values[0]=var848; +((struct instance_core__NativeArray*)var831)->values[2]=var_c_name; { -var557 = ((val*(*)(val* self))(var547->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var547); /* native_to_s on */ +var849 = ((val*(*)(val* self))(var831->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var831); /* native_to_s on */ } -varonce546 = var547; +varonce830 = var831; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var557); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var849); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } if (var_is_dead){ -if (unlikely(varonce558==NULL)) { -var559 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce560!=NULL)) { -var561 = varonce560; +if (unlikely(varonce850==NULL)) { +var851 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce852!=NULL)) { +var853 = varonce852; } else { -var562 = " is DEAD"; -var563 = core__flat___NativeString___to_s_full(var562, 8l, 8l); -var561 = var563; -varonce560 = var561; +var854 = " is DEAD"; +var856 = (val*)(8l<<2|1); +var857 = (val*)(8l<<2|1); +var858 = (val*)((long)(0)<<2|3); +var859 = (val*)((long)(0)<<2|3); +var855 = core__flat___CString___to_s_unsafe(var854, var856, var857, var858, var859); +var853 = var855; +varonce852 = var853; } -((struct instance_core__NativeArray*)var559)->values[1]=var561; +((struct instance_core__NativeArray*)var851)->values[1]=var853; } else { -var559 = varonce558; -varonce558 = NULL; +var851 = varonce850; +varonce850 = NULL; } { -var564 = ((val*(*)(val* self))(var_mclass->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mclass); /* to_s on */ +var860 = ((val*(*)(val* self))(var_mclass->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mclass); /* to_s on */ } -((struct instance_core__NativeArray*)var559)->values[0]=var564; +((struct instance_core__NativeArray*)var851)->values[0]=var860; { -var565 = ((val*(*)(val* self))(var559->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var559); /* native_to_s on */ +var861 = ((val*(*)(val* self))(var851->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var851); /* native_to_s on */ } -varonce558 = var559; +varonce850 = var851; { -nitc___nitc__AbstractCompilerVisitor___add_abort(var_v, var565); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on */ +nitc___nitc__AbstractCompilerVisitor___add_abort(var_v, var861); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_abort on */ } } else { -if (likely(varonce566!=NULL)) { -var567 = varonce566; +if (likely(varonce862!=NULL)) { +var863 = varonce862; } else { -var568 = "self"; -var569 = core__flat___NativeString___to_s_full(var568, 4l, 4l); -var567 = var569; -varonce566 = var567; +var864 = "self"; +var866 = (val*)(4l<<2|1); +var867 = (val*)(4l<<2|1); +var868 = (val*)((long)(0)<<2|3); +var869 = (val*)((long)(0)<<2|3); +var865 = core__flat___CString___to_s_unsafe(var864, var866, var867, var868, var869); +var863 = var865; +varonce862 = var863; } { -var570 = nitc___nitc__AbstractCompilerVisitor___new_named_var(var_v, var_mtype, var567); +var870 = nitc___nitc__AbstractCompilerVisitor___new_named_var(var_v, var_mtype, var863); } -var_res = var570; +var_res = var870; { -{ /* Inline abstract_compiler#RuntimeVariable#is_exact= (var_res,1) on */ +{ /* Inline abstract_compiler$RuntimeVariable$is_exact= (var_res,1) on */ var_res->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___is_exact].s = 1; /* _is_exact on */ -RET_LABEL571:(void)0; +RET_LABEL871:(void)0; } } -if (unlikely(varonce572==NULL)) { -var573 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce574!=NULL)) { -var575 = varonce574; +if (unlikely(varonce872==NULL)) { +var873 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce874!=NULL)) { +var875 = varonce874; } else { -var576 = " = nit_alloc(sizeof(struct instance_"; -var577 = core__flat___NativeString___to_s_full(var576, 36l, 36l); -var575 = var577; -varonce574 = var575; +var876 = " = nit_alloc(sizeof(struct instance_"; +var878 = (val*)(36l<<2|1); +var879 = (val*)(36l<<2|1); +var880 = (val*)((long)(0)<<2|3); +var881 = (val*)((long)(0)<<2|3); +var877 = core__flat___CString___to_s_unsafe(var876, var878, var879, var880, var881); +var875 = var877; +varonce874 = var875; } -((struct instance_core__NativeArray*)var573)->values[1]=var575; -if (likely(varonce578!=NULL)) { -var579 = varonce578; +((struct instance_core__NativeArray*)var873)->values[1]=var875; +if (likely(varonce882!=NULL)) { +var883 = varonce882; } else { -var580 = "));"; -var581 = core__flat___NativeString___to_s_full(var580, 3l, 3l); -var579 = var581; -varonce578 = var579; +var884 = "));"; +var886 = (val*)(3l<<2|1); +var887 = (val*)(3l<<2|1); +var888 = (val*)((long)(0)<<2|3); +var889 = (val*)((long)(0)<<2|3); +var885 = core__flat___CString___to_s_unsafe(var884, var886, var887, var888, var889); +var883 = var885; +varonce882 = var883; } -((struct instance_core__NativeArray*)var573)->values[3]=var579; +((struct instance_core__NativeArray*)var873)->values[3]=var883; } else { -var573 = varonce572; -varonce572 = NULL; +var873 = varonce872; +varonce872 = NULL; } { -var582 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on */ +var890 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on */ } -((struct instance_core__NativeArray*)var573)->values[0]=var582; +((struct instance_core__NativeArray*)var873)->values[0]=var890; { -var583 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_mtype); /* c_name on */ +var891 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_mtype); /* c_name on */ } -((struct instance_core__NativeArray*)var573)->values[2]=var583; +((struct instance_core__NativeArray*)var873)->values[2]=var891; { -var584 = ((val*(*)(val* self))(var573->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var573); /* native_to_s on */ +var892 = ((val*(*)(val* self))(var873->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var873); /* native_to_s on */ } -varonce572 = var573; +varonce872 = var873; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var584); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var892); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (unlikely(varonce585==NULL)) { -var586 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce587!=NULL)) { -var588 = varonce587; +if (unlikely(varonce893==NULL)) { +var894 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce895!=NULL)) { +var896 = varonce895; } else { -var589 = "class_"; -var590 = core__flat___NativeString___to_s_full(var589, 6l, 6l); -var588 = var590; -varonce587 = var588; +var897 = "class_"; +var899 = (val*)(6l<<2|1); +var900 = (val*)(6l<<2|1); +var901 = (val*)((long)(0)<<2|3); +var902 = (val*)((long)(0)<<2|3); +var898 = core__flat___CString___to_s_unsafe(var897, var899, var900, var901, var902); +var896 = var898; +varonce895 = var896; } -((struct instance_core__NativeArray*)var586)->values[0]=var588; +((struct instance_core__NativeArray*)var894)->values[0]=var896; } else { -var586 = varonce585; -varonce585 = NULL; +var894 = varonce893; +varonce893 = NULL; } -((struct instance_core__NativeArray*)var586)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var894)->values[1]=var_c_name; { -var591 = ((val*(*)(val* self))(var586->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var586); /* native_to_s on */ +var903 = ((val*(*)(val* self))(var894->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var894); /* native_to_s on */ } -varonce585 = var586; +varonce893 = var894; { -nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var591); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on */ +nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var903); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on */ } -if (unlikely(varonce592==NULL)) { -var593 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce594!=NULL)) { -var595 = varonce594; +if (unlikely(varonce904==NULL)) { +var905 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce906!=NULL)) { +var907 = varonce906; } else { -var596 = "->class = &class_"; -var597 = core__flat___NativeString___to_s_full(var596, 17l, 17l); -var595 = var597; -varonce594 = var595; +var908 = "->class = &class_"; +var910 = (val*)(17l<<2|1); +var911 = (val*)(17l<<2|1); +var912 = (val*)((long)(0)<<2|3); +var913 = (val*)((long)(0)<<2|3); +var909 = core__flat___CString___to_s_unsafe(var908, var910, var911, var912, var913); +var907 = var909; +varonce906 = var907; } -((struct instance_core__NativeArray*)var593)->values[1]=var595; -if (likely(varonce598!=NULL)) { -var599 = varonce598; +((struct instance_core__NativeArray*)var905)->values[1]=var907; +if (likely(varonce914!=NULL)) { +var915 = varonce914; } else { -var600 = ";"; -var601 = core__flat___NativeString___to_s_full(var600, 1l, 1l); -var599 = var601; -varonce598 = var599; +var916 = ";"; +var918 = (val*)(1l<<2|1); +var919 = (val*)(1l<<2|1); +var920 = (val*)((long)(0)<<2|3); +var921 = (val*)((long)(0)<<2|3); +var917 = core__flat___CString___to_s_unsafe(var916, var918, var919, var920, var921); +var915 = var917; +varonce914 = var915; } -((struct instance_core__NativeArray*)var593)->values[3]=var599; +((struct instance_core__NativeArray*)var905)->values[3]=var915; } else { -var593 = varonce592; -varonce592 = NULL; +var905 = varonce904; +varonce904 = NULL; } { -var602 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on */ +var922 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on */ } -((struct instance_core__NativeArray*)var593)->values[0]=var602; -((struct instance_core__NativeArray*)var593)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var905)->values[0]=var922; +((struct instance_core__NativeArray*)var905)->values[2]=var_c_name; { -var603 = ((val*(*)(val* self))(var593->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var593); /* native_to_s on */ +var923 = ((val*(*)(val* self))(var905->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var905); /* native_to_s on */ } -varonce592 = var593; +varonce904 = var905; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var603); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var923); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (unlikely(varonce604==NULL)) { -var605 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce606!=NULL)) { -var607 = varonce606; +if (unlikely(varonce924==NULL)) { +var925 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String); +if (likely(varonce926!=NULL)) { +var927 = varonce926; } else { -var608 = "((struct instance_"; -var609 = core__flat___NativeString___to_s_full(var608, 18l, 18l); -var607 = var609; -varonce606 = var607; +var928 = "((struct instance_"; +var930 = (val*)(18l<<2|1); +var931 = (val*)(18l<<2|1); +var932 = (val*)((long)(0)<<2|3); +var933 = (val*)((long)(0)<<2|3); +var929 = core__flat___CString___to_s_unsafe(var928, var930, var931, var932, var933); +var927 = var929; +varonce926 = var927; } -((struct instance_core__NativeArray*)var605)->values[0]=var607; -if (likely(varonce610!=NULL)) { -var611 = varonce610; +((struct instance_core__NativeArray*)var925)->values[0]=var927; +if (likely(varonce934!=NULL)) { +var935 = varonce934; } else { -var612 = "*)"; -var613 = core__flat___NativeString___to_s_full(var612, 2l, 2l); -var611 = var613; -varonce610 = var611; +var936 = "*)"; +var938 = (val*)(2l<<2|1); +var939 = (val*)(2l<<2|1); +var940 = (val*)((long)(0)<<2|3); +var941 = (val*)((long)(0)<<2|3); +var937 = core__flat___CString___to_s_unsafe(var936, var938, var939, var940, var941); +var935 = var937; +varonce934 = var935; } -((struct instance_core__NativeArray*)var605)->values[2]=var611; -if (likely(varonce614!=NULL)) { -var615 = varonce614; +((struct instance_core__NativeArray*)var925)->values[2]=var935; +if (likely(varonce942!=NULL)) { +var943 = varonce942; } else { -var616 = ")->value = NULL;"; -var617 = core__flat___NativeString___to_s_full(var616, 16l, 16l); -var615 = var617; -varonce614 = var615; +var944 = ")->value = NULL;"; +var946 = (val*)(16l<<2|1); +var947 = (val*)(16l<<2|1); +var948 = (val*)((long)(0)<<2|3); +var949 = (val*)((long)(0)<<2|3); +var945 = core__flat___CString___to_s_unsafe(var944, var946, var947, var948, var949); +var943 = var945; +varonce942 = var943; } -((struct instance_core__NativeArray*)var605)->values[4]=var615; +((struct instance_core__NativeArray*)var925)->values[4]=var943; } else { -var605 = varonce604; -varonce604 = NULL; +var925 = varonce924; +varonce924 = NULL; } { -var618 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_mtype); /* c_name on */ +var950 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_mtype); /* c_name on */ } -((struct instance_core__NativeArray*)var605)->values[1]=var618; +((struct instance_core__NativeArray*)var925)->values[1]=var950; { -var619 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on */ +var951 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on */ } -((struct instance_core__NativeArray*)var605)->values[3]=var619; +((struct instance_core__NativeArray*)var925)->values[3]=var951; { -var620 = ((val*(*)(val* self))(var605->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var605); /* native_to_s on */ +var952 = ((val*(*)(val* self))(var925->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var925); /* native_to_s on */ } -varonce604 = var605; +varonce924 = var925; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var620); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var952); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (unlikely(varonce621==NULL)) { -var622 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce623!=NULL)) { -var624 = varonce623; +if (unlikely(varonce953==NULL)) { +var954 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce955!=NULL)) { +var956 = varonce955; } else { -var625 = "return "; -var626 = core__flat___NativeString___to_s_full(var625, 7l, 7l); -var624 = var626; -varonce623 = var624; +var957 = "return "; +var959 = (val*)(7l<<2|1); +var960 = (val*)(7l<<2|1); +var961 = (val*)((long)(0)<<2|3); +var962 = (val*)((long)(0)<<2|3); +var958 = core__flat___CString___to_s_unsafe(var957, var959, var960, var961, var962); +var956 = var958; +varonce955 = var956; } -((struct instance_core__NativeArray*)var622)->values[0]=var624; -if (likely(varonce627!=NULL)) { -var628 = varonce627; +((struct instance_core__NativeArray*)var954)->values[0]=var956; +if (likely(varonce963!=NULL)) { +var964 = varonce963; } else { -var629 = ";"; -var630 = core__flat___NativeString___to_s_full(var629, 1l, 1l); -var628 = var630; -varonce627 = var628; +var965 = ";"; +var967 = (val*)(1l<<2|1); +var968 = (val*)(1l<<2|1); +var969 = (val*)((long)(0)<<2|3); +var970 = (val*)((long)(0)<<2|3); +var966 = core__flat___CString___to_s_unsafe(var965, var967, var968, var969, var970); +var964 = var966; +varonce963 = var964; } -((struct instance_core__NativeArray*)var622)->values[2]=var628; +((struct instance_core__NativeArray*)var954)->values[2]=var964; } else { -var622 = varonce621; -varonce621 = NULL; +var954 = varonce953; +varonce953 = NULL; } { -var631 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on */ +var971 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on */ } -((struct instance_core__NativeArray*)var622)->values[1]=var631; +((struct instance_core__NativeArray*)var954)->values[1]=var971; { -var632 = ((val*(*)(val* self))(var622->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var622); /* native_to_s on */ +var972 = ((val*(*)(val* self))(var954->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var954); /* native_to_s on */ } -varonce621 = var622; +varonce953 = var954; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var632); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var972); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } } -if (likely(varonce633!=NULL)) { -var634 = varonce633; +if (likely(varonce973!=NULL)) { +var974 = varonce973; } else { -var635 = "}"; -var636 = core__flat___NativeString___to_s_full(var635, 1l, 1l); -var634 = var636; -varonce633 = var634; +var975 = "}"; +var977 = (val*)(1l<<2|1); +var978 = (val*)(1l<<2|1); +var979 = (val*)((long)(0)<<2|3); +var980 = (val*)((long)(0)<<2|3); +var976 = core__flat___CString___to_s_unsafe(var975, var977, var978, var979, var980); +var974 = var976; +varonce973 = var974; } { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var634); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var974); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } goto RET_LABEL; } else { { -{ /* Inline model#MClass#name (var_mclass) on */ -var639 = var_mclass->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ -if (unlikely(var639 == NULL)) { +{ /* Inline model$MClass$name (var_mclass) on */ +var983 = var_mclass->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ +if (unlikely(var983 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 385); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 396); fatal_exit(1); } -var637 = var639; -RET_LABEL638:(void)0; +var981 = var983; +RET_LABEL982:(void)0; } } -if (likely(varonce640!=NULL)) { -var641 = varonce640; +if (likely(varonce984!=NULL)) { +var985 = varonce984; } else { -var642 = "NativeArray"; -var643 = core__flat___NativeString___to_s_full(var642, 11l, 11l); -var641 = var643; -varonce640 = var641; +var986 = "NativeArray"; +var988 = (val*)(11l<<2|1); +var989 = (val*)(11l<<2|1); +var990 = (val*)((long)(0)<<2|3); +var991 = (val*)((long)(0)<<2|3); +var987 = core__flat___CString___to_s_unsafe(var986, var988, var989, var990, var991); +var985 = var987; +varonce984 = var985; } { -var644 = ((short int(*)(val* self, val* p0))(var637->class->vft[COLOR_core__kernel__Object___61d_61d]))(var637, var641); /* == on */ +var992 = ((short int(*)(val* self, val* p0))(var981->class->vft[COLOR_core__kernel__Object___61d_61d]))(var981, var985); /* == on */ } -if (var644){ +if (var992){ { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var647 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var647 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var995 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var995 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var645 = var647; -RET_LABEL646:(void)0; +var993 = var995; +RET_LABEL994:(void)0; } } -if (unlikely(varonce648==NULL)) { -var649 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce650!=NULL)) { -var651 = varonce650; +if (unlikely(varonce996==NULL)) { +var997 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce998!=NULL)) { +var999 = varonce998; } else { -var652 = "struct instance_"; -var653 = core__flat___NativeString___to_s_full(var652, 16l, 16l); -var651 = var653; -varonce650 = var651; +var1000 = "struct instance_"; +var1002 = (val*)(16l<<2|1); +var1003 = (val*)(16l<<2|1); +var1004 = (val*)((long)(0)<<2|3); +var1005 = (val*)((long)(0)<<2|3); +var1001 = core__flat___CString___to_s_unsafe(var1000, var1002, var1003, var1004, var1005); +var999 = var1001; +varonce998 = var999; } -((struct instance_core__NativeArray*)var649)->values[0]=var651; -if (likely(varonce654!=NULL)) { -var655 = varonce654; +((struct instance_core__NativeArray*)var997)->values[0]=var999; +if (likely(varonce1006!=NULL)) { +var1007 = varonce1006; } else { -var656 = " {"; -var657 = core__flat___NativeString___to_s_full(var656, 2l, 2l); -var655 = var657; -varonce654 = var655; +var1008 = " {"; +var1010 = (val*)(2l<<2|1); +var1011 = (val*)(2l<<2|1); +var1012 = (val*)((long)(0)<<2|3); +var1013 = (val*)((long)(0)<<2|3); +var1009 = core__flat___CString___to_s_unsafe(var1008, var1010, var1011, var1012, var1013); +var1007 = var1009; +varonce1006 = var1007; } -((struct instance_core__NativeArray*)var649)->values[2]=var655; +((struct instance_core__NativeArray*)var997)->values[2]=var1007; } else { -var649 = varonce648; -varonce648 = NULL; +var997 = varonce996; +varonce996 = NULL; } -((struct instance_core__NativeArray*)var649)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var997)->values[1]=var_c_name; { -var658 = ((val*(*)(val* self))(var649->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var649); /* native_to_s on */ +var1014 = ((val*(*)(val* self))(var997->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var997); /* native_to_s on */ } -varonce648 = var649; +varonce996 = var997; { -nitc___nitc__CodeWriter___add_decl(var645, var658); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var993, var1014); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var661 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var661 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var1017 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var1017 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var659 = var661; -RET_LABEL660:(void)0; +var1015 = var1017; +RET_LABEL1016:(void)0; } } -if (likely(varonce662!=NULL)) { -var663 = varonce662; +if (likely(varonce1018!=NULL)) { +var1019 = varonce1018; } else { -var664 = "const struct class *class;"; -var665 = core__flat___NativeString___to_s_full(var664, 26l, 26l); -var663 = var665; -varonce662 = var663; +var1020 = "const struct class *class;"; +var1022 = (val*)(26l<<2|1); +var1023 = (val*)(26l<<2|1); +var1024 = (val*)((long)(0)<<2|3); +var1025 = (val*)((long)(0)<<2|3); +var1021 = core__flat___CString___to_s_unsafe(var1020, var1022, var1023, var1024, var1025); +var1019 = var1021; +varonce1018 = var1019; } { -nitc___nitc__CodeWriter___add_decl(var659, var663); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var1015, var1019); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var668 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var668 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var1028 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var1028 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var666 = var668; -RET_LABEL667:(void)0; +var1026 = var1028; +RET_LABEL1027:(void)0; } } -if (likely(varonce669!=NULL)) { -var670 = varonce669; +if (likely(varonce1029!=NULL)) { +var1030 = varonce1029; } else { -var671 = "int length;"; -var672 = core__flat___NativeString___to_s_full(var671, 11l, 11l); -var670 = var672; -varonce669 = var670; +var1031 = "int length;"; +var1033 = (val*)(11l<<2|1); +var1034 = (val*)(11l<<2|1); +var1035 = (val*)((long)(0)<<2|3); +var1036 = (val*)((long)(0)<<2|3); +var1032 = core__flat___CString___to_s_unsafe(var1031, var1033, var1034, var1035, var1036); +var1030 = var1032; +varonce1029 = var1030; } { -nitc___nitc__CodeWriter___add_decl(var666, var670); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var1026, var1030); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var675 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var675 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var1039 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var1039 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var673 = var675; -RET_LABEL674:(void)0; +var1037 = var1039; +RET_LABEL1038:(void)0; } } -if (likely(varonce676!=NULL)) { -var677 = varonce676; +if (likely(varonce1040!=NULL)) { +var1041 = varonce1040; } else { -var678 = "val* values[];"; -var679 = core__flat___NativeString___to_s_full(var678, 14l, 14l); -var677 = var679; -varonce676 = var677; +var1042 = "val* values[];"; +var1044 = (val*)(14l<<2|1); +var1045 = (val*)(14l<<2|1); +var1046 = (val*)((long)(0)<<2|3); +var1047 = (val*)((long)(0)<<2|3); +var1043 = core__flat___CString___to_s_unsafe(var1042, var1044, var1045, var1046, var1047); +var1041 = var1043; +varonce1040 = var1041; } { -nitc___nitc__CodeWriter___add_decl(var673, var677); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var1037, var1041); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var682 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var682 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var1050 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var1050 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 585); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 599); fatal_exit(1); } -var680 = var682; -RET_LABEL681:(void)0; +var1048 = var1050; +RET_LABEL1049:(void)0; } } -if (likely(varonce683!=NULL)) { -var684 = varonce683; +if (likely(varonce1051!=NULL)) { +var1052 = varonce1051; } else { -var685 = "};"; -var686 = core__flat___NativeString___to_s_full(var685, 2l, 2l); -var684 = var686; -varonce683 = var684; +var1053 = "};"; +var1055 = (val*)(2l<<2|1); +var1056 = (val*)(2l<<2|1); +var1057 = (val*)((long)(0)<<2|3); +var1058 = (val*)((long)(0)<<2|3); +var1054 = core__flat___CString___to_s_unsafe(var1053, var1055, var1056, var1057, var1058); +var1052 = var1054; +varonce1051 = var1052; } { -nitc___nitc__CodeWriter___add_decl(var680, var684); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var1048, var1052); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } -if (unlikely(varonce687==NULL)) { -var688 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce689!=NULL)) { -var690 = varonce689; +if (unlikely(varonce1059==NULL)) { +var1060 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce1061!=NULL)) { +var1062 = varonce1061; } else { -var691 = "NEW_"; -var692 = core__flat___NativeString___to_s_full(var691, 4l, 4l); -var690 = var692; -varonce689 = var690; +var1063 = "NEW_"; +var1065 = (val*)(4l<<2|1); +var1066 = (val*)(4l<<2|1); +var1067 = (val*)((long)(0)<<2|3); +var1068 = (val*)((long)(0)<<2|3); +var1064 = core__flat___CString___to_s_unsafe(var1063, var1065, var1066, var1067, var1068); +var1062 = var1064; +varonce1061 = var1062; } -((struct instance_core__NativeArray*)var688)->values[0]=var690; +((struct instance_core__NativeArray*)var1060)->values[0]=var1062; } else { -var688 = varonce687; -varonce687 = NULL; +var1060 = varonce1059; +varonce1059 = NULL; } -((struct instance_core__NativeArray*)var688)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var1060)->values[1]=var_c_name; { -var693 = ((val*(*)(val* self))(var688->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var688); /* native_to_s on */ +var1069 = ((val*(*)(val* self))(var1060->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1060); /* native_to_s on */ } -varonce687 = var688; -if (unlikely(varonce694==NULL)) { -var695 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce696!=NULL)) { -var697 = varonce696; +varonce1059 = var1060; +if (unlikely(varonce1070==NULL)) { +var1071 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1072!=NULL)) { +var1073 = varonce1072; } else { -var698 = " NEW_"; -var699 = core__flat___NativeString___to_s_full(var698, 5l, 5l); -var697 = var699; -varonce696 = var697; +var1074 = " NEW_"; +var1076 = (val*)(5l<<2|1); +var1077 = (val*)(5l<<2|1); +var1078 = (val*)((long)(0)<<2|3); +var1079 = (val*)((long)(0)<<2|3); +var1075 = core__flat___CString___to_s_unsafe(var1074, var1076, var1077, var1078, var1079); +var1073 = var1075; +varonce1072 = var1073; } -((struct instance_core__NativeArray*)var695)->values[1]=var697; -if (likely(varonce700!=NULL)) { -var701 = varonce700; +((struct instance_core__NativeArray*)var1071)->values[1]=var1073; +if (likely(varonce1080!=NULL)) { +var1081 = varonce1080; } else { -var702 = "(int length);"; -var703 = core__flat___NativeString___to_s_full(var702, 13l, 13l); -var701 = var703; -varonce700 = var701; +var1082 = "(int length);"; +var1084 = (val*)(13l<<2|1); +var1085 = (val*)(13l<<2|1); +var1086 = (val*)((long)(0)<<2|3); +var1087 = (val*)((long)(0)<<2|3); +var1083 = core__flat___CString___to_s_unsafe(var1082, var1084, var1085, var1086, var1087); +var1081 = var1083; +varonce1080 = var1081; } -((struct instance_core__NativeArray*)var695)->values[3]=var701; +((struct instance_core__NativeArray*)var1071)->values[3]=var1081; } else { -var695 = varonce694; -varonce694 = NULL; +var1071 = varonce1070; +varonce1070 = NULL; } { -var704 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); +var1088 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); } -((struct instance_core__NativeArray*)var695)->values[0]=var704; -((struct instance_core__NativeArray*)var695)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var1071)->values[0]=var1088; +((struct instance_core__NativeArray*)var1071)->values[2]=var_c_name; { -var705 = ((val*(*)(val* self))(var695->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var695); /* native_to_s on */ +var1089 = ((val*(*)(val* self))(var1071->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1071); /* native_to_s on */ } -varonce694 = var695; +varonce1070 = var1071; { -nitc___nitc__AbstractCompiler___provide_declaration(self, var693, var705); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var1069, var1089); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } -if (unlikely(varonce706==NULL)) { -var707 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce708!=NULL)) { -var709 = varonce708; +if (unlikely(varonce1090==NULL)) { +var1091 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce1092!=NULL)) { +var1093 = varonce1092; } else { -var710 = "/* allocate "; -var711 = core__flat___NativeString___to_s_full(var710, 12l, 12l); -var709 = var711; -varonce708 = var709; +var1094 = "/* allocate "; +var1096 = (val*)(12l<<2|1); +var1097 = (val*)(12l<<2|1); +var1098 = (val*)((long)(0)<<2|3); +var1099 = (val*)((long)(0)<<2|3); +var1095 = core__flat___CString___to_s_unsafe(var1094, var1096, var1097, var1098, var1099); +var1093 = var1095; +varonce1092 = var1093; } -((struct instance_core__NativeArray*)var707)->values[0]=var709; -if (likely(varonce712!=NULL)) { -var713 = varonce712; +((struct instance_core__NativeArray*)var1091)->values[0]=var1093; +if (likely(varonce1100!=NULL)) { +var1101 = varonce1100; } else { -var714 = " */"; -var715 = core__flat___NativeString___to_s_full(var714, 3l, 3l); -var713 = var715; -varonce712 = var713; +var1102 = " */"; +var1104 = (val*)(3l<<2|1); +var1105 = (val*)(3l<<2|1); +var1106 = (val*)((long)(0)<<2|3); +var1107 = (val*)((long)(0)<<2|3); +var1103 = core__flat___CString___to_s_unsafe(var1102, var1104, var1105, var1106, var1107); +var1101 = var1103; +varonce1100 = var1101; } -((struct instance_core__NativeArray*)var707)->values[2]=var713; +((struct instance_core__NativeArray*)var1091)->values[2]=var1101; } else { -var707 = varonce706; -varonce706 = NULL; +var1091 = varonce1090; +varonce1090 = NULL; } { -var716 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ +var1108 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ } -((struct instance_core__NativeArray*)var707)->values[1]=var716; +((struct instance_core__NativeArray*)var1091)->values[1]=var1108; { -var717 = ((val*(*)(val* self))(var707->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var707); /* native_to_s on */ +var1109 = ((val*(*)(val* self))(var1091->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1091); /* native_to_s on */ } -varonce706 = var707; +varonce1090 = var1091; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var717); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var1109); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce718==NULL)) { -var719 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce720!=NULL)) { -var721 = varonce720; +if (unlikely(varonce1110==NULL)) { +var1111 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1112!=NULL)) { +var1113 = varonce1112; } else { -var722 = " NEW_"; -var723 = core__flat___NativeString___to_s_full(var722, 5l, 5l); -var721 = var723; -varonce720 = var721; +var1114 = " NEW_"; +var1116 = (val*)(5l<<2|1); +var1117 = (val*)(5l<<2|1); +var1118 = (val*)((long)(0)<<2|3); +var1119 = (val*)((long)(0)<<2|3); +var1115 = core__flat___CString___to_s_unsafe(var1114, var1116, var1117, var1118, var1119); +var1113 = var1115; +varonce1112 = var1113; } -((struct instance_core__NativeArray*)var719)->values[1]=var721; -if (likely(varonce724!=NULL)) { -var725 = varonce724; +((struct instance_core__NativeArray*)var1111)->values[1]=var1113; +if (likely(varonce1120!=NULL)) { +var1121 = varonce1120; } else { -var726 = "(int length) {"; -var727 = core__flat___NativeString___to_s_full(var726, 14l, 14l); -var725 = var727; -varonce724 = var725; +var1122 = "(int length) {"; +var1124 = (val*)(14l<<2|1); +var1125 = (val*)(14l<<2|1); +var1126 = (val*)((long)(0)<<2|3); +var1127 = (val*)((long)(0)<<2|3); +var1123 = core__flat___CString___to_s_unsafe(var1122, var1124, var1125, var1126, var1127); +var1121 = var1123; +varonce1120 = var1121; } -((struct instance_core__NativeArray*)var719)->values[3]=var725; +((struct instance_core__NativeArray*)var1111)->values[3]=var1121; } else { -var719 = varonce718; -varonce718 = NULL; +var1111 = varonce1110; +varonce1110 = NULL; } { -var728 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); +var1128 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); } -((struct instance_core__NativeArray*)var719)->values[0]=var728; -((struct instance_core__NativeArray*)var719)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var1111)->values[0]=var1128; +((struct instance_core__NativeArray*)var1111)->values[2]=var_c_name; { -var729 = ((val*(*)(val* self))(var719->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var719); /* native_to_s on */ +var1129 = ((val*(*)(val* self))(var1111->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1111); /* native_to_s on */ } -varonce718 = var719; +varonce1110 = var1111; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var729); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var1129); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (likely(varonce730!=NULL)) { -var731 = varonce730; +if (likely(varonce1130!=NULL)) { +var1131 = varonce1130; } else { -var732 = "self"; -var733 = core__flat___NativeString___to_s_full(var732, 4l, 4l); -var731 = var733; -varonce730 = var731; +var1132 = "self"; +var1134 = (val*)(4l<<2|1); +var1135 = (val*)(4l<<2|1); +var1136 = (val*)((long)(0)<<2|3); +var1137 = (val*)((long)(0)<<2|3); +var1133 = core__flat___CString___to_s_unsafe(var1132, var1134, var1135, var1136, var1137); +var1131 = var1133; +varonce1130 = var1131; } { -var734 = nitc___nitc__AbstractCompilerVisitor___get_name(var_v, var731); -} -var_res735 = var734; -if (unlikely(varonce736==NULL)) { -var737 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce738!=NULL)) { -var739 = varonce738; +var1138 = nitc___nitc__AbstractCompilerVisitor___get_name(var_v, var1131); +} +var_res1139 = var1138; +if (unlikely(varonce1140==NULL)) { +var1141 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String); +if (likely(varonce1142!=NULL)) { +var1143 = varonce1142; } else { -var740 = "struct instance_"; -var741 = core__flat___NativeString___to_s_full(var740, 16l, 16l); -var739 = var741; -varonce738 = var739; +var1144 = "struct instance_"; +var1146 = (val*)(16l<<2|1); +var1147 = (val*)(16l<<2|1); +var1148 = (val*)((long)(0)<<2|3); +var1149 = (val*)((long)(0)<<2|3); +var1145 = core__flat___CString___to_s_unsafe(var1144, var1146, var1147, var1148, var1149); +var1143 = var1145; +varonce1142 = var1143; } -((struct instance_core__NativeArray*)var737)->values[0]=var739; -if (likely(varonce742!=NULL)) { -var743 = varonce742; +((struct instance_core__NativeArray*)var1141)->values[0]=var1143; +if (likely(varonce1150!=NULL)) { +var1151 = varonce1150; } else { -var744 = " *"; -var745 = core__flat___NativeString___to_s_full(var744, 2l, 2l); -var743 = var745; -varonce742 = var743; +var1152 = " *"; +var1154 = (val*)(2l<<2|1); +var1155 = (val*)(2l<<2|1); +var1156 = (val*)((long)(0)<<2|3); +var1157 = (val*)((long)(0)<<2|3); +var1153 = core__flat___CString___to_s_unsafe(var1152, var1154, var1155, var1156, var1157); +var1151 = var1153; +varonce1150 = var1151; } -((struct instance_core__NativeArray*)var737)->values[2]=var743; -if (likely(varonce746!=NULL)) { -var747 = varonce746; +((struct instance_core__NativeArray*)var1141)->values[2]=var1151; +if (likely(varonce1158!=NULL)) { +var1159 = varonce1158; } else { -var748 = ";"; -var749 = core__flat___NativeString___to_s_full(var748, 1l, 1l); -var747 = var749; -varonce746 = var747; +var1160 = ";"; +var1162 = (val*)(1l<<2|1); +var1163 = (val*)(1l<<2|1); +var1164 = (val*)((long)(0)<<2|3); +var1165 = (val*)((long)(0)<<2|3); +var1161 = core__flat___CString___to_s_unsafe(var1160, var1162, var1163, var1164, var1165); +var1159 = var1161; +varonce1158 = var1159; } -((struct instance_core__NativeArray*)var737)->values[4]=var747; +((struct instance_core__NativeArray*)var1141)->values[4]=var1159; } else { -var737 = varonce736; -varonce736 = NULL; +var1141 = varonce1140; +varonce1140 = NULL; } -((struct instance_core__NativeArray*)var737)->values[1]=var_c_name; -((struct instance_core__NativeArray*)var737)->values[3]=var_res735; +((struct instance_core__NativeArray*)var1141)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var1141)->values[3]=var_res1139; { -var750 = ((val*(*)(val* self))(var737->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var737); /* native_to_s on */ +var1166 = ((val*(*)(val* self))(var1141->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1141); /* native_to_s on */ } -varonce736 = var737; +varonce1140 = var1141; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var750); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var1166); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } { -var751 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model__MClassType__arguments]))(var_mtype); /* arguments on */ +var1167 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model__MClassType__arguments]))(var_mtype); /* arguments on */ } { -var752 = core___core__SequenceRead___Collection__first(var751); +var1168 = core___core__SequenceRead___Collection__first(var1167); } -var_mtype_elt = var752; -if (unlikely(varonce753==NULL)) { -var754 = NEW_core__NativeArray(6l, &type_core__NativeArray__core__String); -if (likely(varonce755!=NULL)) { -var756 = varonce755; +var_mtype_elt = var1168; +if (unlikely(varonce1169==NULL)) { +var1170 = NEW_core__NativeArray((int)6l, &type_core__NativeArray__core__String); +if (likely(varonce1171!=NULL)) { +var1172 = varonce1171; } else { -var757 = " = nit_alloc(sizeof(struct instance_"; -var758 = core__flat___NativeString___to_s_full(var757, 36l, 36l); -var756 = var758; -varonce755 = var756; +var1173 = " = nit_alloc(sizeof(struct instance_"; +var1175 = (val*)(36l<<2|1); +var1176 = (val*)(36l<<2|1); +var1177 = (val*)((long)(0)<<2|3); +var1178 = (val*)((long)(0)<<2|3); +var1174 = core__flat___CString___to_s_unsafe(var1173, var1175, var1176, var1177, var1178); +var1172 = var1174; +varonce1171 = var1172; } -((struct instance_core__NativeArray*)var754)->values[1]=var756; -if (likely(varonce759!=NULL)) { -var760 = varonce759; +((struct instance_core__NativeArray*)var1170)->values[1]=var1172; +if (likely(varonce1179!=NULL)) { +var1180 = varonce1179; } else { -var761 = ") + length*sizeof("; -var762 = core__flat___NativeString___to_s_full(var761, 18l, 18l); -var760 = var762; -varonce759 = var760; +var1181 = ") + length*sizeof("; +var1183 = (val*)(18l<<2|1); +var1184 = (val*)(18l<<2|1); +var1185 = (val*)((long)(0)<<2|3); +var1186 = (val*)((long)(0)<<2|3); +var1182 = core__flat___CString___to_s_unsafe(var1181, var1183, var1184, var1185, var1186); +var1180 = var1182; +varonce1179 = var1180; } -((struct instance_core__NativeArray*)var754)->values[3]=var760; -if (likely(varonce763!=NULL)) { -var764 = varonce763; +((struct instance_core__NativeArray*)var1170)->values[3]=var1180; +if (likely(varonce1187!=NULL)) { +var1188 = varonce1187; } else { -var765 = "));"; -var766 = core__flat___NativeString___to_s_full(var765, 3l, 3l); -var764 = var766; -varonce763 = var764; +var1189 = "));"; +var1191 = (val*)(3l<<2|1); +var1192 = (val*)(3l<<2|1); +var1193 = (val*)((long)(0)<<2|3); +var1194 = (val*)((long)(0)<<2|3); +var1190 = core__flat___CString___to_s_unsafe(var1189, var1191, var1192, var1193, var1194); +var1188 = var1190; +varonce1187 = var1188; } -((struct instance_core__NativeArray*)var754)->values[5]=var764; +((struct instance_core__NativeArray*)var1170)->values[5]=var1188; } else { -var754 = varonce753; -varonce753 = NULL; +var1170 = varonce1169; +varonce1169 = NULL; } -((struct instance_core__NativeArray*)var754)->values[0]=var_res735; -((struct instance_core__NativeArray*)var754)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var1170)->values[0]=var_res1139; +((struct instance_core__NativeArray*)var1170)->values[2]=var_c_name; { -var767 = ((val*(*)(val* self))(var_mtype_elt->class->vft[COLOR_nitc__abstract_compiler__MType__ctype]))(var_mtype_elt); /* ctype on */ +var1195 = ((val*(*)(val* self))(var_mtype_elt->class->vft[COLOR_nitc__abstract_compiler__MType__ctype]))(var_mtype_elt); /* ctype on */ } -((struct instance_core__NativeArray*)var754)->values[4]=var767; +((struct instance_core__NativeArray*)var1170)->values[4]=var1195; { -var768 = ((val*(*)(val* self))(var754->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var754); /* native_to_s on */ +var1196 = ((val*(*)(val* self))(var1170->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1170); /* native_to_s on */ } -varonce753 = var754; +varonce1169 = var1170; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var768); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1196); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (unlikely(varonce769==NULL)) { -var770 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce771!=NULL)) { -var772 = varonce771; +if (unlikely(varonce1197==NULL)) { +var1198 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce1199!=NULL)) { +var1200 = varonce1199; } else { -var773 = "class_"; -var774 = core__flat___NativeString___to_s_full(var773, 6l, 6l); -var772 = var774; -varonce771 = var772; +var1201 = "class_"; +var1203 = (val*)(6l<<2|1); +var1204 = (val*)(6l<<2|1); +var1205 = (val*)((long)(0)<<2|3); +var1206 = (val*)((long)(0)<<2|3); +var1202 = core__flat___CString___to_s_unsafe(var1201, var1203, var1204, var1205, var1206); +var1200 = var1202; +varonce1199 = var1200; } -((struct instance_core__NativeArray*)var770)->values[0]=var772; +((struct instance_core__NativeArray*)var1198)->values[0]=var1200; } else { -var770 = varonce769; -varonce769 = NULL; +var1198 = varonce1197; +varonce1197 = NULL; } -((struct instance_core__NativeArray*)var770)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var1198)->values[1]=var_c_name; { -var775 = ((val*(*)(val* self))(var770->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var770); /* native_to_s on */ +var1207 = ((val*(*)(val* self))(var1198->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1198); /* native_to_s on */ } -varonce769 = var770; +varonce1197 = var1198; { -nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var775); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on */ +nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var1207); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on */ } -if (unlikely(varonce776==NULL)) { -var777 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce778!=NULL)) { -var779 = varonce778; +if (unlikely(varonce1208==NULL)) { +var1209 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1210!=NULL)) { +var1211 = varonce1210; } else { -var780 = "->class = &class_"; -var781 = core__flat___NativeString___to_s_full(var780, 17l, 17l); -var779 = var781; -varonce778 = var779; +var1212 = "->class = &class_"; +var1214 = (val*)(17l<<2|1); +var1215 = (val*)(17l<<2|1); +var1216 = (val*)((long)(0)<<2|3); +var1217 = (val*)((long)(0)<<2|3); +var1213 = core__flat___CString___to_s_unsafe(var1212, var1214, var1215, var1216, var1217); +var1211 = var1213; +varonce1210 = var1211; } -((struct instance_core__NativeArray*)var777)->values[1]=var779; -if (likely(varonce782!=NULL)) { -var783 = varonce782; +((struct instance_core__NativeArray*)var1209)->values[1]=var1211; +if (likely(varonce1218!=NULL)) { +var1219 = varonce1218; } else { -var784 = ";"; -var785 = core__flat___NativeString___to_s_full(var784, 1l, 1l); -var783 = var785; -varonce782 = var783; +var1220 = ";"; +var1222 = (val*)(1l<<2|1); +var1223 = (val*)(1l<<2|1); +var1224 = (val*)((long)(0)<<2|3); +var1225 = (val*)((long)(0)<<2|3); +var1221 = core__flat___CString___to_s_unsafe(var1220, var1222, var1223, var1224, var1225); +var1219 = var1221; +varonce1218 = var1219; } -((struct instance_core__NativeArray*)var777)->values[3]=var783; +((struct instance_core__NativeArray*)var1209)->values[3]=var1219; } else { -var777 = varonce776; -varonce776 = NULL; +var1209 = varonce1208; +varonce1208 = NULL; } -((struct instance_core__NativeArray*)var777)->values[0]=var_res735; -((struct instance_core__NativeArray*)var777)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var1209)->values[0]=var_res1139; +((struct instance_core__NativeArray*)var1209)->values[2]=var_c_name; { -var786 = ((val*(*)(val* self))(var777->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var777); /* native_to_s on */ +var1226 = ((val*(*)(val* self))(var1209->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1209); /* native_to_s on */ } -varonce776 = var777; +varonce1208 = var1209; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var786); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1226); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (unlikely(varonce787==NULL)) { -var788 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce789!=NULL)) { -var790 = varonce789; +if (unlikely(varonce1227==NULL)) { +var1228 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce1229!=NULL)) { +var1230 = varonce1229; } else { -var791 = "->length = length;"; -var792 = core__flat___NativeString___to_s_full(var791, 18l, 18l); -var790 = var792; -varonce789 = var790; +var1231 = "->length = length;"; +var1233 = (val*)(18l<<2|1); +var1234 = (val*)(18l<<2|1); +var1235 = (val*)((long)(0)<<2|3); +var1236 = (val*)((long)(0)<<2|3); +var1232 = core__flat___CString___to_s_unsafe(var1231, var1233, var1234, var1235, var1236); +var1230 = var1232; +varonce1229 = var1230; } -((struct instance_core__NativeArray*)var788)->values[1]=var790; +((struct instance_core__NativeArray*)var1228)->values[1]=var1230; } else { -var788 = varonce787; -varonce787 = NULL; +var1228 = varonce1227; +varonce1227 = NULL; } -((struct instance_core__NativeArray*)var788)->values[0]=var_res735; +((struct instance_core__NativeArray*)var1228)->values[0]=var_res1139; { -var793 = ((val*(*)(val* self))(var788->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var788); /* native_to_s on */ +var1237 = ((val*(*)(val* self))(var1228->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1228); /* native_to_s on */ } -varonce787 = var788; +varonce1227 = var1228; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var793); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1237); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (unlikely(varonce794==NULL)) { -var795 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce796!=NULL)) { -var797 = varonce796; +if (unlikely(varonce1238==NULL)) { +var1239 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce1240!=NULL)) { +var1241 = varonce1240; } else { -var798 = "return (val*)"; -var799 = core__flat___NativeString___to_s_full(var798, 13l, 13l); -var797 = var799; -varonce796 = var797; +var1242 = "return (val*)"; +var1244 = (val*)(13l<<2|1); +var1245 = (val*)(13l<<2|1); +var1246 = (val*)((long)(0)<<2|3); +var1247 = (val*)((long)(0)<<2|3); +var1243 = core__flat___CString___to_s_unsafe(var1242, var1244, var1245, var1246, var1247); +var1241 = var1243; +varonce1240 = var1241; } -((struct instance_core__NativeArray*)var795)->values[0]=var797; -if (likely(varonce800!=NULL)) { -var801 = varonce800; +((struct instance_core__NativeArray*)var1239)->values[0]=var1241; +if (likely(varonce1248!=NULL)) { +var1249 = varonce1248; } else { -var802 = ";"; -var803 = core__flat___NativeString___to_s_full(var802, 1l, 1l); -var801 = var803; -varonce800 = var801; +var1250 = ";"; +var1252 = (val*)(1l<<2|1); +var1253 = (val*)(1l<<2|1); +var1254 = (val*)((long)(0)<<2|3); +var1255 = (val*)((long)(0)<<2|3); +var1251 = core__flat___CString___to_s_unsafe(var1250, var1252, var1253, var1254, var1255); +var1249 = var1251; +varonce1248 = var1249; } -((struct instance_core__NativeArray*)var795)->values[2]=var801; +((struct instance_core__NativeArray*)var1239)->values[2]=var1249; } else { -var795 = varonce794; -varonce794 = NULL; +var1239 = varonce1238; +varonce1238 = NULL; } -((struct instance_core__NativeArray*)var795)->values[1]=var_res735; +((struct instance_core__NativeArray*)var1239)->values[1]=var_res1139; { -var804 = ((val*(*)(val* self))(var795->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var795); /* native_to_s on */ +var1256 = ((val*(*)(val* self))(var1239->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1239); /* native_to_s on */ } -varonce794 = var795; +varonce1238 = var1239; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var804); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1256); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (likely(varonce805!=NULL)) { -var806 = varonce805; +if (likely(varonce1257!=NULL)) { +var1258 = varonce1257; } else { -var807 = "}"; -var808 = core__flat___NativeString___to_s_full(var807, 1l, 1l); -var806 = var808; -varonce805 = var806; +var1259 = "}"; +var1261 = (val*)(1l<<2|1); +var1262 = (val*)(1l<<2|1); +var1263 = (val*)((long)(0)<<2|3); +var1264 = (val*)((long)(0)<<2|3); +var1260 = core__flat___CString___to_s_unsafe(var1259, var1261, var1262, var1263, var1264); +var1258 = var1260; +varonce1257 = var1258; } { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var806); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1258); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } goto RET_LABEL; } else { { -{ /* Inline model#MClassType#mclass (var_mtype) on */ -var812 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ -if (unlikely(var812 == NULL)) { +{ /* Inline model$MClassType$mclass (var_mtype) on */ +var1268 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ +if (unlikely(var1268 == 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, 1163); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1197); fatal_exit(1); } -var810 = var812; -RET_LABEL811:(void)0; +var1266 = var1268; +RET_LABEL1267:(void)0; } } { -{ /* Inline model#MClass#kind (var810) on */ -var815 = var810->attrs[COLOR_nitc__model__MClass___kind].val; /* _kind on */ -if (unlikely(var815 == NULL)) { +{ /* Inline model$MClass$kind (var1266) on */ +var1271 = var1266->attrs[COLOR_nitc__model__MClass___kind].val; /* _kind on */ +if (unlikely(var1271 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 459); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 472); fatal_exit(1); } -var813 = var815; -RET_LABEL814:(void)0; +var1269 = var1271; +RET_LABEL1270:(void)0; } } -var816 = glob_sys; +var1272 = glob_sys; { -var817 = nitc__model___core__Sys___extern_kind(var816); +var1273 = nitc__model___core__Sys___extern_kind(var1272); } { -{ /* Inline kernel#Object#== (var813,var817) on */ -var_other205 = var817; +{ /* Inline kernel$Object$== (var1269,var1273) on */ +var_other293 = var1273; { -{ /* Inline kernel#Object#is_same_instance (var813,var_other205) on */ -var822 = var813 == var_other205; -var820 = var822; -goto RET_LABEL821; -RET_LABEL821:(void)0; +{ /* Inline kernel$Object$is_same_instance (var1269,var_other293) on */ +var1278 = var1269 == var_other293; +var1276 = var1278; +goto RET_LABEL1277; +RET_LABEL1277:(void)0; } } -var818 = var820; -goto RET_LABEL819; -RET_LABEL819:(void)0; +var1274 = var1276; +goto RET_LABEL1275; +RET_LABEL1275:(void)0; } } -var_823 = var818; -if (var818){ +var_1279 = var1274; +if (var1274){ { -{ /* Inline model#MClassType#mclass (var_mtype) on */ -var826 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ -if (unlikely(var826 == NULL)) { +{ /* Inline model$MClassType$mclass (var_mtype) on */ +var1282 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ +if (unlikely(var1282 == 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, 1163); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1197); fatal_exit(1); } -var824 = var826; -RET_LABEL825:(void)0; +var1280 = var1282; +RET_LABEL1281:(void)0; } } { -{ /* Inline model#MClass#name (var824) on */ -var829 = var824->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ -if (unlikely(var829 == NULL)) { +{ /* Inline model$MClass$name (var1280) on */ +var1285 = var1280->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ +if (unlikely(var1285 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 385); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 396); fatal_exit(1); } -var827 = var829; -RET_LABEL828:(void)0; +var1283 = var1285; +RET_LABEL1284:(void)0; } } -if (likely(varonce830!=NULL)) { -var831 = varonce830; +if (likely(varonce1286!=NULL)) { +var1287 = varonce1286; } else { -var832 = "NativeString"; -var833 = core__flat___NativeString___to_s_full(var832, 12l, 12l); -var831 = var833; -varonce830 = var831; +var1288 = "CString"; +var1290 = (val*)(7l<<2|1); +var1291 = (val*)(7l<<2|1); +var1292 = (val*)((long)(0)<<2|3); +var1293 = (val*)((long)(0)<<2|3); +var1289 = core__flat___CString___to_s_unsafe(var1288, var1290, var1291, var1292, var1293); +var1287 = var1289; +varonce1286 = var1287; } { -{ /* Inline kernel#Object#!= (var827,var831) on */ -var_other = var831; +{ /* Inline kernel$Object$!= (var1283,var1287) on */ +var_other = var1287; { -var836 = ((short int(*)(val* self, val* p0))(var827->class->vft[COLOR_core__kernel__Object___61d_61d]))(var827, var_other); /* == on */ +var1296 = ((short int(*)(val* self, val* p0))(var1283->class->vft[COLOR_core__kernel__Object___61d_61d]))(var1283, var_other); /* == on */ } -var837 = !var836; -var834 = var837; -goto RET_LABEL835; -RET_LABEL835:(void)0; +var1297 = !var1296; +var1294 = var1297; +goto RET_LABEL1295; +RET_LABEL1295:(void)0; } } -var809 = var834; +var1265 = var1294; } else { -var809 = var_823; +var1265 = var_1279; } -if (var809){ +if (var1265){ { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ -var840 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ -if (unlikely(var840 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ +var1300 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ +if (unlikely(var1300 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } -var838 = var840; -RET_LABEL839:(void)0; +var1298 = var1300; +RET_LABEL1299:(void)0; } } { -var841 = nitc__model___MModule___pointer_type(var838); +var1301 = nitc__model___MModule___pointer_type(var1298); } -var_pointer_type = var841; -if (unlikely(varonce842==NULL)) { -var843 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce844!=NULL)) { -var845 = varonce844; +var_pointer_type = var1301; +if (unlikely(varonce1302==NULL)) { +var1303 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce1304!=NULL)) { +var1305 = varonce1304; } else { -var846 = "NEW_"; -var847 = core__flat___NativeString___to_s_full(var846, 4l, 4l); -var845 = var847; -varonce844 = var845; +var1306 = "NEW_"; +var1308 = (val*)(4l<<2|1); +var1309 = (val*)(4l<<2|1); +var1310 = (val*)((long)(0)<<2|3); +var1311 = (val*)((long)(0)<<2|3); +var1307 = core__flat___CString___to_s_unsafe(var1306, var1308, var1309, var1310, var1311); +var1305 = var1307; +varonce1304 = var1305; } -((struct instance_core__NativeArray*)var843)->values[0]=var845; +((struct instance_core__NativeArray*)var1303)->values[0]=var1305; } else { -var843 = varonce842; -varonce842 = NULL; +var1303 = varonce1302; +varonce1302 = NULL; } -((struct instance_core__NativeArray*)var843)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var1303)->values[1]=var_c_name; { -var848 = ((val*(*)(val* self))(var843->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var843); /* native_to_s on */ +var1312 = ((val*(*)(val* self))(var1303->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1303); /* native_to_s on */ } -varonce842 = var843; -if (unlikely(varonce849==NULL)) { -var850 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce851!=NULL)) { -var852 = varonce851; +varonce1302 = var1303; +if (unlikely(varonce1313==NULL)) { +var1314 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1315!=NULL)) { +var1316 = varonce1315; } else { -var853 = " NEW_"; -var854 = core__flat___NativeString___to_s_full(var853, 5l, 5l); -var852 = var854; -varonce851 = var852; +var1317 = " NEW_"; +var1319 = (val*)(5l<<2|1); +var1320 = (val*)(5l<<2|1); +var1321 = (val*)((long)(0)<<2|3); +var1322 = (val*)((long)(0)<<2|3); +var1318 = core__flat___CString___to_s_unsafe(var1317, var1319, var1320, var1321, var1322); +var1316 = var1318; +varonce1315 = var1316; } -((struct instance_core__NativeArray*)var850)->values[1]=var852; -if (likely(varonce855!=NULL)) { -var856 = varonce855; +((struct instance_core__NativeArray*)var1314)->values[1]=var1316; +if (likely(varonce1323!=NULL)) { +var1324 = varonce1323; } else { -var857 = "();"; -var858 = core__flat___NativeString___to_s_full(var857, 3l, 3l); -var856 = var858; -varonce855 = var856; +var1325 = "();"; +var1327 = (val*)(3l<<2|1); +var1328 = (val*)(3l<<2|1); +var1329 = (val*)((long)(0)<<2|3); +var1330 = (val*)((long)(0)<<2|3); +var1326 = core__flat___CString___to_s_unsafe(var1325, var1327, var1328, var1329, var1330); +var1324 = var1326; +varonce1323 = var1324; } -((struct instance_core__NativeArray*)var850)->values[3]=var856; +((struct instance_core__NativeArray*)var1314)->values[3]=var1324; } else { -var850 = varonce849; -varonce849 = NULL; +var1314 = varonce1313; +varonce1313 = NULL; } { -var859 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); +var1331 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); } -((struct instance_core__NativeArray*)var850)->values[0]=var859; -((struct instance_core__NativeArray*)var850)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var1314)->values[0]=var1331; +((struct instance_core__NativeArray*)var1314)->values[2]=var_c_name; { -var860 = ((val*(*)(val* self))(var850->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var850); /* native_to_s on */ +var1332 = ((val*(*)(val* self))(var1314->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1314); /* native_to_s on */ } -varonce849 = var850; +varonce1313 = var1314; { -nitc___nitc__AbstractCompiler___provide_declaration(self, var848, var860); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var1312, var1332); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } -if (unlikely(varonce861==NULL)) { -var862 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce863!=NULL)) { -var864 = varonce863; +if (unlikely(varonce1333==NULL)) { +var1334 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce1335!=NULL)) { +var1336 = varonce1335; } else { -var865 = "/* allocate "; -var866 = core__flat___NativeString___to_s_full(var865, 12l, 12l); -var864 = var866; -varonce863 = var864; +var1337 = "/* allocate "; +var1339 = (val*)(12l<<2|1); +var1340 = (val*)(12l<<2|1); +var1341 = (val*)((long)(0)<<2|3); +var1342 = (val*)((long)(0)<<2|3); +var1338 = core__flat___CString___to_s_unsafe(var1337, var1339, var1340, var1341, var1342); +var1336 = var1338; +varonce1335 = var1336; } -((struct instance_core__NativeArray*)var862)->values[0]=var864; -if (likely(varonce867!=NULL)) { -var868 = varonce867; +((struct instance_core__NativeArray*)var1334)->values[0]=var1336; +if (likely(varonce1343!=NULL)) { +var1344 = varonce1343; } else { -var869 = " */"; -var870 = core__flat___NativeString___to_s_full(var869, 3l, 3l); -var868 = var870; -varonce867 = var868; +var1345 = " */"; +var1347 = (val*)(3l<<2|1); +var1348 = (val*)(3l<<2|1); +var1349 = (val*)((long)(0)<<2|3); +var1350 = (val*)((long)(0)<<2|3); +var1346 = core__flat___CString___to_s_unsafe(var1345, var1347, var1348, var1349, var1350); +var1344 = var1346; +varonce1343 = var1344; } -((struct instance_core__NativeArray*)var862)->values[2]=var868; +((struct instance_core__NativeArray*)var1334)->values[2]=var1344; } else { -var862 = varonce861; -varonce861 = NULL; +var1334 = varonce1333; +varonce1333 = NULL; } { -var871 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ +var1351 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ } -((struct instance_core__NativeArray*)var862)->values[1]=var871; +((struct instance_core__NativeArray*)var1334)->values[1]=var1351; { -var872 = ((val*(*)(val* self))(var862->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var862); /* native_to_s on */ +var1352 = ((val*(*)(val* self))(var1334->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1334); /* native_to_s on */ } -varonce861 = var862; +varonce1333 = var1334; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var872); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var1352); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce873==NULL)) { -var874 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce875!=NULL)) { -var876 = varonce875; +if (unlikely(varonce1353==NULL)) { +var1354 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1355!=NULL)) { +var1356 = varonce1355; } else { -var877 = " NEW_"; -var878 = core__flat___NativeString___to_s_full(var877, 5l, 5l); -var876 = var878; -varonce875 = var876; +var1357 = " NEW_"; +var1359 = (val*)(5l<<2|1); +var1360 = (val*)(5l<<2|1); +var1361 = (val*)((long)(0)<<2|3); +var1362 = (val*)((long)(0)<<2|3); +var1358 = core__flat___CString___to_s_unsafe(var1357, var1359, var1360, var1361, var1362); +var1356 = var1358; +varonce1355 = var1356; } -((struct instance_core__NativeArray*)var874)->values[1]=var876; -if (likely(varonce879!=NULL)) { -var880 = varonce879; +((struct instance_core__NativeArray*)var1354)->values[1]=var1356; +if (likely(varonce1363!=NULL)) { +var1364 = varonce1363; } else { -var881 = "() {"; -var882 = core__flat___NativeString___to_s_full(var881, 4l, 4l); -var880 = var882; -varonce879 = var880; +var1365 = "() {"; +var1367 = (val*)(4l<<2|1); +var1368 = (val*)(4l<<2|1); +var1369 = (val*)((long)(0)<<2|3); +var1370 = (val*)((long)(0)<<2|3); +var1366 = core__flat___CString___to_s_unsafe(var1365, var1367, var1368, var1369, var1370); +var1364 = var1366; +varonce1363 = var1364; } -((struct instance_core__NativeArray*)var874)->values[3]=var880; +((struct instance_core__NativeArray*)var1354)->values[3]=var1364; } else { -var874 = varonce873; -varonce873 = NULL; +var1354 = varonce1353; +varonce1353 = NULL; } { -var883 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); +var1371 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); } -((struct instance_core__NativeArray*)var874)->values[0]=var883; -((struct instance_core__NativeArray*)var874)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var1354)->values[0]=var1371; +((struct instance_core__NativeArray*)var1354)->values[2]=var_c_name; { -var884 = ((val*(*)(val* self))(var874->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var874); /* native_to_s on */ +var1372 = ((val*(*)(val* self))(var1354->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1354); /* native_to_s on */ } -varonce873 = var874; +varonce1353 = var1354; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var884); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var1372); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } if (var_is_dead){ -if (unlikely(varonce885==NULL)) { -var886 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce887!=NULL)) { -var888 = varonce887; +if (unlikely(varonce1373==NULL)) { +var1374 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce1375!=NULL)) { +var1376 = varonce1375; } else { -var889 = " is DEAD"; -var890 = core__flat___NativeString___to_s_full(var889, 8l, 8l); -var888 = var890; -varonce887 = var888; +var1377 = " is DEAD"; +var1379 = (val*)(8l<<2|1); +var1380 = (val*)(8l<<2|1); +var1381 = (val*)((long)(0)<<2|3); +var1382 = (val*)((long)(0)<<2|3); +var1378 = core__flat___CString___to_s_unsafe(var1377, var1379, var1380, var1381, var1382); +var1376 = var1378; +varonce1375 = var1376; } -((struct instance_core__NativeArray*)var886)->values[1]=var888; +((struct instance_core__NativeArray*)var1374)->values[1]=var1376; } else { -var886 = varonce885; -varonce885 = NULL; +var1374 = varonce1373; +varonce1373 = NULL; } { -var891 = ((val*(*)(val* self))(var_mclass->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mclass); /* to_s on */ +var1383 = ((val*(*)(val* self))(var_mclass->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mclass); /* to_s on */ } -((struct instance_core__NativeArray*)var886)->values[0]=var891; +((struct instance_core__NativeArray*)var1374)->values[0]=var1383; { -var892 = ((val*(*)(val* self))(var886->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var886); /* native_to_s on */ +var1384 = ((val*(*)(val* self))(var1374->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1374); /* native_to_s on */ } -varonce885 = var886; +varonce1373 = var1374; { -nitc___nitc__AbstractCompilerVisitor___add_abort(var_v, var892); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on */ +nitc___nitc__AbstractCompilerVisitor___add_abort(var_v, var1384); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_abort on */ } } else { -if (likely(varonce893!=NULL)) { -var894 = varonce893; +if (likely(varonce1385!=NULL)) { +var1386 = varonce1385; } else { -var895 = "self"; -var896 = core__flat___NativeString___to_s_full(var895, 4l, 4l); -var894 = var896; -varonce893 = var894; +var1387 = "self"; +var1389 = (val*)(4l<<2|1); +var1390 = (val*)(4l<<2|1); +var1391 = (val*)((long)(0)<<2|3); +var1392 = (val*)((long)(0)<<2|3); +var1388 = core__flat___CString___to_s_unsafe(var1387, var1389, var1390, var1391, var1392); +var1386 = var1388; +varonce1385 = var1386; } { -var897 = nitc___nitc__AbstractCompilerVisitor___new_named_var(var_v, var_mtype, var894); +var1393 = nitc___nitc__AbstractCompilerVisitor___new_named_var(var_v, var_mtype, var1386); } -var_res898 = var897; +var_res1394 = var1393; { -{ /* Inline abstract_compiler#RuntimeVariable#is_exact= (var_res898,1) on */ -var_res898->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___is_exact].s = 1; /* _is_exact on */ -RET_LABEL899:(void)0; +{ /* Inline abstract_compiler$RuntimeVariable$is_exact= (var_res1394,1) on */ +var_res1394->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___is_exact].s = 1; /* _is_exact on */ +RET_LABEL1395:(void)0; } } -if (unlikely(varonce900==NULL)) { -var901 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce902!=NULL)) { -var903 = varonce902; +if (unlikely(varonce1396==NULL)) { +var1397 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1398!=NULL)) { +var1399 = varonce1398; } else { -var904 = " = nit_alloc(sizeof(struct instance_"; -var905 = core__flat___NativeString___to_s_full(var904, 36l, 36l); -var903 = var905; -varonce902 = var903; +var1400 = " = nit_alloc(sizeof(struct instance_"; +var1402 = (val*)(36l<<2|1); +var1403 = (val*)(36l<<2|1); +var1404 = (val*)((long)(0)<<2|3); +var1405 = (val*)((long)(0)<<2|3); +var1401 = core__flat___CString___to_s_unsafe(var1400, var1402, var1403, var1404, var1405); +var1399 = var1401; +varonce1398 = var1399; } -((struct instance_core__NativeArray*)var901)->values[1]=var903; -if (likely(varonce906!=NULL)) { -var907 = varonce906; +((struct instance_core__NativeArray*)var1397)->values[1]=var1399; +if (likely(varonce1406!=NULL)) { +var1407 = varonce1406; } else { -var908 = "));"; -var909 = core__flat___NativeString___to_s_full(var908, 3l, 3l); -var907 = var909; -varonce906 = var907; +var1408 = "));"; +var1410 = (val*)(3l<<2|1); +var1411 = (val*)(3l<<2|1); +var1412 = (val*)((long)(0)<<2|3); +var1413 = (val*)((long)(0)<<2|3); +var1409 = core__flat___CString___to_s_unsafe(var1408, var1410, var1411, var1412, var1413); +var1407 = var1409; +varonce1406 = var1407; } -((struct instance_core__NativeArray*)var901)->values[3]=var907; +((struct instance_core__NativeArray*)var1397)->values[3]=var1407; } else { -var901 = varonce900; -varonce900 = NULL; +var1397 = varonce1396; +varonce1396 = NULL; } { -var910 = ((val*(*)(val* self))(var_res898->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res898); /* to_s on */ +var1414 = ((val*(*)(val* self))(var_res1394->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1394); /* to_s on */ } -((struct instance_core__NativeArray*)var901)->values[0]=var910; +((struct instance_core__NativeArray*)var1397)->values[0]=var1414; { -var911 = ((val*(*)(val* self))(var_pointer_type->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_pointer_type); /* c_name on */ +var1415 = ((val*(*)(val* self))(var_pointer_type->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_pointer_type); /* c_name on */ } -((struct instance_core__NativeArray*)var901)->values[2]=var911; +((struct instance_core__NativeArray*)var1397)->values[2]=var1415; { -var912 = ((val*(*)(val* self))(var901->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var901); /* native_to_s on */ +var1416 = ((val*(*)(val* self))(var1397->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1397); /* native_to_s on */ } -varonce900 = var901; +varonce1396 = var1397; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var912); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1416); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (unlikely(varonce913==NULL)) { -var914 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce915!=NULL)) { -var916 = varonce915; +if (unlikely(varonce1417==NULL)) { +var1418 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce1419!=NULL)) { +var1420 = varonce1419; } else { -var917 = "class_"; -var918 = core__flat___NativeString___to_s_full(var917, 6l, 6l); -var916 = var918; -varonce915 = var916; +var1421 = "class_"; +var1423 = (val*)(6l<<2|1); +var1424 = (val*)(6l<<2|1); +var1425 = (val*)((long)(0)<<2|3); +var1426 = (val*)((long)(0)<<2|3); +var1422 = core__flat___CString___to_s_unsafe(var1421, var1423, var1424, var1425, var1426); +var1420 = var1422; +varonce1419 = var1420; } -((struct instance_core__NativeArray*)var914)->values[0]=var916; +((struct instance_core__NativeArray*)var1418)->values[0]=var1420; } else { -var914 = varonce913; -varonce913 = NULL; +var1418 = varonce1417; +varonce1417 = NULL; } -((struct instance_core__NativeArray*)var914)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var1418)->values[1]=var_c_name; { -var919 = ((val*(*)(val* self))(var914->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var914); /* native_to_s on */ +var1427 = ((val*(*)(val* self))(var1418->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1418); /* native_to_s on */ } -varonce913 = var914; +varonce1417 = var1418; { -nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var919); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on */ +nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var1427); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on */ } -if (unlikely(varonce920==NULL)) { -var921 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce922!=NULL)) { -var923 = varonce922; +if (unlikely(varonce1428==NULL)) { +var1429 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1430!=NULL)) { +var1431 = varonce1430; } else { -var924 = "->class = &class_"; -var925 = core__flat___NativeString___to_s_full(var924, 17l, 17l); -var923 = var925; -varonce922 = var923; +var1432 = "->class = &class_"; +var1434 = (val*)(17l<<2|1); +var1435 = (val*)(17l<<2|1); +var1436 = (val*)((long)(0)<<2|3); +var1437 = (val*)((long)(0)<<2|3); +var1433 = core__flat___CString___to_s_unsafe(var1432, var1434, var1435, var1436, var1437); +var1431 = var1433; +varonce1430 = var1431; } -((struct instance_core__NativeArray*)var921)->values[1]=var923; -if (likely(varonce926!=NULL)) { -var927 = varonce926; +((struct instance_core__NativeArray*)var1429)->values[1]=var1431; +if (likely(varonce1438!=NULL)) { +var1439 = varonce1438; } else { -var928 = ";"; -var929 = core__flat___NativeString___to_s_full(var928, 1l, 1l); -var927 = var929; -varonce926 = var927; +var1440 = ";"; +var1442 = (val*)(1l<<2|1); +var1443 = (val*)(1l<<2|1); +var1444 = (val*)((long)(0)<<2|3); +var1445 = (val*)((long)(0)<<2|3); +var1441 = core__flat___CString___to_s_unsafe(var1440, var1442, var1443, var1444, var1445); +var1439 = var1441; +varonce1438 = var1439; } -((struct instance_core__NativeArray*)var921)->values[3]=var927; +((struct instance_core__NativeArray*)var1429)->values[3]=var1439; } else { -var921 = varonce920; -varonce920 = NULL; +var1429 = varonce1428; +varonce1428 = NULL; } { -var930 = ((val*(*)(val* self))(var_res898->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res898); /* to_s on */ +var1446 = ((val*(*)(val* self))(var_res1394->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1394); /* to_s on */ } -((struct instance_core__NativeArray*)var921)->values[0]=var930; -((struct instance_core__NativeArray*)var921)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var1429)->values[0]=var1446; +((struct instance_core__NativeArray*)var1429)->values[2]=var_c_name; { -var931 = ((val*(*)(val* self))(var921->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var921); /* native_to_s on */ +var1447 = ((val*(*)(val* self))(var1429->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1429); /* native_to_s on */ } -varonce920 = var921; +varonce1428 = var1429; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var931); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1447); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (unlikely(varonce932==NULL)) { -var933 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce934!=NULL)) { -var935 = varonce934; +if (unlikely(varonce1448==NULL)) { +var1449 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String); +if (likely(varonce1450!=NULL)) { +var1451 = varonce1450; } else { -var936 = "((struct instance_"; -var937 = core__flat___NativeString___to_s_full(var936, 18l, 18l); -var935 = var937; -varonce934 = var935; +var1452 = "((struct instance_"; +var1454 = (val*)(18l<<2|1); +var1455 = (val*)(18l<<2|1); +var1456 = (val*)((long)(0)<<2|3); +var1457 = (val*)((long)(0)<<2|3); +var1453 = core__flat___CString___to_s_unsafe(var1452, var1454, var1455, var1456, var1457); +var1451 = var1453; +varonce1450 = var1451; } -((struct instance_core__NativeArray*)var933)->values[0]=var935; -if (likely(varonce938!=NULL)) { -var939 = varonce938; +((struct instance_core__NativeArray*)var1449)->values[0]=var1451; +if (likely(varonce1458!=NULL)) { +var1459 = varonce1458; } else { -var940 = "*)"; -var941 = core__flat___NativeString___to_s_full(var940, 2l, 2l); -var939 = var941; -varonce938 = var939; +var1460 = "*)"; +var1462 = (val*)(2l<<2|1); +var1463 = (val*)(2l<<2|1); +var1464 = (val*)((long)(0)<<2|3); +var1465 = (val*)((long)(0)<<2|3); +var1461 = core__flat___CString___to_s_unsafe(var1460, var1462, var1463, var1464, var1465); +var1459 = var1461; +varonce1458 = var1459; } -((struct instance_core__NativeArray*)var933)->values[2]=var939; -if (likely(varonce942!=NULL)) { -var943 = varonce942; +((struct instance_core__NativeArray*)var1449)->values[2]=var1459; +if (likely(varonce1466!=NULL)) { +var1467 = varonce1466; } else { -var944 = ")->value = NULL;"; -var945 = core__flat___NativeString___to_s_full(var944, 16l, 16l); -var943 = var945; -varonce942 = var943; +var1468 = ")->value = NULL;"; +var1470 = (val*)(16l<<2|1); +var1471 = (val*)(16l<<2|1); +var1472 = (val*)((long)(0)<<2|3); +var1473 = (val*)((long)(0)<<2|3); +var1469 = core__flat___CString___to_s_unsafe(var1468, var1470, var1471, var1472, var1473); +var1467 = var1469; +varonce1466 = var1467; } -((struct instance_core__NativeArray*)var933)->values[4]=var943; +((struct instance_core__NativeArray*)var1449)->values[4]=var1467; } else { -var933 = varonce932; -varonce932 = NULL; +var1449 = varonce1448; +varonce1448 = NULL; } { -var946 = ((val*(*)(val* self))(var_pointer_type->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_pointer_type); /* c_name on */ +var1474 = ((val*(*)(val* self))(var_pointer_type->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_pointer_type); /* c_name on */ } -((struct instance_core__NativeArray*)var933)->values[1]=var946; +((struct instance_core__NativeArray*)var1449)->values[1]=var1474; { -var947 = ((val*(*)(val* self))(var_res898->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res898); /* to_s on */ +var1475 = ((val*(*)(val* self))(var_res1394->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1394); /* to_s on */ } -((struct instance_core__NativeArray*)var933)->values[3]=var947; +((struct instance_core__NativeArray*)var1449)->values[3]=var1475; { -var948 = ((val*(*)(val* self))(var933->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var933); /* native_to_s on */ +var1476 = ((val*(*)(val* self))(var1449->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1449); /* native_to_s on */ } -varonce932 = var933; +varonce1448 = var1449; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var948); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1476); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } -if (unlikely(varonce949==NULL)) { -var950 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce951!=NULL)) { -var952 = varonce951; +if (unlikely(varonce1477==NULL)) { +var1478 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce1479!=NULL)) { +var1480 = varonce1479; } else { -var953 = "return "; -var954 = core__flat___NativeString___to_s_full(var953, 7l, 7l); -var952 = var954; -varonce951 = var952; +var1481 = "return "; +var1483 = (val*)(7l<<2|1); +var1484 = (val*)(7l<<2|1); +var1485 = (val*)((long)(0)<<2|3); +var1486 = (val*)((long)(0)<<2|3); +var1482 = core__flat___CString___to_s_unsafe(var1481, var1483, var1484, var1485, var1486); +var1480 = var1482; +varonce1479 = var1480; } -((struct instance_core__NativeArray*)var950)->values[0]=var952; -if (likely(varonce955!=NULL)) { -var956 = varonce955; +((struct instance_core__NativeArray*)var1478)->values[0]=var1480; +if (likely(varonce1487!=NULL)) { +var1488 = varonce1487; } else { -var957 = ";"; -var958 = core__flat___NativeString___to_s_full(var957, 1l, 1l); -var956 = var958; -varonce955 = var956; +var1489 = ";"; +var1491 = (val*)(1l<<2|1); +var1492 = (val*)(1l<<2|1); +var1493 = (val*)((long)(0)<<2|3); +var1494 = (val*)((long)(0)<<2|3); +var1490 = core__flat___CString___to_s_unsafe(var1489, var1491, var1492, var1493, var1494); +var1488 = var1490; +varonce1487 = var1488; } -((struct instance_core__NativeArray*)var950)->values[2]=var956; +((struct instance_core__NativeArray*)var1478)->values[2]=var1488; } else { -var950 = varonce949; -varonce949 = NULL; +var1478 = varonce1477; +varonce1477 = NULL; } { -var959 = ((val*(*)(val* self))(var_res898->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res898); /* to_s on */ +var1495 = ((val*(*)(val* self))(var_res1394->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1394); /* to_s on */ } -((struct instance_core__NativeArray*)var950)->values[1]=var959; +((struct instance_core__NativeArray*)var1478)->values[1]=var1495; { -var960 = ((val*(*)(val* self))(var950->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var950); /* native_to_s on */ +var1496 = ((val*(*)(val* self))(var1478->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1478); /* native_to_s on */ } -varonce949 = var950; +varonce1477 = var1478; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var960); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1496); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } } -if (likely(varonce961!=NULL)) { -var962 = varonce961; +if (likely(varonce1497!=NULL)) { +var1498 = varonce1497; } else { -var963 = "}"; -var964 = core__flat___NativeString___to_s_full(var963, 1l, 1l); -var962 = var964; -varonce961 = var962; +var1499 = "}"; +var1501 = (val*)(1l<<2|1); +var1502 = (val*)(1l<<2|1); +var1503 = (val*)((long)(0)<<2|3); +var1504 = (val*)((long)(0)<<2|3); +var1500 = core__flat___CString___to_s_unsafe(var1499, var1501, var1502, var1503, var1504); +var1498 = var1500; +varonce1497 = var1498; } { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var962); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1498); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } goto RET_LABEL; } else { } } } -if (unlikely(varonce965==NULL)) { -var966 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce967!=NULL)) { -var968 = varonce967; +if (unlikely(varonce1505==NULL)) { +var1506 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce1507!=NULL)) { +var1508 = varonce1507; } else { -var969 = "NEW_"; -var970 = core__flat___NativeString___to_s_full(var969, 4l, 4l); -var968 = var970; -varonce967 = var968; +var1509 = "NEW_"; +var1511 = (val*)(4l<<2|1); +var1512 = (val*)(4l<<2|1); +var1513 = (val*)((long)(0)<<2|3); +var1514 = (val*)((long)(0)<<2|3); +var1510 = core__flat___CString___to_s_unsafe(var1509, var1511, var1512, var1513, var1514); +var1508 = var1510; +varonce1507 = var1508; } -((struct instance_core__NativeArray*)var966)->values[0]=var968; +((struct instance_core__NativeArray*)var1506)->values[0]=var1508; } else { -var966 = varonce965; -varonce965 = NULL; +var1506 = varonce1505; +varonce1505 = NULL; } -((struct instance_core__NativeArray*)var966)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var1506)->values[1]=var_c_name; { -var971 = ((val*(*)(val* self))(var966->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var966); /* native_to_s on */ +var1515 = ((val*(*)(val* self))(var1506->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1506); /* native_to_s on */ } -varonce965 = var966; -if (unlikely(varonce972==NULL)) { -var973 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce974!=NULL)) { -var975 = varonce974; +varonce1505 = var1506; +if (unlikely(varonce1516==NULL)) { +var1517 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1518!=NULL)) { +var1519 = varonce1518; } else { -var976 = " NEW_"; -var977 = core__flat___NativeString___to_s_full(var976, 5l, 5l); -var975 = var977; -varonce974 = var975; +var1520 = " NEW_"; +var1522 = (val*)(5l<<2|1); +var1523 = (val*)(5l<<2|1); +var1524 = (val*)((long)(0)<<2|3); +var1525 = (val*)((long)(0)<<2|3); +var1521 = core__flat___CString___to_s_unsafe(var1520, var1522, var1523, var1524, var1525); +var1519 = var1521; +varonce1518 = var1519; } -((struct instance_core__NativeArray*)var973)->values[1]=var975; -if (likely(varonce978!=NULL)) { -var979 = varonce978; +((struct instance_core__NativeArray*)var1517)->values[1]=var1519; +if (likely(varonce1526!=NULL)) { +var1527 = varonce1526; } else { -var980 = "(void);"; -var981 = core__flat___NativeString___to_s_full(var980, 7l, 7l); -var979 = var981; -varonce978 = var979; +var1528 = "(void);"; +var1530 = (val*)(7l<<2|1); +var1531 = (val*)(7l<<2|1); +var1532 = (val*)((long)(0)<<2|3); +var1533 = (val*)((long)(0)<<2|3); +var1529 = core__flat___CString___to_s_unsafe(var1528, var1530, var1531, var1532, var1533); +var1527 = var1529; +varonce1526 = var1527; } -((struct instance_core__NativeArray*)var973)->values[3]=var979; +((struct instance_core__NativeArray*)var1517)->values[3]=var1527; } else { -var973 = varonce972; -varonce972 = NULL; +var1517 = varonce1516; +varonce1516 = NULL; } { -var982 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); +var1534 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); } -((struct instance_core__NativeArray*)var973)->values[0]=var982; -((struct instance_core__NativeArray*)var973)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var1517)->values[0]=var1534; +((struct instance_core__NativeArray*)var1517)->values[2]=var_c_name; { -var983 = ((val*(*)(val* self))(var973->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var973); /* native_to_s on */ +var1535 = ((val*(*)(val* self))(var1517->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1517); /* native_to_s on */ } -varonce972 = var973; +varonce1516 = var1517; { -nitc___nitc__AbstractCompiler___provide_declaration(self, var971, var983); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var1515, var1535); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } -if (unlikely(varonce984==NULL)) { -var985 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce986!=NULL)) { -var987 = varonce986; +if (unlikely(varonce1536==NULL)) { +var1537 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce1538!=NULL)) { +var1539 = varonce1538; } else { -var988 = "/* allocate "; -var989 = core__flat___NativeString___to_s_full(var988, 12l, 12l); -var987 = var989; -varonce986 = var987; +var1540 = "/* allocate "; +var1542 = (val*)(12l<<2|1); +var1543 = (val*)(12l<<2|1); +var1544 = (val*)((long)(0)<<2|3); +var1545 = (val*)((long)(0)<<2|3); +var1541 = core__flat___CString___to_s_unsafe(var1540, var1542, var1543, var1544, var1545); +var1539 = var1541; +varonce1538 = var1539; } -((struct instance_core__NativeArray*)var985)->values[0]=var987; -if (likely(varonce990!=NULL)) { -var991 = varonce990; +((struct instance_core__NativeArray*)var1537)->values[0]=var1539; +if (likely(varonce1546!=NULL)) { +var1547 = varonce1546; } else { -var992 = " */"; -var993 = core__flat___NativeString___to_s_full(var992, 3l, 3l); -var991 = var993; -varonce990 = var991; +var1548 = " */"; +var1550 = (val*)(3l<<2|1); +var1551 = (val*)(3l<<2|1); +var1552 = (val*)((long)(0)<<2|3); +var1553 = (val*)((long)(0)<<2|3); +var1549 = core__flat___CString___to_s_unsafe(var1548, var1550, var1551, var1552, var1553); +var1547 = var1549; +varonce1546 = var1547; } -((struct instance_core__NativeArray*)var985)->values[2]=var991; +((struct instance_core__NativeArray*)var1537)->values[2]=var1547; } else { -var985 = varonce984; -varonce984 = NULL; +var1537 = varonce1536; +varonce1536 = NULL; } { -var994 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ +var1554 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ } -((struct instance_core__NativeArray*)var985)->values[1]=var994; +((struct instance_core__NativeArray*)var1537)->values[1]=var1554; { -var995 = ((val*(*)(val* self))(var985->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var985); /* native_to_s on */ +var1555 = ((val*(*)(val* self))(var1537->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1537); /* native_to_s on */ } -varonce984 = var985; +varonce1536 = var1537; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var995); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var1555); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (unlikely(varonce996==NULL)) { -var997 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce998!=NULL)) { -var999 = varonce998; +if (unlikely(varonce1556==NULL)) { +var1557 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1558!=NULL)) { +var1559 = varonce1558; } else { -var1000 = " NEW_"; -var1001 = core__flat___NativeString___to_s_full(var1000, 5l, 5l); -var999 = var1001; -varonce998 = var999; +var1560 = " NEW_"; +var1562 = (val*)(5l<<2|1); +var1563 = (val*)(5l<<2|1); +var1564 = (val*)((long)(0)<<2|3); +var1565 = (val*)((long)(0)<<2|3); +var1561 = core__flat___CString___to_s_unsafe(var1560, var1562, var1563, var1564, var1565); +var1559 = var1561; +varonce1558 = var1559; } -((struct instance_core__NativeArray*)var997)->values[1]=var999; -if (likely(varonce1002!=NULL)) { -var1003 = varonce1002; +((struct instance_core__NativeArray*)var1557)->values[1]=var1559; +if (likely(varonce1566!=NULL)) { +var1567 = varonce1566; } else { -var1004 = "(void) {"; -var1005 = core__flat___NativeString___to_s_full(var1004, 8l, 8l); -var1003 = var1005; -varonce1002 = var1003; +var1568 = "(void) {"; +var1570 = (val*)(8l<<2|1); +var1571 = (val*)(8l<<2|1); +var1572 = (val*)((long)(0)<<2|3); +var1573 = (val*)((long)(0)<<2|3); +var1569 = core__flat___CString___to_s_unsafe(var1568, var1570, var1571, var1572, var1573); +var1567 = var1569; +varonce1566 = var1567; } -((struct instance_core__NativeArray*)var997)->values[3]=var1003; +((struct instance_core__NativeArray*)var1557)->values[3]=var1567; } else { -var997 = varonce996; -varonce996 = NULL; +var1557 = varonce1556; +varonce1556 = NULL; } { -var1006 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); +var1574 = nitc__abstract_compiler___MClassType___MType__ctype(var_mtype); } -((struct instance_core__NativeArray*)var997)->values[0]=var1006; -((struct instance_core__NativeArray*)var997)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var1557)->values[0]=var1574; +((struct instance_core__NativeArray*)var1557)->values[2]=var_c_name; { -var1007 = ((val*(*)(val* self))(var997->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var997); /* native_to_s on */ +var1575 = ((val*(*)(val* self))(var1557->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1557); /* native_to_s on */ } -varonce996 = var997; +varonce1556 = var1557; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var1007); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var1575); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } if (var_is_dead){ -if (unlikely(varonce1008==NULL)) { -var1009 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce1010!=NULL)) { -var1011 = varonce1010; +if (unlikely(varonce1576==NULL)) { +var1577 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce1578!=NULL)) { +var1579 = varonce1578; } else { -var1012 = " is DEAD"; -var1013 = core__flat___NativeString___to_s_full(var1012, 8l, 8l); -var1011 = var1013; -varonce1010 = var1011; +var1580 = " is DEAD"; +var1582 = (val*)(8l<<2|1); +var1583 = (val*)(8l<<2|1); +var1584 = (val*)((long)(0)<<2|3); +var1585 = (val*)((long)(0)<<2|3); +var1581 = core__flat___CString___to_s_unsafe(var1580, var1582, var1583, var1584, var1585); +var1579 = var1581; +varonce1578 = var1579; } -((struct instance_core__NativeArray*)var1009)->values[1]=var1011; +((struct instance_core__NativeArray*)var1577)->values[1]=var1579; } else { -var1009 = varonce1008; -varonce1008 = NULL; +var1577 = varonce1576; +varonce1576 = NULL; } { -var1014 = ((val*(*)(val* self))(var_mclass->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mclass); /* to_s on */ +var1586 = ((val*(*)(val* self))(var_mclass->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mclass); /* to_s on */ } -((struct instance_core__NativeArray*)var1009)->values[0]=var1014; +((struct instance_core__NativeArray*)var1577)->values[0]=var1586; { -var1015 = ((val*(*)(val* self))(var1009->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1009); /* native_to_s on */ +var1587 = ((val*(*)(val* self))(var1577->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1577); /* native_to_s on */ } -varonce1008 = var1009; +varonce1576 = var1577; { -nitc___nitc__AbstractCompilerVisitor___add_abort(var_v, var1015); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on */ +nitc___nitc__AbstractCompilerVisitor___add_abort(var_v, var1587); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_abort on */ } } else { -if (likely(varonce1016!=NULL)) { -var1017 = varonce1016; +if (likely(varonce1588!=NULL)) { +var1589 = varonce1588; } else { -var1018 = "self"; -var1019 = core__flat___NativeString___to_s_full(var1018, 4l, 4l); -var1017 = var1019; -varonce1016 = var1017; +var1590 = "self"; +var1592 = (val*)(4l<<2|1); +var1593 = (val*)(4l<<2|1); +var1594 = (val*)((long)(0)<<2|3); +var1595 = (val*)((long)(0)<<2|3); +var1591 = core__flat___CString___to_s_unsafe(var1590, var1592, var1593, var1594, var1595); +var1589 = var1591; +varonce1588 = var1589; } { -var1020 = nitc___nitc__AbstractCompilerVisitor___new_named_var(var_v, var_mtype, var1017); +var1596 = nitc___nitc__AbstractCompilerVisitor___new_named_var(var_v, var_mtype, var1589); } -var_res1021 = var1020; +var_res1597 = var1596; { -{ /* Inline abstract_compiler#RuntimeVariable#is_exact= (var_res1021,1) on */ -var_res1021->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___is_exact].s = 1; /* _is_exact on */ -RET_LABEL1022:(void)0; +{ /* Inline abstract_compiler$RuntimeVariable$is_exact= (var_res1597,1) on */ +var_res1597->attrs[COLOR_nitc__abstract_compiler__RuntimeVariable___is_exact].s = 1; /* _is_exact on */ +RET_LABEL1598:(void)0; } } { -{ /* Inline separate_compiler#SeparateCompiler#attr_tables (self) on */ -var1025 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___attr_tables].val; /* _attr_tables on */ -if (unlikely(var1025 == NULL)) { +{ /* Inline separate_compiler$SeparateCompiler$attr_tables (self) on */ +var1601 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___attr_tables].val; /* _attr_tables on */ +if (unlikely(var1601 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _attr_tables"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1068); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1074); fatal_exit(1); } -var1023 = var1025; -RET_LABEL1024:(void)0; +var1599 = var1601; +RET_LABEL1600:(void)0; } } { -var1026 = ((val*(*)(val* self, val* p0))((((long)var1023&3)?class_info[((long)var1023&3)]:var1023->class)->vft[COLOR_core__abstract_collection__MapRead__get_or_null]))(var1023, var_mclass); /* get_or_null on */ +var1602 = ((val*(*)(val* self, val* p0))((((long)var1599&3)?class_info[((long)var1599&3)]:var1599->class)->vft[COLOR_core__abstract_collection__MapRead__get_or_null]))(var1599, var_mclass); /* get_or_null on */ } -var_attrs = var1026; +var_attrs = var1602; if (var_attrs == NULL) { -var1027 = 1; /* is null */ +var1603 = 1; /* is null */ } else { -var1027 = 0; /* arg is null but recv is not */ +var1603 = 0; /* arg is null but recv is not */ } if (0) { -var1028 = core___core__Array___core__kernel__Object___61d_61d(var_attrs, ((val*)NULL)); -var1027 = var1028; +var1604 = core___core__Array___core__kernel__Object___61d_61d(var_attrs, ((val*)NULL)); +var1603 = var1604; } -if (var1027){ -if (unlikely(varonce1029==NULL)) { -var1030 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce1031!=NULL)) { -var1032 = varonce1031; +if (var1603){ +if (unlikely(varonce1605==NULL)) { +var1606 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce1607!=NULL)) { +var1608 = varonce1607; } else { -var1033 = " = nit_alloc(sizeof(struct instance));"; -var1034 = core__flat___NativeString___to_s_full(var1033, 38l, 38l); -var1032 = var1034; -varonce1031 = var1032; +var1609 = " = nit_alloc(sizeof(struct instance));"; +var1611 = (val*)(38l<<2|1); +var1612 = (val*)(38l<<2|1); +var1613 = (val*)((long)(0)<<2|3); +var1614 = (val*)((long)(0)<<2|3); +var1610 = core__flat___CString___to_s_unsafe(var1609, var1611, var1612, var1613, var1614); +var1608 = var1610; +varonce1607 = var1608; } -((struct instance_core__NativeArray*)var1030)->values[1]=var1032; +((struct instance_core__NativeArray*)var1606)->values[1]=var1608; } else { -var1030 = varonce1029; -varonce1029 = NULL; +var1606 = varonce1605; +varonce1605 = NULL; } { -var1035 = ((val*(*)(val* self))(var_res1021->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1021); /* to_s on */ +var1615 = ((val*(*)(val* self))(var_res1597->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1597); /* to_s on */ } -((struct instance_core__NativeArray*)var1030)->values[0]=var1035; +((struct instance_core__NativeArray*)var1606)->values[0]=var1615; { -var1036 = ((val*(*)(val* self))(var1030->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1030); /* native_to_s on */ +var1616 = ((val*(*)(val* self))(var1606->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1606); /* native_to_s on */ } -varonce1029 = var1030; +varonce1605 = var1606; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var1036); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1616); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } } else { -if (unlikely(varonce1037==NULL)) { -var1038 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce1039!=NULL)) { -var1040 = varonce1039; +if (unlikely(varonce1617==NULL)) { +var1618 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1619!=NULL)) { +var1620 = varonce1619; } else { -var1041 = " = nit_alloc(sizeof(struct instance) + "; -var1042 = core__flat___NativeString___to_s_full(var1041, 39l, 39l); -var1040 = var1042; -varonce1039 = var1040; +var1621 = " = nit_alloc(sizeof(struct instance) + "; +var1623 = (val*)(39l<<2|1); +var1624 = (val*)(39l<<2|1); +var1625 = (val*)((long)(0)<<2|3); +var1626 = (val*)((long)(0)<<2|3); +var1622 = core__flat___CString___to_s_unsafe(var1621, var1623, var1624, var1625, var1626); +var1620 = var1622; +varonce1619 = var1620; } -((struct instance_core__NativeArray*)var1038)->values[1]=var1040; -if (likely(varonce1043!=NULL)) { -var1044 = varonce1043; +((struct instance_core__NativeArray*)var1618)->values[1]=var1620; +if (likely(varonce1627!=NULL)) { +var1628 = varonce1627; } else { -var1045 = "*sizeof(nitattribute_t));"; -var1046 = core__flat___NativeString___to_s_full(var1045, 25l, 25l); -var1044 = var1046; -varonce1043 = var1044; +var1629 = "*sizeof(nitattribute_t));"; +var1631 = (val*)(25l<<2|1); +var1632 = (val*)(25l<<2|1); +var1633 = (val*)((long)(0)<<2|3); +var1634 = (val*)((long)(0)<<2|3); +var1630 = core__flat___CString___to_s_unsafe(var1629, var1631, var1632, var1633, var1634); +var1628 = var1630; +varonce1627 = var1628; } -((struct instance_core__NativeArray*)var1038)->values[3]=var1044; +((struct instance_core__NativeArray*)var1618)->values[3]=var1628; } else { -var1038 = varonce1037; -varonce1037 = NULL; +var1618 = varonce1617; +varonce1617 = NULL; } { -var1047 = ((val*(*)(val* self))(var_res1021->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1021); /* to_s on */ +var1635 = ((val*(*)(val* self))(var_res1597->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1597); /* to_s on */ } -((struct instance_core__NativeArray*)var1038)->values[0]=var1047; +((struct instance_core__NativeArray*)var1618)->values[0]=var1635; { -{ /* Inline array#AbstractArrayRead#length (var_attrs) on */ -var1050 = var_attrs->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ -var1048 = var1050; -RET_LABEL1049:(void)0; +{ /* Inline array$AbstractArrayRead$length (var_attrs) on */ +var1638 = var_attrs->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ +var1636 = var1638; +RET_LABEL1637:(void)0; } } -var1051 = core__flat___Int___core__abstract_text__Object__to_s(var1048); -((struct instance_core__NativeArray*)var1038)->values[2]=var1051; +var1639 = core__flat___Int___core__abstract_text__Object__to_s(var1636); +((struct instance_core__NativeArray*)var1618)->values[2]=var1639; { -var1052 = ((val*(*)(val* self))(var1038->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1038); /* native_to_s on */ +var1640 = ((val*(*)(val* self))(var1618->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1618); /* native_to_s on */ } -varonce1037 = var1038; +varonce1617 = var1618; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var1052); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1640); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } } -if (unlikely(varonce1053==NULL)) { -var1054 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce1055!=NULL)) { -var1056 = varonce1055; +if (unlikely(varonce1641==NULL)) { +var1642 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce1643!=NULL)) { +var1644 = varonce1643; } else { -var1057 = "class_"; -var1058 = core__flat___NativeString___to_s_full(var1057, 6l, 6l); -var1056 = var1058; -varonce1055 = var1056; +var1645 = "class_"; +var1647 = (val*)(6l<<2|1); +var1648 = (val*)(6l<<2|1); +var1649 = (val*)((long)(0)<<2|3); +var1650 = (val*)((long)(0)<<2|3); +var1646 = core__flat___CString___to_s_unsafe(var1645, var1647, var1648, var1649, var1650); +var1644 = var1646; +varonce1643 = var1644; } -((struct instance_core__NativeArray*)var1054)->values[0]=var1056; +((struct instance_core__NativeArray*)var1642)->values[0]=var1644; } else { -var1054 = varonce1053; -varonce1053 = NULL; +var1642 = varonce1641; +varonce1641 = NULL; } -((struct instance_core__NativeArray*)var1054)->values[1]=var_c_name; +((struct instance_core__NativeArray*)var1642)->values[1]=var_c_name; { -var1059 = ((val*(*)(val* self))(var1054->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1054); /* native_to_s on */ +var1651 = ((val*(*)(val* self))(var1642->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1642); /* native_to_s on */ } -varonce1053 = var1054; +varonce1641 = var1642; { -nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var1059); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on */ +nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var1651); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on */ } -if (unlikely(varonce1060==NULL)) { -var1061 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce1062!=NULL)) { -var1063 = varonce1062; +if (unlikely(varonce1652==NULL)) { +var1653 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce1654!=NULL)) { +var1655 = varonce1654; } else { -var1064 = "->class = &class_"; -var1065 = core__flat___NativeString___to_s_full(var1064, 17l, 17l); -var1063 = var1065; -varonce1062 = var1063; +var1656 = "->class = &class_"; +var1658 = (val*)(17l<<2|1); +var1659 = (val*)(17l<<2|1); +var1660 = (val*)((long)(0)<<2|3); +var1661 = (val*)((long)(0)<<2|3); +var1657 = core__flat___CString___to_s_unsafe(var1656, var1658, var1659, var1660, var1661); +var1655 = var1657; +varonce1654 = var1655; } -((struct instance_core__NativeArray*)var1061)->values[1]=var1063; -if (likely(varonce1066!=NULL)) { -var1067 = varonce1066; +((struct instance_core__NativeArray*)var1653)->values[1]=var1655; +if (likely(varonce1662!=NULL)) { +var1663 = varonce1662; } else { -var1068 = ";"; -var1069 = core__flat___NativeString___to_s_full(var1068, 1l, 1l); -var1067 = var1069; -varonce1066 = var1067; +var1664 = ";"; +var1666 = (val*)(1l<<2|1); +var1667 = (val*)(1l<<2|1); +var1668 = (val*)((long)(0)<<2|3); +var1669 = (val*)((long)(0)<<2|3); +var1665 = core__flat___CString___to_s_unsafe(var1664, var1666, var1667, var1668, var1669); +var1663 = var1665; +varonce1662 = var1663; } -((struct instance_core__NativeArray*)var1061)->values[3]=var1067; +((struct instance_core__NativeArray*)var1653)->values[3]=var1663; } else { -var1061 = varonce1060; -varonce1060 = NULL; +var1653 = varonce1652; +varonce1652 = NULL; } { -var1070 = ((val*(*)(val* self))(var_res1021->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1021); /* to_s on */ +var1670 = ((val*(*)(val* self))(var_res1597->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1597); /* to_s on */ } -((struct instance_core__NativeArray*)var1061)->values[0]=var1070; -((struct instance_core__NativeArray*)var1061)->values[2]=var_c_name; +((struct instance_core__NativeArray*)var1653)->values[0]=var1670; +((struct instance_core__NativeArray*)var1653)->values[2]=var_c_name; { -var1071 = ((val*(*)(val* self))(var1061->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1061); /* native_to_s on */ +var1671 = ((val*(*)(val* self))(var1653->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1653); /* native_to_s on */ } -varonce1060 = var1061; +varonce1652 = var1653; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var1071); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1671); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } if (var_attrs == NULL) { -var1072 = 0; /* is null */ +var1672 = 0; /* is null */ } else { -var1072 = 1; /* arg is null and recv is not */ +var1672 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_attrs,((val*)NULL)) on */ +{ /* Inline kernel$Object$!= (var_attrs,((val*)NULL)) on */ var_other = ((val*)NULL); { -var1075 = ((short int(*)(val* self, val* p0))(var_attrs->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_attrs, var_other); /* == on */ +var1675 = ((short int(*)(val* self, val* p0))(var_attrs->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_attrs, var_other); /* == on */ } -var1076 = !var1075; -var1073 = var1076; -goto RET_LABEL1074; -RET_LABEL1074:(void)0; +var1676 = !var1675; +var1673 = var1676; +goto RET_LABEL1674; +RET_LABEL1674:(void)0; } -var1072 = var1073; +var1672 = var1673; } -if (var1072){ +if (var1672){ { -nitc___nitc__AbstractCompiler___generate_init_attr(self, var_v, var_res1021, var_mtype); /* Direct call abstract_compiler#AbstractCompiler#generate_init_attr on */ +nitc___nitc__AbstractCompiler___generate_init_attr(self, var_v, var_res1597, var_mtype); /* Direct call abstract_compiler$AbstractCompiler$generate_init_attr on */ } { -nitc___nitc__AbstractCompilerVisitor___set_finalizer(var_v, var_res1021); /* Direct call abstract_compiler#AbstractCompilerVisitor#set_finalizer on */ +nitc___nitc__AbstractCompilerVisitor___set_finalizer(var_v, var_res1597); /* Direct call abstract_compiler$AbstractCompilerVisitor$set_finalizer on */ } } else { } -if (unlikely(varonce1077==NULL)) { -var1078 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce1079!=NULL)) { -var1080 = varonce1079; +if (unlikely(varonce1677==NULL)) { +var1678 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce1679!=NULL)) { +var1680 = varonce1679; } else { -var1081 = "return "; -var1082 = core__flat___NativeString___to_s_full(var1081, 7l, 7l); -var1080 = var1082; -varonce1079 = var1080; +var1681 = "return "; +var1683 = (val*)(7l<<2|1); +var1684 = (val*)(7l<<2|1); +var1685 = (val*)((long)(0)<<2|3); +var1686 = (val*)((long)(0)<<2|3); +var1682 = core__flat___CString___to_s_unsafe(var1681, var1683, var1684, var1685, var1686); +var1680 = var1682; +varonce1679 = var1680; } -((struct instance_core__NativeArray*)var1078)->values[0]=var1080; -if (likely(varonce1083!=NULL)) { -var1084 = varonce1083; +((struct instance_core__NativeArray*)var1678)->values[0]=var1680; +if (likely(varonce1687!=NULL)) { +var1688 = varonce1687; } else { -var1085 = ";"; -var1086 = core__flat___NativeString___to_s_full(var1085, 1l, 1l); -var1084 = var1086; -varonce1083 = var1084; +var1689 = ";"; +var1691 = (val*)(1l<<2|1); +var1692 = (val*)(1l<<2|1); +var1693 = (val*)((long)(0)<<2|3); +var1694 = (val*)((long)(0)<<2|3); +var1690 = core__flat___CString___to_s_unsafe(var1689, var1691, var1692, var1693, var1694); +var1688 = var1690; +varonce1687 = var1688; } -((struct instance_core__NativeArray*)var1078)->values[2]=var1084; +((struct instance_core__NativeArray*)var1678)->values[2]=var1688; } else { -var1078 = varonce1077; -varonce1077 = NULL; +var1678 = varonce1677; +varonce1677 = NULL; } { -var1087 = ((val*(*)(val* self))(var_res1021->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1021); /* to_s on */ +var1695 = ((val*(*)(val* self))(var_res1597->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res1597); /* to_s on */ } -((struct instance_core__NativeArray*)var1078)->values[1]=var1087; +((struct instance_core__NativeArray*)var1678)->values[1]=var1695; { -var1088 = ((val*(*)(val* self))(var1078->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1078); /* native_to_s on */ +var1696 = ((val*(*)(val* self))(var1678->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1678); /* native_to_s on */ } -varonce1077 = var1078; +varonce1677 = var1678; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var1088); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1696); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } } -if (likely(varonce1089!=NULL)) { -var1090 = varonce1089; +if (likely(varonce1697!=NULL)) { +var1698 = varonce1697; } else { -var1091 = "}"; -var1092 = core__flat___NativeString___to_s_full(var1091, 1l, 1l); -var1090 = var1092; -varonce1089 = var1090; +var1699 = "}"; +var1701 = (val*)(1l<<2|1); +var1702 = (val*)(1l<<2|1); +var1703 = (val*)((long)(0)<<2|3); +var1704 = (val*)((long)(0)<<2|3); +var1700 = core__flat___CString___to_s_unsafe(var1699, var1701, var1702, var1703, var1704); +var1698 = var1700; +varonce1697 = var1698; } { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var1090); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var1698); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ } RET_LABEL:; } -/* method separate_erasure_compiler#SeparateErasureCompiler#build_class_vts_table for (self: SeparateErasureCompiler, MClass): Bool */ +/* method separate_erasure_compiler$SeparateErasureCompiler$build_class_vts_table for (self: SeparateErasureCompiler, MClass): Bool */ short int nitc___nitc__SeparateErasureCompiler___build_class_vts_table(val* self, val* p0) { short int var /* : Bool */; val* var_mclass /* var mclass: MClass */; @@ -6497,135 +8027,198 @@ val* var6 /* : NativeArray[String] */; static val* varonce; static val* varonce7; val* var8 /* : String */; -char* var9 /* : NativeString */; +char* var9 /* : CString */; val* var10 /* : String */; -val* var11 /* : String */; -val* var12 /* : String */; -val* var14 /* : NativeArray[String] */; -static val* varonce13; -static val* varonce15; +val* var11 /* : nullable Int */; +val* var12 /* : nullable Int */; +val* var13 /* : nullable Bool */; +val* var14 /* : nullable Bool */; +val* var15 /* : String */; val* var16 /* : String */; -char* var17 /* : NativeString */; -val* var18 /* : String */; +val* var18 /* : NativeArray[String] */; +static val* varonce17; static val* varonce19; val* var20 /* : String */; -char* var21 /* : NativeString */; +char* var21 /* : CString */; val* var22 /* : String */; -val* var23 /* : String */; -val* var24 /* : String */; -val* var25 /* : SeparateCompilerVisitor */; -val* var_v /* var v: SeparateCompilerVisitor */; -val* var27 /* : NativeArray[String] */; -static val* varonce26; -static val* varonce28; -val* var29 /* : String */; -char* var30 /* : NativeString */; -val* var31 /* : String */; -static val* varonce32; -val* var33 /* : String */; -char* var34 /* : NativeString */; +val* var23 /* : nullable Int */; +val* var24 /* : nullable Int */; +val* var25 /* : nullable Bool */; +val* var26 /* : nullable Bool */; +static val* varonce27; +val* var28 /* : String */; +char* var29 /* : CString */; +val* var30 /* : String */; +val* var31 /* : nullable Int */; +val* var32 /* : nullable Int */; +val* var33 /* : nullable Bool */; +val* var34 /* : nullable Bool */; val* var35 /* : String */; val* var36 /* : String */; -val* var37 /* : String */; +val* var37 /* : SeparateCompilerVisitor */; +val* var_v /* var v: SeparateCompilerVisitor */; +val* var39 /* : NativeArray[String] */; static val* varonce38; -val* var39 /* : String */; -char* var40 /* : NativeString */; +static val* varonce40; val* var41 /* : String */; -static val* varonce42; +char* var42 /* : CString */; val* var43 /* : String */; -char* var44 /* : NativeString */; -val* var45 /* : String */; -val* var46 /* : Map[MClass, Array[nullable MPropDef]] */; -val* var48 /* : Map[MClass, Array[nullable MPropDef]] */; -val* var49 /* : nullable Object */; +val* var44 /* : nullable Int */; +val* var45 /* : nullable Int */; +val* var46 /* : nullable Bool */; +val* var47 /* : nullable Bool */; +static val* varonce48; +val* var49 /* : String */; +char* var50 /* : CString */; +val* var51 /* : String */; +val* var52 /* : nullable Int */; +val* var53 /* : nullable Int */; +val* var54 /* : nullable Bool */; +val* var55 /* : nullable Bool */; +val* var56 /* : String */; +val* var57 /* : String */; +static val* varonce58; +val* var59 /* : String */; +char* var60 /* : CString */; +val* var61 /* : String */; +val* var62 /* : nullable Int */; +val* var63 /* : nullable Int */; +val* var64 /* : nullable Bool */; +val* var65 /* : nullable Bool */; +static val* varonce66; +val* var67 /* : String */; +char* var68 /* : CString */; +val* var69 /* : String */; +val* var70 /* : nullable Int */; +val* var71 /* : nullable Int */; +val* var72 /* : nullable Bool */; +val* var73 /* : nullable Bool */; +val* var74 /* : Map[MClass, Array[nullable MPropDef]] */; +val* var76 /* : Map[MClass, Array[nullable MPropDef]] */; +val* var77 /* : nullable Object */; val* var_ /* var : Array[nullable MPropDef] */; -val* var50 /* : IndexedIterator[nullable Object] */; -val* var_51 /* var : IndexedIterator[nullable MPropDef] */; -short int var52 /* : Bool */; -val* var53 /* : nullable Object */; +val* var78 /* : IndexedIterator[nullable Object] */; +val* var_79 /* var : IndexedIterator[nullable MPropDef] */; +short int var80 /* : Bool */; +val* var81 /* : nullable Object */; val* var_vt /* var vt: nullable MPropDef */; -short int var54 /* : Bool */; -short int var55 /* : Bool */; +short int var82 /* : Bool */; +short int var83 /* : Bool */; val* var_other /* var other: nullable Object */; -short int var57 /* : Bool */; -short int var59 /* : Bool */; -static val* varonce60; -val* var61 /* : String */; -char* var62 /* : NativeString */; -val* var63 /* : String */; +short int var85 /* : Bool */; +short int var87 /* : Bool */; +static val* varonce88; +val* var89 /* : String */; +char* var90 /* : CString */; +val* var91 /* : String */; +val* var92 /* : nullable Int */; +val* var93 /* : nullable Int */; +val* var94 /* : nullable Bool */; +val* var95 /* : nullable Bool */; long var_is_null /* var is_null: Int */; -val* var64 /* : MClassDef */; -val* var66 /* : MClassDef */; -val* var67 /* : MClassType */; -val* var69 /* : MClassType */; -short int var70 /* : Bool */; +val* var96 /* : MClassDef */; +val* var98 /* : MClassDef */; +val* var99 /* : MClassType */; +val* var101 /* : MClassType */; +short int var102 /* : Bool */; int cltype; int idtype; const char* var_class_name; -val* var71 /* : nullable MType */; -val* var73 /* : nullable MType */; -val* var74 /* : MType */; +val* var103 /* : nullable MType */; +val* var105 /* : nullable MType */; +val* var106 /* : MType */; val* var_bound /* var bound: MType */; -short int var75 /* : Bool */; -int cltype76; -int idtype77; -val* var78 /* : MClassDef */; -val* var80 /* : MClassDef */; -val* var81 /* : MClassType */; -val* var83 /* : MClassType */; -val* var84 /* : MType */; -val* var86 /* : MType */; -val* var87 /* : MType */; -short int var89 /* : Bool */; -int cltype90; -int idtype91; -const char* var_class_name92; -val* var93 /* : MClass */; -val* var95 /* : MClass */; +short int var107 /* : Bool */; +int cltype108; +int idtype109; +val* var110 /* : MClassDef */; +val* var112 /* : MClassDef */; +val* var113 /* : MClassType */; +val* var115 /* : MClassType */; +val* var116 /* : MType */; +val* var118 /* : MType */; +val* var119 /* : MType */; +short int var121 /* : Bool */; +int cltype122; +int idtype123; +const char* var_class_name124; +val* var125 /* : MClass */; +val* var127 /* : MClass */; val* var_vtclass /* var vtclass: MClass */; -val* var97 /* : NativeArray[String] */; -static val* varonce96; -static val* varonce98; -val* var99 /* : String */; -char* var100 /* : NativeString */; -val* var101 /* : String */; -val* var102 /* : String */; -val* var103 /* : String */; -val* var105 /* : NativeArray[String] */; -static val* varonce104; -static val* varonce106; -val* var107 /* : String */; -char* var108 /* : NativeString */; -val* var109 /* : String */; -static val* varonce110; -val* var111 /* : String */; -char* var112 /* : NativeString */; -val* var113 /* : String */; -static val* varonce114; -val* var115 /* : String */; -char* var116 /* : NativeString */; -val* var117 /* : String */; -static val* varonce118; -val* var119 /* : String */; -char* var120 /* : NativeString */; -val* var121 /* : String */; -val* var122 /* : String */; -val* var123 /* : String */; -val* var124 /* : String */; -val* var125 /* : String */; -static val* varonce126; -val* var127 /* : String */; -char* var128 /* : NativeString */; -val* var129 /* : String */; +val* var129 /* : NativeArray[String] */; +static val* varonce128; static val* varonce130; val* var131 /* : String */; -char* var132 /* : NativeString */; +char* var132 /* : CString */; val* var133 /* : String */; +val* var134 /* : nullable Int */; +val* var135 /* : nullable Int */; +val* var136 /* : nullable Bool */; +val* var137 /* : nullable Bool */; +val* var138 /* : String */; +val* var139 /* : String */; +val* var141 /* : NativeArray[String] */; +static val* varonce140; +static val* varonce142; +val* var143 /* : String */; +char* var144 /* : CString */; +val* var145 /* : String */; +val* var146 /* : nullable Int */; +val* var147 /* : nullable Int */; +val* var148 /* : nullable Bool */; +val* var149 /* : nullable Bool */; +static val* varonce150; +val* var151 /* : String */; +char* var152 /* : CString */; +val* var153 /* : String */; +val* var154 /* : nullable Int */; +val* var155 /* : nullable Int */; +val* var156 /* : nullable Bool */; +val* var157 /* : nullable Bool */; +static val* varonce158; +val* var159 /* : String */; +char* var160 /* : CString */; +val* var161 /* : String */; +val* var162 /* : nullable Int */; +val* var163 /* : nullable Int */; +val* var164 /* : nullable Bool */; +val* var165 /* : nullable Bool */; +static val* varonce166; +val* var167 /* : String */; +char* var168 /* : CString */; +val* var169 /* : String */; +val* var170 /* : nullable Int */; +val* var171 /* : nullable Int */; +val* var172 /* : nullable Bool */; +val* var173 /* : nullable Bool */; +val* var174 /* : String */; +val* var175 /* : String */; +val* var176 /* : String */; +val* var177 /* : String */; +static val* varonce178; +val* var179 /* : String */; +char* var180 /* : CString */; +val* var181 /* : String */; +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 */; var_mclass = p0; { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#vt_tables (self) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$vt_tables (self) on */ var3 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_tables].val; /* _vt_tables on */ if (unlikely(var3 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _vt_tables"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 428); fatal_exit(1); @@ -6646,12 +8239,16 @@ goto RET_LABEL; } else { } if (unlikely(varonce==NULL)) { -var6 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); +var6 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); if (likely(varonce7!=NULL)) { var8 = varonce7; } else { var9 = "vts_table_"; -var10 = core__flat___NativeString___to_s_full(var9, 10l, 10l); +var11 = (val*)(10l<<2|1); +var12 = (val*)(10l<<2|1); +var13 = (val*)((long)(0)<<2|3); +var14 = (val*)((long)(0)<<2|3); +var10 = core__flat___CString___to_s_unsafe(var9, var11, var12, var13, var14); var8 = var10; varonce7 = var8; } @@ -6661,431 +8258,508 @@ var6 = varonce; varonce = NULL; } { -var11 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass); +var15 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass); } -((struct instance_core__NativeArray*)var6)->values[1]=var11; +((struct instance_core__NativeArray*)var6)->values[1]=var15; { -var12 = ((val*(*)(val* self))(var6->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var6); /* native_to_s on */ +var16 = ((val*(*)(val* self))(var6->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var6); /* native_to_s on */ } varonce = var6; -if (unlikely(varonce13==NULL)) { -var14 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce15!=NULL)) { -var16 = varonce15; -} else { -var17 = "extern const struct vts_table vts_table_"; -var18 = core__flat___NativeString___to_s_full(var17, 40l, 40l); -var16 = var18; -varonce15 = var16; -} -((struct instance_core__NativeArray*)var14)->values[0]=var16; +if (unlikely(varonce17==NULL)) { +var18 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); if (likely(varonce19!=NULL)) { var20 = varonce19; } else { -var21 = ";"; -var22 = core__flat___NativeString___to_s_full(var21, 1l, 1l); +var21 = "extern const struct vts_table vts_table_"; +var23 = (val*)(40l<<2|1); +var24 = (val*)(40l<<2|1); +var25 = (val*)((long)(0)<<2|3); +var26 = (val*)((long)(0)<<2|3); +var22 = core__flat___CString___to_s_unsafe(var21, var23, var24, var25, var26); var20 = var22; varonce19 = var20; } -((struct instance_core__NativeArray*)var14)->values[2]=var20; +((struct instance_core__NativeArray*)var18)->values[0]=var20; +if (likely(varonce27!=NULL)) { +var28 = varonce27; } else { -var14 = varonce13; -varonce13 = NULL; +var29 = ";"; +var31 = (val*)(1l<<2|1); +var32 = (val*)(1l<<2|1); +var33 = (val*)((long)(0)<<2|3); +var34 = (val*)((long)(0)<<2|3); +var30 = core__flat___CString___to_s_unsafe(var29, var31, var32, var33, var34); +var28 = var30; +varonce27 = var28; +} +((struct instance_core__NativeArray*)var18)->values[2]=var28; +} else { +var18 = varonce17; +varonce17 = NULL; } { -var23 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass); +var35 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass); } -((struct instance_core__NativeArray*)var14)->values[1]=var23; +((struct instance_core__NativeArray*)var18)->values[1]=var35; { -var24 = ((val*(*)(val* self))(var14->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var14); /* native_to_s on */ +var36 = ((val*(*)(val* self))(var18->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var18); /* native_to_s on */ } -varonce13 = var14; +varonce17 = var18; { -nitc___nitc__AbstractCompiler___provide_declaration(self, var12, var24); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var16, var36); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } { -var25 = nitc___nitc__SeparateErasureCompiler___nitc__abstract_compiler__AbstractCompiler__new_visitor(self); +var37 = nitc___nitc__SeparateErasureCompiler___nitc__abstract_compiler__AbstractCompiler__new_visitor(self); } -var_v = var25; -if (unlikely(varonce26==NULL)) { -var27 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce28!=NULL)) { -var29 = varonce28; +var_v = var37; +if (unlikely(varonce38==NULL)) { +var39 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce40!=NULL)) { +var41 = varonce40; } else { -var30 = "const struct vts_table vts_table_"; -var31 = core__flat___NativeString___to_s_full(var30, 33l, 33l); -var29 = var31; -varonce28 = var29; +var42 = "const struct vts_table vts_table_"; +var44 = (val*)(33l<<2|1); +var45 = (val*)(33l<<2|1); +var46 = (val*)((long)(0)<<2|3); +var47 = (val*)((long)(0)<<2|3); +var43 = core__flat___CString___to_s_unsafe(var42, var44, var45, var46, var47); +var41 = var43; +varonce40 = var41; } -((struct instance_core__NativeArray*)var27)->values[0]=var29; -if (likely(varonce32!=NULL)) { -var33 = varonce32; +((struct instance_core__NativeArray*)var39)->values[0]=var41; +if (likely(varonce48!=NULL)) { +var49 = varonce48; } else { -var34 = " = {"; -var35 = core__flat___NativeString___to_s_full(var34, 4l, 4l); -var33 = var35; -varonce32 = var33; +var50 = " = {"; +var52 = (val*)(4l<<2|1); +var53 = (val*)(4l<<2|1); +var54 = (val*)((long)(0)<<2|3); +var55 = (val*)((long)(0)<<2|3); +var51 = core__flat___CString___to_s_unsafe(var50, var52, var53, var54, var55); +var49 = var51; +varonce48 = var49; } -((struct instance_core__NativeArray*)var27)->values[2]=var33; +((struct instance_core__NativeArray*)var39)->values[2]=var49; } else { -var27 = varonce26; -varonce26 = NULL; +var39 = varonce38; +varonce38 = NULL; } { -var36 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass); +var56 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass); } -((struct instance_core__NativeArray*)var27)->values[1]=var36; +((struct instance_core__NativeArray*)var39)->values[1]=var56; { -var37 = ((val*(*)(val* self))(var27->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var27); /* native_to_s on */ +var57 = ((val*(*)(val* self))(var39->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var39); /* native_to_s on */ } -varonce26 = var27; +varonce38 = var39; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var37); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var57); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (likely(varonce38!=NULL)) { -var39 = varonce38; +if (likely(varonce58!=NULL)) { +var59 = varonce58; } else { -var40 = "0, /* dummy */"; -var41 = core__flat___NativeString___to_s_full(var40, 14l, 14l); -var39 = var41; -varonce38 = var39; +var60 = "0, /* dummy */"; +var62 = (val*)(14l<<2|1); +var63 = (val*)(14l<<2|1); +var64 = (val*)((long)(0)<<2|3); +var65 = (val*)((long)(0)<<2|3); +var61 = core__flat___CString___to_s_unsafe(var60, var62, var63, var64, var65); +var59 = var61; +varonce58 = var59; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var39); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var59); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (likely(varonce42!=NULL)) { -var43 = varonce42; +if (likely(varonce66!=NULL)) { +var67 = varonce66; } else { -var44 = "{"; -var45 = core__flat___NativeString___to_s_full(var44, 1l, 1l); -var43 = var45; -varonce42 = var43; +var68 = "{"; +var70 = (val*)(1l<<2|1); +var71 = (val*)(1l<<2|1); +var72 = (val*)((long)(0)<<2|3); +var73 = (val*)((long)(0)<<2|3); +var69 = core__flat___CString___to_s_unsafe(var68, var70, var71, var72, var73); +var67 = var69; +varonce66 = var67; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var43); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var67); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#vt_tables (self) on */ -var48 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_tables].val; /* _vt_tables on */ -if (unlikely(var48 == NULL)) { +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$vt_tables (self) on */ +var76 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_tables].val; /* _vt_tables on */ +if (unlikely(var76 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _vt_tables"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 428); fatal_exit(1); } -var46 = var48; -RET_LABEL47:(void)0; +var74 = var76; +RET_LABEL75:(void)0; } } { -var49 = ((val*(*)(val* self, val* p0))((((long)var46&3)?class_info[((long)var46&3)]:var46->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var46, var_mclass); /* [] on */ +var77 = ((val*(*)(val* self, val* p0))((((long)var74&3)?class_info[((long)var74&3)]:var74->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var74, var_mclass); /* [] on */ } -var_ = var49; +var_ = var77; { -var50 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_); +var78 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_); } -var_51 = var50; +var_79 = var78; for(;;) { { -var52 = ((short int(*)(val* self))((((long)var_51&3)?class_info[((long)var_51&3)]:var_51->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_51); /* is_ok on */ +var80 = ((short int(*)(val* self))((((long)var_79&3)?class_info[((long)var_79&3)]:var_79->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_79); /* is_ok on */ } -if (var52){ +if (var80){ } else { goto BREAK_label; } { -var53 = ((val*(*)(val* self))((((long)var_51&3)?class_info[((long)var_51&3)]:var_51->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_51); /* item on */ +var81 = ((val*(*)(val* self))((((long)var_79&3)?class_info[((long)var_79&3)]:var_79->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_79); /* item on */ } -var_vt = var53; +var_vt = var81; if (var_vt == NULL) { -var54 = 1; /* is null */ +var82 = 1; /* is null */ } else { -var54 = 0; /* arg is null but recv is not */ +var82 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_vt,((val*)NULL)) on */ +{ /* Inline kernel$Object$== (var_vt,((val*)NULL)) on */ var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_vt,var_other) on */ -var59 = var_vt == var_other; -var57 = var59; -goto RET_LABEL58; -RET_LABEL58:(void)0; +{ /* Inline kernel$Object$is_same_instance (var_vt,var_other) on */ +var87 = var_vt == var_other; +var85 = var87; +goto RET_LABEL86; +RET_LABEL86:(void)0; } } -var55 = var57; -goto RET_LABEL56; -RET_LABEL56:(void)0; +var83 = var85; +goto RET_LABEL84; +RET_LABEL84:(void)0; } -var54 = var55; +var82 = var83; } -if (var54){ -if (likely(varonce60!=NULL)) { -var61 = varonce60; +if (var82){ +if (likely(varonce88!=NULL)) { +var89 = varonce88; } else { -var62 = "{-1, NULL}, /* empty */"; -var63 = core__flat___NativeString___to_s_full(var62, 23l, 23l); -var61 = var63; -varonce60 = var61; +var90 = "{-1, NULL}, /* empty */"; +var92 = (val*)(23l<<2|1); +var93 = (val*)(23l<<2|1); +var94 = (val*)((long)(0)<<2|3); +var95 = (val*)((long)(0)<<2|3); +var91 = core__flat___CString___to_s_unsafe(var90, var92, var93, var94, var95); +var89 = var91; +varonce88 = var89; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var61); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var89); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } } else { var_is_null = 0l; { -{ /* Inline model#MClass#intro (var_mclass) on */ -var66 = var_mclass->attrs[COLOR_nitc__model__MClass___intro].val; /* _intro on */ -if (unlikely(var66 == NULL)) { +{ /* Inline model$MClass$intro (var_mclass) on */ +var98 = var_mclass->attrs[COLOR_nitc__model__MClass___intro].val; /* _intro on */ +if (unlikely(var98 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 483); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 496); fatal_exit(1); } -var64 = var66; -RET_LABEL65:(void)0; +var96 = var98; +RET_LABEL97:(void)0; } } { -{ /* Inline model#MClassDef#bound_mtype (var64) on */ -var69 = var64->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on */ -if (unlikely(var69 == NULL)) { +{ /* Inline model$MClassDef$bound_mtype (var96) on */ +var101 = var96->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on */ +if (unlikely(var101 == 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); } -var67 = var69; -RET_LABEL68:(void)0; +var99 = var101; +RET_LABEL100:(void)0; } } /* isa MVirtualTypeDef */ cltype = type_nitc__MVirtualTypeDef.color; idtype = type_nitc__MVirtualTypeDef.id; if(cltype >= var_vt->type->table_size) { -var70 = 0; +var102 = 0; } else { -var70 = var_vt->type->type_table[cltype] == idtype; +var102 = var_vt->type->type_table[cltype] == idtype; } -if (unlikely(!var70)) { +if (unlikely(!var102)) { var_class_name = var_vt == NULL ? "null" : var_vt->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MVirtualTypeDef", var_class_name); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 389); fatal_exit(1); } { -{ /* Inline model#MVirtualTypeDef#bound (var_vt) on */ -var73 = var_vt->attrs[COLOR_nitc__model__MVirtualTypeDef___bound].val; /* _bound on */ -var71 = var73; -RET_LABEL72:(void)0; +{ /* Inline model$MVirtualTypeDef$bound (var_vt) on */ +var105 = var_vt->attrs[COLOR_nitc__model__MVirtualTypeDef___bound].val; /* _bound on */ +var103 = var105; +RET_LABEL104:(void)0; } } { -var74 = nitc___nitc__SeparateErasureCompiler___retrieve_vt_bound(self, var67, var71); +var106 = nitc___nitc__SeparateErasureCompiler___retrieve_vt_bound(self, var99, var103); } -var_bound = var74; +var_bound = var106; for(;;) { /* isa MNullableType */ -cltype76 = type_nitc__MNullableType.color; -idtype77 = type_nitc__MNullableType.id; -if(cltype76 >= var_bound->type->table_size) { -var75 = 0; +cltype108 = type_nitc__MNullableType.color; +idtype109 = type_nitc__MNullableType.id; +if(cltype108 >= var_bound->type->table_size) { +var107 = 0; } else { -var75 = var_bound->type->type_table[cltype76] == idtype77; +var107 = var_bound->type->type_table[cltype108] == idtype109; } -if (var75){ +if (var107){ { -{ /* Inline model#MClass#intro (var_mclass) on */ -var80 = var_mclass->attrs[COLOR_nitc__model__MClass___intro].val; /* _intro on */ -if (unlikely(var80 == NULL)) { +{ /* Inline model$MClass$intro (var_mclass) on */ +var112 = var_mclass->attrs[COLOR_nitc__model__MClass___intro].val; /* _intro on */ +if (unlikely(var112 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 483); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 496); fatal_exit(1); } -var78 = var80; -RET_LABEL79:(void)0; +var110 = var112; +RET_LABEL111:(void)0; } } { -{ /* Inline model#MClassDef#bound_mtype (var78) on */ -var83 = var78->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on */ -if (unlikely(var83 == NULL)) { +{ /* Inline model$MClassDef$bound_mtype (var110) on */ +var115 = var110->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on */ +if (unlikely(var115 == 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); } -var81 = var83; -RET_LABEL82:(void)0; +var113 = var115; +RET_LABEL114:(void)0; } } { -{ /* Inline model#MProxyType#mtype (var_bound) on */ -var86 = var_bound->attrs[COLOR_nitc__model__MProxyType___mtype].val; /* _mtype on */ -if (unlikely(var86 == NULL)) { +{ /* Inline model$MProxyType$mtype (var_bound) on */ +var118 = var_bound->attrs[COLOR_nitc__model__MProxyType___mtype].val; /* _mtype on */ +if (unlikely(var118 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1625); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1689); fatal_exit(1); } -var84 = var86; -RET_LABEL85:(void)0; +var116 = var118; +RET_LABEL117:(void)0; } } { -var87 = nitc___nitc__SeparateErasureCompiler___retrieve_vt_bound(self, var81, var84); +var119 = nitc___nitc__SeparateErasureCompiler___retrieve_vt_bound(self, var113, var116); } -var_bound = var87; +var_bound = var119; var_is_null = 1l; } else { -goto BREAK_label88; +goto BREAK_label120; } } -BREAK_label88: (void)0; +BREAK_label120: (void)0; /* isa MClassType */ -cltype90 = type_nitc__MClassType.color; -idtype91 = type_nitc__MClassType.id; -if(cltype90 >= var_bound->type->table_size) { -var89 = 0; +cltype122 = type_nitc__MClassType.color; +idtype123 = type_nitc__MClassType.id; +if(cltype122 >= var_bound->type->table_size) { +var121 = 0; } else { -var89 = var_bound->type->type_table[cltype90] == idtype91; +var121 = var_bound->type->type_table[cltype122] == idtype123; } -if (unlikely(!var89)) { -var_class_name92 = var_bound == NULL ? "null" : var_bound->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name92); +if (unlikely(!var121)) { +var_class_name124 = var_bound == NULL ? "null" : var_bound->type->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name124); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 394); fatal_exit(1); } { -{ /* Inline model#MClassType#mclass (var_bound) on */ -var95 = var_bound->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ -if (unlikely(var95 == NULL)) { +{ /* Inline model$MClassType$mclass (var_bound) on */ +var127 = var_bound->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ +if (unlikely(var127 == 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, 1163); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1197); fatal_exit(1); } -var93 = var95; -RET_LABEL94:(void)0; +var125 = var127; +RET_LABEL126:(void)0; } } -var_vtclass = var93; -if (unlikely(varonce96==NULL)) { -var97 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce98!=NULL)) { -var99 = varonce98; +var_vtclass = var125; +if (unlikely(varonce128==NULL)) { +var129 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce130!=NULL)) { +var131 = varonce130; } else { -var100 = "class_"; -var101 = core__flat___NativeString___to_s_full(var100, 6l, 6l); -var99 = var101; -varonce98 = var99; +var132 = "class_"; +var134 = (val*)(6l<<2|1); +var135 = (val*)(6l<<2|1); +var136 = (val*)((long)(0)<<2|3); +var137 = (val*)((long)(0)<<2|3); +var133 = core__flat___CString___to_s_unsafe(var132, var134, var135, var136, var137); +var131 = var133; +varonce130 = var131; } -((struct instance_core__NativeArray*)var97)->values[0]=var99; +((struct instance_core__NativeArray*)var129)->values[0]=var131; } else { -var97 = varonce96; -varonce96 = NULL; +var129 = varonce128; +varonce128 = NULL; } { -var102 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_vtclass); +var138 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_vtclass); } -((struct instance_core__NativeArray*)var97)->values[1]=var102; +((struct instance_core__NativeArray*)var129)->values[1]=var138; { -var103 = ((val*(*)(val* self))(var97->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var97); /* native_to_s on */ +var139 = ((val*(*)(val* self))(var129->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var129); /* native_to_s on */ } -varonce96 = var97; +varonce128 = var129; { -nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var103); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on */ +nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var139); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on */ } -if (unlikely(varonce104==NULL)) { -var105 = NEW_core__NativeArray(7l, &type_core__NativeArray__core__String); -if (likely(varonce106!=NULL)) { -var107 = varonce106; +if (unlikely(varonce140==NULL)) { +var141 = NEW_core__NativeArray((int)7l, &type_core__NativeArray__core__String); +if (likely(varonce142!=NULL)) { +var143 = varonce142; } else { -var108 = "{"; -var109 = core__flat___NativeString___to_s_full(var108, 1l, 1l); -var107 = var109; -varonce106 = var107; +var144 = "{"; +var146 = (val*)(1l<<2|1); +var147 = (val*)(1l<<2|1); +var148 = (val*)((long)(0)<<2|3); +var149 = (val*)((long)(0)<<2|3); +var145 = core__flat___CString___to_s_unsafe(var144, var146, var147, var148, var149); +var143 = var145; +varonce142 = var143; } -((struct instance_core__NativeArray*)var105)->values[0]=var107; -if (likely(varonce110!=NULL)) { -var111 = varonce110; +((struct instance_core__NativeArray*)var141)->values[0]=var143; +if (likely(varonce150!=NULL)) { +var151 = varonce150; } else { -var112 = ", &class_"; -var113 = core__flat___NativeString___to_s_full(var112, 9l, 9l); -var111 = var113; -varonce110 = var111; +var152 = ", &class_"; +var154 = (val*)(9l<<2|1); +var155 = (val*)(9l<<2|1); +var156 = (val*)((long)(0)<<2|3); +var157 = (val*)((long)(0)<<2|3); +var153 = core__flat___CString___to_s_unsafe(var152, var154, var155, var156, var157); +var151 = var153; +varonce150 = var151; } -((struct instance_core__NativeArray*)var105)->values[2]=var111; -if (likely(varonce114!=NULL)) { -var115 = varonce114; +((struct instance_core__NativeArray*)var141)->values[2]=var151; +if (likely(varonce158!=NULL)) { +var159 = varonce158; } else { -var116 = "}, /* "; -var117 = core__flat___NativeString___to_s_full(var116, 6l, 6l); -var115 = var117; -varonce114 = var115; +var160 = "}, /* "; +var162 = (val*)(6l<<2|1); +var163 = (val*)(6l<<2|1); +var164 = (val*)((long)(0)<<2|3); +var165 = (val*)((long)(0)<<2|3); +var161 = core__flat___CString___to_s_unsafe(var160, var162, var163, var164, var165); +var159 = var161; +varonce158 = var159; } -((struct instance_core__NativeArray*)var105)->values[4]=var115; -if (likely(varonce118!=NULL)) { -var119 = varonce118; +((struct instance_core__NativeArray*)var141)->values[4]=var159; +if (likely(varonce166!=NULL)) { +var167 = varonce166; } else { -var120 = " */"; -var121 = core__flat___NativeString___to_s_full(var120, 3l, 3l); -var119 = var121; -varonce118 = var119; +var168 = " */"; +var170 = (val*)(3l<<2|1); +var171 = (val*)(3l<<2|1); +var172 = (val*)((long)(0)<<2|3); +var173 = (val*)((long)(0)<<2|3); +var169 = core__flat___CString___to_s_unsafe(var168, var170, var171, var172, var173); +var167 = var169; +varonce166 = var167; } -((struct instance_core__NativeArray*)var105)->values[6]=var119; +((struct instance_core__NativeArray*)var141)->values[6]=var167; } else { -var105 = varonce104; -varonce104 = NULL; +var141 = varonce140; +varonce140 = NULL; } -var122 = core__flat___Int___core__abstract_text__Object__to_s(var_is_null); -((struct instance_core__NativeArray*)var105)->values[1]=var122; +var174 = core__flat___Int___core__abstract_text__Object__to_s(var_is_null); +((struct instance_core__NativeArray*)var141)->values[1]=var174; { -var123 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_vtclass); +var175 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_vtclass); } -((struct instance_core__NativeArray*)var105)->values[3]=var123; +((struct instance_core__NativeArray*)var141)->values[3]=var175; { -var124 = ((val*(*)(val* self))(var_vt->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_vt); /* to_s on */ +var176 = ((val*(*)(val* self))(var_vt->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_vt); /* to_s on */ } -((struct instance_core__NativeArray*)var105)->values[5]=var124; +((struct instance_core__NativeArray*)var141)->values[5]=var176; { -var125 = ((val*(*)(val* self))(var105->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var105); /* native_to_s on */ +var177 = ((val*(*)(val* self))(var141->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var141); /* native_to_s on */ } -varonce104 = var105; +varonce140 = var141; { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var125); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var177); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } } { -((void(*)(val* self))((((long)var_51&3)?class_info[((long)var_51&3)]:var_51->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_51); /* next on */ +((void(*)(val* self))((((long)var_79&3)?class_info[((long)var_79&3)]:var_79->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_79); /* next on */ } } BREAK_label: (void)0; { -((void(*)(val* self))((((long)var_51&3)?class_info[((long)var_51&3)]:var_51->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_51); /* finish on */ +((void(*)(val* self))((((long)var_79&3)?class_info[((long)var_79&3)]:var_79->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_79); /* finish on */ } -if (likely(varonce126!=NULL)) { -var127 = varonce126; +if (likely(varonce178!=NULL)) { +var179 = varonce178; } else { -var128 = "},"; -var129 = core__flat___NativeString___to_s_full(var128, 2l, 2l); -var127 = var129; -varonce126 = var127; +var180 = "},"; +var182 = (val*)(2l<<2|1); +var183 = (val*)(2l<<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; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var127); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var179); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } -if (likely(varonce130!=NULL)) { -var131 = varonce130; +if (likely(varonce186!=NULL)) { +var187 = varonce186; } else { -var132 = "};"; -var133 = core__flat___NativeString___to_s_full(var132, 2l, 2l); -var131 = var133; -varonce130 = var131; +var188 = "};"; +var190 = (val*)(2l<<2|1); +var191 = (val*)(2l<<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; } { -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var131); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ +nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var187); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on */ } var = 1; goto RET_LABEL; RET_LABEL:; return var; } -/* method separate_erasure_compiler#SeparateErasureCompiler#retrieve_vt_bound for (self: SeparateErasureCompiler, MClassType, nullable MType): MType */ +/* method separate_erasure_compiler$SeparateErasureCompiler$retrieve_vt_bound for (self: SeparateErasureCompiler, MClassType, nullable MType): MType */ val* nitc___nitc__SeparateErasureCompiler___retrieve_vt_bound(val* self, val* p0, val* p1) { val* var /* : MType */; val* var_anchor /* var anchor: MClassType */; @@ -7098,20 +8772,24 @@ short int var6 /* : Bool */; val* var7 /* : Sys */; static val* varonce; val* var8 /* : String */; -char* var9 /* : NativeString */; +char* var9 /* : CString */; val* var10 /* : String */; -short int var11 /* : Bool */; +val* var11 /* : nullable Int */; +val* var12 /* : nullable Int */; +val* var13 /* : nullable Bool */; +val* var14 /* : nullable Bool */; +short int var15 /* : Bool */; int cltype; int idtype; -val* var12 /* : MModule */; -val* var14 /* : MModule */; -val* var15 /* : MType */; -short int var16 /* : Bool */; -int cltype17; -int idtype18; -val* var19 /* : MModule */; -val* var21 /* : MModule */; -val* var22 /* : MType */; +val* var16 /* : MModule */; +val* var18 /* : MModule */; +val* var19 /* : MType */; +short int var20 /* : Bool */; +int cltype21; +int idtype22; +val* var23 /* : MModule */; +val* var25 /* : MModule */; +val* var26 /* : MType */; var_anchor = p0; var_mtype = p1; if (var_mtype == NULL) { @@ -7120,10 +8798,10 @@ var1 = 1; /* is null */ var1 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on */ +{ /* Inline kernel$Object$== (var_mtype,((val*)NULL)) on */ var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var_mtype,var_other) on */ var6 = var_mtype == var_other; var4 = var6; goto RET_LABEL5; @@ -7142,12 +8820,19 @@ if (likely(varonce!=NULL)) { var8 = varonce; } else { var9 = "NOT YET IMPLEMENTED: retrieve_vt_bound on null"; -var10 = core__flat___NativeString___to_s_full(var9, 46l, 46l); +var11 = (val*)(46l<<2|1); +var12 = (val*)(46l<<2|1); +var13 = (val*)((long)(0)<<2|3); +var14 = (val*)((long)(0)<<2|3); +var10 = core__flat___CString___to_s_unsafe(var9, var11, var12, var13, var14); var8 = var10; varonce = var8; } { -core__file___Sys___print(var7, var8); /* Direct call file#Sys#print on */ +core__file___Sys___print(var7, var8); /* Direct call file$Sys$print on */ +} +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); } PRINT_ERROR("Runtime error: %s", "Aborted"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 407); @@ -7158,54 +8843,60 @@ fatal_exit(1); cltype = type_nitc__MVirtualType.color; idtype = type_nitc__MVirtualType.id; if(cltype >= var_mtype->type->table_size) { -var11 = 0; +var15 = 0; } else { -var11 = var_mtype->type->type_table[cltype] == idtype; +var15 = var_mtype->type->type_table[cltype] == idtype; } -if (var11){ +if (var15){ { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ -var14 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ -if (unlikely(var14 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ +var18 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ +if (unlikely(var18 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } -var12 = var14; -RET_LABEL13:(void)0; +var16 = var18; +RET_LABEL17:(void)0; } } { -var15 = nitc___nitc__MType___anchor_to(var_mtype, var12, var_anchor); +var19 = nitc___nitc__MType___anchor_to(var_mtype, var16, var_anchor); } -var = var15; +var = var19; goto RET_LABEL; } else { /* isa MParameterType */ -cltype17 = type_nitc__MParameterType.color; -idtype18 = type_nitc__MParameterType.id; -if(cltype17 >= var_mtype->type->table_size) { -var16 = 0; +cltype21 = type_nitc__MParameterType.color; +idtype22 = type_nitc__MParameterType.id; +if(cltype21 >= var_mtype->type->table_size) { +var20 = 0; } else { -var16 = var_mtype->type->type_table[cltype17] == idtype18; +var20 = var_mtype->type->type_table[cltype21] == idtype22; } -if (var16){ +if (var20){ { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ -var21 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ -if (unlikely(var21 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ +var25 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ +if (unlikely(var25 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 531); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 545); fatal_exit(1); } -var19 = var21; -RET_LABEL20:(void)0; +var23 = var25; +RET_LABEL24:(void)0; } } { -var22 = nitc___nitc__MType___anchor_to(var_mtype, var19, var_anchor); +var26 = nitc___nitc__MType___anchor_to(var_mtype, var23, var_anchor); } -var = var22; +var = var26; goto RET_LABEL; } else { var = var_mtype; @@ -7215,14 +8906,17 @@ goto RET_LABEL; RET_LABEL:; return var; } -/* method separate_erasure_compiler#SeparateErasureCompiler#compile_types for (self: SeparateErasureCompiler) */ +/* method separate_erasure_compiler$SeparateErasureCompiler$compile_types for (self: SeparateErasureCompiler) */ void nitc___nitc__SeparateErasureCompiler___nitc__separate_compiler__SeparateCompiler__compile_types(val* self) { val* var /* : Map[MVirtualTypeProp, Int] */; val* var2 /* : Map[MVirtualTypeProp, Int] */; { -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#vt_colors (self) on */ +{ /* Inline separate_erasure_compiler$SeparateErasureCompiler$vt_colors (self) on */ var2 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_colors].val; /* _vt_colors on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _vt_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 86); fatal_exit(1); @@ -7232,11 +8926,11 @@ RET_LABEL1:(void)0; } } { -nitc___nitc__SeparateCompiler___compile_color_consts(self, var); /* Direct call separate_compiler#SeparateCompiler#compile_color_consts on */ +nitc___nitc__SeparateCompiler___compile_color_consts(self, var); /* Direct call separate_compiler$SeparateCompiler$compile_color_consts on */ } RET_LABEL:; } -/* method separate_erasure_compiler#SeparateErasureCompiler#new_visitor for (self: SeparateErasureCompiler): SeparateCompilerVisitor */ +/* method separate_erasure_compiler$SeparateErasureCompiler$new_visitor for (self: SeparateErasureCompiler): SeparateCompilerVisitor */ val* nitc___nitc__SeparateErasureCompiler___nitc__abstract_compiler__AbstractCompiler__new_visitor(val* self) { val* var /* : SeparateCompilerVisitor */; val* var1 /* : SeparateErasureCompilerVisitor */; @@ -7272,12 +8966,15 @@ goto RET_LABEL; RET_LABEL:; return var; } -/* method separate_erasure_compiler#SeparateErasureCompiler#class_tables for (self: SeparateErasureCompiler): Map[MClass, Array[nullable MClass]] */ +/* method separate_erasure_compiler$SeparateErasureCompiler$class_tables for (self: SeparateErasureCompiler): Map[MClass, Array[nullable MClass]] */ val* nitc___nitc__SeparateErasureCompiler___class_tables(val* self) { val* var /* : Map[MClass, Array[nullable MClass]] */; val* var1 /* : Map[MClass, Array[nullable MClass]] */; var1 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_tables].val; /* _class_tables on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_tables"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 427); fatal_exit(1); @@ -7286,17 +8983,20 @@ var = var1; RET_LABEL:; return var; } -/* method separate_erasure_compiler#SeparateErasureCompiler#class_tables= for (self: SeparateErasureCompiler, Map[MClass, Array[nullable MClass]]) */ +/* method separate_erasure_compiler$SeparateErasureCompiler$class_tables= for (self: SeparateErasureCompiler, Map[MClass, Array[nullable MClass]]) */ void nitc___nitc__SeparateErasureCompiler___class_tables_61d(val* self, val* p0) { self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_tables].val = p0; /* _class_tables on */ RET_LABEL:; } -/* method separate_erasure_compiler#SeparateErasureCompiler#vt_tables for (self: SeparateErasureCompiler): Map[MClass, Array[nullable MPropDef]] */ +/* method separate_erasure_compiler$SeparateErasureCompiler$vt_tables for (self: SeparateErasureCompiler): Map[MClass, Array[nullable MPropDef]] */ val* nitc___nitc__SeparateErasureCompiler___vt_tables(val* self) { val* var /* : Map[MClass, Array[nullable MPropDef]] */; val* var1 /* : Map[MClass, Array[nullable MPropDef]] */; var1 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_tables].val; /* _vt_tables on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _vt_tables"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 428); fatal_exit(1); @@ -7305,1524 +9005,8 @@ var = var1; RET_LABEL:; return var; } -/* method separate_erasure_compiler#SeparateErasureCompiler#vt_tables= for (self: SeparateErasureCompiler, Map[MClass, Array[nullable MPropDef]]) */ +/* method separate_erasure_compiler$SeparateErasureCompiler$vt_tables= for (self: SeparateErasureCompiler, Map[MClass, Array[nullable MPropDef]]) */ void nitc___nitc__SeparateErasureCompiler___vt_tables_61d(val* self, val* p0) { self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_tables].val = p0; /* _vt_tables on */ RET_LABEL:; } -/* method separate_erasure_compiler#SeparateErasureCompiler#display_sizes for (self: SeparateErasureCompiler) */ -void nitc___nitc__SeparateErasureCompiler___nitc__separate_compiler__SeparateCompiler__display_sizes(val* self) { -val* var /* : Sys */; -static val* varonce; -val* var1 /* : String */; -char* var2 /* : NativeString */; -val* var3 /* : String */; -val* var4 /* : Sys */; -static val* varonce5; -val* var6 /* : String */; -char* var7 /* : NativeString */; -val* var8 /* : String */; -long var_total /* var total: Int */; -long var_holes /* var holes: Int */; -val* var9 /* : Map[MClass, Array[nullable MClass]] */; -val* var11 /* : Map[MClass, Array[nullable MClass]] */; -val* var_ /* var : Map[MClass, Array[nullable MClass]] */; -val* var12 /* : MapIterator[nullable Object, nullable Object] */; -val* var_13 /* var : MapIterator[MClass, Array[nullable MClass]] */; -short int var14 /* : Bool */; -val* var15 /* : nullable Object */; -val* var_t /* var t: MClass */; -val* var16 /* : nullable Object */; -val* var_table /* var table: Array[nullable MClass] */; -long var17 /* : Int */; -long var19 /* : Int */; -long var20 /* : Int */; -short int var22 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -long var23 /* : Int */; -val* var_24 /* var : Array[nullable MClass] */; -val* var25 /* : IndexedIterator[nullable Object] */; -val* var_26 /* var : IndexedIterator[nullable MClass] */; -short int var27 /* : Bool */; -val* var29 /* : nullable Object */; -val* var_e /* var e: nullable MClass */; -short int var30 /* : Bool */; -short int var31 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var33 /* : Bool */; -short int var35 /* : Bool */; -long var36 /* : Int */; -short int var38 /* : Bool */; -int cltype39; -int idtype40; -const char* var_class_name41; -long var42 /* : Int */; -val* var44 /* : Sys */; -val* var46 /* : NativeArray[String] */; -static val* varonce45; -static val* varonce47; -val* var48 /* : String */; -char* var49 /* : NativeString */; -val* var50 /* : String */; -static val* varonce51; -val* var52 /* : String */; -char* var53 /* : NativeString */; -val* var54 /* : String */; -val* var55 /* : String */; -val* var56 /* : String */; -val* var57 /* : String */; -val* var58 /* : Sys */; -static val* varonce59; -val* var60 /* : String */; -char* var61 /* : NativeString */; -val* var62 /* : String */; -val* var63 /* : Sys */; -static val* varonce64; -val* var65 /* : String */; -char* var66 /* : NativeString */; -val* var67 /* : String */; -val* var68 /* : Map[MClass, Array[nullable MPropDef]] */; -val* var70 /* : Map[MClass, Array[nullable MPropDef]] */; -val* var_71 /* var : Map[MClass, Array[nullable MPropDef]] */; -val* var72 /* : MapIterator[nullable Object, nullable Object] */; -val* var_73 /* var : MapIterator[MClass, Array[nullable MPropDef]] */; -short int var74 /* : Bool */; -val* var76 /* : nullable Object */; -val* var_t77 /* var t: MClass */; -val* var78 /* : nullable Object */; -val* var_table79 /* var table: Array[nullable MPropDef] */; -long var80 /* : Int */; -long var82 /* : Int */; -long var83 /* : Int */; -short int var85 /* : Bool */; -int cltype86; -int idtype87; -const char* var_class_name88; -long var89 /* : Int */; -val* var_90 /* var : Array[nullable MPropDef] */; -val* var91 /* : IndexedIterator[nullable Object] */; -val* var_92 /* var : IndexedIterator[nullable MPropDef] */; -short int var93 /* : Bool */; -val* var95 /* : nullable Object */; -val* var_e96 /* var e: nullable MPropDef */; -short int var97 /* : Bool */; -short int var98 /* : Bool */; -short int var100 /* : Bool */; -short int var102 /* : Bool */; -long var103 /* : Int */; -short int var105 /* : Bool */; -int cltype106; -int idtype107; -const char* var_class_name108; -long var109 /* : Int */; -val* var111 /* : Sys */; -val* var113 /* : NativeArray[String] */; -static val* varonce112; -static val* varonce114; -val* var115 /* : String */; -char* var116 /* : NativeString */; -val* var117 /* : String */; -static val* varonce118; -val* var119 /* : String */; -char* var120 /* : NativeString */; -val* var121 /* : String */; -val* var122 /* : String */; -val* var123 /* : String */; -val* var124 /* : String */; -val* var125 /* : Sys */; -static val* varonce126; -val* var127 /* : String */; -char* var128 /* : NativeString */; -val* var129 /* : String */; -val* var130 /* : Sys */; -static val* varonce131; -val* var132 /* : String */; -char* var133 /* : NativeString */; -val* var134 /* : String */; -val* var135 /* : Map[MClass, Array[nullable MPropDef]] */; -val* var137 /* : Map[MClass, Array[nullable MPropDef]] */; -val* var_138 /* var : Map[MClass, Array[nullable MPropDef]] */; -val* var139 /* : MapIterator[nullable Object, nullable Object] */; -val* var_140 /* var : MapIterator[MClass, Array[nullable MPropDef]] */; -short int var141 /* : Bool */; -val* var143 /* : nullable Object */; -val* var_t144 /* var t: MClass */; -val* var145 /* : nullable Object */; -val* var_table146 /* var table: Array[nullable MPropDef] */; -long var147 /* : Int */; -long var149 /* : Int */; -long var150 /* : Int */; -short int var152 /* : Bool */; -int cltype153; -int idtype154; -const char* var_class_name155; -long var156 /* : Int */; -val* var_157 /* var : Array[nullable MPropDef] */; -val* var158 /* : IndexedIterator[nullable Object] */; -val* var_159 /* var : IndexedIterator[nullable MPropDef] */; -short int var160 /* : Bool */; -val* var162 /* : nullable Object */; -val* var_e163 /* var e: nullable MPropDef */; -short int var164 /* : Bool */; -short int var165 /* : Bool */; -short int var167 /* : Bool */; -short int var169 /* : Bool */; -long var170 /* : Int */; -short int var172 /* : Bool */; -int cltype173; -int idtype174; -const char* var_class_name175; -long var176 /* : Int */; -val* var178 /* : Sys */; -val* var180 /* : NativeArray[String] */; -static val* varonce179; -static val* varonce181; -val* var182 /* : String */; -char* var183 /* : NativeString */; -val* var184 /* : String */; -static val* varonce185; -val* var186 /* : String */; -char* var187 /* : NativeString */; -val* var188 /* : String */; -val* var189 /* : String */; -val* var190 /* : String */; -val* var191 /* : String */; -val* var192 /* : Sys */; -static val* varonce193; -val* var194 /* : String */; -char* var195 /* : NativeString */; -val* var196 /* : String */; -val* var197 /* : Sys */; -static val* varonce198; -val* var199 /* : String */; -char* var200 /* : NativeString */; -val* var201 /* : String */; -val* var202 /* : Map[MClass, Array[nullable MProperty]] */; -val* var204 /* : Map[MClass, Array[nullable MProperty]] */; -val* var_205 /* var : Map[MClass, Array[nullable MProperty]] */; -val* var206 /* : MapIterator[nullable Object, nullable Object] */; -val* var_207 /* var : MapIterator[MClass, Array[nullable MProperty]] */; -short int var208 /* : Bool */; -val* var210 /* : nullable Object */; -val* var_t211 /* var t: MClass */; -val* var212 /* : nullable Object */; -val* var_table213 /* var table: Array[nullable MProperty] */; -long var214 /* : Int */; -long var216 /* : Int */; -long var217 /* : Int */; -short int var219 /* : Bool */; -int cltype220; -int idtype221; -const char* var_class_name222; -long var223 /* : Int */; -val* var_224 /* var : Array[nullable MProperty] */; -val* var225 /* : IndexedIterator[nullable Object] */; -val* var_226 /* var : IndexedIterator[nullable MProperty] */; -short int var227 /* : Bool */; -val* var229 /* : nullable Object */; -val* var_e230 /* var e: nullable MProperty */; -short int var231 /* : Bool */; -short int var232 /* : Bool */; -short int var234 /* : Bool */; -short int var236 /* : Bool */; -long var237 /* : Int */; -short int var239 /* : Bool */; -int cltype240; -int idtype241; -const char* var_class_name242; -long var243 /* : Int */; -val* var245 /* : Sys */; -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 */; -val* var256 /* : String */; -val* var257 /* : String */; -val* var258 /* : String */; -var = glob_sys; -if (likely(varonce!=NULL)) { -var1 = varonce; -} else { -var2 = "# size of subtyping tables"; -var3 = core__flat___NativeString___to_s_full(var2, 26l, 26l); -var1 = var3; -varonce = var1; -} -{ -core__file___Sys___print(var, var1); /* Direct call file#Sys#print on */ -} -var4 = glob_sys; -if (likely(varonce5!=NULL)) { -var6 = varonce5; -} else { -var7 = "\ttotal \tholes"; -var8 = core__flat___NativeString___to_s_full(var7, 13l, 13l); -var6 = var8; -varonce5 = var6; -} -{ -core__file___Sys___print(var4, var6); /* Direct call file#Sys#print on */ -} -var_total = 0l; -var_holes = 0l; -{ -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#class_tables (self) on */ -var11 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_tables].val; /* _class_tables on */ -if (unlikely(var11 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_tables"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 427); -fatal_exit(1); -} -var9 = var11; -RET_LABEL10:(void)0; -} -} -var_ = var9; -{ -var12 = ((val*(*)(val* self))((((long)var_&3)?class_info[((long)var_&3)]:var_->class)->vft[COLOR_core__abstract_collection__MapRead__iterator]))(var_); /* iterator on */ -} -var_13 = var12; -for(;;) { -{ -var14 = ((short int(*)(val* self))((((long)var_13&3)?class_info[((long)var_13&3)]:var_13->class)->vft[COLOR_core__abstract_collection__MapIterator__is_ok]))(var_13); /* is_ok on */ -} -if (var14){ -} else { -goto BREAK_label; -} -{ -var15 = ((val*(*)(val* self))((((long)var_13&3)?class_info[((long)var_13&3)]:var_13->class)->vft[COLOR_core__abstract_collection__MapIterator__key]))(var_13); /* key on */ -} -var_t = var15; -{ -var16 = ((val*(*)(val* self))((((long)var_13&3)?class_info[((long)var_13&3)]:var_13->class)->vft[COLOR_core__abstract_collection__MapIterator__item]))(var_13); /* item on */ -} -var_table = var16; -{ -{ /* Inline array#AbstractArrayRead#length (var_table) on */ -var19 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ -var17 = var19; -RET_LABEL18:(void)0; -} -} -{ -{ /* Inline kernel#Int#+ (var_total,var17) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var22 = 1; /* easy isa OTHER*/ -if (unlikely(!var22)) { -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); -} -var23 = var_total + var17; -var20 = var23; -goto RET_LABEL21; -RET_LABEL21:(void)0; -} -} -var_total = var20; -var_24 = var_table; -{ -var25 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_24); -} -var_26 = var25; -for(;;) { -{ -var27 = ((short int(*)(val* self))((((long)var_26&3)?class_info[((long)var_26&3)]:var_26->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_26); /* is_ok on */ -} -if (var27){ -} else { -goto BREAK_label28; -} -{ -var29 = ((val*(*)(val* self))((((long)var_26&3)?class_info[((long)var_26&3)]:var_26->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_26); /* item on */ -} -var_e = var29; -if (var_e == NULL) { -var30 = 1; /* is null */ -} else { -var30 = 0; /* arg is null but recv is not */ -} -if (0) { -{ /* Inline kernel#Object#== (var_e,((val*)NULL)) on */ -var_other = ((val*)NULL); -{ -{ /* Inline kernel#Object#is_same_instance (var_e,var_other) on */ -var35 = var_e == var_other; -var33 = var35; -goto RET_LABEL34; -RET_LABEL34:(void)0; -} -} -var31 = var33; -goto RET_LABEL32; -RET_LABEL32:(void)0; -} -var30 = var31; -} -if (var30){ -{ -{ /* Inline kernel#Int#+ (var_holes,1l) on */ -/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */ -/* <1l:Int> isa OTHER */ -var38 = 1; /* easy <1l:Int> isa OTHER*/ -if (unlikely(!var38)) { -var_class_name41 = type_core__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name41); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731); -fatal_exit(1); -} -var42 = var_holes + 1l; -var36 = var42; -goto RET_LABEL37; -RET_LABEL37:(void)0; -} -} -var_holes = var36; -} else { -} -{ -((void(*)(val* self))((((long)var_26&3)?class_info[((long)var_26&3)]:var_26->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_26); /* next on */ -} -} -BREAK_label28: (void)0; -{ -((void(*)(val* self))((((long)var_26&3)?class_info[((long)var_26&3)]:var_26->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_26); /* finish on */ -} -{ -((void(*)(val* self))((((long)var_13&3)?class_info[((long)var_13&3)]:var_13->class)->vft[COLOR_core__abstract_collection__MapIterator__next]))(var_13); /* next on */ -} -} -BREAK_label: (void)0; -{ -{ /* Inline abstract_collection#MapIterator#finish (var_13) on */ -RET_LABEL43:(void)0; -} -} -var44 = glob_sys; -if (unlikely(varonce45==NULL)) { -var46 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce47!=NULL)) { -var48 = varonce47; -} else { -var49 = "\t"; -var50 = core__flat___NativeString___to_s_full(var49, 1l, 1l); -var48 = var50; -varonce47 = var48; -} -((struct instance_core__NativeArray*)var46)->values[0]=var48; -if (likely(varonce51!=NULL)) { -var52 = varonce51; -} else { -var53 = "\t"; -var54 = core__flat___NativeString___to_s_full(var53, 1l, 1l); -var52 = var54; -varonce51 = var52; -} -((struct instance_core__NativeArray*)var46)->values[2]=var52; -} else { -var46 = varonce45; -varonce45 = NULL; -} -var55 = core__flat___Int___core__abstract_text__Object__to_s(var_total); -((struct instance_core__NativeArray*)var46)->values[1]=var55; -var56 = core__flat___Int___core__abstract_text__Object__to_s(var_holes); -((struct instance_core__NativeArray*)var46)->values[3]=var56; -{ -var57 = ((val*(*)(val* self))(var46->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var46); /* native_to_s on */ -} -varonce45 = var46; -{ -core__file___Sys___print(var44, var57); /* Direct call file#Sys#print on */ -} -var58 = glob_sys; -if (likely(varonce59!=NULL)) { -var60 = varonce59; -} else { -var61 = "# size of resolution tables"; -var62 = core__flat___NativeString___to_s_full(var61, 27l, 27l); -var60 = var62; -varonce59 = var60; -} -{ -core__file___Sys___print(var58, var60); /* Direct call file#Sys#print on */ -} -var63 = glob_sys; -if (likely(varonce64!=NULL)) { -var65 = varonce64; -} else { -var66 = "\ttotal \tholes"; -var67 = core__flat___NativeString___to_s_full(var66, 13l, 13l); -var65 = var67; -varonce64 = var65; -} -{ -core__file___Sys___print(var63, var65); /* Direct call file#Sys#print on */ -} -var_total = 0l; -var_holes = 0l; -{ -{ /* Inline separate_erasure_compiler#SeparateErasureCompiler#vt_tables (self) on */ -var70 = self->attrs[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_tables].val; /* _vt_tables on */ -if (unlikely(var70 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _vt_tables"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 428); -fatal_exit(1); -} -var68 = var70; -RET_LABEL69:(void)0; -} -} -var_71 = var68; -{ -var72 = ((val*(*)(val* self))((((long)var_71&3)?class_info[((long)var_71&3)]:var_71->class)->vft[COLOR_core__abstract_collection__MapRead__iterator]))(var_71); /* iterator on */ -} -var_73 = var72; -for(;;) { -{ -var74 = ((short int(*)(val* self))((((long)var_73&3)?class_info[((long)var_73&3)]:var_73->class)->vft[COLOR_core__abstract_collection__MapIterator__is_ok]))(var_73); /* is_ok on */ -} -if (var74){ -} else { -goto BREAK_label75; -} -{ -var76 = ((val*(*)(val* self))((((long)var_73&3)?class_info[((long)var_73&3)]:var_73->class)->vft[COLOR_core__abstract_collection__MapIterator__key]))(var_73); /* key on */ -} -var_t77 = var76; -{ -var78 = ((val*(*)(val* self))((((long)var_73&3)?class_info[((long)var_73&3)]:var_73->class)->vft[COLOR_core__abstract_collection__MapIterator__item]))(var_73); /* item on */ -} -var_table79 = var78; -{ -{ /* Inline array#AbstractArrayRead#length (var_table79) on */ -var82 = var_table79->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ -var80 = var82; -RET_LABEL81:(void)0; -} -} -{ -{ /* Inline kernel#Int#+ (var_total,var80) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var85 = 1; /* easy isa OTHER*/ -if (unlikely(!var85)) { -var_class_name88 = type_core__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name88); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731); -fatal_exit(1); -} -var89 = var_total + var80; -var83 = var89; -goto RET_LABEL84; -RET_LABEL84:(void)0; -} -} -var_total = var83; -var_90 = var_table79; -{ -var91 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_90); -} -var_92 = var91; -for(;;) { -{ -var93 = ((short int(*)(val* self))((((long)var_92&3)?class_info[((long)var_92&3)]:var_92->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_92); /* is_ok on */ -} -if (var93){ -} else { -goto BREAK_label94; -} -{ -var95 = ((val*(*)(val* self))((((long)var_92&3)?class_info[((long)var_92&3)]:var_92->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_92); /* item on */ -} -var_e96 = var95; -if (var_e96 == NULL) { -var97 = 1; /* is null */ -} else { -var97 = 0; /* arg is null but recv is not */ -} -if (0) { -{ /* Inline kernel#Object#== (var_e96,((val*)NULL)) on */ -var_other = ((val*)NULL); -{ -{ /* Inline kernel#Object#is_same_instance (var_e96,var_other) on */ -var102 = var_e96 == var_other; -var100 = var102; -goto RET_LABEL101; -RET_LABEL101:(void)0; -} -} -var98 = var100; -goto RET_LABEL99; -RET_LABEL99:(void)0; -} -var97 = var98; -} -if (var97){ -{ -{ /* Inline kernel#Int#+ (var_holes,1l) on */ -/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */ -/* <1l:Int> isa OTHER */ -var105 = 1; /* easy <1l:Int> isa OTHER*/ -if (unlikely(!var105)) { -var_class_name108 = type_core__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name108); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731); -fatal_exit(1); -} -var109 = var_holes + 1l; -var103 = var109; -goto RET_LABEL104; -RET_LABEL104:(void)0; -} -} -var_holes = var103; -} else { -} -{ -((void(*)(val* self))((((long)var_92&3)?class_info[((long)var_92&3)]:var_92->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_92); /* next on */ -} -} -BREAK_label94: (void)0; -{ -((void(*)(val* self))((((long)var_92&3)?class_info[((long)var_92&3)]:var_92->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_92); /* finish on */ -} -{ -((void(*)(val* self))((((long)var_73&3)?class_info[((long)var_73&3)]:var_73->class)->vft[COLOR_core__abstract_collection__MapIterator__next]))(var_73); /* next on */ -} -} -BREAK_label75: (void)0; -{ -{ /* Inline abstract_collection#MapIterator#finish (var_73) on */ -RET_LABEL110:(void)0; -} -} -var111 = glob_sys; -if (unlikely(varonce112==NULL)) { -var113 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce114!=NULL)) { -var115 = varonce114; -} else { -var116 = "\t"; -var117 = core__flat___NativeString___to_s_full(var116, 1l, 1l); -var115 = var117; -varonce114 = var115; -} -((struct instance_core__NativeArray*)var113)->values[0]=var115; -if (likely(varonce118!=NULL)) { -var119 = varonce118; -} else { -var120 = "\t"; -var121 = core__flat___NativeString___to_s_full(var120, 1l, 1l); -var119 = var121; -varonce118 = var119; -} -((struct instance_core__NativeArray*)var113)->values[2]=var119; -} else { -var113 = varonce112; -varonce112 = NULL; -} -var122 = core__flat___Int___core__abstract_text__Object__to_s(var_total); -((struct instance_core__NativeArray*)var113)->values[1]=var122; -var123 = core__flat___Int___core__abstract_text__Object__to_s(var_holes); -((struct instance_core__NativeArray*)var113)->values[3]=var123; -{ -var124 = ((val*(*)(val* self))(var113->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var113); /* native_to_s on */ -} -varonce112 = var113; -{ -core__file___Sys___print(var111, var124); /* Direct call file#Sys#print on */ -} -var125 = glob_sys; -if (likely(varonce126!=NULL)) { -var127 = varonce126; -} else { -var128 = "# size of methods tables"; -var129 = core__flat___NativeString___to_s_full(var128, 24l, 24l); -var127 = var129; -varonce126 = var127; -} -{ -core__file___Sys___print(var125, var127); /* Direct call file#Sys#print on */ -} -var130 = glob_sys; -if (likely(varonce131!=NULL)) { -var132 = varonce131; -} else { -var133 = "\ttotal \tholes"; -var134 = core__flat___NativeString___to_s_full(var133, 13l, 13l); -var132 = var134; -varonce131 = var132; -} -{ -core__file___Sys___print(var130, var132); /* Direct call file#Sys#print on */ -} -var_total = 0l; -var_holes = 0l; -{ -{ /* Inline separate_compiler#SeparateCompiler#method_tables (self) on */ -var137 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___method_tables].val; /* _method_tables on */ -if (unlikely(var137 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _method_tables"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1067); -fatal_exit(1); -} -var135 = var137; -RET_LABEL136:(void)0; -} -} -var_138 = var135; -{ -var139 = ((val*(*)(val* self))((((long)var_138&3)?class_info[((long)var_138&3)]:var_138->class)->vft[COLOR_core__abstract_collection__MapRead__iterator]))(var_138); /* iterator on */ -} -var_140 = var139; -for(;;) { -{ -var141 = ((short int(*)(val* self))((((long)var_140&3)?class_info[((long)var_140&3)]:var_140->class)->vft[COLOR_core__abstract_collection__MapIterator__is_ok]))(var_140); /* is_ok on */ -} -if (var141){ -} else { -goto BREAK_label142; -} -{ -var143 = ((val*(*)(val* self))((((long)var_140&3)?class_info[((long)var_140&3)]:var_140->class)->vft[COLOR_core__abstract_collection__MapIterator__key]))(var_140); /* key on */ -} -var_t144 = var143; -{ -var145 = ((val*(*)(val* self))((((long)var_140&3)?class_info[((long)var_140&3)]:var_140->class)->vft[COLOR_core__abstract_collection__MapIterator__item]))(var_140); /* item on */ -} -var_table146 = var145; -{ -{ /* Inline array#AbstractArrayRead#length (var_table146) on */ -var149 = var_table146->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ -var147 = var149; -RET_LABEL148:(void)0; -} -} -{ -{ /* Inline kernel#Int#+ (var_total,var147) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var152 = 1; /* easy isa OTHER*/ -if (unlikely(!var152)) { -var_class_name155 = type_core__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name155); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731); -fatal_exit(1); -} -var156 = var_total + var147; -var150 = var156; -goto RET_LABEL151; -RET_LABEL151:(void)0; -} -} -var_total = var150; -var_157 = var_table146; -{ -var158 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_157); -} -var_159 = var158; -for(;;) { -{ -var160 = ((short int(*)(val* self))((((long)var_159&3)?class_info[((long)var_159&3)]:var_159->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_159); /* is_ok on */ -} -if (var160){ -} else { -goto BREAK_label161; -} -{ -var162 = ((val*(*)(val* self))((((long)var_159&3)?class_info[((long)var_159&3)]:var_159->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_159); /* item on */ -} -var_e163 = var162; -if (var_e163 == NULL) { -var164 = 1; /* is null */ -} else { -var164 = 0; /* arg is null but recv is not */ -} -if (0) { -{ /* Inline kernel#Object#== (var_e163,((val*)NULL)) on */ -var_other = ((val*)NULL); -{ -{ /* Inline kernel#Object#is_same_instance (var_e163,var_other) on */ -var169 = var_e163 == var_other; -var167 = var169; -goto RET_LABEL168; -RET_LABEL168:(void)0; -} -} -var165 = var167; -goto RET_LABEL166; -RET_LABEL166:(void)0; -} -var164 = var165; -} -if (var164){ -{ -{ /* Inline kernel#Int#+ (var_holes,1l) on */ -/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */ -/* <1l:Int> isa OTHER */ -var172 = 1; /* easy <1l:Int> isa OTHER*/ -if (unlikely(!var172)) { -var_class_name175 = type_core__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name175); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731); -fatal_exit(1); -} -var176 = var_holes + 1l; -var170 = var176; -goto RET_LABEL171; -RET_LABEL171:(void)0; -} -} -var_holes = var170; -} else { -} -{ -((void(*)(val* self))((((long)var_159&3)?class_info[((long)var_159&3)]:var_159->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_159); /* next on */ -} -} -BREAK_label161: (void)0; -{ -((void(*)(val* self))((((long)var_159&3)?class_info[((long)var_159&3)]:var_159->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_159); /* finish on */ -} -{ -((void(*)(val* self))((((long)var_140&3)?class_info[((long)var_140&3)]:var_140->class)->vft[COLOR_core__abstract_collection__MapIterator__next]))(var_140); /* next on */ -} -} -BREAK_label142: (void)0; -{ -{ /* Inline abstract_collection#MapIterator#finish (var_140) on */ -RET_LABEL177:(void)0; -} -} -var178 = glob_sys; -if (unlikely(varonce179==NULL)) { -var180 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce181!=NULL)) { -var182 = varonce181; -} else { -var183 = "\t"; -var184 = core__flat___NativeString___to_s_full(var183, 1l, 1l); -var182 = var184; -varonce181 = var182; -} -((struct instance_core__NativeArray*)var180)->values[0]=var182; -if (likely(varonce185!=NULL)) { -var186 = varonce185; -} else { -var187 = "\t"; -var188 = core__flat___NativeString___to_s_full(var187, 1l, 1l); -var186 = var188; -varonce185 = var186; -} -((struct instance_core__NativeArray*)var180)->values[2]=var186; -} else { -var180 = varonce179; -varonce179 = NULL; -} -var189 = core__flat___Int___core__abstract_text__Object__to_s(var_total); -((struct instance_core__NativeArray*)var180)->values[1]=var189; -var190 = core__flat___Int___core__abstract_text__Object__to_s(var_holes); -((struct instance_core__NativeArray*)var180)->values[3]=var190; -{ -var191 = ((val*(*)(val* self))(var180->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var180); /* native_to_s on */ -} -varonce179 = var180; -{ -core__file___Sys___print(var178, var191); /* Direct call file#Sys#print on */ -} -var192 = glob_sys; -if (likely(varonce193!=NULL)) { -var194 = varonce193; -} else { -var195 = "# size of attributes tables"; -var196 = core__flat___NativeString___to_s_full(var195, 27l, 27l); -var194 = var196; -varonce193 = var194; -} -{ -core__file___Sys___print(var192, var194); /* Direct call file#Sys#print on */ -} -var197 = glob_sys; -if (likely(varonce198!=NULL)) { -var199 = varonce198; -} else { -var200 = "\ttotal \tholes"; -var201 = core__flat___NativeString___to_s_full(var200, 13l, 13l); -var199 = var201; -varonce198 = var199; -} -{ -core__file___Sys___print(var197, var199); /* Direct call file#Sys#print on */ -} -var_total = 0l; -var_holes = 0l; -{ -{ /* Inline separate_compiler#SeparateCompiler#attr_tables (self) on */ -var204 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___attr_tables].val; /* _attr_tables on */ -if (unlikely(var204 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _attr_tables"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1068); -fatal_exit(1); -} -var202 = var204; -RET_LABEL203:(void)0; -} -} -var_205 = var202; -{ -var206 = ((val*(*)(val* self))((((long)var_205&3)?class_info[((long)var_205&3)]:var_205->class)->vft[COLOR_core__abstract_collection__MapRead__iterator]))(var_205); /* iterator on */ -} -var_207 = var206; -for(;;) { -{ -var208 = ((short int(*)(val* self))((((long)var_207&3)?class_info[((long)var_207&3)]:var_207->class)->vft[COLOR_core__abstract_collection__MapIterator__is_ok]))(var_207); /* is_ok on */ -} -if (var208){ -} else { -goto BREAK_label209; -} -{ -var210 = ((val*(*)(val* self))((((long)var_207&3)?class_info[((long)var_207&3)]:var_207->class)->vft[COLOR_core__abstract_collection__MapIterator__key]))(var_207); /* key on */ -} -var_t211 = var210; -{ -var212 = ((val*(*)(val* self))((((long)var_207&3)?class_info[((long)var_207&3)]:var_207->class)->vft[COLOR_core__abstract_collection__MapIterator__item]))(var_207); /* item on */ -} -var_table213 = var212; -{ -{ /* Inline array#AbstractArrayRead#length (var_table213) on */ -var216 = var_table213->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ -var214 = var216; -RET_LABEL215:(void)0; -} -} -{ -{ /* Inline kernel#Int#+ (var_total,var214) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var219 = 1; /* easy isa OTHER*/ -if (unlikely(!var219)) { -var_class_name222 = type_core__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name222); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731); -fatal_exit(1); -} -var223 = var_total + var214; -var217 = var223; -goto RET_LABEL218; -RET_LABEL218:(void)0; -} -} -var_total = var217; -var_224 = var_table213; -{ -var225 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_224); -} -var_226 = var225; -for(;;) { -{ -var227 = ((short int(*)(val* self))((((long)var_226&3)?class_info[((long)var_226&3)]:var_226->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_226); /* is_ok on */ -} -if (var227){ -} else { -goto BREAK_label228; -} -{ -var229 = ((val*(*)(val* self))((((long)var_226&3)?class_info[((long)var_226&3)]:var_226->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_226); /* item on */ -} -var_e230 = var229; -if (var_e230 == NULL) { -var231 = 1; /* is null */ -} else { -var231 = 0; /* arg is null but recv is not */ -} -if (0) { -{ /* Inline kernel#Object#== (var_e230,((val*)NULL)) on */ -var_other = ((val*)NULL); -{ -{ /* Inline kernel#Object#is_same_instance (var_e230,var_other) on */ -var236 = var_e230 == var_other; -var234 = var236; -goto RET_LABEL235; -RET_LABEL235:(void)0; -} -} -var232 = var234; -goto RET_LABEL233; -RET_LABEL233:(void)0; -} -var231 = var232; -} -if (var231){ -{ -{ /* Inline kernel#Int#+ (var_holes,1l) on */ -/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */ -/* <1l:Int> isa OTHER */ -var239 = 1; /* easy <1l:Int> isa OTHER*/ -if (unlikely(!var239)) { -var_class_name242 = type_core__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name242); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731); -fatal_exit(1); -} -var243 = var_holes + 1l; -var237 = var243; -goto RET_LABEL238; -RET_LABEL238:(void)0; -} -} -var_holes = var237; -} else { -} -{ -((void(*)(val* self))((((long)var_226&3)?class_info[((long)var_226&3)]:var_226->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_226); /* next on */ -} -} -BREAK_label228: (void)0; -{ -((void(*)(val* self))((((long)var_226&3)?class_info[((long)var_226&3)]:var_226->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_226); /* finish on */ -} -{ -((void(*)(val* self))((((long)var_207&3)?class_info[((long)var_207&3)]:var_207->class)->vft[COLOR_core__abstract_collection__MapIterator__next]))(var_207); /* next on */ -} -} -BREAK_label209: (void)0; -{ -{ /* Inline abstract_collection#MapIterator#finish (var_207) on */ -RET_LABEL244:(void)0; -} -} -var245 = glob_sys; -if (unlikely(varonce246==NULL)) { -var247 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce248!=NULL)) { -var249 = varonce248; -} else { -var250 = "\t"; -var251 = core__flat___NativeString___to_s_full(var250, 1l, 1l); -var249 = var251; -varonce248 = var249; -} -((struct instance_core__NativeArray*)var247)->values[0]=var249; -if (likely(varonce252!=NULL)) { -var253 = varonce252; -} else { -var254 = "\t"; -var255 = core__flat___NativeString___to_s_full(var254, 1l, 1l); -var253 = var255; -varonce252 = var253; -} -((struct instance_core__NativeArray*)var247)->values[2]=var253; -} else { -var247 = varonce246; -varonce246 = NULL; -} -var256 = core__flat___Int___core__abstract_text__Object__to_s(var_total); -((struct instance_core__NativeArray*)var247)->values[1]=var256; -var257 = core__flat___Int___core__abstract_text__Object__to_s(var_holes); -((struct instance_core__NativeArray*)var247)->values[3]=var257; -{ -var258 = ((val*(*)(val* self))(var247->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var247); /* native_to_s on */ -} -varonce246 = var247; -{ -core__file___Sys___print(var245, var258); /* Direct call file#Sys#print on */ -} -RET_LABEL:; -} -/* method separate_erasure_compiler#SeparateErasureCompilerVisitor#compile_callsite for (self: SeparateErasureCompilerVisitor, CallSite, Array[RuntimeVariable]): nullable RuntimeVariable */ -val* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__compile_callsite(val* self, val* p0, val* p1) { -val* var /* : nullable RuntimeVariable */; -val* var_callsite /* var callsite: CallSite */; -val* var_arguments /* var arguments: Array[RuntimeVariable] */; -val* var1 /* : nullable RuntimeVariable */; -val* var_res /* var res: nullable RuntimeVariable */; -short int var2 /* : Bool */; -short int var3 /* : Bool */; -short int var5 /* : Bool */; -short int var_ /* var : Bool */; -val* var6 /* : AbstractCompiler */; -val* var8 /* : AbstractCompiler */; -short int var9 /* : Bool */; -int cltype; -int idtype; -const char* var_class_name; -val* var10 /* : ModelBuilder */; -val* var12 /* : ModelBuilder */; -val* var13 /* : ToolContext */; -val* var15 /* : ToolContext */; -val* var16 /* : OptionBool */; -val* var18 /* : OptionBool */; -val* var19 /* : nullable Object */; -val* var21 /* : nullable Object */; -short int var22 /* : Bool */; -short int var23 /* : Bool */; -short int var24 /* : Bool */; -short int var25 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var27 /* : Bool */; -short int var28 /* : Bool */; -val* var29 /* : MSignature */; -val* var31 /* : MSignature */; -val* var32 /* : nullable MType */; -val* var34 /* : nullable MType */; -val* var_mtype /* var mtype: nullable MType */; -short int var35 /* : Bool */; -short int var36 /* : Bool */; -short int var38 /* : Bool */; -short int var39 /* : Bool */; -val* var40 /* : NativeArray[String] */; -static val* varonce; -static val* varonce41; -val* var42 /* : String */; -char* var43 /* : NativeString */; -val* var44 /* : String */; -static val* varonce45; -val* var46 /* : String */; -char* var47 /* : NativeString */; -val* var48 /* : String */; -static val* varonce49; -val* var50 /* : String */; -char* var51 /* : NativeString */; -val* var52 /* : String */; -val* var53 /* : String */; -val* var54 /* : String */; -val* var55 /* : String */; -static val* varonce56; -val* var57 /* : String */; -char* var58 /* : NativeString */; -val* var59 /* : String */; -val* var60 /* : RuntimeVariable */; -val* var_cond /* var cond: RuntimeVariable */; -val* var62 /* : NativeArray[String] */; -static val* varonce61; -static val* varonce63; -val* var64 /* : String */; -char* var65 /* : NativeString */; -val* var66 /* : String */; -static val* varonce67; -val* var68 /* : String */; -char* var69 /* : NativeString */; -val* var70 /* : String */; -val* var71 /* : String */; -val* var72 /* : String */; -static val* varonce73; -val* var74 /* : String */; -char* var75 /* : NativeString */; -val* var76 /* : String */; -static val* varonce77; -val* var78 /* : String */; -char* var79 /* : NativeString */; -val* var80 /* : String */; -var_callsite = p0; -var_arguments = p1; -{ -var1 = ((val*(*)(val* self, val* p0, val* p1))(self->class->vft[COLOR_nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__compile_callsite]))(self, p0, p1); /* compile_callsite on */ -} -var_res = var1; -{ -{ /* Inline typing#CallSite#erasure_cast (var_callsite) on */ -var5 = var_callsite->attrs[COLOR_nitc__typing__CallSite___erasure_cast].s; /* _erasure_cast on */ -var3 = var5; -RET_LABEL4:(void)0; -} -} -var_ = var3; -if (var3){ -{ -{ /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on */ -var8 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133); -fatal_exit(1); -} -var6 = var8; -RET_LABEL7:(void)0; -} -} -/* isa SeparateErasureCompiler */ -cltype = type_nitc__SeparateErasureCompiler.color; -idtype = type_nitc__SeparateErasureCompiler.id; -if(cltype >= var6->type->table_size) { -var9 = 0; -} else { -var9 = var6->type->type_table[cltype] == idtype; -} -if (unlikely(!var9)) { -var_class_name = var6 == NULL ? "null" : var6->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "SeparateErasureCompiler", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 480); -fatal_exit(1); -} -{ -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var6) on */ -var12 = var6->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ -if (unlikely(var12 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); -fatal_exit(1); -} -var10 = var12; -RET_LABEL11:(void)0; -} -} -{ -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var10) on */ -var15 = var10->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var15 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base, 47); -fatal_exit(1); -} -var13 = var15; -RET_LABEL14:(void)0; -} -} -{ -{ /* Inline separate_erasure_compiler#ToolContext#opt_no_check_erasure_cast (var13) on */ -var18 = var13->attrs[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_no_check_erasure_cast].val; /* _opt_no_check_erasure_cast on */ -if (unlikely(var18 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_check_erasure_cast"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 26); -fatal_exit(1); -} -var16 = var18; -RET_LABEL17:(void)0; -} -} -{ -{ /* Inline opts#Option#value (var16) on */ -var21 = var16->attrs[COLOR_opts__Option___value].val; /* _value on */ -var19 = var21; -RET_LABEL20:(void)0; -} -} -var22 = (short int)((long)(var19)>>2); -var23 = !var22; -var2 = var23; -} else { -var2 = var_; -} -if (var2){ -if (var_res == NULL) { -var24 = 0; /* is null */ -} else { -var24 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_res,((val*)NULL)) on */ -var_other = ((val*)NULL); -{ -var27 = ((short int(*)(val* self, val* p0))(var_res->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_res, var_other); /* == on */ -} -var28 = !var27; -var25 = var28; -goto RET_LABEL26; -RET_LABEL26:(void)0; -} -var24 = var25; -} -if (unlikely(!var24)) { -PRINT_ERROR("Runtime error: %s", "Assert failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 481); -fatal_exit(1); -} -{ -{ /* Inline typing#CallSite#msignature (var_callsite) on */ -var31 = var_callsite->attrs[COLOR_nitc__typing__CallSite___msignature].val; /* _msignature on */ -if (unlikely(var31 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing, 660); -fatal_exit(1); -} -var29 = var31; -RET_LABEL30:(void)0; -} -} -{ -{ /* Inline model#MSignature#return_mtype (var29) on */ -var34 = var29->attrs[COLOR_nitc__model__MSignature___return_mtype].val; /* _return_mtype on */ -var32 = var34; -RET_LABEL33:(void)0; -} -} -var_mtype = var32; -if (var_mtype == NULL) { -var35 = 0; /* is null */ -} else { -var35 = 1; /* arg is null and recv is not */ -} -if (0) { -{ /* Inline kernel#Object#!= (var_mtype,((val*)NULL)) on */ -var_other = ((val*)NULL); -{ -var38 = ((short int(*)(val* self, val* p0))(var_mtype->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_mtype, var_other); /* == on */ -} -var39 = !var38; -var36 = var39; -goto RET_LABEL37; -RET_LABEL37:(void)0; -} -var35 = var36; -} -if (unlikely(!var35)) { -PRINT_ERROR("Runtime error: %s", "Assert failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler, 483); -fatal_exit(1); -} -if (unlikely(varonce==NULL)) { -var40 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce41!=NULL)) { -var42 = varonce41; -} else { -var43 = "/* Erasure cast for return "; -var44 = core__flat___NativeString___to_s_full(var43, 27l, 27l); -var42 = var44; -varonce41 = var42; -} -((struct instance_core__NativeArray*)var40)->values[0]=var42; -if (likely(varonce45!=NULL)) { -var46 = varonce45; -} else { -var47 = " isa "; -var48 = core__flat___NativeString___to_s_full(var47, 5l, 5l); -var46 = var48; -varonce45 = var46; -} -((struct instance_core__NativeArray*)var40)->values[2]=var46; -if (likely(varonce49!=NULL)) { -var50 = varonce49; -} else { -var51 = " */"; -var52 = core__flat___NativeString___to_s_full(var51, 3l, 3l); -var50 = var52; -varonce49 = var50; -} -((struct instance_core__NativeArray*)var40)->values[4]=var50; -} else { -var40 = varonce; -varonce = NULL; -} -{ -var53 = ((val*(*)(val* self))(var_res->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_res); /* to_s on */ -} -((struct instance_core__NativeArray*)var40)->values[1]=var53; -{ -var54 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ -} -((struct instance_core__NativeArray*)var40)->values[3]=var54; -{ -var55 = ((val*(*)(val* self))(var40->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var40); /* native_to_s on */ -} -varonce = var40; -{ -nitc___nitc__AbstractCompilerVisitor___add(self, var55); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ -} -if (likely(varonce56!=NULL)) { -var57 = varonce56; -} else { -var58 = "erasure"; -var59 = core__flat___NativeString___to_s_full(var58, 7l, 7l); -var57 = var59; -varonce56 = var57; -} -{ -var60 = nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__type_test(self, var_res, var_mtype, var57); -} -var_cond = var60; -if (unlikely(varonce61==NULL)) { -var62 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce63!=NULL)) { -var64 = varonce63; -} else { -var65 = "if (!"; -var66 = core__flat___NativeString___to_s_full(var65, 5l, 5l); -var64 = var66; -varonce63 = var64; -} -((struct instance_core__NativeArray*)var62)->values[0]=var64; -if (likely(varonce67!=NULL)) { -var68 = varonce67; -} else { -var69 = ") {"; -var70 = core__flat___NativeString___to_s_full(var69, 3l, 3l); -var68 = var70; -varonce67 = var68; -} -((struct instance_core__NativeArray*)var62)->values[2]=var68; -} else { -var62 = varonce61; -varonce61 = NULL; -} -{ -var71 = ((val*(*)(val* self))(var_cond->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_cond); /* to_s on */ -} -((struct instance_core__NativeArray*)var62)->values[1]=var71; -{ -var72 = ((val*(*)(val* self))(var62->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var62); /* native_to_s on */ -} -varonce61 = var62; -{ -nitc___nitc__AbstractCompilerVisitor___add(self, var72); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ -} -if (likely(varonce73!=NULL)) { -var74 = varonce73; -} else { -var75 = "Cast failed"; -var76 = core__flat___NativeString___to_s_full(var75, 11l, 11l); -var74 = var76; -varonce73 = var74; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_abort(self, var74); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on */ -} -if (likely(varonce77!=NULL)) { -var78 = varonce77; -} else { -var79 = "}"; -var80 = core__flat___NativeString___to_s_full(var79, 1l, 1l); -var78 = var80; -varonce77 = var78; -} -{ -nitc___nitc__AbstractCompilerVisitor___add(self, var78); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ -} -} else { -} -var = var_res; -goto RET_LABEL; -RET_LABEL:; -return var; -} -/* method separate_erasure_compiler#SeparateErasureCompilerVisitor#init_instance for (self: SeparateErasureCompilerVisitor, MClassType): RuntimeVariable */ -val* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__init_instance(val* self, val* p0) { -val* var /* : RuntimeVariable */; -val* var_mtype /* var mtype: MClassType */; -val* var1 /* : NativeArray[String] */; -static val* varonce; -static val* varonce2; -val* var3 /* : String */; -char* var4 /* : NativeString */; -val* var5 /* : String */; -val* var6 /* : MClass */; -val* var8 /* : MClass */; -val* var9 /* : String */; -val* var10 /* : String */; -val* var12 /* : NativeArray[String] */; -static val* varonce11; -static val* varonce13; -val* var14 /* : String */; -char* var15 /* : NativeString */; -val* var16 /* : String */; -static val* varonce17; -val* var18 /* : String */; -char* var19 /* : NativeString */; -val* var20 /* : String */; -val* var21 /* : MClass */; -val* var23 /* : MClass */; -val* var24 /* : String */; -val* var25 /* : String */; -val* var26 /* : RuntimeVariable */; -var_mtype = p0; -if (unlikely(varonce==NULL)) { -var1 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce2!=NULL)) { -var3 = varonce2; -} else { -var4 = "NEW_"; -var5 = core__flat___NativeString___to_s_full(var4, 4l, 4l); -var3 = var5; -varonce2 = var3; -} -((struct instance_core__NativeArray*)var1)->values[0]=var3; -} else { -var1 = varonce; -varonce = NULL; -} -{ -{ /* Inline model#MClassType#mclass (var_mtype) on */ -var8 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ -if (unlikely(var8 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163); -fatal_exit(1); -} -var6 = var8; -RET_LABEL7:(void)0; -} -} -{ -var9 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var6); -} -((struct instance_core__NativeArray*)var1)->values[1]=var9; -{ -var10 = ((val*(*)(val* self))(var1->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var1); /* native_to_s on */ -} -varonce = var1; -{ -nitc___nitc__AbstractCompilerVisitor___require_declaration(self, var10); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on */ -} -if (unlikely(varonce11==NULL)) { -var12 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce13!=NULL)) { -var14 = varonce13; -} else { -var15 = "NEW_"; -var16 = core__flat___NativeString___to_s_full(var15, 4l, 4l); -var14 = var16; -varonce13 = var14; -} -((struct instance_core__NativeArray*)var12)->values[0]=var14; -if (likely(varonce17!=NULL)) { -var18 = varonce17; -} else { -var19 = "()"; -var20 = core__flat___NativeString___to_s_full(var19, 2l, 2l); -var18 = var20; -varonce17 = var18; -} -((struct instance_core__NativeArray*)var12)->values[2]=var18; -} else { -var12 = varonce11; -varonce11 = NULL; -} -{ -{ /* Inline model#MClassType#mclass (var_mtype) on */ -var23 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ -if (unlikely(var23 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1163); -fatal_exit(1); -} -var21 = var23; -RET_LABEL22:(void)0; -} -} -{ -var24 = nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var21); -} -((struct instance_core__NativeArray*)var12)->values[1]=var24; -{ -var25 = ((val*(*)(val* self))(var12->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var12); /* native_to_s on */ -} -varonce11 = var12; -{ -var26 = nitc___nitc__AbstractCompilerVisitor___new_expr(self, var25, var_mtype); -} -var = var26; -goto RET_LABEL; -RET_LABEL:; -return var; -}