X-Git-Url: http://nitlanguage.org diff --git a/c_src/nitc__separate_compiler.sep.1.c b/c_src/nitc__separate_compiler.sep.1.c index 494a26d..2846d5e 100644 --- a/c_src/nitc__separate_compiler.sep.1.c +++ b/c_src/nitc__separate_compiler.sep.1.c @@ -1,10 +1,13 @@ #include "nitc__separate_compiler.sep.0.h" -/* method separate_compiler#ToolContext#opt_separate for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_separate for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_separate(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_separate].val; /* _opt_separate on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_separate"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 24); fatal_exit(1); @@ -13,12 +16,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_no_inline_intern for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_no_inline_intern for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_no_inline_intern(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_inline_intern].val; /* _opt_no_inline_intern on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_inline_intern"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 26); fatal_exit(1); @@ -27,12 +33,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_no_union_attribute for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_no_union_attribute for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_no_union_attribute(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_union_attribute].val; /* _opt_no_union_attribute on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_union_attribute"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 28); fatal_exit(1); @@ -41,12 +50,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_no_shortcut_equate for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_no_shortcut_equate for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_no_shortcut_equate(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_shortcut_equate].val; /* _opt_no_shortcut_equate on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_shortcut_equate"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 30); fatal_exit(1); @@ -55,12 +67,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_no_tag_primitives for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_no_tag_primitives for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_no_tag_primitives(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_tag_primitives].val; /* _opt_no_tag_primitives on */ if (unlikely(var1 == 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); @@ -69,12 +84,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_colors_are_symbols for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_colors_are_symbols for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_colors_are_symbols(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_colors_are_symbols].val; /* _opt_colors_are_symbols on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_colors_are_symbols"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 35); fatal_exit(1); @@ -83,12 +101,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_trampoline_call for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_trampoline_call for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_trampoline_call(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_trampoline_call].val; /* _opt_trampoline_call on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_trampoline_call"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 37); fatal_exit(1); @@ -97,12 +118,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_guard_call for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_guard_call for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_guard_call(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_guard_call].val; /* _opt_guard_call on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_guard_call"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 39); fatal_exit(1); @@ -111,12 +135,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_substitute_monomorph for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_substitute_monomorph for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_substitute_monomorph(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_substitute_monomorph].val; /* _opt_substitute_monomorph on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_substitute_monomorph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 41); fatal_exit(1); @@ -125,12 +152,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_link_boost for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_link_boost for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_link_boost(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_link_boost].val; /* _opt_link_boost on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_link_boost"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 43); fatal_exit(1); @@ -139,12 +169,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_inline_coloring_numbers for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_inline_coloring_numbers for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_inline_coloring_numbers(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_inline_coloring_numbers].val; /* _opt_inline_coloring_numbers on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_inline_coloring_numbers"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 46); fatal_exit(1); @@ -153,12 +186,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_inline_some_methods for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_inline_some_methods for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_inline_some_methods(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_inline_some_methods].val; /* _opt_inline_some_methods on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_inline_some_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 48); fatal_exit(1); @@ -167,12 +203,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_direct_call_monomorph for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_direct_call_monomorph for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_direct_call_monomorph(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_direct_call_monomorph].val; /* _opt_direct_call_monomorph on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_direct_call_monomorph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 50); fatal_exit(1); @@ -181,12 +220,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_direct_call_monomorph0 for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_direct_call_monomorph0 for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_direct_call_monomorph0(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_direct_call_monomorph0].val; /* _opt_direct_call_monomorph0 on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_direct_call_monomorph0"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 52); fatal_exit(1); @@ -195,12 +237,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_skip_dead_methods for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_skip_dead_methods for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_skip_dead_methods(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_skip_dead_methods].val; /* _opt_skip_dead_methods on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_skip_dead_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 54); fatal_exit(1); @@ -209,12 +254,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_semi_global for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_semi_global for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_semi_global(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_semi_global].val; /* _opt_semi_global on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_semi_global"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 56); fatal_exit(1); @@ -223,12 +271,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_colo_dead_methods for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_colo_dead_methods for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_colo_dead_methods(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_colo_dead_methods].val; /* _opt_colo_dead_methods on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_colo_dead_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 58); fatal_exit(1); @@ -237,12 +288,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_tables_metrics for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_tables_metrics for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_tables_metrics(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_tables_metrics].val; /* _opt_tables_metrics on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_tables_metrics"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 60); fatal_exit(1); @@ -251,12 +305,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#opt_type_poset for (self: ToolContext): OptionBool */ +/* method separate_compiler$ToolContext$opt_type_poset for (self: ToolContext): OptionBool */ val* nitc__separate_compiler___ToolContext___opt_type_poset(val* self) { val* var /* : OptionBool */; val* var1 /* : OptionBool */; var1 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_type_poset].val; /* _opt_type_poset on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_type_poset"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 62); fatal_exit(1); @@ -265,7 +322,7 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ToolContext#init for (self: ToolContext) */ +/* method separate_compiler$ToolContext$init for (self: ToolContext) */ void nitc__separate_compiler___ToolContext___core__kernel__Object__init(val* self) { val* var /* : OptionContext */; val* var2 /* : OptionContext */; @@ -349,11 +406,14 @@ val* var106 /* : NativeArray[Option] */; ((void(*)(val* self))(self->class->vft[COLOR_nitc__separate_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; @@ -361,9 +421,12 @@ RET_LABEL1:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_separate (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_separate (self) on */ var5 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_separate].val; /* _opt_separate on */ if (unlikely(var5 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_separate"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 24); fatal_exit(1); @@ -374,21 +437,24 @@ RET_LABEL4:(void)0; } var6 = NEW_core__Array(&type_core__Array__opts__Option); { /* var6 = array_instance Array[Option] */ -var7 = NEW_core__NativeArray(1l, &type_core__NativeArray__opts__Option); +var7 = NEW_core__NativeArray((int)1l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var7)->values[0] = (val*) var3; { ((void(*)(val* self, val* p0, long p1))(var6->class->vft[COLOR_core__array__Array__with_native]))(var6, var7, 1l); /* with_native on */ } } { -opts___opts__OptionContext___add_option(var, var6); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var, var6); /* Direct call opts$OptionContext$add_option on */ } { -{ /* Inline toolcontext#ToolContext#option_context (self) on */ +{ /* Inline toolcontext$ToolContext$option_context (self) on */ var10 = self->attrs[COLOR_nitc__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var10 == 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); } var8 = var10; @@ -396,9 +462,12 @@ RET_LABEL9:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_no_inline_intern (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_no_inline_intern (self) on */ var13 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_inline_intern].val; /* _opt_no_inline_intern on */ if (unlikely(var13 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_inline_intern"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 26); fatal_exit(1); @@ -409,21 +478,24 @@ RET_LABEL12:(void)0; } var14 = NEW_core__Array(&type_core__Array__opts__Option); { /* var14 = array_instance Array[Option] */ -var15 = NEW_core__NativeArray(1l, &type_core__NativeArray__opts__Option); +var15 = NEW_core__NativeArray((int)1l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var15)->values[0] = (val*) var11; { ((void(*)(val* self, val* p0, long p1))(var14->class->vft[COLOR_core__array__Array__with_native]))(var14, var15, 1l); /* with_native on */ } } { -opts___opts__OptionContext___add_option(var8, var14); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var8, var14); /* Direct call opts$OptionContext$add_option on */ } { -{ /* Inline toolcontext#ToolContext#option_context (self) on */ +{ /* Inline toolcontext$ToolContext$option_context (self) on */ var18 = self->attrs[COLOR_nitc__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var18 == 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); } var16 = var18; @@ -431,9 +503,12 @@ RET_LABEL17:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_no_union_attribute (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_no_union_attribute (self) on */ var21 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_union_attribute].val; /* _opt_no_union_attribute on */ if (unlikely(var21 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_union_attribute"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 28); fatal_exit(1); @@ -444,21 +519,24 @@ RET_LABEL20:(void)0; } var22 = NEW_core__Array(&type_core__Array__opts__Option); { /* var22 = array_instance Array[Option] */ -var23 = NEW_core__NativeArray(1l, &type_core__NativeArray__opts__Option); +var23 = NEW_core__NativeArray((int)1l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var23)->values[0] = (val*) var19; { ((void(*)(val* self, val* p0, long p1))(var22->class->vft[COLOR_core__array__Array__with_native]))(var22, var23, 1l); /* with_native on */ } } { -opts___opts__OptionContext___add_option(var16, var22); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var16, var22); /* Direct call opts$OptionContext$add_option on */ } { -{ /* Inline toolcontext#ToolContext#option_context (self) on */ +{ /* Inline toolcontext$ToolContext$option_context (self) on */ var26 = self->attrs[COLOR_nitc__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var26 == 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); } var24 = var26; @@ -466,9 +544,12 @@ RET_LABEL25:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_no_shortcut_equate (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_no_shortcut_equate (self) on */ var29 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_shortcut_equate].val; /* _opt_no_shortcut_equate on */ if (unlikely(var29 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_shortcut_equate"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 30); fatal_exit(1); @@ -479,21 +560,24 @@ RET_LABEL28:(void)0; } var30 = NEW_core__Array(&type_core__Array__opts__Option); { /* var30 = array_instance Array[Option] */ -var31 = NEW_core__NativeArray(1l, &type_core__NativeArray__opts__Option); +var31 = NEW_core__NativeArray((int)1l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var31)->values[0] = (val*) var27; { ((void(*)(val* self, val* p0, long p1))(var30->class->vft[COLOR_core__array__Array__with_native]))(var30, var31, 1l); /* with_native on */ } } { -opts___opts__OptionContext___add_option(var24, var30); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var24, var30); /* Direct call opts$OptionContext$add_option on */ } { -{ /* Inline toolcontext#ToolContext#option_context (self) on */ +{ /* Inline toolcontext$ToolContext$option_context (self) on */ var34 = self->attrs[COLOR_nitc__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var34 == 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); } var32 = var34; @@ -501,9 +585,12 @@ RET_LABEL33:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_no_tag_primitives (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_no_tag_primitives (self) on */ var37 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_tag_primitives].val; /* _opt_no_tag_primitives on */ if (unlikely(var37 == 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); @@ -514,21 +601,24 @@ RET_LABEL36:(void)0; } var38 = NEW_core__Array(&type_core__Array__opts__Option); { /* var38 = array_instance Array[Option] */ -var39 = NEW_core__NativeArray(1l, &type_core__NativeArray__opts__Option); +var39 = NEW_core__NativeArray((int)1l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var39)->values[0] = (val*) var35; { ((void(*)(val* self, val* p0, long p1))(var38->class->vft[COLOR_core__array__Array__with_native]))(var38, var39, 1l); /* with_native on */ } } { -opts___opts__OptionContext___add_option(var32, var38); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var32, var38); /* Direct call opts$OptionContext$add_option on */ } { -{ /* Inline toolcontext#ToolContext#option_context (self) on */ +{ /* Inline toolcontext$ToolContext$option_context (self) on */ var42 = self->attrs[COLOR_nitc__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var42 == 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); } var40 = var42; @@ -536,9 +626,12 @@ RET_LABEL41:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_colors_are_symbols (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_colors_are_symbols (self) on */ var45 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_colors_are_symbols].val; /* _opt_colors_are_symbols on */ if (unlikely(var45 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_colors_are_symbols"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 35); fatal_exit(1); @@ -548,9 +641,12 @@ RET_LABEL44:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_trampoline_call (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_trampoline_call (self) on */ var48 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_trampoline_call].val; /* _opt_trampoline_call on */ if (unlikely(var48 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_trampoline_call"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 37); fatal_exit(1); @@ -560,9 +656,12 @@ RET_LABEL47:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_guard_call (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_guard_call (self) on */ var51 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_guard_call].val; /* _opt_guard_call on */ if (unlikely(var51 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_guard_call"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 39); fatal_exit(1); @@ -572,9 +671,12 @@ RET_LABEL50:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_direct_call_monomorph0 (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_direct_call_monomorph0 (self) on */ var54 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_direct_call_monomorph0].val; /* _opt_direct_call_monomorph0 on */ if (unlikely(var54 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_direct_call_monomorph0"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 52); fatal_exit(1); @@ -584,9 +686,12 @@ RET_LABEL53:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_substitute_monomorph (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_substitute_monomorph (self) on */ var57 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_substitute_monomorph].val; /* _opt_substitute_monomorph on */ if (unlikely(var57 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_substitute_monomorph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 41); fatal_exit(1); @@ -596,9 +701,12 @@ RET_LABEL56:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_link_boost (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_link_boost (self) on */ var60 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_link_boost].val; /* _opt_link_boost on */ if (unlikely(var60 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_link_boost"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 43); fatal_exit(1); @@ -609,7 +717,7 @@ RET_LABEL59:(void)0; } var61 = NEW_core__Array(&type_core__Array__opts__Option); { /* var61 = array_instance Array[Option] */ -var62 = NEW_core__NativeArray(6l, &type_core__NativeArray__opts__Option); +var62 = NEW_core__NativeArray((int)6l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var62)->values[0] = (val*) var43; ((struct instance_core__NativeArray*)var62)->values[1] = (val*) var46; ((struct instance_core__NativeArray*)var62)->values[2] = (val*) var49; @@ -621,14 +729,17 @@ var62 = NEW_core__NativeArray(6l, &type_core__NativeArray__opts__Option); } } { -opts___opts__OptionContext___add_option(var40, var61); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var40, var61); /* Direct call opts$OptionContext$add_option on */ } { -{ /* Inline toolcontext#ToolContext#option_context (self) on */ +{ /* Inline toolcontext$ToolContext$option_context (self) on */ var65 = self->attrs[COLOR_nitc__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var65 == 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); } var63 = var65; @@ -636,9 +747,12 @@ RET_LABEL64:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_inline_coloring_numbers (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_inline_coloring_numbers (self) on */ var68 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_inline_coloring_numbers].val; /* _opt_inline_coloring_numbers on */ if (unlikely(var68 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_inline_coloring_numbers"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 46); fatal_exit(1); @@ -648,9 +762,12 @@ RET_LABEL67:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_inline_some_methods (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_inline_some_methods (self) on */ var71 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_inline_some_methods].val; /* _opt_inline_some_methods on */ if (unlikely(var71 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_inline_some_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 48); fatal_exit(1); @@ -660,9 +777,12 @@ RET_LABEL70:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_direct_call_monomorph (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_direct_call_monomorph (self) on */ var74 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_direct_call_monomorph].val; /* _opt_direct_call_monomorph on */ if (unlikely(var74 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_direct_call_monomorph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 50); fatal_exit(1); @@ -672,9 +792,12 @@ RET_LABEL73:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_skip_dead_methods (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_skip_dead_methods (self) on */ var77 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_skip_dead_methods].val; /* _opt_skip_dead_methods on */ if (unlikely(var77 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_skip_dead_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 54); fatal_exit(1); @@ -684,9 +807,12 @@ RET_LABEL76:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_semi_global (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_semi_global (self) on */ var80 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_semi_global].val; /* _opt_semi_global on */ if (unlikely(var80 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_semi_global"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 56); fatal_exit(1); @@ -697,7 +823,7 @@ RET_LABEL79:(void)0; } var81 = NEW_core__Array(&type_core__Array__opts__Option); { /* var81 = array_instance Array[Option] */ -var82 = NEW_core__NativeArray(5l, &type_core__NativeArray__opts__Option); +var82 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var82)->values[0] = (val*) var66; ((struct instance_core__NativeArray*)var82)->values[1] = (val*) var69; ((struct instance_core__NativeArray*)var82)->values[2] = (val*) var72; @@ -708,14 +834,17 @@ var82 = NEW_core__NativeArray(5l, &type_core__NativeArray__opts__Option); } } { -opts___opts__OptionContext___add_option(var63, var81); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var63, var81); /* Direct call opts$OptionContext$add_option on */ } { -{ /* Inline toolcontext#ToolContext#option_context (self) on */ +{ /* Inline toolcontext$ToolContext$option_context (self) on */ var85 = self->attrs[COLOR_nitc__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var85 == 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); } var83 = var85; @@ -723,9 +852,12 @@ RET_LABEL84:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_colo_dead_methods (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_colo_dead_methods (self) on */ var88 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_colo_dead_methods].val; /* _opt_colo_dead_methods on */ if (unlikely(var88 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_colo_dead_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 58); fatal_exit(1); @@ -736,21 +868,24 @@ RET_LABEL87:(void)0; } var89 = NEW_core__Array(&type_core__Array__opts__Option); { /* var89 = array_instance Array[Option] */ -var90 = NEW_core__NativeArray(1l, &type_core__NativeArray__opts__Option); +var90 = NEW_core__NativeArray((int)1l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var90)->values[0] = (val*) var86; { ((void(*)(val* self, val* p0, long p1))(var89->class->vft[COLOR_core__array__Array__with_native]))(var89, var90, 1l); /* with_native on */ } } { -opts___opts__OptionContext___add_option(var83, var89); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var83, var89); /* Direct call opts$OptionContext$add_option on */ } { -{ /* Inline toolcontext#ToolContext#option_context (self) on */ +{ /* Inline toolcontext$ToolContext$option_context (self) on */ var93 = self->attrs[COLOR_nitc__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var93 == 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); } var91 = var93; @@ -758,9 +893,12 @@ RET_LABEL92:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_tables_metrics (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_tables_metrics (self) on */ var96 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_tables_metrics].val; /* _opt_tables_metrics on */ if (unlikely(var96 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_tables_metrics"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 60); fatal_exit(1); @@ -771,21 +909,24 @@ RET_LABEL95:(void)0; } var97 = NEW_core__Array(&type_core__Array__opts__Option); { /* var97 = array_instance Array[Option] */ -var98 = NEW_core__NativeArray(1l, &type_core__NativeArray__opts__Option); +var98 = NEW_core__NativeArray((int)1l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var98)->values[0] = (val*) var94; { ((void(*)(val* self, val* p0, long p1))(var97->class->vft[COLOR_core__array__Array__with_native]))(var97, var98, 1l); /* with_native on */ } } { -opts___opts__OptionContext___add_option(var91, var97); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var91, var97); /* Direct call opts$OptionContext$add_option on */ } { -{ /* Inline toolcontext#ToolContext#option_context (self) on */ +{ /* Inline toolcontext$ToolContext$option_context (self) on */ var101 = self->attrs[COLOR_nitc__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var101 == 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); } var99 = var101; @@ -793,9 +934,12 @@ RET_LABEL100:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_type_poset (self) on */ +{ /* Inline separate_compiler$ToolContext$opt_type_poset (self) on */ var104 = self->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_type_poset].val; /* _opt_type_poset on */ if (unlikely(var104 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_type_poset"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 62); fatal_exit(1); @@ -806,18 +950,18 @@ RET_LABEL103:(void)0; } var105 = NEW_core__Array(&type_core__Array__opts__Option); { /* var105 = array_instance Array[Option] */ -var106 = NEW_core__NativeArray(1l, &type_core__NativeArray__opts__Option); +var106 = NEW_core__NativeArray((int)1l, &type_core__NativeArray__opts__Option); ((struct instance_core__NativeArray*)var106)->values[0] = (val*) var102; { ((void(*)(val* self, val* p0, long p1))(var105->class->vft[COLOR_core__array__Array__with_native]))(var105, var106, 1l); /* with_native on */ } } { -opts___opts__OptionContext___add_option(var99, var105); /* Direct call opts#OptionContext#add_option on */ +opts___opts__OptionContext___add_option(var99, var105); /* Direct call opts$OptionContext$add_option on */ } RET_LABEL:; } -/* method separate_compiler#ToolContext#process_options for (self: ToolContext, Sequence[String]) */ +/* method separate_compiler$ToolContext$process_options for (self: ToolContext, Sequence[String]) */ void nitc__separate_compiler___ToolContext___process_options(val* self, val* p0) { val* var_args /* var args: Sequence[String] */; val* var_tc /* var tc: ToolContext */; @@ -898,9 +1042,12 @@ var_args = p0; } var_tc = self; { -{ /* Inline separate_compiler#ToolContext#opt_semi_global (var_tc) on */ +{ /* Inline separate_compiler$ToolContext$opt_semi_global (var_tc) on */ var2 = var_tc->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_semi_global].val; /* _opt_semi_global on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_semi_global"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 56); fatal_exit(1); @@ -910,7 +1057,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; @@ -919,9 +1066,12 @@ RET_LABEL4:(void)0; var6 = (short int)((long)(var3)>>2); if (var6){ { -{ /* Inline separate_compiler#ToolContext#opt_inline_coloring_numbers (var_tc) on */ +{ /* Inline separate_compiler$ToolContext$opt_inline_coloring_numbers (var_tc) on */ var9 = var_tc->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_inline_coloring_numbers].val; /* _opt_inline_coloring_numbers on */ if (unlikely(var9 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_inline_coloring_numbers"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 46); fatal_exit(1); @@ -931,7 +1081,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]; @@ -954,9 +1104,12 @@ RET_LABEL10:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_inline_some_methods (var_tc) on */ +{ /* Inline separate_compiler$ToolContext$opt_inline_some_methods (var_tc) on */ var15 = var_tc->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_inline_some_methods].val; /* _opt_inline_some_methods on */ if (unlikely(var15 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_inline_some_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 48); fatal_exit(1); @@ -966,7 +1119,7 @@ RET_LABEL14:(void)0; } } { -{ /* Inline opts#Option#value= (var13,1) on */ +{ /* Inline opts$Option$value= (var13,1) on */ /* Covariant cast for argument 0 (value) <1:Bool> isa VALUE */ /* <1:Bool> isa VALUE */ type_struct20 = var13->type->resolution_table->types[COLOR_opts__Option__VALUE]; @@ -989,9 +1142,12 @@ RET_LABEL16:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_direct_call_monomorph (var_tc) on */ +{ /* Inline separate_compiler$ToolContext$opt_direct_call_monomorph (var_tc) on */ var25 = var_tc->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_direct_call_monomorph].val; /* _opt_direct_call_monomorph on */ if (unlikely(var25 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_direct_call_monomorph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 50); fatal_exit(1); @@ -1001,7 +1157,7 @@ RET_LABEL24:(void)0; } } { -{ /* Inline opts#Option#value= (var23,1) on */ +{ /* Inline opts$Option$value= (var23,1) on */ /* Covariant cast for argument 0 (value) <1:Bool> isa VALUE */ /* <1:Bool> isa VALUE */ type_struct30 = var23->type->resolution_table->types[COLOR_opts__Option__VALUE]; @@ -1024,9 +1180,12 @@ RET_LABEL26:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_skip_dead_methods (var_tc) on */ +{ /* Inline separate_compiler$ToolContext$opt_skip_dead_methods (var_tc) on */ var35 = var_tc->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_skip_dead_methods].val; /* _opt_skip_dead_methods on */ if (unlikely(var35 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_skip_dead_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 54); fatal_exit(1); @@ -1036,7 +1195,7 @@ RET_LABEL34:(void)0; } } { -{ /* Inline opts#Option#value= (var33,1) on */ +{ /* Inline opts$Option$value= (var33,1) on */ /* Covariant cast for argument 0 (value) <1:Bool> isa VALUE */ /* <1:Bool> isa VALUE */ type_struct40 = var33->type->resolution_table->types[COLOR_opts__Option__VALUE]; @@ -1061,9 +1220,12 @@ RET_LABEL36:(void)0; } else { } { -{ /* Inline separate_compiler#ToolContext#opt_link_boost (var_tc) on */ +{ /* Inline separate_compiler$ToolContext$opt_link_boost (var_tc) on */ var45 = var_tc->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_link_boost].val; /* _opt_link_boost on */ if (unlikely(var45 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_link_boost"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 43); fatal_exit(1); @@ -1073,7 +1235,7 @@ RET_LABEL44:(void)0; } } { -{ /* Inline opts#Option#value (var43) on */ +{ /* Inline opts$Option$value (var43) on */ var48 = var43->attrs[COLOR_opts__Option___value].val; /* _value on */ var46 = var48; RET_LABEL47:(void)0; @@ -1082,9 +1244,12 @@ RET_LABEL47:(void)0; var49 = (short int)((long)(var46)>>2); if (var49){ { -{ /* Inline separate_compiler#ToolContext#opt_colors_are_symbols (var_tc) on */ +{ /* Inline separate_compiler$ToolContext$opt_colors_are_symbols (var_tc) on */ var52 = var_tc->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_colors_are_symbols].val; /* _opt_colors_are_symbols on */ if (unlikely(var52 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_colors_are_symbols"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 35); fatal_exit(1); @@ -1094,7 +1259,7 @@ RET_LABEL51:(void)0; } } { -{ /* Inline opts#Option#value= (var50,1) on */ +{ /* Inline opts$Option$value= (var50,1) on */ /* Covariant cast for argument 0 (value) <1:Bool> isa VALUE */ /* <1:Bool> isa VALUE */ type_struct57 = var50->type->resolution_table->types[COLOR_opts__Option__VALUE]; @@ -1117,9 +1282,12 @@ RET_LABEL53:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_substitute_monomorph (var_tc) on */ +{ /* Inline separate_compiler$ToolContext$opt_substitute_monomorph (var_tc) on */ var62 = var_tc->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_substitute_monomorph].val; /* _opt_substitute_monomorph on */ if (unlikely(var62 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_substitute_monomorph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 41); fatal_exit(1); @@ -1129,7 +1297,7 @@ RET_LABEL61:(void)0; } } { -{ /* Inline opts#Option#value= (var60,1) on */ +{ /* Inline opts$Option$value= (var60,1) on */ /* Covariant cast for argument 0 (value) <1:Bool> isa VALUE */ /* <1:Bool> isa VALUE */ type_struct67 = var60->type->resolution_table->types[COLOR_opts__Option__VALUE]; @@ -1154,9 +1322,12 @@ RET_LABEL63:(void)0; } else { } { -{ /* Inline separate_compiler#ToolContext#opt_substitute_monomorph (var_tc) on */ +{ /* Inline separate_compiler$ToolContext$opt_substitute_monomorph (var_tc) on */ var72 = var_tc->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_substitute_monomorph].val; /* _opt_substitute_monomorph on */ if (unlikely(var72 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_substitute_monomorph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 41); fatal_exit(1); @@ -1166,7 +1337,7 @@ RET_LABEL71:(void)0; } } { -{ /* Inline opts#Option#value (var70) on */ +{ /* Inline opts$Option$value (var70) on */ var75 = var70->attrs[COLOR_opts__Option___value].val; /* _value on */ var73 = var75; RET_LABEL74:(void)0; @@ -1175,9 +1346,12 @@ RET_LABEL74:(void)0; var76 = (short int)((long)(var73)>>2); if (var76){ { -{ /* Inline separate_compiler#ToolContext#opt_trampoline_call (var_tc) on */ +{ /* Inline separate_compiler$ToolContext$opt_trampoline_call (var_tc) on */ var79 = var_tc->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_trampoline_call].val; /* _opt_trampoline_call on */ if (unlikely(var79 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_trampoline_call"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 37); fatal_exit(1); @@ -1187,7 +1361,7 @@ RET_LABEL78:(void)0; } } { -{ /* Inline opts#Option#value= (var77,1) on */ +{ /* Inline opts$Option$value= (var77,1) on */ /* Covariant cast for argument 0 (value) <1:Bool> isa VALUE */ /* <1:Bool> isa VALUE */ type_struct84 = var77->type->resolution_table->types[COLOR_opts__Option__VALUE]; @@ -1213,7 +1387,7 @@ RET_LABEL80:(void)0; } RET_LABEL:; } -/* method separate_compiler#SeparateCompilerPhase#process_mainmodule for (self: SeparateCompilerPhase, MModule, SequenceRead[MModule]) */ +/* method separate_compiler$SeparateCompilerPhase$process_mainmodule for (self: SeparateCompilerPhase, MModule, SequenceRead[MModule]) */ void nitc___nitc__SeparateCompilerPhase___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] */; @@ -1234,11 +1408,14 @@ val* var_analysis /* var analysis: 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; @@ -1246,9 +1423,12 @@ RET_LABEL1:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_separate (var) on */ +{ /* Inline separate_compiler$ToolContext$opt_separate (var) on */ var5 = var->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_separate].val; /* _opt_separate on */ if (unlikely(var5 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_separate"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 24); fatal_exit(1); @@ -1258,7 +1438,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; @@ -1271,11 +1451,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; @@ -1291,11 +1474,11 @@ var15 = nitc__rapid_type_analysis___ModelBuilder___do_rapid_type_analysis(var_mo } var_analysis = var15; { -nitc__separate_compiler___ModelBuilder___run_separate_compiler(var_modelbuilder, var_mainmodule, var_analysis); /* Direct call separate_compiler#ModelBuilder#run_separate_compiler on */ +nitc__separate_compiler___ModelBuilder___run_separate_compiler(var_modelbuilder, var_mainmodule, var_analysis); /* Direct call separate_compiler$ModelBuilder$run_separate_compiler on */ } RET_LABEL:; } -/* method separate_compiler#ModelBuilder#run_separate_compiler for (self: ModelBuilder, MModule, nullable RapidTypeAnalysis) */ +/* method separate_compiler$ModelBuilder$run_separate_compiler for (self: ModelBuilder, MModule, nullable RapidTypeAnalysis) */ void nitc__separate_compiler___ModelBuilder___run_separate_compiler(val* self, val* p0, val* p1) { val* var_mainmodule /* var mainmodule: MModule */; val* var_runtime_type_analysis /* var runtime_type_analysis: nullable RapidTypeAnalysis */; @@ -1307,43 +1490,55 @@ val* var4 /* : ToolContext */; val* var6 /* : ToolContext */; static val* varonce; val* var7 /* : String */; -char* var8 /* : NativeString */; +char* var8 /* : CString */; val* var9 /* : String */; -val* var10 /* : SeparateCompiler */; +val* var10 /* : nullable Int */; +val* var11 /* : nullable Int */; +val* var12 /* : nullable Bool */; +val* var13 /* : nullable Bool */; +val* var14 /* : SeparateCompiler */; val* var_compiler /* var compiler: SeparateCompiler */; -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; @@ -1351,9 +1546,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); @@ -1366,114 +1564,129 @@ 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__SeparateCompiler(&type_nitc__SeparateCompiler); +var14 = NEW_nitc__SeparateCompiler(&type_nitc__SeparateCompiler); { -((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 { -var19 = varonce18; -varonce18 = NULL; +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 { +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_compiler#ModelBuilder#nb_invok_by_tables for (self: ModelBuilder): Int */ +/* method separate_compiler$ModelBuilder$nb_invok_by_tables for (self: ModelBuilder): Int */ long nitc__separate_compiler___ModelBuilder___nb_invok_by_tables(val* self) { long var /* : Int */; long var1 /* : Int */; @@ -1482,12 +1695,12 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ModelBuilder#nb_invok_by_tables= for (self: ModelBuilder, Int) */ +/* method separate_compiler$ModelBuilder$nb_invok_by_tables= for (self: ModelBuilder, Int) */ void nitc__separate_compiler___ModelBuilder___nb_invok_by_tables_61d(val* self, long p0) { self->attrs[COLOR_nitc__separate_compiler__ModelBuilder___nb_invok_by_tables].l = p0; /* _nb_invok_by_tables on */ RET_LABEL:; } -/* method separate_compiler#ModelBuilder#nb_invok_by_direct for (self: ModelBuilder): Int */ +/* method separate_compiler$ModelBuilder$nb_invok_by_direct for (self: ModelBuilder): Int */ long nitc__separate_compiler___ModelBuilder___nb_invok_by_direct(val* self) { long var /* : Int */; long var1 /* : Int */; @@ -1496,12 +1709,12 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ModelBuilder#nb_invok_by_direct= for (self: ModelBuilder, Int) */ +/* method separate_compiler$ModelBuilder$nb_invok_by_direct= for (self: ModelBuilder, Int) */ void nitc__separate_compiler___ModelBuilder___nb_invok_by_direct_61d(val* self, long p0) { self->attrs[COLOR_nitc__separate_compiler__ModelBuilder___nb_invok_by_direct].l = p0; /* _nb_invok_by_direct on */ RET_LABEL:; } -/* method separate_compiler#ModelBuilder#nb_invok_by_inline for (self: ModelBuilder): Int */ +/* method separate_compiler$ModelBuilder$nb_invok_by_inline for (self: ModelBuilder): Int */ long nitc__separate_compiler___ModelBuilder___nb_invok_by_inline(val* self) { long var /* : Int */; long var1 /* : Int */; @@ -1510,12 +1723,12 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#ModelBuilder#nb_invok_by_inline= for (self: ModelBuilder, Int) */ +/* method separate_compiler$ModelBuilder$nb_invok_by_inline= for (self: ModelBuilder, Int) */ void nitc__separate_compiler___ModelBuilder___nb_invok_by_inline_61d(val* self, long p0) { self->attrs[COLOR_nitc__separate_compiler__ModelBuilder___nb_invok_by_inline].l = p0; /* _nb_invok_by_inline on */ RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#runtime_type_analysis for (self: SeparateCompiler): nullable RapidTypeAnalysis */ +/* method separate_compiler$SeparateCompiler$runtime_type_analysis for (self: SeparateCompiler): nullable RapidTypeAnalysis */ val* nitc___nitc__SeparateCompiler___runtime_type_analysis(val* self) { val* var /* : nullable RapidTypeAnalysis */; val* var1 /* : nullable RapidTypeAnalysis */; @@ -1524,17 +1737,20 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#runtime_type_analysis= for (self: SeparateCompiler, nullable RapidTypeAnalysis) */ +/* method separate_compiler$SeparateCompiler$runtime_type_analysis= for (self: SeparateCompiler, nullable RapidTypeAnalysis) */ void nitc___nitc__SeparateCompiler___runtime_type_analysis_61d(val* self, val* p0) { self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val = p0; /* _runtime_type_analysis on */ RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#undead_types for (self: SeparateCompiler): Set[MType] */ +/* method separate_compiler$SeparateCompiler$undead_types for (self: SeparateCompiler): Set[MType] */ val* nitc___nitc__SeparateCompiler___undead_types(val* self) { val* var /* : Set[MType] */; val* var1 /* : Set[MType] */; var1 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___undead_types].val; /* _undead_types on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _undead_types"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 146); fatal_exit(1); @@ -1543,12 +1759,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#live_unresolved_types for (self: SeparateCompiler): Map[MClassDef, Set[MType]] */ +/* method separate_compiler$SeparateCompiler$live_unresolved_types for (self: SeparateCompiler): Map[MClassDef, Set[MType]] */ val* nitc___nitc__SeparateCompiler___live_unresolved_types(val* self) { val* var /* : Map[MClassDef, Set[MType]] */; val* var1 /* : Map[MClassDef, Set[MType]] */; var1 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___live_unresolved_types].val; /* _live_unresolved_types on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_unresolved_types"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 147); fatal_exit(1); @@ -1557,12 +1776,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#type_ids for (self: SeparateCompiler): Map[MType, Int] */ +/* method separate_compiler$SeparateCompiler$type_ids for (self: SeparateCompiler): Map[MType, Int] */ val* nitc___nitc__SeparateCompiler___type_ids(val* self) { val* var /* : Map[MType, Int] */; val* var1 /* : Map[MType, Int] */; var1 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_ids].val; /* _type_ids on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_ids"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 149); fatal_exit(1); @@ -1571,17 +1793,20 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#type_ids= for (self: SeparateCompiler, Map[MType, Int]) */ +/* method separate_compiler$SeparateCompiler$type_ids= for (self: SeparateCompiler, Map[MType, Int]) */ void nitc___nitc__SeparateCompiler___type_ids_61d(val* self, val* p0) { self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_ids].val = p0; /* _type_ids on */ RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#type_colors for (self: SeparateCompiler): Map[MType, Int] */ +/* method separate_compiler$SeparateCompiler$type_colors for (self: SeparateCompiler): Map[MType, Int] */ val* nitc___nitc__SeparateCompiler___type_colors(val* self) { val* var /* : Map[MType, Int] */; val* var1 /* : Map[MType, Int] */; var1 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_colors].val; /* _type_colors on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 150); fatal_exit(1); @@ -1590,17 +1815,20 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#type_colors= for (self: SeparateCompiler, Map[MType, Int]) */ +/* method separate_compiler$SeparateCompiler$type_colors= for (self: SeparateCompiler, Map[MType, Int]) */ void nitc___nitc__SeparateCompiler___type_colors_61d(val* self, val* p0) { self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_colors].val = p0; /* _type_colors on */ RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#opentype_colors for (self: SeparateCompiler): Map[MType, Int] */ +/* method separate_compiler$SeparateCompiler$opentype_colors for (self: SeparateCompiler): Map[MType, Int] */ val* nitc___nitc__SeparateCompiler___opentype_colors(val* self) { val* var /* : Map[MType, Int] */; val* var1 /* : Map[MType, Int] */; var1 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___opentype_colors].val; /* _opentype_colors on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opentype_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 151); fatal_exit(1); @@ -1609,20 +1837,24 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#opentype_colors= for (self: SeparateCompiler, Map[MType, Int]) */ +/* method separate_compiler$SeparateCompiler$opentype_colors= for (self: SeparateCompiler, Map[MType, Int]) */ void nitc___nitc__SeparateCompiler___opentype_colors_61d(val* self, val* p0) { self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___opentype_colors].val = p0; /* _opentype_colors on */ RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#init for (self: SeparateCompiler) */ +/* method separate_compiler$SeparateCompiler$init for (self: SeparateCompiler) */ void nitc___nitc__SeparateCompiler___core__kernel__Object__init(val* self) { static val* varonce; val* var /* : String */; -char* var1 /* : NativeString */; +char* var1 /* : CString */; val* var2 /* : String */; -val* var3 /* : CodeFile */; +val* var3 /* : nullable Int */; +val* var4 /* : nullable Int */; +val* var5 /* : nullable Bool */; +val* var6 /* : nullable Bool */; +val* var7 /* : CodeFile */; val* var_file /* var file: CodeFile */; -val* var4 /* : CodeWriter */; +val* var8 /* : CodeWriter */; { ((void(*)(val* self))(self->class->vft[COLOR_nitc___nitc__SeparateCompiler___core__kernel__Object__init]))(self); /* init on */ } @@ -1630,33 +1862,37 @@ if (likely(varonce!=NULL)) { var = varonce; } else { var1 = "nit.common"; -var2 = core__flat___NativeString___to_s_full(var1, 10l, 10l); +var3 = (val*)(10l<<2|1); +var4 = (val*)(10l<<2|1); +var5 = (val*)((long)(0)<<2|3); +var6 = (val*)((long)(0)<<2|3); +var2 = core__flat___CString___to_s_unsafe(var1, var3, var4, var5, var6); var = var2; varonce = var; } { -var3 = nitc___nitc__AbstractCompiler___new_file(self, var); +var7 = nitc___nitc__AbstractCompiler___new_file(self, var); } -var_file = var3; -var4 = NEW_nitc__CodeWriter(&type_nitc__CodeWriter); +var_file = var7; +var8 = NEW_nitc__CodeWriter(&type_nitc__CodeWriter); { -((void(*)(val* self, val* p0))(var4->class->vft[COLOR_nitc__abstract_compiler__CodeWriter__file_61d]))(var4, var_file); /* file= on */ +((void(*)(val* self, val* p0))(var8->class->vft[COLOR_nitc__abstract_compiler__CodeWriter__file_61d]))(var8, var_file); /* file= on */ } { -((void(*)(val* self))(var4->class->vft[COLOR_core__kernel__Object__init]))(var4); /* init on */ +((void(*)(val* self))(var8->class->vft[COLOR_core__kernel__Object__init]))(var8); /* init on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header= (self,var4) on */ -self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val = var4; /* _header on */ -RET_LABEL5:(void)0; +{ /* Inline abstract_compiler$AbstractCompiler$header= (self,var8) on */ +self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val = var8; /* _header on */ +RET_LABEL9:(void)0; } } { -nitc___nitc__SeparateCompiler___compile_box_kinds(self); /* Direct call separate_compiler#SeparateCompiler#compile_box_kinds on */ +nitc___nitc__SeparateCompiler___compile_box_kinds(self); /* Direct call separate_compiler$SeparateCompiler$compile_box_kinds on */ } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#do_compilation for (self: SeparateCompiler) */ +/* method separate_compiler$SeparateCompiler$do_compilation for (self: SeparateCompiler) */ void nitc___nitc__SeparateCompiler___nitc__abstract_compiler__AbstractCompiler__do_compilation(val* self) { val* var_compiler /* var compiler: SeparateCompiler */; val* var /* : MModule */; @@ -1669,101 +1905,132 @@ val* var7 /* : ToolContext */; val* var9 /* : ToolContext */; static val* varonce; val* var10 /* : String */; -char* var11 /* : NativeString */; +char* var11 /* : CString */; val* var12 /* : String */; -val* var14 /* : NativeArray[String] */; -static val* varonce13; -static val* varonce15; -val* var16 /* : String */; -char* var17 /* : NativeString */; -val* var18 /* : String */; -val* var19 /* : String */; -val* var20 /* : CodeFile */; -val* var21 /* : MModule */; -val* var23 /* : MModule */; -val* var24 /* : POSetElement[MModule] */; -val* var26 /* : POSetElement[MModule] */; -val* var27 /* : Collection[nullable Object] */; +val* var13 /* : nullable Int */; +val* var14 /* : nullable Int */; +val* var15 /* : nullable Bool */; +val* var16 /* : nullable Bool */; +val* var18 /* : NativeArray[String] */; +static val* varonce17; +static val* varonce19; +val* var20 /* : String */; +char* var21 /* : CString */; +val* var22 /* : String */; +val* var23 /* : nullable Int */; +val* var24 /* : nullable Int */; +val* var25 /* : nullable Bool */; +val* var26 /* : nullable Bool */; +val* var27 /* : String */; +val* var28 /* : CodeFile */; +val* var29 /* : MModule */; +val* var31 /* : MModule */; +val* var32 /* : POSetElement[MModule] */; +val* var34 /* : POSetElement[MModule] */; +val* var35 /* : Collection[nullable Object] */; val* var_ /* var : Collection[MModule] */; -val* var28 /* : Iterator[nullable Object] */; -val* var_29 /* var : Iterator[MModule] */; -short int var30 /* : Bool */; -val* var31 /* : nullable Object */; -val* var_m /* var m: MModule */; -val* var32 /* : Array[MClass] */; -val* var34 /* : Array[MClass] */; -val* var_35 /* var : Array[MClass] */; -val* var36 /* : IndexedIterator[nullable Object] */; -val* var_37 /* var : IndexedIterator[MClass] */; +val* var36 /* : Iterator[nullable Object] */; +val* var_37 /* var : Iterator[MModule] */; short int var38 /* : Bool */; -val* var40 /* : nullable Object */; +val* var39 /* : nullable Object */; +val* var_m /* var m: MModule */; +val* var40 /* : Array[MClass] */; +val* var42 /* : Array[MClass] */; +val* var_43 /* var : Array[MClass] */; +val* var44 /* : IndexedIterator[nullable Object] */; +val* var_45 /* var : IndexedIterator[MClass] */; +short int var46 /* : Bool */; +val* var48 /* : nullable Object */; val* var_mclass /* var mclass: MClass */; -val* var42 /* : NativeArray[String] */; -static val* varonce41; -static val* varonce43; -val* var44 /* : String */; -char* var45 /* : NativeString */; -val* var46 /* : String */; -val* var47 /* : String */; -val* var48 /* : CodeFile */; -val* var49 /* : MModule */; -val* var51 /* : MModule */; -val* var52 /* : POSetElement[MModule] */; -val* var54 /* : POSetElement[MModule] */; -val* var55 /* : Collection[nullable Object] */; -val* var_56 /* var : Collection[MModule] */; -val* var57 /* : Iterator[nullable Object] */; -val* var_58 /* var : Iterator[MModule] */; -short int var59 /* : Bool */; -val* var61 /* : nullable Object */; -val* var_m62 /* var m: MModule */; -val* var63 /* : ModelBuilder */; -val* var65 /* : ModelBuilder */; -val* var66 /* : ToolContext */; -val* var68 /* : ToolContext */; -val* var70 /* : NativeArray[String] */; -static val* varonce69; -static val* varonce71; -val* var72 /* : String */; -char* var73 /* : NativeString */; -val* var74 /* : String */; -val* var75 /* : String */; -val* var76 /* : String */; -val* var78 /* : NativeArray[String] */; -static val* varonce77; -static val* varonce79; -val* var80 /* : String */; -char* var81 /* : NativeString */; -val* var82 /* : String */; -val* var83 /* : String */; +val* var50 /* : NativeArray[String] */; +static val* varonce49; +static val* varonce51; +val* var52 /* : String */; +char* var53 /* : CString */; +val* var54 /* : String */; +val* var55 /* : nullable Int */; +val* var56 /* : nullable Int */; +val* var57 /* : nullable Bool */; +val* var58 /* : nullable Bool */; +val* var59 /* : String */; +val* var60 /* : CodeFile */; +val* var61 /* : MModule */; +val* var63 /* : MModule */; +val* var64 /* : POSetElement[MModule] */; +val* var66 /* : POSetElement[MModule] */; +val* var67 /* : Collection[nullable Object] */; +val* var_68 /* var : Collection[MModule] */; +val* var69 /* : Iterator[nullable Object] */; +val* var_70 /* var : Iterator[MModule] */; +short int var71 /* : Bool */; +val* var73 /* : nullable Object */; +val* var_m74 /* var m: MModule */; +val* var75 /* : ModelBuilder */; +val* var77 /* : ModelBuilder */; +val* var78 /* : ToolContext */; +val* var80 /* : ToolContext */; +val* var82 /* : NativeArray[String] */; +static val* varonce81; +static val* varonce83; val* var84 /* : String */; -val* var85 /* : CodeFile */; -val* var86 /* : ModelBuilder */; -val* var88 /* : ModelBuilder */; -val* var89 /* : ToolContext */; -val* var91 /* : ToolContext */; -static val* varonce92; -val* var93 /* : String */; -char* var94 /* : NativeString */; -val* var95 /* : String */; -val* var97 /* : NativeArray[String] */; -static val* varonce96; -static val* varonce98; -val* var99 /* : String */; -char* var100 /* : NativeString */; -val* var101 /* : String */; -val* var102 /* : String */; -val* var103 /* : CodeFile */; +char* var85 /* : CString */; +val* var86 /* : String */; +val* var87 /* : nullable Int */; +val* var88 /* : nullable Int */; +val* var89 /* : nullable Bool */; +val* var90 /* : nullable Bool */; +val* var91 /* : String */; +val* var92 /* : String */; +val* var94 /* : NativeArray[String] */; +static val* varonce93; +static val* varonce95; +val* var96 /* : String */; +char* var97 /* : CString */; +val* var98 /* : String */; +val* var99 /* : nullable Int */; +val* var100 /* : nullable Int */; +val* var101 /* : nullable Bool */; +val* var102 /* : nullable Bool */; +val* var103 /* : String */; +val* var104 /* : String */; +val* var105 /* : CodeFile */; +val* var106 /* : ModelBuilder */; +val* var108 /* : ModelBuilder */; +val* var109 /* : ToolContext */; +val* var111 /* : ToolContext */; +static val* varonce112; +val* var113 /* : String */; +char* var114 /* : CString */; +val* var115 /* : String */; +val* var116 /* : nullable Int */; +val* var117 /* : nullable Int */; +val* var118 /* : nullable Bool */; +val* var119 /* : nullable Bool */; +val* var121 /* : NativeArray[String] */; +static val* varonce120; +static val* varonce122; +val* var123 /* : String */; +char* var124 /* : CString */; +val* var125 /* : String */; +val* var126 /* : nullable Int */; +val* var127 /* : nullable Int */; +val* var128 /* : nullable Bool */; +val* var129 /* : nullable Bool */; +val* var130 /* : String */; +val* var131 /* : CodeFile */; var_compiler = self; { -nitc___nitc__AbstractCompiler___compile_header(var_compiler); /* Direct call abstract_compiler#AbstractCompiler#compile_header on */ +nitc___nitc__AbstractCompiler___compile_header(var_compiler); /* Direct call abstract_compiler$AbstractCompiler$compile_header 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; @@ -1775,11 +2042,14 @@ var3 = nitc___nitc__MModule___nitc__model_base__MEntity__c_name(var); } var_c_name = var3; { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ var6 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ if (unlikely(var6 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } var4 = var6; @@ -1787,9 +2057,12 @@ RET_LABEL5:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var4) on */ +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var4) on */ var9 = var4->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ if (unlikely(var9 == 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); @@ -1802,364 +2075,419 @@ if (likely(varonce!=NULL)) { var10 = varonce; } else { var11 = "Property coloring"; -var12 = core__flat___NativeString___to_s_full(var11, 17l, 17l); +var13 = (val*)(17l<<2|1); +var14 = (val*)(17l<<2|1); +var15 = (val*)((long)(0)<<2|3); +var16 = (val*)((long)(0)<<2|3); +var12 = core__flat___CString___to_s_unsafe(var11, var13, var14, var15, var16); var10 = var12; varonce = var10; } { -nitc___nitc__ToolContext___info(var7, var10, 2l); /* Direct call toolcontext#ToolContext#info on */ +nitc___nitc__ToolContext___info(var7, var10, 2l); /* Direct call toolcontext$ToolContext$info on */ } -if (unlikely(varonce13==NULL)) { -var14 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce15!=NULL)) { -var16 = varonce15; +if (unlikely(varonce17==NULL)) { +var18 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce19!=NULL)) { +var20 = varonce19; } else { -var17 = ".classes"; -var18 = core__flat___NativeString___to_s_full(var17, 8l, 8l); -var16 = var18; -varonce15 = var16; +var21 = ".classes"; +var23 = (val*)(8l<<2|1); +var24 = (val*)(8l<<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[1]=var16; +((struct instance_core__NativeArray*)var18)->values[1]=var20; } else { -var14 = varonce13; -varonce13 = NULL; +var18 = varonce17; +varonce17 = NULL; } -((struct instance_core__NativeArray*)var14)->values[0]=var_c_name; +((struct instance_core__NativeArray*)var18)->values[0]=var_c_name; { -var19 = ((val*(*)(val* self))(var14->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var14); /* native_to_s on */ +var27 = ((val*(*)(val* self))(var18->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var18); /* native_to_s on */ } -varonce13 = var14; +varonce17 = var18; { -var20 = nitc___nitc__AbstractCompiler___new_file(var_compiler, var19); +var28 = nitc___nitc__AbstractCompiler___new_file(var_compiler, var27); } { -nitc___nitc__SeparateCompiler___do_property_coloring(var_compiler); /* Direct call separate_compiler#SeparateCompiler#do_property_coloring on */ +nitc___nitc__SeparateCompiler___do_property_coloring(var_compiler); /* Direct call separate_compiler$SeparateCompiler$do_property_coloring on */ } { -nitc___nitc__SeparateCompiler___compile_class_infos(var_compiler); /* Direct call separate_compiler#SeparateCompiler#compile_class_infos on */ +nitc___nitc__SeparateCompiler___compile_class_infos(var_compiler); /* Direct call separate_compiler$SeparateCompiler$compile_class_infos on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ -var23 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ -if (unlikely(var23 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ +var31 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ +if (unlikely(var31 == 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); } -var21 = var23; -RET_LABEL22:(void)0; +var29 = var31; +RET_LABEL30:(void)0; } } { -{ /* Inline mmodule#MModule#in_importation (var21) on */ -var26 = var21->attrs[COLOR_nitc__mmodule__MModule___in_importation].val; /* _in_importation on */ -if (unlikely(var26 == NULL)) { +{ /* Inline mmodule$MModule$in_importation (var29) on */ +var34 = var29->attrs[COLOR_nitc__mmodule__MModule___in_importation].val; /* _in_importation on */ +if (unlikely(var34 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_importation"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 104); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 108); fatal_exit(1); } -var24 = var26; -RET_LABEL25:(void)0; +var32 = var34; +RET_LABEL33:(void)0; } } { -var27 = poset___poset__POSetElement___greaters(var24); +var35 = poset___poset__POSetElement___greaters(var32); } -var_ = var27; +var_ = var35; { -var28 = ((val*(*)(val* self))((((long)var_&3)?class_info[((long)var_&3)]:var_->class)->vft[COLOR_core__abstract_collection__Collection__iterator]))(var_); /* iterator on */ +var36 = ((val*(*)(val* self))((((long)var_&3)?class_info[((long)var_&3)]:var_->class)->vft[COLOR_core__abstract_collection__Collection__iterator]))(var_); /* iterator on */ } -var_29 = var28; +var_37 = var36; for(;;) { { -var30 = ((short int(*)(val* self))((((long)var_29&3)?class_info[((long)var_29&3)]:var_29->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_29); /* is_ok on */ +var38 = ((short int(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_37); /* is_ok on */ } -if (var30){ +if (var38){ } else { goto BREAK_label; } { -var31 = ((val*(*)(val* self))((((long)var_29&3)?class_info[((long)var_29&3)]:var_29->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_29); /* item on */ +var39 = ((val*(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_37); /* item on */ } -var_m = var31; +var_m = var39; { -{ /* Inline model#MModule#intro_mclasses (var_m) on */ -var34 = var_m->attrs[COLOR_nitc__model__MModule___intro_mclasses].val; /* _intro_mclasses on */ -if (unlikely(var34 == NULL)) { +{ /* Inline model$MModule$intro_mclasses (var_m) on */ +var42 = var_m->attrs[COLOR_nitc__model__MModule___intro_mclasses].val; /* _intro_mclasses on */ +if (unlikely(var42 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclasses"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 138); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 147); fatal_exit(1); } -var32 = var34; -RET_LABEL33:(void)0; +var40 = var42; +RET_LABEL41:(void)0; } } -var_35 = var32; +var_43 = var40; { -var36 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_35); +var44 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_43); } -var_37 = var36; +var_45 = var44; for(;;) { { -var38 = ((short int(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_37); /* is_ok on */ +var46 = ((short int(*)(val* self))((((long)var_45&3)?class_info[((long)var_45&3)]:var_45->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_45); /* is_ok on */ } -if (var38){ +if (var46){ } else { -goto BREAK_label39; +goto BREAK_label47; } { -var40 = ((val*(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_37); /* item on */ +var48 = ((val*(*)(val* self))((((long)var_45&3)?class_info[((long)var_45&3)]:var_45->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_45); /* item on */ } -var_mclass = var40; +var_mclass = var48; { ((void(*)(val* self, val* p0))(var_compiler->class->vft[COLOR_nitc__separate_compiler__SeparateCompiler__compile_class_to_c]))(var_compiler, var_mclass); /* compile_class_to_c on */ } { -((void(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_37); /* next on */ +((void(*)(val* self))((((long)var_45&3)?class_info[((long)var_45&3)]:var_45->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_45); /* next on */ } } -BREAK_label39: (void)0; +BREAK_label47: (void)0; { -((void(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_37); /* finish on */ +((void(*)(val* self))((((long)var_45&3)?class_info[((long)var_45&3)]:var_45->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_45); /* finish on */ } { -((void(*)(val* self))((((long)var_29&3)?class_info[((long)var_29&3)]:var_29->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_29); /* next on */ +((void(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_37); /* next on */ } } BREAK_label: (void)0; { -((void(*)(val* self))((((long)var_29&3)?class_info[((long)var_29&3)]:var_29->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_29); /* finish on */ +((void(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_37); /* finish on */ } -if (unlikely(varonce41==NULL)) { -var42 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce43!=NULL)) { -var44 = varonce43; +if (unlikely(varonce49==NULL)) { +var50 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce51!=NULL)) { +var52 = varonce51; } else { -var45 = ".main"; -var46 = core__flat___NativeString___to_s_full(var45, 5l, 5l); -var44 = var46; -varonce43 = var44; +var53 = ".main"; +var55 = (val*)(5l<<2|1); +var56 = (val*)(5l<<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*)var42)->values[1]=var44; +((struct instance_core__NativeArray*)var50)->values[1]=var52; } else { -var42 = varonce41; -varonce41 = NULL; +var50 = varonce49; +varonce49 = NULL; } -((struct instance_core__NativeArray*)var42)->values[0]=var_c_name; +((struct instance_core__NativeArray*)var50)->values[0]=var_c_name; { -var47 = ((val*(*)(val* self))(var42->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var42); /* native_to_s on */ +var59 = ((val*(*)(val* self))(var50->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var50); /* native_to_s on */ } -varonce41 = var42; +varonce49 = var50; { -var48 = nitc___nitc__AbstractCompiler___new_file(var_compiler, var47); +var60 = nitc___nitc__AbstractCompiler___new_file(var_compiler, var59); } { -nitc___nitc__AbstractCompiler___compile_nitni_global_ref_functions(var_compiler); /* Direct call abstract_compiler#AbstractCompiler#compile_nitni_global_ref_functions on */ +nitc___nitc__AbstractCompiler___compile_nitni_global_ref_functions(var_compiler); /* Direct call abstract_compiler$AbstractCompiler$compile_nitni_global_ref_functions on */ } { -nitc___nitc__AbstractCompiler___compile_main_function(var_compiler); /* Direct call abstract_compiler#AbstractCompiler#compile_main_function on */ +nitc___nitc__AbstractCompiler___compile_main_function(var_compiler); /* Direct call abstract_compiler$AbstractCompiler$compile_main_function on */ } { -nitc___nitc__AbstractCompiler___compile_finalizer_function(var_compiler); /* Direct call abstract_compiler#AbstractCompiler#compile_finalizer_function on */ +nitc___nitc__AbstractCompiler___compile_finalizer_function(var_compiler); /* Direct call abstract_compiler$AbstractCompiler$compile_finalizer_function on */ } { -nitc___nitc__SeparateCompiler___link_mmethods(var_compiler); /* Direct call separate_compiler#SeparateCompiler#link_mmethods on */ +nitc___nitc__SeparateCompiler___link_mmethods(var_compiler); /* Direct call separate_compiler$SeparateCompiler$link_mmethods on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ -var51 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ -if (unlikely(var51 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ +var63 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ +if (unlikely(var63 == 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); } -var49 = var51; -RET_LABEL50:(void)0; +var61 = var63; +RET_LABEL62:(void)0; } } { -{ /* Inline mmodule#MModule#in_importation (var49) on */ -var54 = var49->attrs[COLOR_nitc__mmodule__MModule___in_importation].val; /* _in_importation on */ -if (unlikely(var54 == NULL)) { +{ /* Inline mmodule$MModule$in_importation (var61) on */ +var66 = var61->attrs[COLOR_nitc__mmodule__MModule___in_importation].val; /* _in_importation on */ +if (unlikely(var66 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_importation"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 104); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 108); fatal_exit(1); } -var52 = var54; -RET_LABEL53:(void)0; +var64 = var66; +RET_LABEL65:(void)0; } } { -var55 = poset___poset__POSetElement___greaters(var52); +var67 = poset___poset__POSetElement___greaters(var64); } -var_56 = var55; +var_68 = var67; { -var57 = ((val*(*)(val* self))((((long)var_56&3)?class_info[((long)var_56&3)]:var_56->class)->vft[COLOR_core__abstract_collection__Collection__iterator]))(var_56); /* iterator on */ +var69 = ((val*(*)(val* self))((((long)var_68&3)?class_info[((long)var_68&3)]:var_68->class)->vft[COLOR_core__abstract_collection__Collection__iterator]))(var_68); /* iterator on */ } -var_58 = var57; +var_70 = var69; for(;;) { { -var59 = ((short int(*)(val* self))((((long)var_58&3)?class_info[((long)var_58&3)]:var_58->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_58); /* is_ok on */ +var71 = ((short int(*)(val* self))((((long)var_70&3)?class_info[((long)var_70&3)]:var_70->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_70); /* is_ok on */ } -if (var59){ +if (var71){ } else { -goto BREAK_label60; +goto BREAK_label72; } { -var61 = ((val*(*)(val* self))((((long)var_58&3)?class_info[((long)var_58&3)]:var_58->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_58); /* item on */ +var73 = ((val*(*)(val* self))((((long)var_70&3)?class_info[((long)var_70&3)]:var_70->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_70); /* item on */ } -var_m62 = var61; +var_m74 = var73; { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ -var65 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ -if (unlikely(var65 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ +var77 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ +if (unlikely(var77 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } -var63 = var65; -RET_LABEL64:(void)0; +var75 = var77; +RET_LABEL76:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var63) on */ -var68 = var63->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var68 == NULL)) { +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var75) on */ +var80 = var75->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var80 == 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); } -var66 = var68; -RET_LABEL67:(void)0; +var78 = var80; +RET_LABEL79:(void)0; } } -if (unlikely(varonce69==NULL)) { -var70 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce71!=NULL)) { -var72 = varonce71; +if (unlikely(varonce81==NULL)) { +var82 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce83!=NULL)) { +var84 = varonce83; } else { -var73 = "Generate C for module "; -var74 = core__flat___NativeString___to_s_full(var73, 22l, 22l); -var72 = var74; -varonce71 = var72; +var85 = "Generate C for module "; +var87 = (val*)(22l<<2|1); +var88 = (val*)(22l<<2|1); +var89 = (val*)((long)(0)<<2|3); +var90 = (val*)((long)(0)<<2|3); +var86 = core__flat___CString___to_s_unsafe(var85, var87, var88, var89, var90); +var84 = var86; +varonce83 = var84; } -((struct instance_core__NativeArray*)var70)->values[0]=var72; +((struct instance_core__NativeArray*)var82)->values[0]=var84; } else { -var70 = varonce69; -varonce69 = NULL; +var82 = varonce81; +varonce81 = NULL; } { -var75 = nitc___nitc__MModule___nitc__model_base__MEntity__full_name(var_m62); +var91 = nitc___nitc__MModule___nitc__model_base__MEntity__full_name(var_m74); } -((struct instance_core__NativeArray*)var70)->values[1]=var75; +((struct instance_core__NativeArray*)var82)->values[1]=var91; { -var76 = ((val*(*)(val* self))(var70->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var70); /* native_to_s on */ +var92 = ((val*(*)(val* self))(var82->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var82); /* native_to_s on */ } -varonce69 = var70; +varonce81 = var82; { -nitc___nitc__ToolContext___info(var66, var76, 2l); /* Direct call toolcontext#ToolContext#info on */ +nitc___nitc__ToolContext___info(var78, var92, 2l); /* Direct call toolcontext$ToolContext$info on */ } -if (unlikely(varonce77==NULL)) { -var78 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce79!=NULL)) { -var80 = varonce79; +if (unlikely(varonce93==NULL)) { +var94 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce95!=NULL)) { +var96 = varonce95; } else { -var81 = ".sep"; -var82 = core__flat___NativeString___to_s_full(var81, 4l, 4l); -var80 = var82; -varonce79 = var80; +var97 = ".sep"; +var99 = (val*)(4l<<2|1); +var100 = (val*)(4l<<2|1); +var101 = (val*)((long)(0)<<2|3); +var102 = (val*)((long)(0)<<2|3); +var98 = core__flat___CString___to_s_unsafe(var97, var99, var100, var101, var102); +var96 = var98; +varonce95 = var96; } -((struct instance_core__NativeArray*)var78)->values[1]=var80; +((struct instance_core__NativeArray*)var94)->values[1]=var96; } else { -var78 = varonce77; -varonce77 = NULL; +var94 = varonce93; +varonce93 = NULL; } { -var83 = nitc___nitc__MModule___nitc__model_base__MEntity__c_name(var_m62); +var103 = nitc___nitc__MModule___nitc__model_base__MEntity__c_name(var_m74); } -((struct instance_core__NativeArray*)var78)->values[0]=var83; +((struct instance_core__NativeArray*)var94)->values[0]=var103; { -var84 = ((val*(*)(val* self))(var78->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var78); /* native_to_s on */ +var104 = ((val*(*)(val* self))(var94->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var94); /* native_to_s on */ } -varonce77 = var78; +varonce93 = var94; { -var85 = nitc___nitc__AbstractCompiler___new_file(var_compiler, var84); +var105 = nitc___nitc__AbstractCompiler___new_file(var_compiler, var104); } { -nitc___nitc__SeparateCompiler___compile_module_to_c(var_compiler, var_m62); /* Direct call separate_compiler#SeparateCompiler#compile_module_to_c on */ +nitc___nitc__SeparateCompiler___compile_module_to_c(var_compiler, var_m74); /* Direct call separate_compiler$SeparateCompiler$compile_module_to_c on */ } { -((void(*)(val* self))((((long)var_58&3)?class_info[((long)var_58&3)]:var_58->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_58); /* next on */ +((void(*)(val* self))((((long)var_70&3)?class_info[((long)var_70&3)]:var_70->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_70); /* next on */ } } -BREAK_label60: (void)0; +BREAK_label72: (void)0; { -((void(*)(val* self))((((long)var_58&3)?class_info[((long)var_58&3)]:var_58->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_58); /* finish on */ +((void(*)(val* self))((((long)var_70&3)?class_info[((long)var_70&3)]:var_70->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_70); /* finish on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ -var88 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ -if (unlikely(var88 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ +var108 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ +if (unlikely(var108 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } -var86 = var88; -RET_LABEL87:(void)0; +var106 = var108; +RET_LABEL107:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var86) on */ -var91 = var86->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var91 == NULL)) { +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var106) on */ +var111 = var106->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var111 == 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); } -var89 = var91; -RET_LABEL90:(void)0; +var109 = var111; +RET_LABEL110:(void)0; } } -if (likely(varonce92!=NULL)) { -var93 = varonce92; +if (likely(varonce112!=NULL)) { +var113 = varonce112; } else { -var94 = "Type coloring"; -var95 = core__flat___NativeString___to_s_full(var94, 13l, 13l); -var93 = var95; -varonce92 = var93; +var114 = "Type coloring"; +var116 = (val*)(13l<<2|1); +var117 = (val*)(13l<<2|1); +var118 = (val*)((long)(0)<<2|3); +var119 = (val*)((long)(0)<<2|3); +var115 = core__flat___CString___to_s_unsafe(var114, var116, var117, var118, var119); +var113 = var115; +varonce112 = var113; } { -nitc___nitc__ToolContext___info(var89, var93, 2l); /* Direct call toolcontext#ToolContext#info on */ +nitc___nitc__ToolContext___info(var109, var113, 2l); /* Direct call toolcontext$ToolContext$info on */ } -if (unlikely(varonce96==NULL)) { -var97 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce98!=NULL)) { -var99 = varonce98; +if (unlikely(varonce120==NULL)) { +var121 = NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String); +if (likely(varonce122!=NULL)) { +var123 = varonce122; } else { -var100 = ".types"; -var101 = core__flat___NativeString___to_s_full(var100, 6l, 6l); -var99 = var101; -varonce98 = var99; +var124 = ".types"; +var126 = (val*)(6l<<2|1); +var127 = (val*)(6l<<2|1); +var128 = (val*)((long)(0)<<2|3); +var129 = (val*)((long)(0)<<2|3); +var125 = core__flat___CString___to_s_unsafe(var124, var126, var127, var128, var129); +var123 = var125; +varonce122 = var123; } -((struct instance_core__NativeArray*)var97)->values[1]=var99; +((struct instance_core__NativeArray*)var121)->values[1]=var123; } else { -var97 = varonce96; -varonce96 = NULL; +var121 = varonce120; +varonce120 = NULL; } -((struct instance_core__NativeArray*)var97)->values[0]=var_c_name; +((struct instance_core__NativeArray*)var121)->values[0]=var_c_name; { -var102 = ((val*(*)(val* self))(var97->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var97); /* native_to_s on */ +var130 = ((val*(*)(val* self))(var121->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var121); /* native_to_s on */ } -varonce96 = var97; +varonce120 = var121; { -var103 = nitc___nitc__AbstractCompiler___new_file(var_compiler, var102); +var131 = nitc___nitc__AbstractCompiler___new_file(var_compiler, var130); } { ((void(*)(val* self))(var_compiler->class->vft[COLOR_nitc__separate_compiler__SeparateCompiler__compile_types]))(var_compiler); /* compile_types on */ } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#compile_types for (self: SeparateCompiler) */ +/* method separate_compiler$SeparateCompiler$compile_types for (self: SeparateCompiler) */ void nitc___nitc__SeparateCompiler___compile_types(val* self) { val* var_compiler /* var compiler: SeparateCompiler */; val* var /* : Collection[MType] */; @@ -2202,7 +2530,7 @@ var4 = ((val*(*)(val* self))((((long)var_2&3)?class_info[((long)var_2&3)]:var_2- } var_t = var4; { -nitc___nitc__SeparateCompiler___compile_type_to_c(var_compiler, var_t); /* Direct call separate_compiler#SeparateCompiler#compile_type_to_c on */ +nitc___nitc__SeparateCompiler___compile_type_to_c(var_compiler, var_t); /* Direct call separate_compiler$SeparateCompiler$compile_type_to_c on */ } { ((void(*)(val* self))((((long)var_2&3)?class_info[((long)var_2&3)]:var_2->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_2); /* next on */ @@ -2213,9 +2541,12 @@ BREAK_label: (void)0; ((void(*)(val* self))((((long)var_2&3)?class_info[((long)var_2&3)]:var_2->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_2); /* finish on */ } { -{ /* Inline separate_compiler#SeparateCompiler#undead_types (var_compiler) on */ +{ /* Inline separate_compiler$SeparateCompiler$undead_types (var_compiler) on */ var7 = var_compiler->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___undead_types].val; /* _undead_types on */ if (unlikely(var7 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _undead_types"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 146); fatal_exit(1); @@ -2249,7 +2580,7 @@ goto BREAK_label16; } else { } { -nitc___nitc__SeparateCompiler___compile_type_to_c(var_compiler, var_t14); /* Direct call separate_compiler#SeparateCompiler#compile_type_to_c on */ +nitc___nitc__SeparateCompiler___compile_type_to_c(var_compiler, var_t14); /* Direct call separate_compiler$SeparateCompiler$compile_type_to_c on */ } BREAK_label16: (void)0; { @@ -2262,72 +2593,107 @@ BREAK_label12: (void)0; } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#compile_header_structs for (self: SeparateCompiler) */ +/* method separate_compiler$SeparateCompiler$compile_header_structs for (self: SeparateCompiler) */ void nitc___nitc__SeparateCompiler___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* var41 /* : ModelBuilder */; -val* var43 /* : ModelBuilder */; -val* var44 /* : ToolContext */; -val* var46 /* : ToolContext */; -val* var47 /* : OptionBool */; -val* var49 /* : OptionBool */; -val* var50 /* : nullable Object */; -val* var52 /* : nullable Object */; -short int var53 /* : Bool */; -short int var54 /* : Bool */; -val* var55 /* : CodeWriter */; -val* var57 /* : CodeWriter */; -static val* varonce58; -val* var59 /* : String */; -char* var60 /* : NativeString */; -val* var61 /* : String */; -val* var62 /* : CodeWriter */; -val* var64 /* : CodeWriter */; -static val* varonce65; -val* var66 /* : String */; -char* var67 /* : NativeString */; -val* var68 /* : 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 */; +val* var65 /* : ModelBuilder */; +val* var67 /* : ModelBuilder */; +val* var68 /* : ToolContext */; +val* var70 /* : ToolContext */; +val* var71 /* : OptionBool */; +val* var73 /* : OptionBool */; +val* var74 /* : nullable Object */; +val* var76 /* : nullable Object */; +short int var77 /* : Bool */; +short int var78 /* : Bool */; +val* var79 /* : CodeWriter */; +val* var81 /* : CodeWriter */; +static val* varonce82; +val* var83 /* : String */; +char* var84 /* : CString */; +val* var85 /* : String */; +val* var86 /* : nullable Int */; +val* var87 /* : nullable Int */; +val* var88 /* : nullable Bool */; +val* var89 /* : nullable Bool */; +val* var90 /* : CodeWriter */; +val* var92 /* : CodeWriter */; +static val* varonce93; +val* var94 /* : String */; +char* var95 /* : CString */; +val* var96 /* : String */; +val* var97 /* : nullable Int */; +val* var98 /* : nullable Int */; +val* var99 /* : nullable Bool */; +val* var100 /* : 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; @@ -2338,228 +2704,290 @@ 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 box_kind; nitmethod_t vft[]; }; /* general C type representing a Nit class. */"; -var12 = core__flat___NativeString___to_s_full(var11, 97l, 97l); -var10 = var12; -varonce9 = var10; +var15 = "struct class { int box_kind; nitmethod_t vft[]; }; /* general C type representing a Nit class. */"; +var17 = (val*)(97l<<2|1); +var18 = (val*)(97l<<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 { int id; const char *name; int color; short int is_nullable; const struct types *resolution_table; int table_size; int type_table[]; }; /* general C type representing a Nit type. */"; -var19 = core__flat___NativeString___to_s_full(var18, 194l, 194l); -var17 = var19; -varonce16 = var17; +var26 = "struct type { int id; const char *name; int color; short int is_nullable; const struct types *resolution_table; int table_size; int type_table[]; }; /* general C type representing a Nit type. */"; +var28 = (val*)(194l<<2|1); +var29 = (val*)(194l<<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 instance { const struct type *type; const struct class *class; nitattribute_t attrs[]; }; /* general C type representing a Nit instance. */"; -var26 = core__flat___NativeString___to_s_full(var25, 146l, 146l); -var24 = var26; -varonce23 = var24; +var37 = "struct instance { const struct type *type; const struct class *class; nitattribute_t attrs[]; }; /* general C type representing a Nit instance. */"; +var39 = (val*)(146l<<2|1); +var40 = (val*)(146l<<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 types { int dummy; const struct type *types[]; }; /* a list types (used for vts, fts and unresolved lists). */"; -var33 = core__flat___NativeString___to_s_full(var32, 117l, 117l); -var31 = var33; -varonce30 = var31; +var48 = "struct types { int dummy; const struct type *types[]; }; /* a list types (used for vts, fts and unresolved lists). */"; +var50 = (val*)(117l<<2|1); +var51 = (val*)(117l<<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 val; /* general C type representing a Nit instance. */"; -var40 = core__flat___NativeString___to_s_full(var39, 78l, 78l); -var38 = var40; -varonce37 = var38; +var59 = "typedef struct instance val; /* general C type representing a Nit instance. */"; +var61 = (val*)(78l<<2|1); +var62 = (val*)(78l<<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 */ } { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ -var43 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ -if (unlikely(var43 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ +var67 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ +if (unlikely(var67 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } -var41 = var43; -RET_LABEL42:(void)0; +var65 = var67; +RET_LABEL66:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var41) on */ -var46 = var41->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var46 == NULL)) { +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var65) on */ +var70 = var65->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var70 == 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); } -var44 = var46; -RET_LABEL45:(void)0; +var68 = var70; +RET_LABEL69:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_no_tag_primitives (var44) on */ -var49 = var44->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_tag_primitives].val; /* _opt_no_tag_primitives on */ -if (unlikely(var49 == NULL)) { +{ /* Inline separate_compiler$ToolContext$opt_no_tag_primitives (var68) on */ +var73 = var68->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_tag_primitives].val; /* _opt_no_tag_primitives on */ +if (unlikely(var73 == 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); } -var47 = var49; -RET_LABEL48:(void)0; +var71 = var73; +RET_LABEL72:(void)0; } } { -{ /* Inline opts#Option#value (var47) on */ -var52 = var47->attrs[COLOR_opts__Option___value].val; /* _value on */ -var50 = var52; -RET_LABEL51:(void)0; +{ /* Inline opts$Option$value (var71) on */ +var76 = var71->attrs[COLOR_opts__Option___value].val; /* _value on */ +var74 = var76; +RET_LABEL75:(void)0; } } -var53 = (short int)((long)(var50)>>2); -var54 = !var53; -if (var54){ +var77 = (short int)((long)(var74)>>2); +var78 = !var77; +if (var78){ { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var57 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var57 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var81 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var81 == 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); } -var55 = var57; -RET_LABEL56:(void)0; +var79 = var81; +RET_LABEL80:(void)0; } } -if (likely(varonce58!=NULL)) { -var59 = varonce58; +if (likely(varonce82!=NULL)) { +var83 = varonce82; } else { -var60 = "extern const struct class *class_info[];"; -var61 = core__flat___NativeString___to_s_full(var60, 40l, 40l); -var59 = var61; -varonce58 = var59; +var84 = "extern const struct class *class_info[];"; +var86 = (val*)(40l<<2|1); +var87 = (val*)(40l<<2|1); +var88 = (val*)((long)(0)<<2|3); +var89 = (val*)((long)(0)<<2|3); +var85 = core__flat___CString___to_s_unsafe(var84, var86, var87, var88, var89); +var83 = var85; +varonce82 = var83; } { -nitc___nitc__CodeWriter___add_decl(var55, var59); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var79, var83); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var64 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var64 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var92 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var92 == 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); } -var62 = var64; -RET_LABEL63:(void)0; +var90 = var92; +RET_LABEL91:(void)0; } } -if (likely(varonce65!=NULL)) { -var66 = varonce65; +if (likely(varonce93!=NULL)) { +var94 = varonce93; } else { -var67 = "extern const struct type *type_info[];"; -var68 = core__flat___NativeString___to_s_full(var67, 38l, 38l); -var66 = var68; -varonce65 = var66; +var95 = "extern const struct type *type_info[];"; +var97 = (val*)(38l<<2|1); +var98 = (val*)(38l<<2|1); +var99 = (val*)((long)(0)<<2|3); +var100 = (val*)((long)(0)<<2|3); +var96 = core__flat___CString___to_s_unsafe(var95, var97, var98, var99, var100); +var94 = var96; +varonce93 = var94; } { -nitc___nitc__CodeWriter___add_decl(var62, var66); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var90, var94); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } } else { } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#compile_header_attribute_structs for (self: SeparateCompiler) */ +/* method separate_compiler$SeparateCompiler$compile_header_attribute_structs for (self: SeparateCompiler) */ void nitc___nitc__SeparateCompiler___compile_header_attribute_structs(val* self) { val* var /* : ModelBuilder */; val* var2 /* : ModelBuilder */; @@ -2574,70 +3002,101 @@ val* var13 /* : CodeWriter */; val* var15 /* : CodeWriter */; static val* varonce; val* var16 /* : String */; -char* var17 /* : NativeString */; +char* var17 /* : CString */; val* var18 /* : String */; -val* var19 /* : CodeWriter */; -val* var21 /* : CodeWriter */; -static val* varonce22; -val* var23 /* : String */; -char* var24 /* : NativeString */; -val* var25 /* : String */; -val* var26 /* : CodeWriter */; -val* var28 /* : CodeWriter */; -static val* varonce29; -val* var30 /* : String */; -char* var31 /* : NativeString */; -val* var32 /* : String */; -val* var33 /* : HashMap[MClass, Int] */; -val* var35 /* : HashMap[MClass, Int] */; +val* var19 /* : nullable Int */; +val* var20 /* : nullable Int */; +val* var21 /* : nullable Bool */; +val* var22 /* : nullable Bool */; +val* var23 /* : CodeWriter */; +val* var25 /* : CodeWriter */; +static val* varonce26; +val* var27 /* : String */; +char* var28 /* : CString */; +val* var29 /* : String */; +val* var30 /* : nullable Int */; +val* var31 /* : nullable Int */; +val* var32 /* : nullable Bool */; +val* var33 /* : nullable Bool */; +val* var34 /* : CodeWriter */; +val* var36 /* : CodeWriter */; +static val* varonce37; +val* var38 /* : String */; +char* var39 /* : CString */; +val* var40 /* : String */; +val* var41 /* : nullable Int */; +val* var42 /* : nullable Int */; +val* var43 /* : nullable Bool */; +val* var44 /* : nullable Bool */; +val* var45 /* : HashMap[MClass, Int] */; +val* var47 /* : HashMap[MClass, Int] */; val* var_ /* var : HashMap[MClass, Int] */; -val* var36 /* : MapIterator[nullable Object, nullable Object] */; -val* var_37 /* var : MapIterator[MClass, Int] */; -short int var38 /* : Bool */; -val* var39 /* : nullable Object */; +val* var48 /* : MapIterator[nullable Object, nullable Object] */; +val* var_49 /* var : MapIterator[MClass, Int] */; +short int var50 /* : Bool */; +val* var51 /* : nullable Object */; val* var_c /* var c: MClass */; -val* var40 /* : nullable Object */; -long var41 /* : Int */; +val* var52 /* : nullable Object */; +long var53 /* : Int */; long var_v /* var v: Int */; -val* var42 /* : MClassType */; -val* var44 /* : MClassType */; +val* var54 /* : MClassType */; +val* var56 /* : MClassType */; val* var_t /* var t: MClassType */; -val* var45 /* : MClass */; -val* var47 /* : MClass */; -val* var48 /* : String */; -val* var50 /* : String */; -static val* varonce51; -val* var52 /* : String */; -char* var53 /* : NativeString */; -val* var54 /* : String */; -short int var55 /* : Bool */; -val* var57 /* : CodeWriter */; -val* var59 /* : CodeWriter */; -val* var61 /* : NativeArray[String] */; -static val* varonce60; -static val* varonce62; -val* var63 /* : String */; -char* var64 /* : NativeString */; -val* var65 /* : String */; -static val* varonce66; -val* var67 /* : String */; -char* var68 /* : NativeString */; -val* var69 /* : String */; -val* var70 /* : String */; -val* var71 /* : String */; -val* var72 /* : String */; -val* var74 /* : CodeWriter */; -val* var76 /* : CodeWriter */; -static val* varonce77; -val* var78 /* : String */; -char* var79 /* : NativeString */; -val* var80 /* : String */; -{ -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ +val* var57 /* : MClass */; +val* var59 /* : MClass */; +val* var60 /* : String */; +val* var62 /* : String */; +static val* varonce63; +val* var64 /* : String */; +char* var65 /* : CString */; +val* var66 /* : String */; +val* var67 /* : nullable Int */; +val* var68 /* : nullable Int */; +val* var69 /* : nullable Bool */; +val* var70 /* : nullable Bool */; +short int var71 /* : Bool */; +val* var73 /* : CodeWriter */; +val* var75 /* : CodeWriter */; +val* var77 /* : NativeArray[String] */; +static val* varonce76; +static val* varonce78; +val* var79 /* : String */; +char* var80 /* : CString */; +val* var81 /* : String */; +val* var82 /* : nullable Int */; +val* var83 /* : nullable Int */; +val* var84 /* : nullable Bool */; +val* var85 /* : nullable Bool */; +static val* varonce86; +val* var87 /* : String */; +char* var88 /* : CString */; +val* var89 /* : String */; +val* var90 /* : nullable Int */; +val* var91 /* : nullable Int */; +val* var92 /* : nullable Bool */; +val* var93 /* : nullable Bool */; +val* var94 /* : String */; +val* var95 /* : String */; +val* var96 /* : String */; +val* var98 /* : CodeWriter */; +val* var100 /* : CodeWriter */; +static val* varonce101; +val* var102 /* : String */; +char* var103 /* : CString */; +val* var104 /* : String */; +val* var105 /* : nullable Int */; +val* var106 /* : nullable Int */; +val* var107 /* : nullable Bool */; +val* var108 /* : nullable Bool */; +{ +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ var2 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } var = var2; @@ -2645,9 +3104,12 @@ RET_LABEL1:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var) on */ +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var) on */ var5 = var->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ if (unlikely(var5 == 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); @@ -2657,9 +3119,12 @@ RET_LABEL4:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_no_union_attribute (var3) on */ +{ /* Inline separate_compiler$ToolContext$opt_no_union_attribute (var3) on */ var8 = var3->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_no_union_attribute].val; /* _opt_no_union_attribute on */ if (unlikely(var8 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_union_attribute"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 28); fatal_exit(1); @@ -2669,7 +3134,7 @@ RET_LABEL7:(void)0; } } { -{ /* Inline opts#Option#value (var6) on */ +{ /* Inline opts$Option$value (var6) on */ var11 = var6->attrs[COLOR_opts__Option___value].val; /* _value on */ var9 = var11; RET_LABEL10:(void)0; @@ -2678,11 +3143,14 @@ RET_LABEL10:(void)0; var12 = (short int)((long)(var9)>>2); if (var12){ { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ var15 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ if (unlikely(var15 == 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; @@ -2693,621 +3161,795 @@ if (likely(varonce!=NULL)) { var16 = varonce; } else { var17 = "typedef void* nitattribute_t; /* general C type representing a Nit attribute. */"; -var18 = core__flat___NativeString___to_s_full(var17, 80l, 80l); +var19 = (val*)(80l<<2|1); +var20 = (val*)(80l<<2|1); +var21 = (val*)((long)(0)<<2|3); +var22 = (val*)((long)(0)<<2|3); +var18 = core__flat___CString___to_s_unsafe(var17, var19, var20, var21, var22); var16 = var18; varonce = var16; } { -nitc___nitc__CodeWriter___add_decl(var13, var16); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var13, var16); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } } else { { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var21 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var21 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var25 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var25 == 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); } -var19 = var21; -RET_LABEL20:(void)0; +var23 = var25; +RET_LABEL24:(void)0; } } -if (likely(varonce22!=NULL)) { -var23 = varonce22; +if (likely(varonce26!=NULL)) { +var27 = varonce26; } else { -var24 = "typedef union {"; -var25 = core__flat___NativeString___to_s_full(var24, 15l, 15l); -var23 = var25; -varonce22 = var23; +var28 = "typedef union {"; +var30 = (val*)(15l<<2|1); +var31 = (val*)(15l<<2|1); +var32 = (val*)((long)(0)<<2|3); +var33 = (val*)((long)(0)<<2|3); +var29 = core__flat___CString___to_s_unsafe(var28, var30, var31, var32, var33); +var27 = var29; +varonce26 = var27; } { -nitc___nitc__CodeWriter___add_decl(var19, var23); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var23, var27); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var28 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var28 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var36 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var36 == 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); } -var26 = var28; -RET_LABEL27:(void)0; +var34 = var36; +RET_LABEL35:(void)0; } } -if (likely(varonce29!=NULL)) { -var30 = varonce29; +if (likely(varonce37!=NULL)) { +var38 = varonce37; } else { -var31 = "void* val;"; -var32 = core__flat___NativeString___to_s_full(var31, 10l, 10l); -var30 = var32; -varonce29 = var30; +var39 = "void* val;"; +var41 = (val*)(10l<<2|1); +var42 = (val*)(10l<<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; +varonce37 = var38; } { -nitc___nitc__CodeWriter___add_decl(var26, var30); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var34, var38); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } { -{ /* Inline separate_compiler#SeparateCompiler#box_kinds (self) on */ -var35 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ -if (unlikely(var35 == NULL)) { +{ /* Inline separate_compiler$SeparateCompiler$box_kinds (self) on */ +var47 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ +if (unlikely(var47 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _box_kinds"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 264); fatal_exit(1); } -var33 = var35; -RET_LABEL34:(void)0; +var45 = var47; +RET_LABEL46:(void)0; } } -var_ = var33; +var_ = var45; { -var36 = core___core__HashMap___core__abstract_collection__MapRead__iterator(var_); +var48 = core___core__HashMap___core__abstract_collection__MapRead__iterator(var_); } -var_37 = var36; +var_49 = var48; for(;;) { { -var38 = ((short int(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__MapIterator__is_ok]))(var_37); /* is_ok on */ +var50 = ((short int(*)(val* self))((((long)var_49&3)?class_info[((long)var_49&3)]:var_49->class)->vft[COLOR_core__abstract_collection__MapIterator__is_ok]))(var_49); /* is_ok on */ } -if (var38){ +if (var50){ } else { goto BREAK_label; } { -var39 = ((val*(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__MapIterator__key]))(var_37); /* key on */ +var51 = ((val*(*)(val* self))((((long)var_49&3)?class_info[((long)var_49&3)]:var_49->class)->vft[COLOR_core__abstract_collection__MapIterator__key]))(var_49); /* key on */ } -var_c = var39; +var_c = var51; { -var40 = ((val*(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__MapIterator__item]))(var_37); /* item on */ +var52 = ((val*(*)(val* self))((((long)var_49&3)?class_info[((long)var_49&3)]:var_49->class)->vft[COLOR_core__abstract_collection__MapIterator__item]))(var_49); /* item on */ } -var41 = (long)(var40)>>2; -var_v = var41; +var53 = (long)(var52)>>2; +var_v = var53; { -{ /* Inline model#MClass#mclass_type (var_c) on */ -var44 = var_c->attrs[COLOR_nitc__model__MClass___mclass_type].val; /* _mclass_type on */ -if (unlikely(var44 == NULL)) { +{ /* Inline model$MClass$mclass_type (var_c) on */ +var56 = var_c->attrs[COLOR_nitc__model__MClass___mclass_type].val; /* _mclass_type on */ +if (unlikely(var56 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 507); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 520); fatal_exit(1); } -var42 = var44; -RET_LABEL43:(void)0; +var54 = var56; +RET_LABEL55:(void)0; } } -var_t = var42; +var_t = var54; { -{ /* Inline model#MClassType#mclass (var_t) on */ -var47 = var_t->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ -if (unlikely(var47 == NULL)) { +{ /* Inline model$MClassType$mclass (var_t) on */ +var59 = var_t->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ +if (unlikely(var59 == 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); } -var45 = var47; -RET_LABEL46:(void)0; +var57 = var59; +RET_LABEL58:(void)0; } } { -{ /* Inline model#MClass#name (var45) on */ -var50 = var45->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ -if (unlikely(var50 == NULL)) { +{ /* Inline model$MClass$name (var57) on */ +var62 = var57->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ +if (unlikely(var62 == 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); } -var48 = var50; -RET_LABEL49:(void)0; -} +var60 = var62; +RET_LABEL61:(void)0; } -if (likely(varonce51!=NULL)) { -var52 = varonce51; +} +if (likely(varonce63!=NULL)) { +var64 = varonce63; } else { -var53 = "Pointer"; -var54 = core__flat___NativeString___to_s_full(var53, 7l, 7l); -var52 = var54; -varonce51 = var52; +var65 = "Pointer"; +var67 = (val*)(7l<<2|1); +var68 = (val*)(7l<<2|1); +var69 = (val*)((long)(0)<<2|3); +var70 = (val*)((long)(0)<<2|3); +var66 = core__flat___CString___to_s_unsafe(var65, var67, var68, var69, var70); +var64 = var66; +varonce63 = var64; } { -var55 = ((short int(*)(val* self, val* p0))(var48->class->vft[COLOR_core__kernel__Object___61d_61d]))(var48, var52); /* == on */ +var71 = ((short int(*)(val* self, val* p0))(var60->class->vft[COLOR_core__kernel__Object___61d_61d]))(var60, var64); /* == on */ } -if (var55){ -goto BREAK_label56; +if (var71){ +goto BREAK_label72; } else { } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var59 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var59 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var75 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var75 == 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); } -var57 = var59; -RET_LABEL58:(void)0; +var73 = var75; +RET_LABEL74:(void)0; } } -if (unlikely(varonce60==NULL)) { -var61 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce62!=NULL)) { -var63 = varonce62; +if (unlikely(varonce76==NULL)) { +var77 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); +if (likely(varonce78!=NULL)) { +var79 = varonce78; } else { -var64 = " "; -var65 = core__flat___NativeString___to_s_full(var64, 1l, 1l); -var63 = var65; -varonce62 = var63; +var80 = " "; +var82 = (val*)(1l<<2|1); +var83 = (val*)(1l<<2|1); +var84 = (val*)((long)(0)<<2|3); +var85 = (val*)((long)(0)<<2|3); +var81 = core__flat___CString___to_s_unsafe(var80, var82, var83, var84, var85); +var79 = var81; +varonce78 = var79; } -((struct instance_core__NativeArray*)var61)->values[1]=var63; -if (likely(varonce66!=NULL)) { -var67 = varonce66; +((struct instance_core__NativeArray*)var77)->values[1]=var79; +if (likely(varonce86!=NULL)) { +var87 = varonce86; } else { -var68 = ";"; -var69 = core__flat___NativeString___to_s_full(var68, 1l, 1l); -var67 = var69; -varonce66 = var67; +var88 = ";"; +var90 = (val*)(1l<<2|1); +var91 = (val*)(1l<<2|1); +var92 = (val*)((long)(0)<<2|3); +var93 = (val*)((long)(0)<<2|3); +var89 = core__flat___CString___to_s_unsafe(var88, var90, var91, var92, var93); +var87 = var89; +varonce86 = var87; } -((struct instance_core__NativeArray*)var61)->values[3]=var67; +((struct instance_core__NativeArray*)var77)->values[3]=var87; } else { -var61 = varonce60; -varonce60 = NULL; +var77 = varonce76; +varonce76 = NULL; } { -var70 = nitc__abstract_compiler___MClassType___MType__ctype_extern(var_t); +var94 = nitc__abstract_compiler___MClassType___MType__ctype_extern(var_t); } -((struct instance_core__NativeArray*)var61)->values[0]=var70; +((struct instance_core__NativeArray*)var77)->values[0]=var94; { -var71 = nitc__abstract_compiler___MClassType___MType__ctypename(var_t); +var95 = nitc__abstract_compiler___MClassType___MType__ctypename(var_t); } -((struct instance_core__NativeArray*)var61)->values[2]=var71; +((struct instance_core__NativeArray*)var77)->values[2]=var95; { -var72 = ((val*(*)(val* self))(var61->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var61); /* native_to_s on */ +var96 = ((val*(*)(val* self))(var77->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var77); /* native_to_s on */ } -varonce60 = var61; +varonce76 = var77; { -nitc___nitc__CodeWriter___add_decl(var57, var72); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var73, var96); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } -BREAK_label56: (void)0; +BREAK_label72: (void)0; { -((void(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var_37->class)->vft[COLOR_core__abstract_collection__MapIterator__next]))(var_37); /* next on */ +((void(*)(val* self))((((long)var_49&3)?class_info[((long)var_49&3)]:var_49->class)->vft[COLOR_core__abstract_collection__MapIterator__next]))(var_49); /* next on */ } } BREAK_label: (void)0; { -{ /* Inline abstract_collection#MapIterator#finish (var_37) on */ -RET_LABEL73:(void)0; +{ /* Inline abstract_collection$MapIterator$finish (var_49) on */ +RET_LABEL97:(void)0; } } { -{ /* Inline abstract_compiler#AbstractCompiler#header (self) on */ -var76 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ -if (unlikely(var76 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$header (self) on */ +var100 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___header].val; /* _header on */ +if (unlikely(var100 == 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); } -var74 = var76; -RET_LABEL75:(void)0; +var98 = var100; +RET_LABEL99:(void)0; } } -if (likely(varonce77!=NULL)) { -var78 = varonce77; +if (likely(varonce101!=NULL)) { +var102 = varonce101; } else { -var79 = "} nitattribute_t; /* general C type representing a Nit attribute. */"; -var80 = core__flat___NativeString___to_s_full(var79, 68l, 68l); -var78 = var80; -varonce77 = var78; +var103 = "} nitattribute_t; /* general C type representing a Nit attribute. */"; +var105 = (val*)(68l<<2|1); +var106 = (val*)(68l<<2|1); +var107 = (val*)((long)(0)<<2|3); +var108 = (val*)((long)(0)<<2|3); +var104 = core__flat___CString___to_s_unsafe(var103, var105, var106, var107, var108); +var102 = var104; +varonce101 = var102; } { -nitc___nitc__CodeWriter___add_decl(var74, var78); /* Direct call abstract_compiler#CodeWriter#add_decl on */ +nitc___nitc__CodeWriter___add_decl(var98, var102); /* Direct call abstract_compiler$CodeWriter$add_decl on */ } } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#compile_box_kinds for (self: SeparateCompiler) */ +/* method separate_compiler$SeparateCompiler$compile_box_kinds for (self: SeparateCompiler) */ void nitc___nitc__SeparateCompiler___compile_box_kinds(val* self) { val* var /* : Array[String] */; val* var_ /* var : Array[String] */; static val* varonce; val* var1 /* : String */; -char* var2 /* : NativeString */; +char* var2 /* : CString */; val* var3 /* : String */; -static val* varonce4; -val* var5 /* : String */; -char* var6 /* : NativeString */; -val* var7 /* : String */; +val* var4 /* : nullable Int */; +val* var5 /* : nullable Int */; +val* var6 /* : nullable Bool */; +val* var7 /* : nullable Bool */; static val* varonce8; val* var9 /* : String */; -char* var10 /* : NativeString */; +char* var10 /* : CString */; val* var11 /* : String */; -static val* varonce12; -val* var13 /* : String */; -char* var14 /* : NativeString */; -val* var15 /* : String */; +val* var12 /* : nullable Int */; +val* var13 /* : nullable Int */; +val* var14 /* : nullable Bool */; +val* var15 /* : nullable Bool */; static val* varonce16; val* var17 /* : String */; -char* var18 /* : NativeString */; +char* var18 /* : CString */; val* var19 /* : String */; -static val* varonce20; -val* var21 /* : String */; -char* var22 /* : NativeString */; -val* var23 /* : String */; +val* var20 /* : nullable Int */; +val* var21 /* : nullable Int */; +val* var22 /* : nullable Bool */; +val* var23 /* : nullable Bool */; static val* varonce24; val* var25 /* : String */; -char* var26 /* : NativeString */; +char* var26 /* : CString */; val* var27 /* : String */; -static val* varonce28; -val* var29 /* : String */; -char* var30 /* : NativeString */; -val* var31 /* : String */; +val* var28 /* : nullable Int */; +val* var29 /* : nullable Int */; +val* var30 /* : nullable Bool */; +val* var31 /* : nullable Bool */; static val* varonce32; val* var33 /* : String */; -char* var34 /* : NativeString */; +char* var34 /* : CString */; val* var35 /* : String */; -static val* varonce36; -val* var37 /* : String */; -char* var38 /* : NativeString */; -val* var39 /* : String */; +val* var36 /* : nullable Int */; +val* var37 /* : nullable Int */; +val* var38 /* : nullable Bool */; +val* var39 /* : nullable Bool */; static val* varonce40; val* var41 /* : String */; -char* var42 /* : NativeString */; +char* var42 /* : CString */; val* var43 /* : String */; -static val* varonce44; -val* var45 /* : String */; -char* var46 /* : NativeString */; -val* var47 /* : String */; -val* var_48 /* var : Array[String] */; -val* var49 /* : IndexedIterator[nullable Object] */; -val* var_50 /* var : IndexedIterator[String] */; -short int var51 /* : Bool */; -val* var52 /* : 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 */; +static val* varonce56; +val* var57 /* : String */; +char* var58 /* : CString */; +val* var59 /* : String */; +val* var60 /* : nullable Int */; +val* var61 /* : nullable Int */; +val* var62 /* : nullable Bool */; +val* var63 /* : nullable Bool */; +static val* varonce64; +val* var65 /* : String */; +char* var66 /* : CString */; +val* var67 /* : String */; +val* var68 /* : nullable Int */; +val* var69 /* : nullable Int */; +val* var70 /* : nullable Bool */; +val* var71 /* : nullable Bool */; +static val* varonce72; +val* var73 /* : String */; +char* var74 /* : CString */; +val* var75 /* : String */; +val* var76 /* : nullable Int */; +val* var77 /* : nullable Int */; +val* var78 /* : nullable Bool */; +val* var79 /* : nullable Bool */; +static val* varonce80; +val* var81 /* : String */; +char* var82 /* : CString */; +val* var83 /* : String */; +val* var84 /* : nullable Int */; +val* var85 /* : nullable Int */; +val* var86 /* : nullable Bool */; +val* var87 /* : nullable 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 */; +val* var_96 /* var : Array[String] */; +val* var97 /* : IndexedIterator[nullable Object] */; +val* var_98 /* var : IndexedIterator[String] */; +short int var99 /* : Bool */; +val* var100 /* : nullable Object */; val* var_classname /* var classname: String */; -val* var53 /* : MModule */; -val* var55 /* : MModule */; -val* var56 /* : Model */; -val* var58 /* : Model */; -val* var59 /* : nullable Array[MClass] */; +val* var101 /* : MModule */; +val* var103 /* : MModule */; +val* var104 /* : Model */; +val* var106 /* : Model */; +val* var107 /* : nullable Array[MClass] */; val* var_classes /* var classes: nullable Array[MClass] */; -short int var60 /* : Bool */; -short int var61 /* : Bool */; -long var63 /* : Int */; -long var65 /* : Int */; -short int var66 /* : Bool */; -short int var68 /* : Bool */; -val* var69 /* : Sys */; -static val* varonce70; -val* var71 /* : String */; -char* var72 /* : NativeString */; -val* var73 /* : String */; -val* var74 /* : String */; -val* var75 /* : HashMap[MClass, Int] */; -val* var77 /* : HashMap[MClass, Int] */; -val* var78 /* : nullable Object */; -val* var79 /* : HashMap[MClass, Int] */; -val* var81 /* : HashMap[MClass, Int] */; -long var82 /* : Int */; -long var83 /* : Int */; -short int var85 /* : Bool */; +short int var108 /* : Bool */; +short int var109 /* : Bool */; +long var111 /* : Int */; +long var113 /* : Int */; +short int var114 /* : Bool */; +short int var116 /* : Bool */; +val* var117 /* : Sys */; +static val* varonce118; +val* var119 /* : String */; +char* var120 /* : CString */; +val* var121 /* : String */; +val* var122 /* : nullable Int */; +val* var123 /* : nullable Int */; +val* var124 /* : nullable Bool */; +val* var125 /* : nullable Bool */; +val* var126 /* : String */; +val* var127 /* : HashMap[MClass, Int] */; +val* var129 /* : HashMap[MClass, Int] */; +val* var130 /* : nullable Object */; +val* var131 /* : HashMap[MClass, Int] */; +val* var133 /* : HashMap[MClass, Int] */; +long var134 /* : Int */; +long var135 /* : Int */; +short int var137 /* : Bool */; int cltype; int idtype; const char* var_class_name; -long var86 /* : Int */; -val* var87 /* : nullable Object */; +long var138 /* : Int */; +val* var139 /* : nullable Object */; var = NEW_core__Array(&type_core__Array__core__String); { -core___core__Array___with_capacity(var, 12l); /* Direct call array#Array#with_capacity on */ +core___core__Array___with_capacity(var, 12l); /* Direct call array$Array$with_capacity on */ } var_ = var; if (likely(varonce!=NULL)) { var1 = varonce; } else { var2 = "Int"; -var3 = core__flat___NativeString___to_s_full(var2, 3l, 3l); +var4 = (val*)(3l<<2|1); +var5 = (val*)(3l<<2|1); +var6 = (val*)((long)(0)<<2|3); +var7 = (val*)((long)(0)<<2|3); +var3 = core__flat___CString___to_s_unsafe(var2, var4, var5, var6, var7); var1 = var3; varonce = var1; } { -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var1); /* Direct call array#AbstractArray#push on */ -} -if (likely(varonce4!=NULL)) { -var5 = varonce4; -} else { -var6 = "Bool"; -var7 = core__flat___NativeString___to_s_full(var6, 4l, 4l); -var5 = var7; -varonce4 = var5; -} -{ -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var5); /* Direct call array#AbstractArray#push on */ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var1); /* Direct call array$AbstractArray$push on */ } if (likely(varonce8!=NULL)) { var9 = varonce8; } else { -var10 = "Byte"; -var11 = core__flat___NativeString___to_s_full(var10, 4l, 4l); +var10 = "Bool"; +var12 = (val*)(4l<<2|1); +var13 = (val*)(4l<<2|1); +var14 = (val*)((long)(0)<<2|3); +var15 = (val*)((long)(0)<<2|3); +var11 = core__flat___CString___to_s_unsafe(var10, var12, var13, var14, var15); var9 = var11; varonce8 = var9; } { -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var9); /* Direct call array#AbstractArray#push on */ -} -if (likely(varonce12!=NULL)) { -var13 = varonce12; -} else { -var14 = "Char"; -var15 = core__flat___NativeString___to_s_full(var14, 4l, 4l); -var13 = var15; -varonce12 = var13; -} -{ -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var13); /* Direct call array#AbstractArray#push on */ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var9); /* Direct call array$AbstractArray$push on */ } if (likely(varonce16!=NULL)) { var17 = varonce16; } else { -var18 = "Float"; -var19 = core__flat___NativeString___to_s_full(var18, 5l, 5l); +var18 = "Byte"; +var20 = (val*)(4l<<2|1); +var21 = (val*)(4l<<2|1); +var22 = (val*)((long)(0)<<2|3); +var23 = (val*)((long)(0)<<2|3); +var19 = core__flat___CString___to_s_unsafe(var18, var20, var21, var22, var23); var17 = var19; varonce16 = var17; } { -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var17); /* Direct call array#AbstractArray#push on */ -} -if (likely(varonce20!=NULL)) { -var21 = varonce20; -} else { -var22 = "NativeString"; -var23 = core__flat___NativeString___to_s_full(var22, 12l, 12l); -var21 = var23; -varonce20 = var21; -} -{ -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var21); /* Direct call array#AbstractArray#push on */ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var17); /* Direct call array$AbstractArray$push on */ } if (likely(varonce24!=NULL)) { var25 = varonce24; } else { -var26 = "Pointer"; -var27 = core__flat___NativeString___to_s_full(var26, 7l, 7l); +var26 = "Char"; +var28 = (val*)(4l<<2|1); +var29 = (val*)(4l<<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; } { -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var25); /* Direct call array#AbstractArray#push on */ -} -if (likely(varonce28!=NULL)) { -var29 = varonce28; -} else { -var30 = "Int8"; -var31 = core__flat___NativeString___to_s_full(var30, 4l, 4l); -var29 = var31; -varonce28 = var29; -} -{ -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var29); /* Direct call array#AbstractArray#push on */ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var25); /* Direct call array$AbstractArray$push on */ } if (likely(varonce32!=NULL)) { var33 = varonce32; } else { -var34 = "Int16"; -var35 = core__flat___NativeString___to_s_full(var34, 5l, 5l); +var34 = "Float"; +var36 = (val*)(5l<<2|1); +var37 = (val*)(5l<<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; } { -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var33); /* Direct call array#AbstractArray#push on */ -} -if (likely(varonce36!=NULL)) { -var37 = varonce36; -} else { -var38 = "UInt16"; -var39 = core__flat___NativeString___to_s_full(var38, 6l, 6l); -var37 = var39; -varonce36 = var37; -} -{ -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var37); /* Direct call array#AbstractArray#push on */ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var33); /* Direct call array$AbstractArray$push on */ } if (likely(varonce40!=NULL)) { var41 = varonce40; } else { -var42 = "Int32"; -var43 = core__flat___NativeString___to_s_full(var42, 5l, 5l); +var42 = "CString"; +var44 = (val*)(7l<<2|1); +var45 = (val*)(7l<<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; } { -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var41); /* Direct call array#AbstractArray#push on */ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var41); /* Direct call array$AbstractArray$push on */ } -if (likely(varonce44!=NULL)) { -var45 = varonce44; +if (likely(varonce48!=NULL)) { +var49 = varonce48; } else { -var46 = "UInt32"; -var47 = core__flat___NativeString___to_s_full(var46, 6l, 6l); -var45 = var47; -varonce44 = var45; +var50 = "Pointer"; +var52 = (val*)(7l<<2|1); +var53 = (val*)(7l<<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; +} +{ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var49); /* Direct call array$AbstractArray$push on */ +} +if (likely(varonce56!=NULL)) { +var57 = varonce56; +} else { +var58 = "Int8"; +var60 = (val*)(4l<<2|1); +var61 = (val*)(4l<<2|1); +var62 = (val*)((long)(0)<<2|3); +var63 = (val*)((long)(0)<<2|3); +var59 = core__flat___CString___to_s_unsafe(var58, var60, var61, var62, var63); +var57 = var59; +varonce56 = var57; } { -core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var45); /* Direct call array#AbstractArray#push on */ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var57); /* Direct call array$AbstractArray$push on */ } -var_48 = var_; +if (likely(varonce64!=NULL)) { +var65 = varonce64; +} else { +var66 = "Int16"; +var68 = (val*)(5l<<2|1); +var69 = (val*)(5l<<2|1); +var70 = (val*)((long)(0)<<2|3); +var71 = (val*)((long)(0)<<2|3); +var67 = core__flat___CString___to_s_unsafe(var66, var68, var69, var70, var71); +var65 = var67; +varonce64 = var65; +} +{ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var65); /* Direct call array$AbstractArray$push on */ +} +if (likely(varonce72!=NULL)) { +var73 = varonce72; +} else { +var74 = "UInt16"; +var76 = (val*)(6l<<2|1); +var77 = (val*)(6l<<2|1); +var78 = (val*)((long)(0)<<2|3); +var79 = (val*)((long)(0)<<2|3); +var75 = core__flat___CString___to_s_unsafe(var74, var76, var77, var78, var79); +var73 = var75; +varonce72 = var73; +} +{ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var73); /* Direct call array$AbstractArray$push on */ +} +if (likely(varonce80!=NULL)) { +var81 = varonce80; +} else { +var82 = "Int32"; +var84 = (val*)(5l<<2|1); +var85 = (val*)(5l<<2|1); +var86 = (val*)((long)(0)<<2|3); +var87 = (val*)((long)(0)<<2|3); +var83 = core__flat___CString___to_s_unsafe(var82, var84, var85, var86, var87); +var81 = var83; +varonce80 = var81; +} +{ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var81); /* Direct call array$AbstractArray$push on */ +} +if (likely(varonce88!=NULL)) { +var89 = varonce88; +} else { +var90 = "UInt32"; +var92 = (val*)(6l<<2|1); +var93 = (val*)(6l<<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; +} +{ +core___core__AbstractArray___core__abstract_collection__Sequence__push(var_, var89); /* Direct call array$AbstractArray$push on */ +} +var_96 = var_; { -var49 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_48); +var97 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_96); } -var_50 = var49; +var_98 = var97; for(;;) { { -var51 = ((short int(*)(val* self))((((long)var_50&3)?class_info[((long)var_50&3)]:var_50->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_50); /* is_ok on */ +var99 = ((short int(*)(val* self))((((long)var_98&3)?class_info[((long)var_98&3)]:var_98->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_98); /* is_ok on */ } -if (var51){ +if (var99){ } else { goto BREAK_label; } { -var52 = ((val*(*)(val* self))((((long)var_50&3)?class_info[((long)var_50&3)]:var_50->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_50); /* item on */ +var100 = ((val*(*)(val* self))((((long)var_98&3)?class_info[((long)var_98&3)]:var_98->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_98); /* item on */ } -var_classname = var52; +var_classname = var100; { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ -var55 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ -if (unlikely(var55 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ +var103 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ +if (unlikely(var103 == 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); } -var53 = var55; -RET_LABEL54:(void)0; +var101 = var103; +RET_LABEL102:(void)0; } } { -{ /* Inline mmodule#MModule#model (var53) on */ -var58 = var53->attrs[COLOR_nitc__mmodule__MModule___model].val; /* _model on */ -if (unlikely(var58 == NULL)) { +{ /* Inline mmodule$MModule$model (var101) on */ +var106 = var101->attrs[COLOR_nitc__mmodule__MModule___model].val; /* _model on */ +if (unlikely(var106 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 78); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 77); fatal_exit(1); } -var56 = var58; -RET_LABEL57:(void)0; +var104 = var106; +RET_LABEL105:(void)0; } } { -var59 = nitc__model___Model___get_mclasses_by_name(var56, var_classname); +var107 = nitc__model___Model___get_mclasses_by_name(var104, var_classname); } -var_classes = var59; +var_classes = var107; if (var_classes == NULL) { -var60 = 1; /* is null */ +var108 = 1; /* is null */ } else { -var60 = 0; /* arg is null but recv is not */ +var108 = 0; /* arg is null but recv is not */ } if (0) { -var61 = core___core__Array___core__kernel__Object___61d_61d(var_classes, ((val*)NULL)); -var60 = var61; +var109 = core___core__Array___core__kernel__Object___61d_61d(var_classes, ((val*)NULL)); +var108 = var109; } -if (var60){ -goto BREAK_label62; +if (var108){ +goto BREAK_label110; } else { } { -{ /* Inline array#AbstractArrayRead#length (var_classes) on */ -var65 = var_classes->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ -var63 = var65; -RET_LABEL64:(void)0; +{ /* Inline array$AbstractArrayRead$length (var_classes) on */ +var113 = var_classes->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ +var111 = var113; +RET_LABEL112:(void)0; } } { -{ /* Inline kernel#Int#== (var63,1l) on */ -var68 = var63 == 1l; -var66 = var68; -goto RET_LABEL67; -RET_LABEL67:(void)0; +{ /* Inline kernel$Int$== (var111,1l) on */ +var116 = var111 == 1l; +var114 = var116; +goto RET_LABEL115; +RET_LABEL115:(void)0; } } -if (unlikely(!var66)) { -var69 = glob_sys; -if (likely(varonce70!=NULL)) { -var71 = varonce70; +if (unlikely(!var114)) { +var117 = glob_sys; +if (likely(varonce118!=NULL)) { +var119 = varonce118; } else { -var72 = ", "; -var73 = core__flat___NativeString___to_s_full(var72, 2l, 2l); -var71 = var73; -varonce70 = var71; +var120 = ", "; +var122 = (val*)(2l<<2|1); +var123 = (val*)(2l<<2|1); +var124 = (val*)((long)(0)<<2|3); +var125 = (val*)((long)(0)<<2|3); +var121 = core__flat___CString___to_s_unsafe(var120, var122, var123, var124, var125); +var119 = var121; +varonce118 = var119; } { -var74 = core__abstract_text___Collection___join(var_classes, var71); +var126 = core__abstract_text___Collection___join(var_classes, var119, ((val*)NULL)); } { -core__file___Sys___print(var69, var74); /* Direct call file#Sys#print on */ +core__file___Sys___print_error(var117, var126); /* Direct call file$Sys$print_error on */ +} +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); } PRINT_ERROR("Runtime error: %s", "Assert failed"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 259); fatal_exit(1); } { -{ /* Inline separate_compiler#SeparateCompiler#box_kinds (self) on */ -var77 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ -if (unlikely(var77 == NULL)) { +{ /* Inline separate_compiler$SeparateCompiler$box_kinds (self) on */ +var129 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ +if (unlikely(var129 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _box_kinds"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 264); fatal_exit(1); } -var75 = var77; -RET_LABEL76:(void)0; +var127 = var129; +RET_LABEL128:(void)0; } } { -var78 = core___core__SequenceRead___Collection__first(var_classes); +var130 = core___core__SequenceRead___Collection__first(var_classes); } { -{ /* Inline separate_compiler#SeparateCompiler#box_kinds (self) on */ -var81 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ -if (unlikely(var81 == NULL)) { +{ /* Inline separate_compiler$SeparateCompiler$box_kinds (self) on */ +var133 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ +if (unlikely(var133 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _box_kinds"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 264); fatal_exit(1); } -var79 = var81; -RET_LABEL80:(void)0; +var131 = var133; +RET_LABEL132:(void)0; } } { -var82 = core___core__HashMap___core__abstract_collection__MapRead__length(var79); +var134 = core___core__HashMap___core__abstract_collection__MapRead__length(var131); } { -{ /* Inline kernel#Int#+ (var82,1l) on */ +{ /* Inline kernel$Int$+ (var134,1l) on */ /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */ /* <1l:Int> isa OTHER */ -var85 = 1; /* easy <1l:Int> isa OTHER*/ -if (unlikely(!var85)) { +var137 = 1; /* easy <1l:Int> isa OTHER*/ +if (unlikely(!var137)) { 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); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728); fatal_exit(1); } -var86 = var82 + 1l; -var83 = var86; -goto RET_LABEL84; -RET_LABEL84:(void)0; +var138 = var134 + 1l; +var135 = var138; +goto RET_LABEL136; +RET_LABEL136:(void)0; } } { -var87 = (val*)(var83<<2|1); -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var75, var78, var87); /* Direct call hash_collection#HashMap#[]= on */ +var139 = (val*)(var135<<2|1); +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var127, var130, var139); /* Direct call hash_collection$HashMap$[]= on */ } -BREAK_label62: (void)0; +BREAK_label110: (void)0; { -((void(*)(val* self))((((long)var_50&3)?class_info[((long)var_50&3)]:var_50->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_50); /* next on */ +((void(*)(val* self))((((long)var_98&3)?class_info[((long)var_98&3)]:var_98->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_98); /* next on */ } } BREAK_label: (void)0; { -((void(*)(val* self))((((long)var_50&3)?class_info[((long)var_50&3)]:var_50->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_50); /* finish on */ +((void(*)(val* self))((((long)var_98&3)?class_info[((long)var_98&3)]:var_98->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_98); /* finish on */ } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#box_kinds for (self: SeparateCompiler): HashMap[MClass, Int] */ +/* method separate_compiler$SeparateCompiler$box_kinds for (self: SeparateCompiler): HashMap[MClass, Int] */ val* nitc___nitc__SeparateCompiler___box_kinds(val* self) { val* var /* : HashMap[MClass, Int] */; val* var1 /* : HashMap[MClass, Int] */; var1 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _box_kinds"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 264); fatal_exit(1); @@ -3316,7 +3958,7 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#box_kind_of for (self: SeparateCompiler, MClass): Int */ +/* method separate_compiler$SeparateCompiler$box_kind_of for (self: SeparateCompiler, MClass): Int */ long nitc___nitc__SeparateCompiler___box_kind_of(val* self, val* p0) { long var /* : Int */; val* var_mclass /* var mclass: MClass */; @@ -3325,49 +3967,60 @@ val* var3 /* : MClassType */; val* var4 /* : String */; static val* varonce; val* var5 /* : String */; -char* var6 /* : NativeString */; +char* var6 /* : CString */; val* var7 /* : String */; -short int var8 /* : Bool */; -short int var9 /* : Bool */; -val* var10 /* : MClassKind */; -val* var12 /* : MClassKind */; -val* var13 /* : Sys */; +val* var8 /* : nullable Int */; +val* var9 /* : nullable Int */; +val* var10 /* : nullable Bool */; +val* var11 /* : nullable Bool */; +short int var12 /* : Bool */; +short int var13 /* : Bool */; val* var14 /* : MClassKind */; -short int var15 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var17 /* : Bool */; +val* var16 /* : MClassKind */; +val* var17 /* : Sys */; +val* var18 /* : MClassKind */; short int var19 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var21 /* : Bool */; +short int var23 /* : Bool */; short int var_ /* var : Bool */; -val* var20 /* : String */; -val* var22 /* : String */; -static val* varonce23; val* var24 /* : String */; -char* var25 /* : NativeString */; val* var26 /* : String */; -short int var27 /* : Bool */; -val* var_other29 /* var other: nullable Object */; -short int var30 /* : Bool */; -short int var31 /* : Bool */; -val* var32 /* : HashMap[MClass, Int] */; -val* var34 /* : HashMap[MClass, Int] */; -val* var35 /* : MModule */; -val* var37 /* : MModule */; -val* var38 /* : MClassType */; -val* var39 /* : MClass */; -val* var41 /* : MClass */; -val* var42 /* : nullable Object */; -long var43 /* : Int */; -val* var44 /* : HashMap[MClass, Int] */; -val* var46 /* : HashMap[MClass, Int] */; -val* var47 /* : nullable Object */; -long var48 /* : Int */; +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 */; +short int var35 /* : Bool */; +val* var_other37 /* var other: nullable Object */; +short int var38 /* : Bool */; +short int var39 /* : Bool */; +val* var40 /* : HashMap[MClass, Int] */; +val* var42 /* : HashMap[MClass, Int] */; +val* var43 /* : MModule */; +val* var45 /* : MModule */; +val* var46 /* : MClassType */; +val* var47 /* : MClass */; +val* var49 /* : MClass */; +val* var50 /* : nullable Object */; +long var51 /* : Int */; +val* var52 /* : HashMap[MClass, Int] */; +val* var54 /* : HashMap[MClass, Int] */; +val* var55 /* : nullable Object */; +long var56 /* : Int */; var_mclass = p0; { -{ /* Inline model#MClass#mclass_type (var_mclass) on */ +{ /* Inline model$MClass$mclass_type (var_mclass) on */ var3 = var_mclass->attrs[COLOR_nitc__model__MClass___mclass_type].val; /* _mclass_type on */ if (unlikely(var3 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 507); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 520); fatal_exit(1); } var1 = var3; @@ -3381,158 +4034,184 @@ if (likely(varonce!=NULL)) { var5 = varonce; } else { var6 = "val*"; -var7 = core__flat___NativeString___to_s_full(var6, 4l, 4l); +var8 = (val*)(4l<<2|1); +var9 = (val*)(4l<<2|1); +var10 = (val*)((long)(0)<<2|3); +var11 = (val*)((long)(0)<<2|3); +var7 = core__flat___CString___to_s_unsafe(var6, var8, var9, var10, var11); var5 = var7; varonce = var5; } { -var8 = ((short int(*)(val* self, val* p0))(var4->class->vft[COLOR_core__kernel__Object___61d_61d]))(var4, var5); /* == on */ +var12 = ((short int(*)(val* self, val* p0))(var4->class->vft[COLOR_core__kernel__Object___61d_61d]))(var4, var5); /* == on */ } -if (var8){ +if (var12){ var = 0l; goto RET_LABEL; } else { { -{ /* Inline model#MClass#kind (var_mclass) on */ -var12 = var_mclass->attrs[COLOR_nitc__model__MClass___kind].val; /* _kind on */ -if (unlikely(var12 == NULL)) { +{ /* Inline model$MClass$kind (var_mclass) on */ +var16 = var_mclass->attrs[COLOR_nitc__model__MClass___kind].val; /* _kind on */ +if (unlikely(var16 == 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); } -var10 = var12; -RET_LABEL11:(void)0; +var14 = var16; +RET_LABEL15:(void)0; } } -var13 = glob_sys; +var17 = glob_sys; { -var14 = nitc__model___core__Sys___extern_kind(var13); +var18 = nitc__model___core__Sys___extern_kind(var17); } { -{ /* Inline kernel#Object#== (var10,var14) on */ -var_other = var14; +{ /* Inline kernel$Object$== (var14,var18) on */ +var_other = var18; { -{ /* Inline kernel#Object#is_same_instance (var10,var_other) on */ -var19 = var10 == var_other; -var17 = var19; -goto RET_LABEL18; -RET_LABEL18:(void)0; +{ /* Inline kernel$Object$is_same_instance (var14,var_other) on */ +var23 = var14 == var_other; +var21 = var23; +goto RET_LABEL22; +RET_LABEL22:(void)0; } } -var15 = var17; -goto RET_LABEL16; -RET_LABEL16:(void)0; +var19 = var21; +goto RET_LABEL20; +RET_LABEL20:(void)0; } } -var_ = var15; -if (var15){ +var_ = var19; +if (var19){ { -{ /* Inline model#MClass#name (var_mclass) on */ -var22 = var_mclass->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ -if (unlikely(var22 == NULL)) { +{ /* Inline model$MClass$name (var_mclass) on */ +var26 = var_mclass->attrs[COLOR_nitc__model__MClass___name].val; /* _name on */ +if (unlikely(var26 == 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); } -var20 = var22; -RET_LABEL21:(void)0; +var24 = var26; +RET_LABEL25:(void)0; } } -if (likely(varonce23!=NULL)) { -var24 = varonce23; +if (likely(varonce27!=NULL)) { +var28 = varonce27; } else { -var25 = "NativeString"; -var26 = core__flat___NativeString___to_s_full(var25, 12l, 12l); -var24 = var26; -varonce23 = var24; +var29 = "CString"; +var31 = (val*)(7l<<2|1); +var32 = (val*)(7l<<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; } { -{ /* Inline kernel#Object#!= (var20,var24) on */ -var_other29 = var24; +{ /* Inline kernel$Object$!= (var24,var28) on */ +var_other37 = var28; { -var30 = ((short int(*)(val* self, val* p0))(var20->class->vft[COLOR_core__kernel__Object___61d_61d]))(var20, var_other29); /* == on */ +var38 = ((short int(*)(val* self, val* p0))(var24->class->vft[COLOR_core__kernel__Object___61d_61d]))(var24, var_other37); /* == on */ } -var31 = !var30; -var27 = var31; -goto RET_LABEL28; -RET_LABEL28:(void)0; +var39 = !var38; +var35 = var39; +goto RET_LABEL36; +RET_LABEL36:(void)0; } } -var9 = var27; +var13 = var35; } else { -var9 = var_; +var13 = var_; } -if (var9){ +if (var13){ { -{ /* Inline separate_compiler#SeparateCompiler#box_kinds (self) on */ -var34 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ -if (unlikely(var34 == NULL)) { +{ /* Inline separate_compiler$SeparateCompiler$box_kinds (self) on */ +var42 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ +if (unlikely(var42 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _box_kinds"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 264); fatal_exit(1); } -var32 = var34; -RET_LABEL33:(void)0; +var40 = var42; +RET_LABEL41:(void)0; } } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ -var37 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ -if (unlikely(var37 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ +var45 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ +if (unlikely(var45 == 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); } -var35 = var37; -RET_LABEL36:(void)0; +var43 = var45; +RET_LABEL44:(void)0; } } { -var38 = nitc__model___MModule___pointer_type(var35); +var46 = nitc__model___MModule___pointer_type(var43); } { -{ /* Inline model#MClassType#mclass (var38) on */ -var41 = var38->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ -if (unlikely(var41 == NULL)) { +{ /* Inline model$MClassType$mclass (var46) on */ +var49 = var46->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ +if (unlikely(var49 == 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); } -var39 = var41; -RET_LABEL40:(void)0; +var47 = var49; +RET_LABEL48:(void)0; } } { -var42 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var32, var39); +var50 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var40, var47); } -var43 = (long)(var42)>>2; -var = var43; +var51 = (long)(var50)>>2; +var = var51; goto RET_LABEL; } else { { -{ /* Inline separate_compiler#SeparateCompiler#box_kinds (self) on */ -var46 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ -if (unlikely(var46 == NULL)) { +{ /* Inline separate_compiler$SeparateCompiler$box_kinds (self) on */ +var54 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds].val; /* _box_kinds on */ +if (unlikely(var54 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _box_kinds"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 264); fatal_exit(1); } -var44 = var46; -RET_LABEL45:(void)0; +var52 = var54; +RET_LABEL53:(void)0; } } { -var47 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var44, var_mclass); +var55 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var52, var_mclass); } -var48 = (long)(var47)>>2; -var = var48; +var56 = (long)(var55)>>2; +var = var56; goto RET_LABEL; } } RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#compile_color_consts for (self: SeparateCompiler, Map[Object, Int]) */ +/* method separate_compiler$SeparateCompiler$compile_color_consts for (self: SeparateCompiler, Map[Object, Int]) */ void nitc___nitc__SeparateCompiler___compile_color_consts(val* self, val* p0) { val* var_colors /* var colors: Map[Object, Int] */; val* var /* : AbstractCompilerVisitor */; @@ -3574,7 +4253,7 @@ var5 = ((val*(*)(val* self))((((long)var_2&3)?class_info[((long)var_2&3)]:var_2- var6 = (long)(var5)>>2; var_c = var6; { -nitc___nitc__SeparateCompiler___compile_color_const(self, var_v, var_m, var_c); /* Direct call separate_compiler#SeparateCompiler#compile_color_const on */ +nitc___nitc__SeparateCompiler___compile_color_const(self, var_v, var_m, var_c); /* Direct call separate_compiler$SeparateCompiler$compile_color_const on */ } { ((void(*)(val* self))((((long)var_2&3)?class_info[((long)var_2&3)]:var_2->class)->vft[COLOR_core__abstract_collection__MapIterator__next]))(var_2); /* next on */ @@ -3582,13 +4261,13 @@ nitc___nitc__SeparateCompiler___compile_color_const(self, var_v, var_m, var_c); } BREAK_label: (void)0; { -{ /* Inline abstract_collection#MapIterator#finish (var_2) on */ +{ /* Inline abstract_collection$MapIterator$finish (var_2) on */ RET_LABEL7:(void)0; } } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#compile_color_const for (self: SeparateCompiler, SeparateCompilerVisitor, Object, Int) */ +/* method separate_compiler$SeparateCompiler$compile_color_const for (self: SeparateCompiler, SeparateCompilerVisitor, Object, Int) */ void nitc___nitc__SeparateCompiler___compile_color_const(val* self, val* p0, val* p1, long p2) { val* var_v /* var v: SeparateCompilerVisitor */; val* var_m /* var m: Object */; @@ -3613,118 +4292,177 @@ val* var19 /* : NativeArray[String] */; static val* varonce; static val* varonce20; val* var21 /* : String */; -char* var22 /* : NativeString */; +char* var22 /* : CString */; val* var23 /* : String */; -static val* varonce24; -val* var25 /* : String */; -char* var26 /* : NativeString */; -val* var27 /* : String */; -val* var28 /* : String */; +val* var24 /* : nullable Int */; +val* var25 /* : nullable Int */; +val* var26 /* : nullable Bool */; +val* var27 /* : nullable Bool */; +static val* varonce28; val* var29 /* : String */; -val* var30 /* : String */; -short int var31 /* : Bool */; -val* var32 /* : ModelBuilder */; -val* var34 /* : ModelBuilder */; -val* var35 /* : ToolContext */; -val* var37 /* : ToolContext */; -val* var38 /* : OptionBool */; -val* var40 /* : OptionBool */; -val* var41 /* : nullable Object */; -val* var43 /* : nullable Object */; -short int var44 /* : Bool */; -short int var45 /* : Bool */; -short int var_ /* var : Bool */; -val* var46 /* : AbstractCompiler */; -val* var48 /* : AbstractCompiler */; -val* var49 /* : Platform */; -val* var51 /* : Platform */; -short int var52 /* : Bool */; -short int var53 /* : Bool */; -val* var54 /* : String */; -val* var56 /* : NativeArray[String] */; -static val* varonce55; -static val* varonce57; -val* var58 /* : String */; -char* var59 /* : NativeString */; -val* var60 /* : String */; -static val* varonce61; +char* var30 /* : CString */; +val* var31 /* : String */; +val* var32 /* : nullable Int */; +val* var33 /* : nullable Int */; +val* var34 /* : nullable Bool */; +val* var35 /* : nullable Bool */; +val* var36 /* : String */; +val* var37 /* : String */; +val* var38 /* : String */; +short int var39 /* : Bool */; +val* var40 /* : ModelBuilder */; +val* var42 /* : ModelBuilder */; +val* var43 /* : ToolContext */; +val* var45 /* : ToolContext */; +val* var46 /* : OptionBool */; +val* var48 /* : OptionBool */; +val* var49 /* : nullable Object */; +val* var51 /* : nullable Object */; +short int var52 /* : Bool */; +short int var53 /* : Bool */; +short int var_ /* var : Bool */; +val* var54 /* : AbstractCompiler */; +val* var56 /* : AbstractCompiler */; +val* var57 /* : Platform */; +val* var59 /* : Platform */; +short int var60 /* : Bool */; +short int var61 /* : Bool */; val* var62 /* : String */; -char* var63 /* : NativeString */; -val* var64 /* : String */; -val* var65 /* : String */; +val* var64 /* : NativeArray[String] */; +static val* varonce63; +static val* varonce65; val* var66 /* : String */; -val* var68 /* : NativeArray[String] */; -static val* varonce67; -static val* varonce69; -val* var70 /* : String */; -char* var71 /* : NativeString */; -val* var72 /* : String */; +char* var67 /* : CString */; +val* var68 /* : String */; +val* var69 /* : nullable Int */; +val* var70 /* : nullable Int */; +val* var71 /* : nullable Bool */; +val* var72 /* : nullable Bool */; static val* varonce73; val* var74 /* : String */; -char* var75 /* : NativeString */; +char* var75 /* : CString */; val* var76 /* : String */; -static val* varonce77; -val* var78 /* : String */; -char* var79 /* : NativeString */; -val* var80 /* : String */; +val* var77 /* : nullable Int */; +val* var78 /* : nullable Int */; +val* var79 /* : nullable Bool */; +val* var80 /* : nullable Bool */; val* var81 /* : String */; val* var82 /* : String */; -val* var83 /* : String */; -val* var84 /* : String */; -val* var86 /* : NativeArray[String] */; +val* var84 /* : NativeArray[String] */; +static val* varonce83; static val* varonce85; -static val* varonce87; +val* var86 /* : String */; +char* var87 /* : CString */; val* var88 /* : String */; -char* var89 /* : NativeString */; -val* var90 /* : String */; -static val* varonce91; -val* var92 /* : String */; -char* var93 /* : NativeString */; +val* var89 /* : nullable Int */; +val* var90 /* : nullable Int */; +val* var91 /* : nullable Bool */; +val* var92 /* : nullable Bool */; +static val* varonce93; val* var94 /* : String */; -static val* varonce95; +char* var95 /* : CString */; val* var96 /* : String */; -char* var97 /* : NativeString */; -val* var98 /* : String */; -static val* varonce99; -val* var100 /* : String */; -char* var101 /* : NativeString */; +val* var97 /* : nullable Int */; +val* var98 /* : nullable Int */; +val* var99 /* : nullable Bool */; +val* var100 /* : nullable Bool */; +static val* varonce101; val* var102 /* : String */; -val* var103 /* : String */; +char* var103 /* : CString */; val* var104 /* : String */; -val* var105 /* : String */; -val* var106 /* : String */; -long var107 /* : Int */; -long var109 /* : Int */; -short int var110 /* : Bool */; -short int var112 /* : Bool */; -val* var113 /* : Array[String] */; -val* var115 /* : Array[String] */; -val* var117 /* : NativeArray[String] */; -static val* varonce116; -static val* varonce118; -val* var119 /* : String */; -char* var120 /* : NativeString */; -val* var121 /* : String */; -static val* varonce122; -val* var123 /* : String */; -char* var124 /* : NativeString */; -val* var125 /* : String */; -static val* varonce126; -val* var127 /* : String */; -char* var128 /* : NativeString */; -val* var129 /* : String */; -val* var130 /* : String */; -val* var131 /* : String */; +val* var105 /* : nullable Int */; +val* var106 /* : nullable Int */; +val* var107 /* : nullable Bool */; +val* var108 /* : nullable Bool */; +val* var109 /* : String */; +val* var110 /* : String */; +val* var111 /* : String */; +val* var112 /* : String */; +val* var114 /* : NativeArray[String] */; +static val* varonce113; +static val* varonce115; +val* var116 /* : String */; +char* var117 /* : CString */; +val* var118 /* : String */; +val* var119 /* : nullable Int */; +val* var120 /* : nullable Int */; +val* var121 /* : nullable Bool */; +val* var122 /* : nullable Bool */; +static val* varonce123; +val* var124 /* : String */; +char* var125 /* : CString */; +val* var126 /* : String */; +val* var127 /* : nullable Int */; +val* var128 /* : nullable Int */; +val* var129 /* : nullable Bool */; +val* var130 /* : nullable Bool */; +static val* varonce131; val* var132 /* : String */; -val* var133 /* : HashSet[Object] */; -val* var135 /* : HashSet[Object] */; +char* var133 /* : CString */; +val* var134 /* : String */; +val* var135 /* : nullable Int */; +val* var136 /* : nullable Int */; +val* var137 /* : nullable Bool */; +val* var138 /* : nullable Bool */; +static val* varonce139; +val* var140 /* : String */; +char* var141 /* : CString */; +val* var142 /* : String */; +val* var143 /* : nullable Int */; +val* var144 /* : nullable Int */; +val* var145 /* : nullable Bool */; +val* var146 /* : nullable Bool */; +val* var147 /* : String */; +val* var148 /* : String */; +val* var149 /* : String */; +val* var150 /* : String */; +long var151 /* : Int */; +long var153 /* : Int */; +short int var154 /* : Bool */; +short int var156 /* : Bool */; +val* var157 /* : Array[String] */; +val* var159 /* : Array[String] */; +val* var161 /* : NativeArray[String] */; +static val* varonce160; +static val* varonce162; +val* var163 /* : String */; +char* var164 /* : CString */; +val* var165 /* : String */; +val* var166 /* : nullable Int */; +val* var167 /* : nullable Int */; +val* var168 /* : nullable Bool */; +val* var169 /* : nullable Bool */; +static val* varonce170; +val* var171 /* : String */; +char* var172 /* : CString */; +val* var173 /* : String */; +val* var174 /* : nullable Int */; +val* var175 /* : nullable Int */; +val* var176 /* : nullable Bool */; +val* var177 /* : nullable Bool */; +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 */; +val* var186 /* : String */; +val* var187 /* : String */; +val* var188 /* : String */; +val* var189 /* : HashSet[Object] */; +val* var191 /* : HashSet[Object] */; var_v = p0; var_m = p1; var_color = p2; { -{ /* Inline separate_compiler#SeparateCompiler#color_consts_done (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$color_consts_done (self) on */ var2 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___color_consts_done].val; /* _color_consts_done on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _color_consts_done"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 308); fatal_exit(1); @@ -3750,11 +4488,14 @@ var4 = (((long)var_m&3)?type_info[((long)var_m&3)]:var_m->type)->type_table[clty } if (var4){ { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ var7 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ if (unlikely(var7 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } var5 = var7; @@ -3762,9 +4503,12 @@ RET_LABEL6:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var5) on */ +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var5) on */ var10 = var5->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ if (unlikely(var10 == 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); @@ -3774,9 +4518,12 @@ RET_LABEL9:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_inline_coloring_numbers (var8) on */ +{ /* Inline separate_compiler$ToolContext$opt_inline_coloring_numbers (var8) on */ var13 = var8->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_inline_coloring_numbers].val; /* _opt_inline_coloring_numbers on */ if (unlikely(var13 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_inline_coloring_numbers"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 46); fatal_exit(1); @@ -3786,7 +4533,7 @@ RET_LABEL12:(void)0; } } { -{ /* Inline opts#Option#value (var11) on */ +{ /* Inline opts$Option$value (var11) on */ var16 = var11->attrs[COLOR_opts__Option___value].val; /* _value on */ var14 = var16; RET_LABEL15:(void)0; @@ -3798,380 +4545,463 @@ if (var17){ var18 = nitc__separate_compiler___MEntity___const_color(var_m); } if (unlikely(varonce==NULL)) { -var19 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); +var19 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); if (likely(varonce20!=NULL)) { var21 = varonce20; } else { var22 = "#define "; -var23 = core__flat___NativeString___to_s_full(var22, 8l, 8l); +var24 = (val*)(8l<<2|1); +var25 = (val*)(8l<<2|1); +var26 = (val*)((long)(0)<<2|3); +var27 = (val*)((long)(0)<<2|3); +var23 = core__flat___CString___to_s_unsafe(var22, var24, var25, var26, var27); var21 = var23; varonce20 = var21; } ((struct instance_core__NativeArray*)var19)->values[0]=var21; -if (likely(varonce24!=NULL)) { -var25 = varonce24; +if (likely(varonce28!=NULL)) { +var29 = varonce28; } else { -var26 = " "; -var27 = core__flat___NativeString___to_s_full(var26, 1l, 1l); -var25 = var27; -varonce24 = var25; +var30 = " "; +var32 = (val*)(1l<<2|1); +var33 = (val*)(1l<<2|1); +var34 = (val*)((long)(0)<<2|3); +var35 = (val*)((long)(0)<<2|3); +var31 = core__flat___CString___to_s_unsafe(var30, var32, var33, var34, var35); +var29 = var31; +varonce28 = var29; } -((struct instance_core__NativeArray*)var19)->values[2]=var25; +((struct instance_core__NativeArray*)var19)->values[2]=var29; } else { var19 = varonce; varonce = NULL; } { -var28 = nitc__separate_compiler___MEntity___const_color(var_m); +var36 = nitc__separate_compiler___MEntity___const_color(var_m); } -((struct instance_core__NativeArray*)var19)->values[1]=var28; -var29 = core__flat___Int___core__abstract_text__Object__to_s(var_color); -((struct instance_core__NativeArray*)var19)->values[3]=var29; +((struct instance_core__NativeArray*)var19)->values[1]=var36; +var37 = core__flat___Int___core__abstract_text__Object__to_s(var_color); +((struct instance_core__NativeArray*)var19)->values[3]=var37; { -var30 = ((val*(*)(val* self))(var19->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var19); /* native_to_s on */ +var38 = ((val*(*)(val* self))(var19->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var19); /* native_to_s on */ } varonce = var19; { -nitc___nitc__AbstractCompiler___provide_declaration(self, var18, var30); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var18, var38); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } } else { { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ -var34 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ -if (unlikely(var34 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ +var42 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ +if (unlikely(var42 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } -var32 = var34; -RET_LABEL33:(void)0; +var40 = var42; +RET_LABEL41:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var32) on */ -var37 = var32->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var37 == NULL)) { +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var40) on */ +var45 = var40->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var45 == 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); } -var35 = var37; -RET_LABEL36:(void)0; +var43 = var45; +RET_LABEL44:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_colors_are_symbols (var35) on */ -var40 = var35->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_colors_are_symbols].val; /* _opt_colors_are_symbols on */ -if (unlikely(var40 == NULL)) { +{ /* Inline separate_compiler$ToolContext$opt_colors_are_symbols (var43) on */ +var48 = var43->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_colors_are_symbols].val; /* _opt_colors_are_symbols on */ +if (unlikely(var48 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_colors_are_symbols"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 35); fatal_exit(1); } -var38 = var40; -RET_LABEL39:(void)0; +var46 = var48; +RET_LABEL47:(void)0; } } { -{ /* Inline opts#Option#value (var38) on */ -var43 = var38->attrs[COLOR_opts__Option___value].val; /* _value on */ -var41 = var43; -RET_LABEL42:(void)0; +{ /* Inline opts$Option$value (var46) on */ +var51 = var46->attrs[COLOR_opts__Option___value].val; /* _value on */ +var49 = var51; +RET_LABEL50:(void)0; } } -var44 = (short int)((long)(var41)>>2); -var45 = !var44; -var_ = var45; -if (var45){ -var31 = var_; +var52 = (short int)((long)(var49)>>2); +var53 = !var52; +var_ = var53; +if (var53){ +var39 = var_; } else { { -{ /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on */ -var48 = var_v->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on */ -if (unlikely(var48 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (var_v) on */ +var56 = var_v->attrs[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on */ +if (unlikely(var56 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1133); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 1214); fatal_exit(1); } -var46 = var48; -RET_LABEL47:(void)0; +var54 = var56; +RET_LABEL55:(void)0; } } { -{ /* Inline abstract_compiler#AbstractCompiler#target_platform (var46) on */ -var51 = var46->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___target_platform].val; /* _target_platform on */ -if (unlikely(var51 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$target_platform (var54) on */ +var59 = var54->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___target_platform].val; /* _target_platform on */ +if (unlikely(var59 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target_platform"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 549); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 563); fatal_exit(1); } -var49 = var51; -RET_LABEL50:(void)0; -} -} -{ -var52 = nitc___nitc__Platform___supports_linker_script(var49); -} -var53 = !var52; -var31 = var53; -} -if (var31){ -{ -var54 = nitc__separate_compiler___MEntity___const_color(var_m); -} -if (unlikely(varonce55==NULL)) { -var56 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce57!=NULL)) { -var58 = varonce57; -} else { -var59 = "extern const int "; -var60 = core__flat___NativeString___to_s_full(var59, 17l, 17l); -var58 = var60; -varonce57 = var58; -} -((struct instance_core__NativeArray*)var56)->values[0]=var58; -if (likely(varonce61!=NULL)) { -var62 = varonce61; -} else { -var63 = ";"; -var64 = core__flat___NativeString___to_s_full(var63, 1l, 1l); -var62 = var64; -varonce61 = var62; +var57 = var59; +RET_LABEL58:(void)0; } -((struct instance_core__NativeArray*)var56)->values[2]=var62; -} else { -var56 = varonce55; -varonce55 = NULL; } { -var65 = nitc__separate_compiler___MEntity___const_color(var_m); +var60 = nitc___nitc__Platform___supports_linker_script(var57); } -((struct instance_core__NativeArray*)var56)->values[1]=var65; -{ -var66 = ((val*(*)(val* self))(var56->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var56); /* native_to_s on */ +var61 = !var60; +var39 = var61; } -varonce55 = var56; +if (var39){ { -nitc___nitc__AbstractCompiler___provide_declaration(self, var54, var66); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +var62 = nitc__separate_compiler___MEntity___const_color(var_m); } -if (unlikely(varonce67==NULL)) { -var68 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce69!=NULL)) { -var70 = varonce69; +if (unlikely(varonce63==NULL)) { +var64 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce65!=NULL)) { +var66 = varonce65; } else { -var71 = "const int "; -var72 = core__flat___NativeString___to_s_full(var71, 10l, 10l); -var70 = var72; -varonce69 = var70; +var67 = "extern const int "; +var69 = (val*)(17l<<2|1); +var70 = (val*)(17l<<2|1); +var71 = (val*)((long)(0)<<2|3); +var72 = (val*)((long)(0)<<2|3); +var68 = core__flat___CString___to_s_unsafe(var67, var69, var70, var71, var72); +var66 = var68; +varonce65 = var66; } -((struct instance_core__NativeArray*)var68)->values[0]=var70; +((struct instance_core__NativeArray*)var64)->values[0]=var66; if (likely(varonce73!=NULL)) { var74 = varonce73; } else { -var75 = " = "; -var76 = core__flat___NativeString___to_s_full(var75, 3l, 3l); +var75 = ";"; +var77 = (val*)(1l<<2|1); +var78 = (val*)(1l<<2|1); +var79 = (val*)((long)(0)<<2|3); +var80 = (val*)((long)(0)<<2|3); +var76 = core__flat___CString___to_s_unsafe(var75, var77, var78, var79, var80); var74 = var76; varonce73 = var74; } -((struct instance_core__NativeArray*)var68)->values[2]=var74; -if (likely(varonce77!=NULL)) { -var78 = varonce77; -} else { -var79 = ";"; -var80 = core__flat___NativeString___to_s_full(var79, 1l, 1l); -var78 = var80; -varonce77 = var78; -} -((struct instance_core__NativeArray*)var68)->values[4]=var78; +((struct instance_core__NativeArray*)var64)->values[2]=var74; } else { -var68 = varonce67; -varonce67 = NULL; +var64 = varonce63; +varonce63 = NULL; } { var81 = nitc__separate_compiler___MEntity___const_color(var_m); } -((struct instance_core__NativeArray*)var68)->values[1]=var81; -var82 = core__flat___Int___core__abstract_text__Object__to_s(var_color); -((struct instance_core__NativeArray*)var68)->values[3]=var82; +((struct instance_core__NativeArray*)var64)->values[1]=var81; { -var83 = ((val*(*)(val* self))(var68->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var68); /* native_to_s on */ +var82 = ((val*(*)(val* self))(var64->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var64); /* native_to_s on */ } -varonce67 = var68; +varonce63 = var64; { -nitc___nitc__AbstractCompilerVisitor___add(var_v, var83); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var62, var82); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } +if (unlikely(varonce83==NULL)) { +var84 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String); +if (likely(varonce85!=NULL)) { +var86 = varonce85; } else { -{ -var84 = nitc__separate_compiler___MEntity___const_color(var_m); +var87 = "const int "; +var89 = (val*)(10l<<2|1); +var90 = (val*)(10l<<2|1); +var91 = (val*)((long)(0)<<2|3); +var92 = (val*)((long)(0)<<2|3); +var88 = core__flat___CString___to_s_unsafe(var87, var89, var90, var91, var92); +var86 = var88; +varonce85 = var86; } -if (unlikely(varonce85==NULL)) { -var86 = NEW_core__NativeArray(7l, &type_core__NativeArray__core__String); -if (likely(varonce87!=NULL)) { -var88 = varonce87; +((struct instance_core__NativeArray*)var84)->values[0]=var86; +if (likely(varonce93!=NULL)) { +var94 = varonce93; } else { -var89 = "#define "; -var90 = core__flat___NativeString___to_s_full(var89, 8l, 8l); -var88 = var90; -varonce87 = var88; +var95 = " = "; +var97 = (val*)(3l<<2|1); +var98 = (val*)(3l<<2|1); +var99 = (val*)((long)(0)<<2|3); +var100 = (val*)((long)(0)<<2|3); +var96 = core__flat___CString___to_s_unsafe(var95, var97, var98, var99, var100); +var94 = var96; +varonce93 = var94; +} +((struct instance_core__NativeArray*)var84)->values[2]=var94; +if (likely(varonce101!=NULL)) { +var102 = varonce101; +} else { +var103 = ";"; +var105 = (val*)(1l<<2|1); +var106 = (val*)(1l<<2|1); +var107 = (val*)((long)(0)<<2|3); +var108 = (val*)((long)(0)<<2|3); +var104 = core__flat___CString___to_s_unsafe(var103, var105, var106, var107, var108); +var102 = var104; +varonce101 = var102; } -((struct instance_core__NativeArray*)var86)->values[0]=var88; -if (likely(varonce91!=NULL)) { -var92 = varonce91; +((struct instance_core__NativeArray*)var84)->values[4]=var102; } else { -var93 = " ((long)&X"; -var94 = core__flat___NativeString___to_s_full(var93, 10l, 10l); -var92 = var94; -varonce91 = var92; +var84 = varonce83; +varonce83 = NULL; } -((struct instance_core__NativeArray*)var86)->values[2]=var92; -if (likely(varonce95!=NULL)) { -var96 = varonce95; -} else { -var97 = ")\nextern const void X"; -var98 = core__flat___NativeString___to_s_full(var97, 21l, 21l); -var96 = var98; -varonce95 = var96; +{ +var109 = nitc__separate_compiler___MEntity___const_color(var_m); +} +((struct instance_core__NativeArray*)var84)->values[1]=var109; +var110 = core__flat___Int___core__abstract_text__Object__to_s(var_color); +((struct instance_core__NativeArray*)var84)->values[3]=var110; +{ +var111 = ((val*(*)(val* self))(var84->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var84); /* native_to_s on */ } -((struct instance_core__NativeArray*)var86)->values[4]=var96; -if (likely(varonce99!=NULL)) { -var100 = varonce99; +varonce83 = var84; +{ +nitc___nitc__AbstractCompilerVisitor___add(var_v, var111); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on */ +} +} else { +{ +var112 = nitc__separate_compiler___MEntity___const_color(var_m); +} +if (unlikely(varonce113==NULL)) { +var114 = NEW_core__NativeArray((int)7l, &type_core__NativeArray__core__String); +if (likely(varonce115!=NULL)) { +var116 = varonce115; +} else { +var117 = "#define "; +var119 = (val*)(8l<<2|1); +var120 = (val*)(8l<<2|1); +var121 = (val*)((long)(0)<<2|3); +var122 = (val*)((long)(0)<<2|3); +var118 = core__flat___CString___to_s_unsafe(var117, var119, var120, var121, var122); +var116 = var118; +varonce115 = var116; +} +((struct instance_core__NativeArray*)var114)->values[0]=var116; +if (likely(varonce123!=NULL)) { +var124 = varonce123; +} else { +var125 = " ((long)&X"; +var127 = (val*)(10l<<2|1); +var128 = (val*)(10l<<2|1); +var129 = (val*)((long)(0)<<2|3); +var130 = (val*)((long)(0)<<2|3); +var126 = core__flat___CString___to_s_unsafe(var125, var127, var128, var129, var130); +var124 = var126; +varonce123 = var124; +} +((struct instance_core__NativeArray*)var114)->values[2]=var124; +if (likely(varonce131!=NULL)) { +var132 = varonce131; +} else { +var133 = ")\nextern const void X"; +var135 = (val*)(21l<<2|1); +var136 = (val*)(21l<<2|1); +var137 = (val*)((long)(0)<<2|3); +var138 = (val*)((long)(0)<<2|3); +var134 = core__flat___CString___to_s_unsafe(var133, var135, var136, var137, var138); +var132 = var134; +varonce131 = var132; +} +((struct instance_core__NativeArray*)var114)->values[4]=var132; +if (likely(varonce139!=NULL)) { +var140 = varonce139; } else { -var101 = ";"; -var102 = core__flat___NativeString___to_s_full(var101, 1l, 1l); -var100 = var102; -varonce99 = var100; +var141 = ";"; +var143 = (val*)(1l<<2|1); +var144 = (val*)(1l<<2|1); +var145 = (val*)((long)(0)<<2|3); +var146 = (val*)((long)(0)<<2|3); +var142 = core__flat___CString___to_s_unsafe(var141, var143, var144, var145, var146); +var140 = var142; +varonce139 = var140; } -((struct instance_core__NativeArray*)var86)->values[6]=var100; +((struct instance_core__NativeArray*)var114)->values[6]=var140; } else { -var86 = varonce85; -varonce85 = NULL; +var114 = varonce113; +varonce113 = NULL; } { -var103 = nitc__separate_compiler___MEntity___const_color(var_m); +var147 = nitc__separate_compiler___MEntity___const_color(var_m); } -((struct instance_core__NativeArray*)var86)->values[1]=var103; +((struct instance_core__NativeArray*)var114)->values[1]=var147; { -var104 = nitc__separate_compiler___MEntity___const_color(var_m); +var148 = nitc__separate_compiler___MEntity___const_color(var_m); } -((struct instance_core__NativeArray*)var86)->values[3]=var104; +((struct instance_core__NativeArray*)var114)->values[3]=var148; { -var105 = nitc__separate_compiler___MEntity___const_color(var_m); +var149 = nitc__separate_compiler___MEntity___const_color(var_m); } -((struct instance_core__NativeArray*)var86)->values[5]=var105; +((struct instance_core__NativeArray*)var114)->values[5]=var149; { -var106 = ((val*(*)(val* self))(var86->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var86); /* native_to_s on */ +var150 = ((val*(*)(val* self))(var114->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var114); /* native_to_s on */ } -varonce85 = var86; +varonce113 = var114; { -nitc___nitc__AbstractCompiler___provide_declaration(self, var84, var106); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var112, var150); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } { -{ /* Inline kernel#Int#unary - (1l) on <1l:Int> */ -var109 = -1l; -var107 = var109; -goto RET_LABEL108; -RET_LABEL108:(void)0; +{ /* Inline kernel$Int$unary - (1l) on <1l:Int> */ +var153 = -1l; +var151 = var153; +goto RET_LABEL152; +RET_LABEL152:(void)0; } } { -{ /* Inline kernel#Int#== (var_color,var107) on */ -var112 = var_color == var107; -var110 = var112; -goto RET_LABEL111; -RET_LABEL111:(void)0; +{ /* Inline kernel$Int$== (var_color,var151) on */ +var156 = var_color == var151; +var154 = var156; +goto RET_LABEL155; +RET_LABEL155:(void)0; } } -if (var110){ +if (var154){ var_color = 0l; } else { } { -{ /* Inline abstract_compiler#AbstractCompiler#linker_script (self) on */ -var115 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___linker_script].val; /* _linker_script on */ -if (unlikely(var115 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$linker_script (self) on */ +var159 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___linker_script].val; /* _linker_script on */ +if (unlikely(var159 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _linker_script"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 588); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 602); fatal_exit(1); } -var113 = var115; -RET_LABEL114:(void)0; +var157 = var159; +RET_LABEL158:(void)0; } } -if (unlikely(varonce116==NULL)) { -var117 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce118!=NULL)) { -var119 = varonce118; +if (unlikely(varonce160==NULL)) { +var161 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String); +if (likely(varonce162!=NULL)) { +var163 = varonce162; } else { -var120 = "X"; -var121 = core__flat___NativeString___to_s_full(var120, 1l, 1l); -var119 = var121; -varonce118 = var119; +var164 = "X"; +var166 = (val*)(1l<<2|1); +var167 = (val*)(1l<<2|1); +var168 = (val*)((long)(0)<<2|3); +var169 = (val*)((long)(0)<<2|3); +var165 = core__flat___CString___to_s_unsafe(var164, var166, var167, var168, var169); +var163 = var165; +varonce162 = var163; } -((struct instance_core__NativeArray*)var117)->values[0]=var119; -if (likely(varonce122!=NULL)) { -var123 = varonce122; +((struct instance_core__NativeArray*)var161)->values[0]=var163; +if (likely(varonce170!=NULL)) { +var171 = varonce170; } else { -var124 = " = "; -var125 = core__flat___NativeString___to_s_full(var124, 3l, 3l); -var123 = var125; -varonce122 = var123; +var172 = " = "; +var174 = (val*)(3l<<2|1); +var175 = (val*)(3l<<2|1); +var176 = (val*)((long)(0)<<2|3); +var177 = (val*)((long)(0)<<2|3); +var173 = core__flat___CString___to_s_unsafe(var172, var174, var175, var176, var177); +var171 = var173; +varonce170 = var171; } -((struct instance_core__NativeArray*)var117)->values[2]=var123; -if (likely(varonce126!=NULL)) { -var127 = varonce126; +((struct instance_core__NativeArray*)var161)->values[2]=var171; +if (likely(varonce178!=NULL)) { +var179 = varonce178; } else { -var128 = ";"; -var129 = core__flat___NativeString___to_s_full(var128, 1l, 1l); -var127 = var129; -varonce126 = var127; +var180 = ";"; +var182 = (val*)(1l<<2|1); +var183 = (val*)(1l<<2|1); +var184 = (val*)((long)(0)<<2|3); +var185 = (val*)((long)(0)<<2|3); +var181 = core__flat___CString___to_s_unsafe(var180, var182, var183, var184, var185); +var179 = var181; +varonce178 = var179; } -((struct instance_core__NativeArray*)var117)->values[4]=var127; +((struct instance_core__NativeArray*)var161)->values[4]=var179; } else { -var117 = varonce116; -varonce116 = NULL; +var161 = varonce160; +varonce160 = NULL; } { -var130 = nitc__separate_compiler___MEntity___const_color(var_m); +var186 = nitc__separate_compiler___MEntity___const_color(var_m); } -((struct instance_core__NativeArray*)var117)->values[1]=var130; -var131 = core__flat___Int___core__abstract_text__Object__to_s(var_color); -((struct instance_core__NativeArray*)var117)->values[3]=var131; +((struct instance_core__NativeArray*)var161)->values[1]=var186; +var187 = core__flat___Int___core__abstract_text__Object__to_s(var_color); +((struct instance_core__NativeArray*)var161)->values[3]=var187; { -var132 = ((val*(*)(val* self))(var117->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var117); /* native_to_s on */ +var188 = ((val*(*)(val* self))(var161->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var161); /* native_to_s on */ } -varonce116 = var117; +varonce160 = var161; { -core___core__Array___core__abstract_collection__SimpleCollection__add(var113, var132); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var157, var188); /* Direct call array$Array$add on */ } } } } else { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Aborted"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 303); fatal_exit(1); } { -{ /* Inline separate_compiler#SeparateCompiler#color_consts_done (self) on */ -var135 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___color_consts_done].val; /* _color_consts_done on */ -if (unlikely(var135 == NULL)) { +{ /* Inline separate_compiler$SeparateCompiler$color_consts_done (self) on */ +var191 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___color_consts_done].val; /* _color_consts_done on */ +if (unlikely(var191 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _color_consts_done"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 308); fatal_exit(1); } -var133 = var135; -RET_LABEL134:(void)0; +var189 = var191; +RET_LABEL190:(void)0; } } { -core___core__HashSet___core__abstract_collection__SimpleCollection__add(var133, var_m); /* Direct call hash_collection#HashSet#add on */ +core___core__HashSet___core__abstract_collection__SimpleCollection__add(var189, var_m); /* Direct call hash_collection$HashSet$add on */ } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#color_consts_done for (self: SeparateCompiler): HashSet[Object] */ +/* method separate_compiler$SeparateCompiler$color_consts_done for (self: SeparateCompiler): HashSet[Object] */ val* nitc___nitc__SeparateCompiler___color_consts_done(val* self) { val* var /* : HashSet[Object] */; val* var1 /* : HashSet[Object] */; var1 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___color_consts_done].val; /* _color_consts_done on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _color_consts_done"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 308); fatal_exit(1); @@ -4180,12 +5010,15 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#class_conflict_graph for (self: SeparateCompiler): POSetConflictGraph[MClass] */ +/* method separate_compiler$SeparateCompiler$class_conflict_graph for (self: SeparateCompiler): POSetConflictGraph[MClass] */ val* nitc___nitc__SeparateCompiler___class_conflict_graph(val* self) { val* var /* : POSetConflictGraph[MClass] */; val* var1 /* : POSetConflictGraph[MClass] */; var1 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___class_conflict_graph].val; /* _class_conflict_graph on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_conflict_graph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 310); fatal_exit(1); @@ -4194,12 +5027,12 @@ var = var1; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#class_conflict_graph= for (self: SeparateCompiler, POSetConflictGraph[MClass]) */ +/* method separate_compiler$SeparateCompiler$class_conflict_graph= for (self: SeparateCompiler, POSetConflictGraph[MClass]) */ void nitc___nitc__SeparateCompiler___class_conflict_graph_61d(val* self, val* p0) { self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___class_conflict_graph].val = p0; /* _class_conflict_graph on */ RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#do_property_coloring for (self: SeparateCompiler) */ +/* method separate_compiler$SeparateCompiler$do_property_coloring for (self: SeparateCompiler) */ void nitc___nitc__SeparateCompiler___do_property_coloring(val* self) { val* var /* : nullable RapidTypeAnalysis */; val* var2 /* : nullable RapidTypeAnalysis */; @@ -4424,7 +5257,7 @@ val* var252 /* : Map[MClass, Array[nullable MProperty]] */; val* var254 /* : Map[MClass, Array[nullable MProperty]] */; val* var255 /* : Array[nullable Object] */; { -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (self) on */ var2 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ var = var2; RET_LABEL1:(void)0; @@ -4432,11 +5265,14 @@ RET_LABEL1:(void)0; } var_rta = var; { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var5 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var5 == 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); } var3 = var5; @@ -4451,24 +5287,24 @@ var_mclasses = var6; var7 = nitc__coloring___poset__POSet___to_conflict_graph(var_mclasses); } { -{ /* Inline separate_compiler#SeparateCompiler#class_conflict_graph= (self,var7) on */ +{ /* Inline separate_compiler$SeparateCompiler$class_conflict_graph= (self,var7) on */ self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___class_conflict_graph].val = var7; /* _class_conflict_graph on */ RET_LABEL8:(void)0; } } var9 = NEW_core__HashMap(&type_core__HashMap__nitc__MClass__core__Set__nitc__PropertyLayoutElement); { -core___core__HashMap___core__kernel__Object__init(var9); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var9); /* Direct call hash_collection$HashMap$init on */ } var_mmethods = var9; var10 = NEW_core__HashMap(&type_core__HashMap__nitc__MClass__core__Set__nitc__MAttribute); { -core___core__HashMap___core__kernel__Object__init(var10); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var10); /* Direct call hash_collection$HashMap$init on */ } var_mattributes = var10; var11 = NEW_core__Array(&type_core__Array__nitc__PropertyLayoutElement); { -core___core__Array___core__kernel__Object__init(var11); /* Direct call array#Array#init on */ +core___core__Array___core__kernel__Object__init(var11); /* Direct call array$Array$init on */ } var_dead_methods = var11; var_ = var_mclasses; @@ -4490,17 +5326,17 @@ var15 = ((val*(*)(val* self))((((long)var_13&3)?class_info[((long)var_13&3)]:var var_mclass = var15; var16 = NEW_core__HashSet(&type_core__HashSet__nitc__PropertyLayoutElement); { -core___core__HashSet___core__kernel__Object__init(var16); /* Direct call hash_collection#HashSet#init on */ +core___core__HashSet___core__kernel__Object__init(var16); /* Direct call hash_collection$HashSet$init on */ } { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_mmethods, var_mclass, var16); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_mmethods, var_mclass, var16); /* Direct call hash_collection$HashMap$[]= on */ } var17 = NEW_core__HashSet(&type_core__HashSet__nitc__MAttribute); { -core___core__HashSet___core__kernel__Object__init(var17); /* Direct call hash_collection#HashSet#init on */ +core___core__HashSet___core__kernel__Object__init(var17); /* Direct call hash_collection$HashSet$init on */ } { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_mattributes, var_mclass, var17); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_mattributes, var_mclass, var17); /* Direct call hash_collection$HashMap$[]= on */ } { ((void(*)(val* self))((((long)var_13&3)?class_info[((long)var_13&3)]:var_13->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_13); /* next on */ @@ -4516,7 +5352,7 @@ var18 = 0; /* is null */ var18 = 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); { var21 = ((short int(*)(val* self, val* p0))(var_rta->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_rta, var_other); /* == on */ @@ -4530,9 +5366,12 @@ var18 = var19; } if (var18){ { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_methods (var_rta) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_methods (var_rta) on */ var25 = var_rta->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_methods].val; /* _live_methods on */ if (unlikely(var25 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 82); fatal_exit(1); @@ -4559,11 +5398,14 @@ var31 = ((val*(*)(val* self))((((long)var_28&3)?class_info[((long)var_28&3)]:var } var_m = var31; { -{ /* Inline model#MProperty#intro_mclassdef (var_m) on */ +{ /* Inline model$MProperty$intro_mclassdef (var_m) on */ var34 = var_m->attrs[COLOR_nitc__model__MProperty___intro_mclassdef].val; /* _intro_mclassdef on */ if (unlikely(var34 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mclassdef"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 1946); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2042); fatal_exit(1); } var32 = var34; @@ -4571,11 +5413,14 @@ RET_LABEL33:(void)0; } } { -{ /* Inline model#MClassDef#mclass (var32) on */ +{ /* Inline model$MClassDef$mclass (var32) on */ var37 = var32->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on */ if (unlikely(var37 == 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); } var35 = var37; @@ -4597,9 +5442,12 @@ BREAK_label30: (void)0; ((void(*)(val* self))((((long)var_28&3)?class_info[((long)var_28&3)]:var_28->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_28); /* finish on */ } { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_super_sends (var_rta) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_super_sends (var_rta) on */ var41 = var_rta->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_super_sends].val; /* _live_super_sends on */ if (unlikely(var41 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_super_sends"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 118); fatal_exit(1); @@ -4626,11 +5474,14 @@ var47 = ((val*(*)(val* self))((((long)var_44&3)?class_info[((long)var_44&3)]:var } var_m48 = var47; { -{ /* Inline model#MPropDef#mclassdef (var_m48) on */ +{ /* Inline model$MPropDef$mclassdef (var_m48) on */ var51 = var_m48->attrs[COLOR_nitc__model__MPropDef___mclassdef].val; /* _mclassdef on */ if (unlikely(var51 == 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); } var49 = var51; @@ -4638,11 +5489,14 @@ RET_LABEL50:(void)0; } } { -{ /* Inline model#MClassDef#mclass (var49) on */ +{ /* Inline model$MClassDef$mclass (var49) on */ var54 = var49->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on */ if (unlikely(var54 == 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); } var52 = var54; @@ -4667,11 +5521,14 @@ BREAK_label46: (void)0; } else { } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var59 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var59 == 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); } var57 = var59; @@ -4679,11 +5536,14 @@ RET_LABEL58:(void)0; } } { -{ /* Inline mmodule#MModule#in_importation (var57) on */ +{ /* Inline mmodule$MModule$in_importation (var57) on */ var62 = var57->attrs[COLOR_nitc__mmodule__MModule___in_importation].val; /* _in_importation on */ if (unlikely(var62 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_importation"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 104); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 108); fatal_exit(1); } var60 = var62; @@ -4711,11 +5571,14 @@ var69 = ((val*(*)(val* self))((((long)var_66&3)?class_info[((long)var_66&3)]:var } var_m70 = var69; { -{ /* Inline model#MModule#mclassdefs (var_m70) on */ +{ /* Inline model$MModule$mclassdefs (var_m70) on */ var73 = var_m70->attrs[COLOR_nitc__model__MModule___mclassdefs].val; /* _mclassdefs on */ if (unlikely(var73 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdefs"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 141); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 150); fatal_exit(1); } var71 = var73; @@ -4740,11 +5603,14 @@ var79 = ((val*(*)(val* self))((((long)var_76&3)?class_info[((long)var_76&3)]:var } var_cd = var79; { -{ /* Inline model#MClassDef#mclass (var_cd) on */ +{ /* Inline model$MClassDef$mclass (var_cd) on */ var82 = var_cd->attrs[COLOR_nitc__model__MClassDef___mclass].val; /* _mclass on */ if (unlikely(var82 == 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); } var80 = var82; @@ -4753,11 +5619,14 @@ RET_LABEL81:(void)0; } var_mclass83 = var80; { -{ /* Inline model#MClassDef#intro_mproperties (var_cd) on */ +{ /* Inline model$MClassDef$intro_mproperties (var_cd) on */ var86 = var_cd->attrs[COLOR_nitc__model__MClassDef___intro_mproperties].val; /* _intro_mproperties on */ if (unlikely(var86 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mproperties"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 704); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 720); fatal_exit(1); } var84 = var86; @@ -4796,10 +5665,10 @@ var94 = 1; /* is null */ var94 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_rta,((val*)NULL)) on */ +{ /* Inline kernel$Object$== (var_rta,((val*)NULL)) on */ var_other97 = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_rta,var_other97) on */ +{ /* Inline kernel$Object$is_same_instance (var_rta,var_other97) on */ var100 = var_rta == var_other97; var98 = var100; goto RET_LABEL99; @@ -4821,9 +5690,12 @@ var101 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var } } else { { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_methods (var_rta) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_methods (var_rta) on */ var104 = var_rta->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_methods].val; /* _live_methods on */ if (unlikely(var104 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 82); fatal_exit(1); @@ -4838,7 +5710,7 @@ var105 = core___core__HashSet___core__abstract_collection__Collection__has(var10 var106 = !var105; if (var106){ { -core___core__Array___core__abstract_collection__SimpleCollection__add(var_dead_methods, var_p); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var_dead_methods, var_p); /* Direct call array$Array$add on */ } } else { } @@ -4871,11 +5743,14 @@ BREAK_label91: (void)0; ((void(*)(val* self))((((long)var_89&3)?class_info[((long)var_89&3)]:var_89->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_89); /* finish on */ } { -{ /* Inline model#MClassDef#mpropdefs (var_cd) on */ +{ /* Inline model$MClassDef$mpropdefs (var_cd) on */ var113 = var_cd->attrs[COLOR_nitc__model__MClassDef___mpropdefs].val; /* _mpropdefs on */ if (unlikely(var113 == 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, 707); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 723); fatal_exit(1); } var111 = var113; @@ -4913,7 +5788,7 @@ goto BREAK_label124; } else { } { -{ /* Inline modelize_property#MPropDef#has_supercall (var_mpropdef) on */ +{ /* Inline modelize_property$MPropDef$has_supercall (var_mpropdef) on */ var127 = var_mpropdef->attrs[COLOR_nitc__modelize_property__MPropDef___has_supercall].s; /* _has_supercall on */ var125 = var127; RET_LABEL126:(void)0; @@ -4926,10 +5801,10 @@ var128 = 1; /* is null */ var128 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_rta,((val*)NULL)) on */ +{ /* Inline kernel$Object$== (var_rta,((val*)NULL)) on */ var_other97 = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_rta,var_other97) on */ +{ /* Inline kernel$Object$is_same_instance (var_rta,var_other97) on */ var133 = var_rta == var_other97; var131 = var133; goto RET_LABEL132; @@ -4951,9 +5826,12 @@ var134 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var } } else { { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_super_sends (var_rta) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_super_sends (var_rta) on */ var137 = var_rta->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_super_sends].val; /* _live_super_sends on */ if (unlikely(var137 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_super_sends"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 118); fatal_exit(1); @@ -4968,7 +5846,7 @@ var138 = core___core__HashSet___core__abstract_collection__Collection__has(var13 var139 = !var138; if (var139){ { -core___core__Array___core__abstract_collection__SimpleCollection__add(var_dead_methods, var_mpropdef); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var_dead_methods, var_mpropdef); /* Direct call array$Array$add on */ } } else { } @@ -5002,9 +5880,12 @@ BREAK_label68: (void)0; } var140 = NEW_nitc__POSetGroupColorer(&type_nitc__POSetGroupColorer__nitc__MClass__nitc__PropertyLayoutElement); { -{ /* Inline separate_compiler#SeparateCompiler#class_conflict_graph (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$class_conflict_graph (self) on */ var143 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___class_conflict_graph].val; /* _class_conflict_graph on */ if (unlikely(var143 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_conflict_graph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 310); fatal_exit(1); @@ -5028,7 +5909,7 @@ var144 = nitc___nitc__POSetGroupColorer___colors(var_meth_colorer); } var_method_colors = var144; { -nitc___nitc__SeparateCompiler___compile_color_consts(self, var_method_colors); /* Direct call separate_compiler#SeparateCompiler#compile_color_consts on */ +nitc___nitc__SeparateCompiler___compile_color_consts(self, var_method_colors); /* Direct call separate_compiler$SeparateCompiler$compile_color_consts on */ } var_145 = var_dead_methods; { @@ -5051,7 +5932,7 @@ var_mproperty = var150; var151 = ((val*(*)(val* self))(self->class->vft[COLOR_nitc__abstract_compiler__AbstractCompiler__new_visitor]))(self); /* new_visitor on */ } { -{ /* Inline kernel#Int#unary - (1l) on <1l:Int> */ +{ /* Inline kernel$Int$unary - (1l) on <1l:Int> */ var154 = -1l; var152 = var154; goto RET_LABEL153; @@ -5059,7 +5940,7 @@ RET_LABEL153:(void)0; } } { -nitc___nitc__SeparateCompiler___compile_color_const(self, var151, var_mproperty, var152); /* Direct call separate_compiler#SeparateCompiler#compile_color_const on */ +nitc___nitc__SeparateCompiler___compile_color_const(self, var151, var_mproperty, var152); /* Direct call separate_compiler$SeparateCompiler$compile_color_const on */ } { ((void(*)(val* self))((((long)var_147&3)?class_info[((long)var_147&3)]:var_147->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_147); /* next on */ @@ -5071,9 +5952,12 @@ BREAK_label149: (void)0; } var155 = NEW_nitc__POSetGroupColorer(&type_nitc__POSetGroupColorer__nitc__MClass__nitc__MAttribute); { -{ /* Inline separate_compiler#SeparateCompiler#class_conflict_graph (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$class_conflict_graph (self) on */ var158 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___class_conflict_graph].val; /* _class_conflict_graph on */ if (unlikely(var158 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_conflict_graph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 310); fatal_exit(1); @@ -5097,24 +5981,24 @@ var159 = nitc___nitc__POSetGroupColorer___colors(var_attr_colorer); } var_attr_colors = var159; { -nitc___nitc__SeparateCompiler___compile_color_consts(self, var_attr_colors); /* Direct call separate_compiler#SeparateCompiler#compile_color_consts on */ +nitc___nitc__SeparateCompiler___compile_color_consts(self, var_attr_colors); /* Direct call separate_compiler$SeparateCompiler$compile_color_consts on */ } var160 = NEW_core__HashMap(&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MPropDef); { -core___core__HashMap___core__kernel__Object__init(var160); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var160); /* Direct call hash_collection$HashMap$init on */ } { -{ /* Inline separate_compiler#SeparateCompiler#method_tables= (self,var160) on */ +{ /* Inline separate_compiler$SeparateCompiler$method_tables= (self,var160) on */ self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___method_tables].val = var160; /* _method_tables on */ RET_LABEL161:(void)0; } } var162 = NEW_core__HashMap(&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MProperty); { -core___core__HashMap___core__kernel__Object__init(var162); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var162); /* Direct call hash_collection$HashMap$init on */ } { -{ /* Inline separate_compiler#SeparateCompiler#attr_tables= (self,var162) on */ +{ /* Inline separate_compiler$SeparateCompiler$attr_tables= (self,var162) on */ self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___attr_tables].val = var162; /* _attr_tables on */ RET_LABEL163:(void)0; } @@ -5137,7 +6021,7 @@ var169 = ((val*(*)(val* self))((((long)var_166&3)?class_info[((long)var_166&3)]: } var_mclass170 = var169; { -{ /* Inline model#MClass#has_new_factory (var_mclass170) on */ +{ /* Inline model$MClass$has_new_factory (var_mclass170) on */ var174 = var_mclass170->attrs[COLOR_nitc__model__MClass___has_new_factory].s; /* _has_new_factory on */ var172 = var174; RET_LABEL173:(void)0; @@ -5147,11 +6031,14 @@ var175 = !var172; var_176 = var175; if (var175){ { -{ /* Inline model#MClass#kind (var_mclass170) on */ +{ /* Inline model$MClass$kind (var_mclass170) on */ var180 = var_mclass170->attrs[COLOR_nitc__model__MClass___kind].val; /* _kind on */ if (unlikely(var180 == 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); } var178 = var180; @@ -5163,10 +6050,10 @@ var181 = glob_sys; var182 = nitc__model___core__Sys___abstract_kind(var181); } { -{ /* Inline kernel#Object#== (var178,var182) on */ +{ /* Inline kernel$Object$== (var178,var182) on */ var_other97 = var182; { -{ /* Inline kernel#Object#is_same_instance (var178,var_other97) on */ +{ /* Inline kernel$Object$is_same_instance (var178,var_other97) on */ var187 = var178 == var_other97; var185 = var187; goto RET_LABEL186; @@ -5183,11 +6070,14 @@ if (var183){ var177 = var_188; } else { { -{ /* Inline model#MClass#kind (var_mclass170) on */ +{ /* Inline model$MClass$kind (var_mclass170) on */ var191 = var_mclass170->attrs[COLOR_nitc__model__MClass___kind].val; /* _kind on */ if (unlikely(var191 == 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); } var189 = var191; @@ -5199,10 +6089,10 @@ var192 = glob_sys; var193 = nitc__model___core__Sys___interface_kind(var192); } { -{ /* Inline kernel#Object#== (var189,var193) on */ +{ /* Inline kernel$Object$== (var189,var193) on */ var_other97 = var193; { -{ /* Inline kernel#Object#is_same_instance (var189,var_other97) on */ +{ /* Inline kernel$Object$is_same_instance (var189,var_other97) on */ var198 = var189 == var_other97; var196 = var198; goto RET_LABEL197; @@ -5230,7 +6120,7 @@ var201 = 0; /* is null */ var201 = 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); { var204 = ((short int(*)(val* self, val* p0))(var_rta->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_rta, var_other); /* == on */ @@ -5245,9 +6135,12 @@ var201 = var202; var_206 = var201; if (var201){ { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_classes (var_rta) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_classes (var_rta) on */ var209 = var_rta->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_classes].val; /* _live_classes on */ if (unlikely(var209 == 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); @@ -5269,11 +6162,14 @@ goto BREAK_label199; } else { } { -{ /* Inline model#MClass#intro (var_mclass170) on */ +{ /* Inline model$MClass$intro (var_mclass170) on */ var214 = var_mclass170->attrs[COLOR_nitc__model__MClass___intro].val; /* _intro on */ if (unlikely(var214 == 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); } var212 = var214; @@ -5281,11 +6177,14 @@ RET_LABEL213:(void)0; } } { -{ /* Inline model#MClassDef#bound_mtype (var212) on */ +{ /* Inline model$MClassDef$bound_mtype (var212) on */ var217 = var212->attrs[COLOR_nitc__model__MClassDef___bound_mtype].val; /* _bound_mtype on */ if (unlikely(var217 == 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); } var215 = var217; @@ -5299,22 +6198,25 @@ var218 = nitc___nitc__POSetGroupColorer___build_layout(var_meth_colorer, var_mcl var_meth_layout = var218; var219 = NEW_core__Array(&type_core__Array__nullable__nitc__MPropDef); { -{ /* Inline array#AbstractArrayRead#length (var_meth_layout) on */ +{ /* Inline array$AbstractArrayRead$length (var_meth_layout) on */ var222 = var_meth_layout->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var220 = var222; RET_LABEL221:(void)0; } } { -core___core__Array___with_capacity(var219, var220); /* Direct call array#Array#with_capacity on */ +core___core__Array___with_capacity(var219, var220); /* Direct call array$Array$with_capacity on */ } var_meth_table = var219; { -{ /* Inline separate_compiler#SeparateCompiler#method_tables (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$method_tables (self) on */ var225 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___method_tables].val; /* _method_tables on */ if (unlikely(var225 == 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); } var223 = var225; @@ -5347,11 +6249,11 @@ var232 = 1; /* is null */ var232 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_e,((val*)NULL)) on */ +{ /* Inline kernel$Object$== (var_e,((val*)NULL)) on */ var_other97 = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_e,var_other97) on */ -var237 = var_e == var_other97 || (var_other97 != NULL && (!((long)var_e&3)) && (!((long)var_other97&3)) && var_e->class == var_other97->class && ((var_e->class->box_kind == 3 && ((struct instance_core__Byte*)var_e)->value == ((struct instance_core__Byte*)var_other97)->value) || (var_e->class->box_kind == 5 && ((struct instance_core__Float*)var_e)->value == ((struct instance_core__Float*)var_other97)->value) || (var_e->class->box_kind == 6 && ((struct instance_core__NativeString*)var_e)->value == ((struct instance_core__NativeString*)var_other97)->value) || (var_e->class->box_kind == 7 && ((struct instance_core__Pointer*)var_e)->value == ((struct instance_core__Pointer*)var_other97)->value) || (var_e->class->box_kind == 8 && ((struct instance_core__Int8*)var_e)->value == ((struct instance_core__Int8*)var_other97)->value) || (var_e->class->box_kind == 9 && ((struct instance_core__Int16*)var_e)->value == ((struct instance_core__Int16*)var_other97)->value) || (var_e->class->box_kind == 10 && ((struct instance_core__UInt16*)var_e)->value == ((struct instance_core__UInt16*)var_other97)->value) || (var_e->class->box_kind == 11 && ((struct instance_core__Int32*)var_e)->value == ((struct instance_core__Int32*)var_other97)->value) || (var_e->class->box_kind == 12 && ((struct instance_core__UInt32*)var_e)->value == ((struct instance_core__UInt32*)var_other97)->value))); +{ /* Inline kernel$Object$is_same_instance (var_e,var_other97) on */ +var237 = var_e == var_other97 || (var_other97 != NULL && (!((long)var_e&3)) && (!((long)var_other97&3)) && var_e->class == var_other97->class && ((var_e->class->box_kind == 3 && ((struct instance_core__Byte*)var_e)->value == ((struct instance_core__Byte*)var_other97)->value) || (var_e->class->box_kind == 5 && ((struct instance_core__Float*)var_e)->value == ((struct instance_core__Float*)var_other97)->value) || (var_e->class->box_kind == 6 && ((struct instance_core__CString*)var_e)->value == ((struct instance_core__CString*)var_other97)->value) || (var_e->class->box_kind == 7 && ((struct instance_core__Pointer*)var_e)->value == ((struct instance_core__Pointer*)var_other97)->value) || (var_e->class->box_kind == 8 && ((struct instance_core__Int8*)var_e)->value == ((struct instance_core__Int8*)var_other97)->value) || (var_e->class->box_kind == 9 && ((struct instance_core__Int16*)var_e)->value == ((struct instance_core__Int16*)var_other97)->value) || (var_e->class->box_kind == 10 && ((struct instance_core__UInt16*)var_e)->value == ((struct instance_core__UInt16*)var_other97)->value) || (var_e->class->box_kind == 11 && ((struct instance_core__Int32*)var_e)->value == ((struct instance_core__Int32*)var_other97)->value) || (var_e->class->box_kind == 12 && ((struct instance_core__UInt32*)var_e)->value == ((struct instance_core__UInt32*)var_other97)->value))); var235 = var237; goto RET_LABEL236; RET_LABEL236:(void)0; @@ -5365,7 +6267,7 @@ var232 = var233; } if (var232){ { -core___core__Array___core__abstract_collection__SimpleCollection__add(var_meth_table, ((val*)NULL)); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var_meth_table, ((val*)NULL)); /* Direct call array$Array$add on */ } } else { /* isa MMethod */ @@ -5378,11 +6280,14 @@ var238 = (((long)var_e&3)?type_info[((long)var_e&3)]:var_e->type)->type_table[cl } if (var238){ { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var243 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var243 == 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); } var241 = var243; @@ -5393,7 +6298,7 @@ RET_LABEL242:(void)0; var244 = nitc___nitc__MProperty___lookup_first_definition(var_e, var241, var_mtype); } { -core___core__Array___core__abstract_collection__SimpleCollection__add(var_meth_table, var244); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var_meth_table, var244); /* Direct call array$Array$add on */ } } else { /* isa MMethodDef */ @@ -5406,11 +6311,14 @@ var245 = (((long)var_e&3)?type_info[((long)var_e&3)]:var_e->type)->type_table[cl } if (var245){ { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var250 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var250 == 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); } var248 = var250; @@ -5421,9 +6329,12 @@ RET_LABEL249:(void)0; var251 = nitc___nitc__MPropDef___lookup_next_definition(var_e, var248, var_mtype); } { -core___core__Array___core__abstract_collection__SimpleCollection__add(var_meth_table, var251); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var_meth_table, var251); /* Direct call array$Array$add on */ } } else { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Aborted"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 409); fatal_exit(1); @@ -5439,11 +6350,14 @@ BREAK_label230: (void)0; ((void(*)(val* self))((((long)var_228&3)?class_info[((long)var_228&3)]:var_228->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_228); /* finish on */ } { -{ /* Inline separate_compiler#SeparateCompiler#attr_tables (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$attr_tables (self) on */ var254 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___attr_tables].val; /* _attr_tables on */ if (unlikely(var254 == 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); } var252 = var254; @@ -5467,7 +6381,7 @@ BREAK_label168: (void)0; } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#do_type_coloring for (self: SeparateCompiler): Collection[MType] */ +/* method separate_compiler$SeparateCompiler$do_type_coloring for (self: SeparateCompiler): Collection[MType] */ val* nitc___nitc__SeparateCompiler___do_type_coloring(val* self) { val* var /* : Collection[MType] */; val* var1 /* : nullable RapidTypeAnalysis */; @@ -5518,25 +6432,34 @@ const char* var_class_name; long var52 /* : Int */; val* var53 /* : nullable Object */; { -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (self) on */ var3 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ var1 = var3; RET_LABEL2:(void)0; } } if (var1 == NULL) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Receiver is null"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 423); fatal_exit(1); } else { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_types (var1) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_types (var1) on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Receiver is null"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 60); fatal_exit(1); } var6 = var1->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_types].val; /* _live_types on */ if (unlikely(var6 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_types"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 60); fatal_exit(1); @@ -5547,25 +6470,34 @@ RET_LABEL5:(void)0; } var_live_types = var4; { -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (self) on */ var9 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ var7 = var9; RET_LABEL8:(void)0; } } if (var7 == NULL) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Receiver is null"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 424); fatal_exit(1); } else { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_cast_types (var7) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_cast_types (var7) on */ if (unlikely(var7 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Receiver is null"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 72); fatal_exit(1); } var12 = var7->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_cast_types].val; /* _live_cast_types on */ if (unlikely(var12 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_cast_types"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 72); fatal_exit(1); @@ -5577,21 +6509,24 @@ RET_LABEL11:(void)0; var_live_cast_types = var10; var13 = NEW_core__HashSet(&type_core__HashSet__nitc__MType); { -core___core__HashSet___core__kernel__Object__init(var13); /* Direct call hash_collection#HashSet#init on */ +core___core__HashSet___core__kernel__Object__init(var13); /* Direct call hash_collection$HashSet$init on */ } var_res = var13; { -core___core__SimpleCollection___add_all(var_res, var_live_types); /* Direct call abstract_collection#SimpleCollection#add_all on */ +core___core__SimpleCollection___add_all(var_res, var_live_types); /* Direct call abstract_collection$SimpleCollection$add_all on */ } { -core___core__SimpleCollection___add_all(var_res, var_live_cast_types); /* Direct call abstract_collection#SimpleCollection#add_all on */ +core___core__SimpleCollection___add_all(var_res, var_live_cast_types); /* Direct call abstract_collection$SimpleCollection$add_all on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ var16 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ if (unlikely(var16 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } var14 = var16; @@ -5599,9 +6534,12 @@ RET_LABEL15:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var14) on */ +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var14) on */ var19 = var14->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ if (unlikely(var19 == 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); @@ -5611,9 +6549,12 @@ RET_LABEL18:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_type_poset (var17) on */ +{ /* Inline separate_compiler$ToolContext$opt_type_poset (var17) on */ var22 = var17->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_type_poset].val; /* _opt_type_poset on */ if (unlikely(var22 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_type_poset"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 62); fatal_exit(1); @@ -5623,7 +6564,7 @@ RET_LABEL21:(void)0; } } { -{ /* Inline opts#Option#value (var20) on */ +{ /* Inline opts$Option$value (var20) on */ var25 = var20->attrs[COLOR_opts__Option___value].val; /* _value on */ var23 = var25; RET_LABEL24:(void)0; @@ -5637,19 +6578,19 @@ var27 = nitc___nitc__SeparateCompiler___poset_from_mtypes(self, var_live_types, var_poset = var27; var28 = NEW_nitc__POSetColorer(&type_nitc__POSetColorer__nitc__MType); { -{ /* Inline kernel#Object#init (var28) on */ +{ /* Inline kernel$Object$init (var28) on */ RET_LABEL29:(void)0; } } var_colorer = var28; { -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 */ } { var30 = nitc___nitc__POSetColorer___ids(var_colorer); } { -{ /* Inline separate_compiler#SeparateCompiler#type_ids= (self,var30) on */ +{ /* Inline separate_compiler$SeparateCompiler$type_ids= (self,var30) on */ self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_ids].val = var30; /* _type_ids on */ RET_LABEL31:(void)0; } @@ -5658,7 +6599,7 @@ RET_LABEL31:(void)0; var32 = nitc___nitc__POSetColorer___colors(var_colorer); } { -{ /* Inline separate_compiler#SeparateCompiler#type_colors= (self,var32) on */ +{ /* Inline separate_compiler$SeparateCompiler$type_colors= (self,var32) on */ self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_colors].val = var32; /* _type_colors on */ RET_LABEL33:(void)0; } @@ -5667,21 +6608,21 @@ RET_LABEL33:(void)0; var34 = nitc___nitc__SeparateCompiler___build_type_tables(self, var_poset); } { -{ /* Inline separate_compiler#SeparateCompiler#type_tables= (self,var34) on */ +{ /* Inline separate_compiler$SeparateCompiler$type_tables= (self,var34) on */ self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_tables].val = var34; /* _type_tables on */ RET_LABEL35:(void)0; } } } else { { -nitc___nitc__SeparateCompiler___compute_type_test_layouts(self, var_live_types, var_live_cast_types); /* Direct call separate_compiler#SeparateCompiler#compute_type_test_layouts on */ +nitc___nitc__SeparateCompiler___compute_type_test_layouts(self, var_live_types, var_live_cast_types); /* Direct call separate_compiler$SeparateCompiler$compute_type_test_layouts on */ } var36 = NEW_core__HashMap(&type_core__HashMap__nitc__MType__core__Int); { -core___core__HashMap___core__kernel__Object__init(var36); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var36); /* Direct call hash_collection$HashMap$init on */ } { -{ /* Inline separate_compiler#SeparateCompiler#type_ids= (self,var36) on */ +{ /* Inline separate_compiler$SeparateCompiler$type_ids= (self,var36) on */ self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_ids].val = var36; /* _type_ids on */ RET_LABEL37:(void)0; } @@ -5704,9 +6645,12 @@ var41 = ((val*(*)(val* self))((((long)var_39&3)?class_info[((long)var_39&3)]:var } var_x = var41; { -{ /* Inline separate_compiler#SeparateCompiler#type_ids (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$type_ids (self) on */ var44 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_ids].val; /* _type_ids on */ if (unlikely(var44 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_ids"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 149); fatal_exit(1); @@ -5716,9 +6660,12 @@ RET_LABEL43:(void)0; } } { -{ /* Inline separate_compiler#SeparateCompiler#type_ids (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$type_ids (self) on */ var47 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_ids].val; /* _type_ids on */ if (unlikely(var47 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_ids"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 149); fatal_exit(1); @@ -5731,14 +6678,14 @@ RET_LABEL46:(void)0; var48 = ((long(*)(val* self))((((long)var45&3)?class_info[((long)var45&3)]:var45->class)->vft[COLOR_core__abstract_collection__MapRead__length]))(var45); /* length on */ } { -{ /* Inline kernel#Int#+ (var48,1l) on */ +{ /* Inline kernel$Int$+ (var48,1l) on */ /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */ /* <1l:Int> isa OTHER */ var51 = 1; /* easy <1l:Int> isa OTHER*/ if (unlikely(!var51)) { 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); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728); fatal_exit(1); } var52 = var48 + 1l; @@ -5761,14 +6708,14 @@ BREAK_label: (void)0; } } { -nitc___nitc__SeparateCompiler___compute_resolution_tables(self, var_live_types); /* Direct call separate_compiler#SeparateCompiler#compute_resolution_tables on */ +nitc___nitc__SeparateCompiler___compute_resolution_tables(self, var_live_types); /* Direct call separate_compiler$SeparateCompiler$compute_resolution_tables on */ } var = var_res; goto RET_LABEL; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#poset_from_mtypes for (self: SeparateCompiler, Set[MType], Set[MType]): POSet[MType] */ +/* method separate_compiler$SeparateCompiler$poset_from_mtypes for (self: SeparateCompiler, Set[MType], Set[MType]): POSet[MType] */ val* nitc___nitc__SeparateCompiler___poset_from_mtypes(val* self, val* p0, val* p1) { val* var /* : POSet[MType] */; val* var_mtypes /* var mtypes: Set[MType] */; @@ -5854,14 +6801,14 @@ var_mtypes = p0; var_cast_types = p1; var1 = NEW_poset__POSet(&type_poset__POSet__nitc__MType); { -{ /* Inline kernel#Object#init (var1) on */ +{ /* Inline kernel$Object$init (var1) on */ RET_LABEL2:(void)0; } } var_poset = var1; var3 = NEW_more_collections__MultiHashMap(&type_more_collections__MultiHashMap__nitc__MClass__nitc__MType); { -core___core__HashMap___core__kernel__Object__init(var3); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var3); /* Direct call hash_collection$HashMap$init on */ } var_mtypes_by_class = var3; var_ = var_mtypes; @@ -5899,11 +6846,14 @@ PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 462); fatal_exit(1); } { -{ /* Inline model#MClassType#mclass (var8) on */ +{ /* Inline model$MClassType$mclass (var8) on */ var12 = var8->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ if (unlikely(var12 == 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); } var10 = var12; @@ -5915,7 +6865,7 @@ var_c = var10; var13 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_mtypes_by_class, var_c); } { -core___core__Array___core__abstract_collection__SimpleCollection__add(var13, var_e); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var13, var_e); /* Direct call array$Array$add on */ } { var14 = poset___poset__POSet___add_node(var_poset, var_e); @@ -5930,7 +6880,7 @@ BREAK_label: (void)0; } var15 = NEW_more_collections__MultiHashMap(&type_more_collections__MultiHashMap__nitc__MClass__nitc__MType); { -core___core__HashMap___core__kernel__Object__init(var15); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var15); /* Direct call hash_collection$HashMap$init on */ } var_casttypes_by_class = var15; var_16 = var_cast_types; @@ -5968,11 +6918,14 @@ PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 469); fatal_exit(1); } { -{ /* Inline model#MClassType#mclass (var23) on */ +{ /* Inline model$MClassType$mclass (var23) on */ var30 = var23->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ if (unlikely(var30 == 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); } var28 = var30; @@ -5984,7 +6937,7 @@ var_c31 = var28; var32 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_casttypes_by_class, var_c31); } { -core___core__Array___core__abstract_collection__SimpleCollection__add(var32, var_e22); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var32, var_e22); /* Direct call array$Array$add on */ } { var33 = poset___poset__POSet___add_node(var_poset, var_e22); @@ -6019,11 +6972,14 @@ var40 = ((val*(*)(val* self))((((long)var_36&3)?class_info[((long)var_36&3)]:var } var_ts1 = var40; { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var43 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var43 == 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); } var41 = var43; @@ -6092,10 +7048,10 @@ var65 = ((val*(*)(val* self))((((long)var_62&3)?class_info[((long)var_62&3)]:var } var_o = var65; { -{ /* Inline kernel#Object#== (var_e59,var_o) on */ +{ /* Inline kernel$Object$== (var_e59,var_o) on */ var_other = var_o; { -{ /* Inline kernel#Object#is_same_instance (var_e59,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var_e59,var_other) on */ var70 = var_e59 == var_other; var68 = var70; goto RET_LABEL69; @@ -6112,11 +7068,14 @@ goto BREAK_label71; } else { } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var74 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var74 == 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); } var72 = var74; @@ -6128,7 +7087,7 @@ var75 = nitc___nitc__MType___is_subtype(var_e59, var72, ((val*)NULL), var_o); } if (var75){ { -poset___poset__POSet___add_edge(var_poset, var_e59, var_o); /* Direct call poset#POSet#add_edge on */ +poset___poset__POSet___add_edge(var_poset, var_e59, var_o); /* Direct call poset$POSet$add_edge on */ } } else { } @@ -6163,7 +7122,7 @@ BREAK_label50: (void)0; } BREAK_label38: (void)0; { -{ /* Inline abstract_collection#MapIterator#finish (var_36) on */ +{ /* Inline abstract_collection$MapIterator$finish (var_36) on */ RET_LABEL76:(void)0; } } @@ -6172,7 +7131,7 @@ goto RET_LABEL; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#build_type_tables for (self: SeparateCompiler, POSet[MType]): Map[MType, Array[nullable MType]] */ +/* method separate_compiler$SeparateCompiler$build_type_tables for (self: SeparateCompiler, POSet[MType]): Map[MType, Array[nullable MType]] */ val* nitc___nitc__SeparateCompiler___build_type_tables(val* self, val* p0) { val* var /* : Map[MType, Array[nullable MType]] */; val* var_mtypes /* var mtypes: POSet[MType] */; @@ -6221,7 +7180,7 @@ long var39 /* : Int */; var_mtypes = p0; var1 = NEW_core__HashMap(&type_core__HashMap__nitc__MType__core__Array__nullable__nitc__MType); { -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_mtypes; @@ -6243,7 +7202,7 @@ var5 = ((val*(*)(val* self))((((long)var_3&3)?class_info[((long)var_3&3)]:var_3- var_mtype = var5; var6 = NEW_core__Array(&type_core__Array__nullable__nitc__MType); { -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; { @@ -6270,9 +7229,12 @@ var14 = ((val*(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var } var_sup = var14; { -{ /* Inline separate_compiler#SeparateCompiler#type_colors (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$type_colors (self) on */ var17 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_colors].val; /* _type_colors on */ if (unlikely(var17 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 150); fatal_exit(1); @@ -6287,21 +7249,21 @@ var18 = ((val*(*)(val* self, val* p0))((((long)var15&3)?class_info[((long)var15& var19 = (long)(var18)>>2; var_color = var19; { -{ /* Inline array#AbstractArrayRead#length (var_table) on */ +{ /* Inline array$AbstractArrayRead$length (var_table) on */ var22 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var20 = var22; RET_LABEL21:(void)0; } } { -{ /* Inline kernel#Int#<= (var20,var_color) on */ +{ /* Inline kernel$Int$<= (var20,var_color) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ var25 = 1; /* easy isa OTHER*/ if (unlikely(!var25)) { 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); } var26 = var20 <= var_color; @@ -6312,7 +7274,7 @@ RET_LABEL24:(void)0; } if (var23){ { -{ /* Inline array#AbstractArrayRead#length (var_table) on */ +{ /* Inline array$AbstractArrayRead$length (var_table) on */ var29 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var27 = var29; RET_LABEL28:(void)0; @@ -6322,14 +7284,14 @@ var_i = var27; var_30 = var_color; for(;;) { { -{ /* Inline kernel#Int#< (var_i,var_30) on */ +{ /* Inline kernel$Int$< (var_i,var_30) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ var33 = 1; /* easy isa OTHER*/ if (unlikely(!var33)) { var_class_name36 = type_core__Int.name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name36); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 725); fatal_exit(1); } var37 = var_i < var_30; @@ -6343,7 +7305,7 @@ if (var31){ goto BREAK_label38; } { -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 */ } { var39 = core___core__Int___Discrete__successor(var_i, 1l); @@ -6354,7 +7316,7 @@ BREAK_label38: (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_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_11); /* next on */ @@ -6365,7 +7327,7 @@ BREAK_label13: (void)0; ((void(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_11); /* finish on */ } { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_tables, var_mtype, var_table); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_tables, var_mtype, 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 */ @@ -6380,7 +7342,7 @@ goto RET_LABEL; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#compute_type_test_layouts for (self: SeparateCompiler, Set[MClassType], Set[MType]) */ +/* method separate_compiler$SeparateCompiler$compute_type_test_layouts for (self: SeparateCompiler, Set[MClassType], Set[MType]) */ void nitc___nitc__SeparateCompiler___compute_type_test_layouts(val* self, val* p0, val* p1) { val* var_mtypes /* var mtypes: Set[MClassType] */; val* var_cast_types /* var cast_types: Set[MType] */; @@ -6457,7 +7419,7 @@ var_mtypes = p0; var_cast_types = p1; var = NEW_core__HashMap(&type_core__HashMap__nitc__MClass__core__Set__nitc__MType); { -core___core__HashMap___core__kernel__Object__init(var); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var); /* Direct call hash_collection$HashMap$init on */ } var_bucklets = var; var_ = var_cast_types; @@ -6495,11 +7457,14 @@ PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 514); fatal_exit(1); } { -{ /* Inline model#MClassType#mclass (var5) on */ +{ /* Inline model$MClassType$mclass (var5) on */ var9 = var5->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ if (unlikely(var9 == 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); } var7 = var9; @@ -6514,10 +7479,10 @@ var11 = !var10; if (var11){ var12 = NEW_core__HashSet(&type_core__HashSet__nitc__MType); { -core___core__HashSet___core__kernel__Object__init(var12); /* Direct call hash_collection#HashSet#init on */ +core___core__HashSet___core__kernel__Object__init(var12); /* Direct call hash_collection$HashSet$init on */ } { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_bucklets, var_c, var12); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_bucklets, var_c, var12); /* Direct call hash_collection$HashMap$[]= on */ } } else { } @@ -6537,9 +7502,12 @@ BREAK_label: (void)0; } var14 = NEW_nitc__POSetGroupColorer(&type_nitc__POSetGroupColorer__nitc__MClass__nitc__MType); { -{ /* Inline separate_compiler#SeparateCompiler#class_conflict_graph (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$class_conflict_graph (self) on */ var17 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___class_conflict_graph].val; /* _class_conflict_graph on */ if (unlikely(var17 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_conflict_graph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 310); fatal_exit(1); @@ -6562,36 +7530,45 @@ var_colorer = var14; var18 = nitc___nitc__POSetGroupColorer___colors(var_colorer); } { -{ /* Inline separate_compiler#SeparateCompiler#type_colors= (self,var18) on */ +{ /* Inline separate_compiler$SeparateCompiler$type_colors= (self,var18) on */ self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_colors].val = var18; /* _type_colors on */ RET_LABEL19:(void)0; } } var20 = NEW_core__HashMap(&type_core__HashMap__nitc__MClass__core__Array__nullable__nitc__MType); { -core___core__HashMap___core__kernel__Object__init(var20); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var20); /* Direct call hash_collection$HashMap$init on */ } var_layouts = var20; { -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (self) on */ var23 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ var21 = var23; RET_LABEL22:(void)0; } } if (var21 == NULL) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Receiver is null"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 526); fatal_exit(1); } else { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_classes (var21) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_classes (var21) on */ if (unlikely(var21 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Receiver is null"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 69); fatal_exit(1); } var26 = var21->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_classes].val; /* _live_classes on */ if (unlikely(var26 == 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); @@ -6621,7 +7598,7 @@ var_c33 = var32; var34 = nitc___nitc__POSetGroupColorer___build_layout(var_colorer, var_c33); } { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_layouts, var_c33, var34); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_layouts, var_c33, var34); /* Direct call hash_collection$HashMap$[]= on */ } { ((void(*)(val* self))((((long)var_29&3)?class_info[((long)var_29&3)]:var_29->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_29); /* next on */ @@ -6649,11 +7626,14 @@ var40 = ((val*(*)(val* self))((((long)var_37&3)?class_info[((long)var_37&3)]:var } var_t = var40; { -{ /* Inline model#MClassType#mclass (var_t) on */ +{ /* Inline model$MClassType$mclass (var_t) on */ var43 = var_t->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ if (unlikely(var43 == 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); } var41 = var43; @@ -6667,22 +7647,25 @@ var45 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_ var_layout = var45; var46 = NEW_core__Array(&type_core__Array__nullable__nitc__MType); { -{ /* Inline array#AbstractArrayRead#length (var_layout) on */ +{ /* Inline array$AbstractArrayRead$length (var_layout) on */ var49 = var_layout->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var47 = var49; RET_LABEL48:(void)0; } } { -core___core__Array___with_capacity(var46, var47); /* Direct call array#Array#with_capacity on */ +core___core__Array___with_capacity(var46, var47); /* Direct call array$Array$with_capacity on */ } var_table = var46; { -{ /* Inline separate_compiler#SeparateCompiler#type_tables (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$type_tables (self) on */ var52 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_tables].val; /* _type_tables on */ if (unlikely(var52 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_tables"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1065); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1071); fatal_exit(1); } var50 = var52; @@ -6715,10 +7698,10 @@ var59 = 1; /* is null */ var59 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var_sup,((val*)NULL)) on */ +{ /* Inline kernel$Object$== (var_sup,((val*)NULL)) on */ var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var_sup,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var_sup,var_other) on */ var64 = var_sup == var_other; var62 = var64; goto RET_LABEL63; @@ -6733,15 +7716,18 @@ var59 = var60; } if (var59){ { -core___core__Array___core__abstract_collection__SimpleCollection__add(var_table, ((val*)NULL)); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var_table, ((val*)NULL)); /* Direct call array$Array$add on */ } } else { { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var67 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var67 == 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); } var65 = var67; @@ -6753,11 +7739,11 @@ var68 = nitc___nitc__MType___is_subtype(var_t, var65, ((val*)NULL), var_sup); } if (var68){ { -core___core__Array___core__abstract_collection__SimpleCollection__add(var_table, var_sup); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var_table, var_sup); /* Direct call array$Array$add on */ } } else { { -core___core__Array___core__abstract_collection__SimpleCollection__add(var_table, ((val*)NULL)); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var_table, ((val*)NULL)); /* Direct call array$Array$add on */ } } } @@ -6779,7 +7765,7 @@ BREAK_label39: (void)0; } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#compute_resolution_tables for (self: SeparateCompiler, Set[MType]) */ +/* method separate_compiler$SeparateCompiler$compute_resolution_tables for (self: SeparateCompiler, Set[MType]) */ void nitc___nitc__SeparateCompiler___compute_resolution_tables(val* self, val* p0) { val* var_mtypes /* var mtypes: Set[MType] */; val* var /* : HashMap[MClass, Set[MType]] */; @@ -6856,29 +7842,38 @@ val* var78 /* : nullable Object */; var_mtypes = p0; var = NEW_core__HashMap(&type_core__HashMap__nitc__MClass__core__Set__nitc__MType); { -core___core__HashMap___core__kernel__Object__init(var); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var); /* Direct call hash_collection$HashMap$init on */ } var_mtype2unresolved = var; { -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (self) on */ var3 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ var1 = var3; RET_LABEL2:(void)0; } } if (var1 == NULL) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Receiver is null"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 559); fatal_exit(1); } else { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_types (var1) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_types (var1) on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Receiver is null"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 60); fatal_exit(1); } var6 = var1->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_types].val; /* _live_types on */ if (unlikely(var6 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_types"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 60); fatal_exit(1); @@ -6905,11 +7900,14 @@ var10 = ((val*(*)(val* self))((((long)var_8&3)?class_info[((long)var_8&3)]:var_8 } var_mtype = var10; { -{ /* Inline model#MClassType#mclass (var_mtype) on */ +{ /* Inline model$MClassType$mclass (var_mtype) on */ var13 = var_mtype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ if (unlikely(var13 == 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); } var11 = var13; @@ -6933,20 +7931,23 @@ var15 = var16; if (var15){ var17 = NEW_core__HashSet(&type_core__HashSet__nitc__MType); { -core___core__HashSet___core__kernel__Object__init(var17); /* Direct call hash_collection#HashSet#init on */ +core___core__HashSet___core__kernel__Object__init(var17); /* Direct call hash_collection$HashSet$init on */ } var_set = var17; { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_mtype2unresolved, var_mclass, var_set); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_mtype2unresolved, var_mclass, var_set); /* Direct call hash_collection$HashMap$[]= on */ } } else { } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var20 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var20 == 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); } var18 = var20; @@ -6974,9 +7975,12 @@ var27 = ((val*(*)(val* self))((((long)var_24&3)?class_info[((long)var_24&3)]:var } var_cd = var27; { -{ /* Inline separate_compiler#SeparateCompiler#live_unresolved_types (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$live_unresolved_types (self) on */ var30 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___live_unresolved_types].val; /* _live_unresolved_types on */ if (unlikely(var30 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_unresolved_types"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 147); fatal_exit(1); @@ -6990,9 +7994,12 @@ var31 = ((short int(*)(val* self, val* p0))((((long)var28&3)?class_info[((long)v } if (var31){ { -{ /* Inline separate_compiler#SeparateCompiler#live_unresolved_types (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$live_unresolved_types (self) on */ var34 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___live_unresolved_types].val; /* _live_unresolved_types on */ if (unlikely(var34 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_unresolved_types"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 147); fatal_exit(1); @@ -7005,7 +8012,7 @@ RET_LABEL33:(void)0; var35 = ((val*(*)(val* self, val* p0))((((long)var32&3)?class_info[((long)var32&3)]:var32->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var32, var_cd); /* [] on */ } { -core___core__SimpleCollection___add_all(var_set, var35); /* Direct call abstract_collection#SimpleCollection#add_all on */ +core___core__SimpleCollection___add_all(var_set, var35); /* Direct call abstract_collection$SimpleCollection$add_all on */ } } else { } @@ -7027,7 +8034,7 @@ BREAK_label: (void)0; } var36 = NEW_nitc__BucketsColorer(&type_nitc__BucketsColorer__nitc__MClass__nitc__MType); { -{ /* Inline kernel#Object#init (var36) on */ +{ /* Inline kernel$Object$init (var36) on */ RET_LABEL37:(void)0; } } @@ -7036,31 +8043,40 @@ var_colorer = var36; var38 = nitc___nitc__BucketsColorer___colorize(var_colorer, var_mtype2unresolved); } { -{ /* Inline separate_compiler#SeparateCompiler#opentype_colors= (self,var38) on */ +{ /* Inline separate_compiler$SeparateCompiler$opentype_colors= (self,var38) on */ self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___opentype_colors].val = var38; /* _opentype_colors on */ RET_LABEL39:(void)0; } } { -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (self) on */ var42 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ var40 = var42; RET_LABEL41:(void)0; } } if (var40 == NULL) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Receiver is null"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 577); fatal_exit(1); } else { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_types (var40) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_types (var40) on */ if (unlikely(var40 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Receiver is null"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 60); fatal_exit(1); } var45 = var40->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_types].val; /* _live_types on */ if (unlikely(var45 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_types"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 60); fatal_exit(1); @@ -7073,20 +8089,23 @@ RET_LABEL44:(void)0; var46 = nitc___nitc__SeparateCompiler___build_resolution_tables(self, var43, var_mtype2unresolved); } { -{ /* Inline separate_compiler#SeparateCompiler#resolution_tables= (self,var46) on */ +{ /* Inline separate_compiler$SeparateCompiler$resolution_tables= (self,var46) on */ self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___resolution_tables].val = var46; /* _resolution_tables on */ RET_LABEL47:(void)0; } } var48 = NEW_core__HashSet(&type_core__HashSet__nitc__MType); { -core___core__HashSet___core__kernel__Object__init(var48); /* Direct call hash_collection#HashSet#init on */ +core___core__HashSet___core__kernel__Object__init(var48); /* Direct call hash_collection$HashSet$init on */ } var_all_unresolved = var48; { -{ /* Inline separate_compiler#SeparateCompiler#live_unresolved_types (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$live_unresolved_types (self) on */ var51 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___live_unresolved_types].val; /* _live_unresolved_types on */ if (unlikely(var51 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_unresolved_types"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 147); fatal_exit(1); @@ -7116,7 +8135,7 @@ var58 = ((val*(*)(val* self))((((long)var_55&3)?class_info[((long)var_55&3)]:var } var_t = var58; { -core___core__SimpleCollection___add_all(var_all_unresolved, var_t); /* Direct call abstract_collection#SimpleCollection#add_all on */ +core___core__SimpleCollection___add_all(var_all_unresolved, var_t); /* Direct call abstract_collection$SimpleCollection$add_all on */ } { ((void(*)(val* self))((((long)var_55&3)?class_info[((long)var_55&3)]:var_55->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_55); /* next on */ @@ -7128,7 +8147,7 @@ BREAK_label57: (void)0; } var59 = NEW_core__HashMap(&type_core__HashMap__nitc__MType__core__Int); { -core___core__HashMap___core__kernel__Object__init(var59); /* Direct call hash_collection#HashMap#init on */ +core___core__HashMap___core__kernel__Object__init(var59); /* Direct call hash_collection$HashMap$init on */ } var_all_unresolved_types_colors = var59; var_60 = var_all_unresolved; @@ -7149,9 +8168,12 @@ var65 = ((val*(*)(val* self))((((long)var_62&3)?class_info[((long)var_62&3)]:var } var_t66 = var65; { -{ /* Inline separate_compiler#SeparateCompiler#opentype_colors (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$opentype_colors (self) on */ var69 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___opentype_colors].val; /* _opentype_colors on */ if (unlikely(var69 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opentype_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 151); fatal_exit(1); @@ -7165,9 +8187,12 @@ var70 = ((short int(*)(val* self, val* p0))((((long)var67&3)?class_info[((long)v } if (var70){ { -{ /* Inline separate_compiler#SeparateCompiler#opentype_colors (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$opentype_colors (self) on */ var73 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___opentype_colors].val; /* _opentype_colors on */ if (unlikely(var73 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opentype_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 151); fatal_exit(1); @@ -7180,11 +8205,11 @@ RET_LABEL72:(void)0; var74 = ((val*(*)(val* self, val* p0))((((long)var71&3)?class_info[((long)var71&3)]:var71->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var71, var_t66); /* [] on */ } { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_all_unresolved_types_colors, var_t66, var74); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_all_unresolved_types_colors, var_t66, var74); /* Direct call hash_collection$HashMap$[]= on */ } } else { { -{ /* Inline kernel#Int#unary - (1l) on <1l:Int> */ +{ /* Inline kernel$Int$unary - (1l) on <1l:Int> */ var77 = -1l; var75 = var77; goto RET_LABEL76; @@ -7193,7 +8218,7 @@ RET_LABEL76:(void)0; } { var78 = (val*)(var75<<2|1); -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_all_unresolved_types_colors, var_t66, var78); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_all_unresolved_types_colors, var_t66, var78); /* Direct call hash_collection$HashMap$[]= on */ } } { @@ -7205,11 +8230,11 @@ BREAK_label64: (void)0; ((void(*)(val* self))((((long)var_62&3)?class_info[((long)var_62&3)]:var_62->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_62); /* finish on */ } { -nitc___nitc__SeparateCompiler___compile_color_consts(self, var_all_unresolved_types_colors); /* Direct call separate_compiler#SeparateCompiler#compile_color_consts on */ +nitc___nitc__SeparateCompiler___compile_color_consts(self, var_all_unresolved_types_colors); /* Direct call separate_compiler$SeparateCompiler$compile_color_consts on */ } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#build_resolution_tables for (self: SeparateCompiler, Set[MClassType], Map[MClass, Set[MType]]): Map[MClassType, Array[nullable MType]] */ +/* method separate_compiler$SeparateCompiler$build_resolution_tables for (self: SeparateCompiler, Set[MClassType], Map[MClass, Set[MType]]): Map[MClassType, Array[nullable MType]] */ val* nitc___nitc__SeparateCompiler___build_resolution_tables(val* self, val* p0, val* p1) { val* var /* : Map[MClassType, Array[nullable MType]] */; val* var_elements /* var elements: Set[MClassType] */; @@ -7262,7 +8287,7 @@ var_elements = p0; var_map = p1; var1 = NEW_core__HashMap(&type_core__HashMap__nitc__MClassType__core__Array__nullable__nitc__MType); { -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_elements; @@ -7283,11 +8308,14 @@ var5 = ((val*(*)(val* self))((((long)var_3&3)?class_info[((long)var_3&3)]:var_3- } var_mclasstype = var5; { -{ /* Inline model#MClassType#mclass (var_mclasstype) on */ +{ /* Inline model$MClassType$mclass (var_mclasstype) on */ var8 = var_mclasstype->attrs[COLOR_nitc__model__MClassType___mclass].val; /* _mclass on */ if (unlikely(var8 == 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); } var6 = var8; @@ -7300,7 +8328,7 @@ var9 = ((val*(*)(val* self, val* p0))((((long)var_map&3)?class_info[((long)var_m var_mtypes = var9; var10 = NEW_core__Array(&type_core__Array__nullable__nitc__MType); { -core___core__Array___core__kernel__Object__init(var10); /* Direct call array#Array#init on */ +core___core__Array___core__kernel__Object__init(var10); /* Direct call array$Array$init on */ } var_table = var10; var_11 = var_mtypes; @@ -7321,9 +8349,12 @@ var16 = ((val*(*)(val* self))((((long)var_13&3)?class_info[((long)var_13&3)]:var } var_mtype = var16; { -{ /* Inline separate_compiler#SeparateCompiler#opentype_colors (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$opentype_colors (self) on */ var19 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___opentype_colors].val; /* _opentype_colors on */ if (unlikely(var19 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opentype_colors"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 151); fatal_exit(1); @@ -7338,21 +8369,21 @@ var20 = ((val*(*)(val* self, val* p0))((((long)var17&3)?class_info[((long)var17& var21 = (long)(var20)>>2; var_color = var21; { -{ /* Inline array#AbstractArrayRead#length (var_table) on */ +{ /* Inline array$AbstractArrayRead$length (var_table) on */ var24 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var22 = var24; RET_LABEL23:(void)0; } } { -{ /* Inline kernel#Int#<= (var22,var_color) on */ +{ /* Inline kernel$Int$<= (var22,var_color) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ var27 = 1; /* easy isa OTHER*/ if (unlikely(!var27)) { 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); } var28 = var22 <= var_color; @@ -7363,7 +8394,7 @@ RET_LABEL26:(void)0; } if (var25){ { -{ /* Inline array#AbstractArrayRead#length (var_table) on */ +{ /* Inline array$AbstractArrayRead$length (var_table) on */ var31 = var_table->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var29 = var31; RET_LABEL30:(void)0; @@ -7373,14 +8404,14 @@ var_i = var29; var_32 = var_color; for(;;) { { -{ /* Inline kernel#Int#< (var_i,var_32) on */ +{ /* Inline kernel$Int$< (var_i,var_32) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ var35 = 1; /* easy isa OTHER*/ if (unlikely(!var35)) { var_class_name38 = type_core__Int.name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name38); -PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 725); fatal_exit(1); } var39 = var_i < var_32; @@ -7394,7 +8425,7 @@ if (var33){ goto BREAK_label40; } { -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 */ } { var41 = core___core__Int___Discrete__successor(var_i, 1l); @@ -7405,7 +8436,7 @@ BREAK_label40: (void)0; } else { } { -core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_color, var_mtype); /* Direct call array#Array#[]= on */ +core___core__Array___core__abstract_collection__Sequence___91d_93d_61d(var_table, var_color, var_mtype); /* Direct call array$Array$[]= on */ } { ((void(*)(val* self))((((long)var_13&3)?class_info[((long)var_13&3)]:var_13->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_13); /* next on */ @@ -7416,7 +8447,7 @@ BREAK_label15: (void)0; ((void(*)(val* self))((((long)var_13&3)?class_info[((long)var_13&3)]:var_13->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_13); /* finish on */ } { -core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_tables, var_mclasstype, var_table); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_tables, var_mclasstype, 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 */ @@ -7431,7 +8462,7 @@ goto RET_LABEL; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#compile_module_to_c for (self: SeparateCompiler, MModule) */ +/* method separate_compiler$SeparateCompiler$compile_module_to_c for (self: SeparateCompiler, MModule) */ void nitc___nitc__SeparateCompiler___compile_module_to_c(val* self, val* p0) { val* var_mmodule /* var mmodule: MModule */; val* var /* : MModule */; @@ -7517,11 +8548,14 @@ val* var93 /* : nullable Object */; short int var94 /* : Bool */; var_mmodule = p0; { -{ /* 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; @@ -7530,17 +8564,20 @@ RET_LABEL1:(void)0; } var_old_module = var; { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule= (self,var_mmodule) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule= (self,var_mmodule) on */ self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val = var_mmodule; /* _mainmodule on */ RET_LABEL3:(void)0; } } { -{ /* Inline model#MModule#mclassdefs (var_mmodule) on */ +{ /* Inline model$MModule$mclassdefs (var_mmodule) on */ var6 = var_mmodule->attrs[COLOR_nitc__model__MModule___mclassdefs].val; /* _mclassdefs on */ if (unlikely(var6 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdefs"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 141); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 150); fatal_exit(1); } var4 = var6; @@ -7565,11 +8602,14 @@ var10 = ((val*(*)(val* self))((((long)var_8&3)?class_info[((long)var_8&3)]:var_8 } var_cd = var10; { -{ /* Inline model#MClassDef#mpropdefs (var_cd) on */ +{ /* Inline model$MClassDef$mpropdefs (var_cd) on */ var13 = var_cd->attrs[COLOR_nitc__model__MClassDef___mpropdefs].val; /* _mpropdefs on */ if (unlikely(var13 == 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, 707); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 723); fatal_exit(1); } var11 = var13; @@ -7607,11 +8647,14 @@ goto BREAK_label22; } else { } { -{ /* Inline model#MPropDef#mproperty (var_pd) on */ +{ /* Inline model$MPropDef$mproperty (var_pd) on */ var27 = var_pd->attrs[COLOR_nitc__model__MPropDef___mproperty].val; /* _mproperty on */ if (unlikely(var27 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2230); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2357); fatal_exit(1); } var25 = var27; @@ -7619,7 +8662,7 @@ RET_LABEL26:(void)0; } } { -{ /* Inline model_base#MEntity#is_broken (var25) on */ +{ /* Inline model_base$MEntity$is_broken (var25) on */ var30 = var25->attrs[COLOR_nitc__model_base__MEntity___is_broken].s; /* _is_broken on */ var28 = var30; RET_LABEL29:(void)0; @@ -7630,7 +8673,7 @@ if (var28){ var24 = var_31; } else { { -{ /* Inline model_base#MEntity#is_broken (var_pd) on */ +{ /* Inline model_base$MEntity$is_broken (var_pd) on */ var34 = var_pd->attrs[COLOR_nitc__model_base__MEntity___is_broken].s; /* _is_broken on */ var32 = var34; RET_LABEL33:(void)0; @@ -7643,7 +8686,7 @@ if (var24){ var23 = var_35; } else { { -{ /* Inline model#MMethodDef#msignature (var_pd) on */ +{ /* Inline model$MMethodDef$msignature (var_pd) on */ var38 = var_pd->attrs[COLOR_nitc__model__MMethodDef___msignature].val; /* _msignature on */ var36 = var38; RET_LABEL37:(void)0; @@ -7655,10 +8698,10 @@ var39 = 1; /* is null */ var39 = 0; /* arg is null but recv is not */ } if (0) { -{ /* Inline kernel#Object#== (var36,((val*)NULL)) on */ +{ /* Inline kernel$Object$== (var36,((val*)NULL)) on */ var_other = ((val*)NULL); { -{ /* Inline kernel#Object#is_same_instance (var36,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var36,var_other) on */ var44 = var36 == var_other; var42 = var44; goto RET_LABEL43; @@ -7678,7 +8721,7 @@ goto BREAK_label22; } else { } { -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (self) on */ var47 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ var45 = var47; RET_LABEL46:(void)0; @@ -7686,11 +8729,14 @@ RET_LABEL46:(void)0; } var_rta = var45; { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ var52 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ if (unlikely(var52 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } var50 = var52; @@ -7698,9 +8744,12 @@ RET_LABEL51:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var50) on */ +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var50) on */ var55 = var50->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ if (unlikely(var55 == 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); @@ -7710,9 +8759,12 @@ RET_LABEL54:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_skip_dead_methods (var53) on */ +{ /* Inline separate_compiler$ToolContext$opt_skip_dead_methods (var53) on */ var58 = var53->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_skip_dead_methods].val; /* _opt_skip_dead_methods on */ if (unlikely(var58 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_skip_dead_methods"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 54); fatal_exit(1); @@ -7722,7 +8774,7 @@ RET_LABEL57:(void)0; } } { -{ /* Inline opts#Option#value (var56) on */ +{ /* Inline opts$Option$value (var56) on */ var61 = var56->attrs[COLOR_opts__Option___value].val; /* _value on */ var59 = var61; RET_LABEL60:(void)0; @@ -7737,7 +8789,7 @@ var64 = 0; /* is null */ var64 = 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_other67 = ((val*)NULL); { var68 = ((short int(*)(val* self, val* p0))(var_rta->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_rta, var_other67); /* == on */ @@ -7756,9 +8808,12 @@ var49 = var_63; var_70 = var49; if (var49){ { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_methoddefs (var_rta) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_methoddefs (var_rta) on */ var73 = var_rta->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_methoddefs].val; /* _live_methoddefs on */ if (unlikely(var73 == 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); @@ -7784,14 +8839,14 @@ var76 = nitc__separate_compiler___MMethodDef___separate_runtime_function(var_pd) } var_r = var76; { -nitc___nitc__SeparateRuntimeFunction___nitc__abstract_compiler__AbstractRuntimeFunction__compile_to_c(var_r, self); /* Direct call separate_compiler#SeparateRuntimeFunction#compile_to_c on */ +nitc___nitc__SeparateRuntimeFunction___nitc__abstract_compiler__AbstractRuntimeFunction__compile_to_c(var_r, self); /* Direct call separate_compiler$SeparateRuntimeFunction$compile_to_c on */ } { var77 = nitc__separate_compiler___MMethodDef___virtual_runtime_function(var_pd); } var_r2 = var77; { -{ /* Inline kernel#Object#!= (var_r2,var_r) on */ +{ /* Inline kernel$Object$!= (var_r2,var_r) on */ var_other67 = var_r; { var80 = ((short int(*)(val* self, val* p0))(var_r2->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_r2, var_other67); /* == on */ @@ -7804,16 +8859,19 @@ RET_LABEL79:(void)0; } if (var78){ { -nitc___nitc__SeparateRuntimeFunction___nitc__abstract_compiler__AbstractRuntimeFunction__compile_to_c(var_r2, self); /* Direct call separate_compiler#SeparateRuntimeFunction#compile_to_c on */ +nitc___nitc__SeparateRuntimeFunction___nitc__abstract_compiler__AbstractRuntimeFunction__compile_to_c(var_r2, self); /* Direct call separate_compiler$SeparateRuntimeFunction$compile_to_c on */ } } else { } { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ var84 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ if (unlikely(var84 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } var82 = var84; @@ -7821,9 +8879,12 @@ RET_LABEL83:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var82) on */ +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var82) on */ var87 = var82->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ if (unlikely(var87 == 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); @@ -7833,9 +8894,12 @@ RET_LABEL86:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_trampoline_call (var85) on */ +{ /* Inline separate_compiler$ToolContext$opt_trampoline_call (var85) on */ var90 = var85->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_trampoline_call].val; /* _opt_trampoline_call on */ if (unlikely(var90 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_trampoline_call"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 37); fatal_exit(1); @@ -7845,7 +8909,7 @@ RET_LABEL89:(void)0; } } { -{ /* Inline opts#Option#value (var88) on */ +{ /* Inline opts$Option$value (var88) on */ var93 = var88->attrs[COLOR_opts__Option___value].val; /* _value on */ var91 = var93; RET_LABEL92:(void)0; @@ -7854,7 +8918,7 @@ RET_LABEL92:(void)0; var94 = (short int)((long)(var91)>>2); if (var94){ { -nitc___nitc__SeparateRuntimeFunction___compile_trampolines(var_r2, self); /* Direct call separate_compiler#SeparateRuntimeFunction#compile_trampolines on */ +nitc___nitc__SeparateRuntimeFunction___compile_trampolines(var_r2, self); /* Direct call separate_compiler$SeparateRuntimeFunction$compile_trampolines on */ } } else { } @@ -7876,14 +8940,14 @@ BREAK_label: (void)0; ((void(*)(val* self))((((long)var_8&3)?class_info[((long)var_8&3)]:var_8->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_8); /* finish on */ } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule= (self,var_old_module) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule= (self,var_old_module) on */ self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val = var_old_module; /* _mainmodule on */ RET_LABEL95:(void)0; } } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#link_mmethods for (self: SeparateCompiler) */ +/* method separate_compiler$SeparateCompiler$link_mmethods for (self: SeparateCompiler) */ void nitc___nitc__SeparateCompiler___link_mmethods(val* self) { short int var /* : Bool */; val* var1 /* : ModelBuilder */; @@ -7939,11 +9003,14 @@ int cltype; int idtype; short int var60 /* : Bool */; { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ var3 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ if (unlikely(var3 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } var1 = var3; @@ -7951,9 +9018,12 @@ RET_LABEL2:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var1) on */ +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var1) on */ var6 = var1->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); @@ -7963,9 +9033,12 @@ RET_LABEL5:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_substitute_monomorph (var4) on */ +{ /* Inline separate_compiler$ToolContext$opt_substitute_monomorph (var4) on */ var9 = var4->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_substitute_monomorph].val; /* _opt_substitute_monomorph on */ if (unlikely(var9 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_substitute_monomorph"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 41); fatal_exit(1); @@ -7975,7 +9048,7 @@ RET_LABEL8:(void)0; } } { -{ /* Inline opts#Option#value (var7) on */ +{ /* Inline opts$Option$value (var7) on */ var12 = var7->attrs[COLOR_opts__Option___value].val; /* _value on */ var10 = var12; RET_LABEL11:(void)0; @@ -7986,11 +9059,14 @@ var14 = !var13; var_ = var14; if (var14){ { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ var17 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ if (unlikely(var17 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } var15 = var17; @@ -7998,9 +9074,12 @@ RET_LABEL16:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var15) on */ +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var15) on */ var20 = var15->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ if (unlikely(var20 == 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); @@ -8010,9 +9089,12 @@ RET_LABEL19:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_guard_call (var18) on */ +{ /* Inline separate_compiler$ToolContext$opt_guard_call (var18) on */ var23 = var18->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_guard_call].val; /* _opt_guard_call on */ if (unlikely(var23 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_guard_call"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 39); fatal_exit(1); @@ -8022,7 +9104,7 @@ RET_LABEL22:(void)0; } } { -{ /* Inline opts#Option#value (var21) on */ +{ /* Inline opts$Option$value (var21) on */ var26 = var21->attrs[COLOR_opts__Option___value].val; /* _value on */ var24 = var26; RET_LABEL25:(void)0; @@ -8039,11 +9121,14 @@ goto RET_LABEL; } else { } { -{ /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on */ +{ /* Inline abstract_compiler$AbstractCompiler$mainmodule (self) on */ var31 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule].val; /* _mainmodule on */ if (unlikely(var31 == 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); } var29 = var31; @@ -8051,11 +9136,14 @@ RET_LABEL30:(void)0; } } { -{ /* Inline mmodule#MModule#in_importation (var29) on */ +{ /* Inline mmodule$MModule$in_importation (var29) on */ var34 = var29->attrs[COLOR_nitc__mmodule__MModule___in_importation].val; /* _in_importation on */ if (unlikely(var34 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_importation"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 104); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule, 108); fatal_exit(1); } var32 = var34; @@ -8083,11 +9171,14 @@ var40 = ((val*(*)(val* self))((((long)var_38&3)?class_info[((long)var_38&3)]:var } var_mmodule = var40; { -{ /* Inline model#MModule#mclassdefs (var_mmodule) on */ +{ /* Inline model$MModule$mclassdefs (var_mmodule) on */ var43 = var_mmodule->attrs[COLOR_nitc__model__MModule___mclassdefs].val; /* _mclassdefs on */ if (unlikely(var43 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdefs"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 141); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 150); fatal_exit(1); } var41 = var43; @@ -8112,11 +9203,14 @@ var49 = ((val*(*)(val* self))((((long)var_46&3)?class_info[((long)var_46&3)]:var } var_cd = var49; { -{ /* Inline model#MClassDef#intro_mproperties (var_cd) on */ +{ /* Inline model$MClassDef$intro_mproperties (var_cd) on */ var52 = var_cd->attrs[COLOR_nitc__model__MClassDef___intro_mproperties].val; /* _intro_mproperties on */ if (unlikely(var52 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro_mproperties"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 704); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 720); fatal_exit(1); } var50 = var52; @@ -8154,7 +9248,7 @@ goto BREAK_label61; } else { } { -nitc___nitc__SeparateCompiler___link_mmethod(self, var_m); /* Direct call separate_compiler#SeparateCompiler#link_mmethod on */ +nitc___nitc__SeparateCompiler___link_mmethod(self, var_m); /* Direct call separate_compiler$SeparateCompiler$link_mmethod on */ } BREAK_label61: (void)0; { @@ -8183,262 +9277,317 @@ BREAK_label: (void)0; } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#link_mmethod for (self: SeparateCompiler, MMethod) */ +/* method separate_compiler$SeparateCompiler$link_mmethod for (self: SeparateCompiler, MMethod) */ void nitc___nitc__SeparateCompiler___link_mmethod(val* self, val* p0) { val* var_m /* var m: MMethod */; static val* varonce; val* var /* : String */; -char* var1 /* : NativeString */; +char* var1 /* : CString */; val* var2 /* : String */; -val* var3 /* : String */; -val* var4 /* : String */; +val* var3 /* : nullable Int */; +val* var4 /* : nullable Int */; +val* var5 /* : nullable Bool */; +val* var6 /* : nullable Bool */; +val* var7 /* : String */; +val* var8 /* : Text */; val* var_n2 /* var n2: String */; -val* var5 /* : nullable MMethodDef */; +val* var9 /* : nullable MMethodDef */; val* var_md /* var md: nullable MMethodDef */; -short int var6 /* : Bool */; -short int var7 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var9 /* : Bool */; short int var10 /* : Bool */; -val* var11 /* : Array[String] */; -val* var13 /* : Array[String] */; -val* var15 /* : NativeArray[String] */; -static val* varonce14; -static val* varonce16; -val* var17 /* : String */; -char* var18 /* : NativeString */; -val* var19 /* : String */; +short int var11 /* : Bool */; +val* var_other /* var other: nullable Object */; +short int var13 /* : Bool */; +short int var14 /* : Bool */; +val* var15 /* : Array[String] */; +val* var17 /* : Array[String] */; +val* var19 /* : NativeArray[String] */; +static val* varonce18; static val* varonce20; val* var21 /* : String */; -char* var22 /* : NativeString */; +char* var22 /* : CString */; val* var23 /* : String */; -val* var24 /* : SeparateRuntimeFunction */; -val* var25 /* : String */; -val* var26 /* : String */; -val* var27 /* : ModelBuilder */; -val* var29 /* : ModelBuilder */; -val* var30 /* : ToolContext */; -val* var32 /* : ToolContext */; -val* var33 /* : OptionBool */; -val* var35 /* : OptionBool */; -val* var36 /* : nullable Object */; -val* var38 /* : nullable Object */; -short int var39 /* : Bool */; -val* var40 /* : MPropDef */; -val* var42 /* : MPropDef */; -val* var43 /* : SeparateRuntimeFunction */; +val* var24 /* : nullable Int */; +val* var25 /* : nullable Int */; +val* var26 /* : nullable Bool */; +val* var27 /* : nullable Bool */; +static val* varonce28; +val* var29 /* : String */; +char* var30 /* : CString */; +val* var31 /* : String */; +val* var32 /* : nullable Int */; +val* var33 /* : nullable Int */; +val* var34 /* : nullable Bool */; +val* var35 /* : nullable Bool */; +val* var36 /* : SeparateRuntimeFunction */; +val* var37 /* : String */; +val* var38 /* : String */; +val* var39 /* : ModelBuilder */; +val* var41 /* : ModelBuilder */; +val* var42 /* : ToolContext */; +val* var44 /* : ToolContext */; +val* var45 /* : OptionBool */; +val* var47 /* : OptionBool */; +val* var48 /* : nullable Object */; +val* var50 /* : nullable Object */; +short int var51 /* : Bool */; +val* var52 /* : MPropDef */; +val* var54 /* : MPropDef */; +val* var55 /* : SeparateRuntimeFunction */; val* var_r /* var r: SeparateRuntimeFunction */; -val* var45 /* : NativeArray[String] */; -static val* varonce44; -static val* varonce46; -val* var47 /* : String */; -char* var48 /* : NativeString */; -val* var49 /* : String */; -static val* varonce50; -val* var51 /* : String */; -char* var52 /* : NativeString */; -val* var53 /* : String */; -val* var54 /* : String */; -val* var55 /* : String */; -val* var56 /* : String */; +val* var57 /* : NativeArray[String] */; +static val* varonce56; +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 /* : String */; +val* var75 /* : String */; +val* var76 /* : String */; var_m = p0; if (likely(varonce!=NULL)) { var = varonce; } else { var1 = "CALL_"; -var2 = core__flat___NativeString___to_s_full(var1, 5l, 5l); +var3 = (val*)(5l<<2|1); +var4 = (val*)(5l<<2|1); +var5 = (val*)((long)(0)<<2|3); +var6 = (val*)((long)(0)<<2|3); +var2 = core__flat___CString___to_s_unsafe(var1, var3, var4, var5, var6); var = var2; varonce = var; } { -var3 = nitc__separate_compiler___MEntity___const_color(var_m); +var7 = nitc__separate_compiler___MEntity___const_color(var_m); } { -var4 = ((val*(*)(val* self, val* p0))(var->class->vft[COLOR_core__abstract_text__String___43d]))(var, var3); /* + on */ +var8 = ((val*(*)(val* self, val* p0))(var->class->vft[COLOR_core__abstract_text__Text___43d]))(var, var7); /* + on */ } -var_n2 = var4; +var_n2 = var8; { -var5 = nitc___nitc__SeparateCompiler___is_monomorphic(self, var_m); +var9 = nitc___nitc__SeparateCompiler___is_monomorphic(self, var_m); } -var_md = var5; +var_md = var9; if (var_md == NULL) { -var6 = 0; /* is null */ +var10 = 0; /* is null */ } else { -var6 = 1; /* arg is null and recv is not */ +var10 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_md,((val*)NULL)) on */ +{ /* Inline kernel$Object$!= (var_md,((val*)NULL)) on */ var_other = ((val*)NULL); { -var9 = ((short int(*)(val* self, val* p0))(var_md->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_md, var_other); /* == on */ +var13 = ((short int(*)(val* self, val* p0))(var_md->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_md, var_other); /* == on */ } -var10 = !var9; -var7 = var10; -goto RET_LABEL8; -RET_LABEL8:(void)0; +var14 = !var13; +var11 = var14; +goto RET_LABEL12; +RET_LABEL12:(void)0; } -var6 = var7; +var10 = var11; } -if (var6){ +if (var10){ { -{ /* Inline abstract_compiler#AbstractCompiler#linker_script (self) on */ -var13 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___linker_script].val; /* _linker_script on */ -if (unlikely(var13 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$linker_script (self) on */ +var17 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___linker_script].val; /* _linker_script on */ +if (unlikely(var17 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _linker_script"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 588); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 602); fatal_exit(1); } -var11 = var13; -RET_LABEL12:(void)0; -} +var15 = var17; +RET_LABEL16:(void)0; } -if (unlikely(varonce14==NULL)) { -var15 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce16!=NULL)) { -var17 = varonce16; -} else { -var18 = " = "; -var19 = core__flat___NativeString___to_s_full(var18, 3l, 3l); -var17 = var19; -varonce16 = var17; } -((struct instance_core__NativeArray*)var15)->values[1]=var17; +if (unlikely(varonce18==NULL)) { +var19 = NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String); if (likely(varonce20!=NULL)) { var21 = varonce20; } else { -var22 = ";"; -var23 = core__flat___NativeString___to_s_full(var22, 1l, 1l); +var22 = " = "; +var24 = (val*)(3l<<2|1); +var25 = (val*)(3l<<2|1); +var26 = (val*)((long)(0)<<2|3); +var27 = (val*)((long)(0)<<2|3); +var23 = core__flat___CString___to_s_unsafe(var22, var24, var25, var26, var27); var21 = var23; varonce20 = var21; } -((struct instance_core__NativeArray*)var15)->values[3]=var21; +((struct instance_core__NativeArray*)var19)->values[1]=var21; +if (likely(varonce28!=NULL)) { +var29 = varonce28; +} else { +var30 = ";"; +var32 = (val*)(1l<<2|1); +var33 = (val*)(1l<<2|1); +var34 = (val*)((long)(0)<<2|3); +var35 = (val*)((long)(0)<<2|3); +var31 = core__flat___CString___to_s_unsafe(var30, var32, var33, var34, var35); +var29 = var31; +varonce28 = var29; +} +((struct instance_core__NativeArray*)var19)->values[3]=var29; } else { -var15 = varonce14; -varonce14 = NULL; +var19 = varonce18; +varonce18 = NULL; } -((struct instance_core__NativeArray*)var15)->values[0]=var_n2; +((struct instance_core__NativeArray*)var19)->values[0]=var_n2; { -var24 = nitc__separate_compiler___MMethodDef___virtual_runtime_function(var_md); +var36 = nitc__separate_compiler___MMethodDef___virtual_runtime_function(var_md); } { -var25 = nitc___nitc__AbstractRuntimeFunction___c_name(var24); +var37 = nitc___nitc__AbstractRuntimeFunction___c_name(var36); } -((struct instance_core__NativeArray*)var15)->values[2]=var25; +((struct instance_core__NativeArray*)var19)->values[2]=var37; { -var26 = ((val*(*)(val* self))(var15->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var15); /* native_to_s on */ +var38 = ((val*(*)(val* self))(var19->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var19); /* native_to_s on */ } -varonce14 = var15; +varonce18 = var19; { -core___core__Array___core__abstract_collection__SimpleCollection__add(var11, var26); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var15, var38); /* Direct call array$Array$add on */ } } else { } { -{ /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on */ -var29 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ -if (unlikely(var29 == NULL)) { +{ /* Inline abstract_compiler$AbstractCompiler$modelbuilder (self) on */ +var41 = self->attrs[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on */ +if (unlikely(var41 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 538); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler, 552); fatal_exit(1); } -var27 = var29; -RET_LABEL28:(void)0; +var39 = var41; +RET_LABEL40:(void)0; } } { -{ /* Inline modelbuilder_base#ModelBuilder#toolcontext (var27) on */ -var32 = var27->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var32 == NULL)) { +{ /* Inline modelbuilder_base$ModelBuilder$toolcontext (var39) on */ +var44 = var39->attrs[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var44 == 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); } -var30 = var32; -RET_LABEL31:(void)0; +var42 = var44; +RET_LABEL43:(void)0; } } { -{ /* Inline separate_compiler#ToolContext#opt_guard_call (var30) on */ -var35 = var30->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_guard_call].val; /* _opt_guard_call on */ -if (unlikely(var35 == NULL)) { +{ /* Inline separate_compiler$ToolContext$opt_guard_call (var42) on */ +var47 = var42->attrs[COLOR_nitc__separate_compiler__ToolContext___opt_guard_call].val; /* _opt_guard_call on */ +if (unlikely(var47 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_guard_call"); PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 39); fatal_exit(1); } -var33 = var35; -RET_LABEL34:(void)0; +var45 = var47; +RET_LABEL46:(void)0; } } { -{ /* Inline opts#Option#value (var33) on */ -var38 = var33->attrs[COLOR_opts__Option___value].val; /* _value on */ -var36 = var38; -RET_LABEL37:(void)0; +{ /* Inline opts$Option$value (var45) on */ +var50 = var45->attrs[COLOR_opts__Option___value].val; /* _value on */ +var48 = var50; +RET_LABEL49:(void)0; } } -var39 = (short int)((long)(var36)>>2); -if (var39){ +var51 = (short int)((long)(var48)>>2); +if (var51){ { -{ /* Inline model#MProperty#intro (var_m) on */ -var42 = var_m->attrs[COLOR_nitc__model__MProperty___intro].val; /* _intro on */ -if (unlikely(var42 == NULL)) { +{ /* Inline model$MProperty$intro (var_m) on */ +var54 = var_m->attrs[COLOR_nitc__model__MProperty___intro].val; /* _intro on */ +if (unlikely(var54 == 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, 1986); +PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model, 2097); fatal_exit(1); } -var40 = var42; -RET_LABEL41:(void)0; +var52 = var54; +RET_LABEL53:(void)0; } } { -var43 = nitc__separate_compiler___MMethodDef___virtual_runtime_function(var40); +var55 = nitc__separate_compiler___MMethodDef___virtual_runtime_function(var52); } -var_r = var43; -if (unlikely(varonce44==NULL)) { -var45 = NEW_core__NativeArray(5l, &type_core__NativeArray__core__String); -if (likely(varonce46!=NULL)) { -var47 = varonce46; +var_r = var55; +if (unlikely(varonce56==NULL)) { +var57 = NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String); +if (likely(varonce58!=NULL)) { +var59 = varonce58; } else { -var48 = " "; -var49 = core__flat___NativeString___to_s_full(var48, 1l, 1l); -var47 = var49; -varonce46 = var47; +var60 = " "; +var62 = (val*)(1l<<2|1); +var63 = (val*)(1l<<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; } -((struct instance_core__NativeArray*)var45)->values[1]=var47; -if (likely(varonce50!=NULL)) { -var51 = varonce50; +((struct instance_core__NativeArray*)var57)->values[1]=var59; +if (likely(varonce66!=NULL)) { +var67 = varonce66; } else { -var52 = " __attribute__((weak));"; -var53 = core__flat___NativeString___to_s_full(var52, 23l, 23l); -var51 = var53; -varonce50 = var51; +var68 = " __attribute__((weak));"; +var70 = (val*)(23l<<2|1); +var71 = (val*)(23l<<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; } -((struct instance_core__NativeArray*)var45)->values[4]=var51; +((struct instance_core__NativeArray*)var57)->values[4]=var67; } else { -var45 = varonce44; -varonce44 = NULL; +var57 = varonce56; +varonce56 = NULL; } { -var54 = nitc___nitc__SeparateRuntimeFunction___c_ret(var_r); +var74 = nitc___nitc__SeparateRuntimeFunction___c_ret(var_r); } -((struct instance_core__NativeArray*)var45)->values[0]=var54; -((struct instance_core__NativeArray*)var45)->values[2]=var_n2; +((struct instance_core__NativeArray*)var57)->values[0]=var74; +((struct instance_core__NativeArray*)var57)->values[2]=var_n2; { -var55 = nitc___nitc__SeparateRuntimeFunction___c_sig(var_r); +var75 = nitc___nitc__SeparateRuntimeFunction___c_sig(var_r); } -((struct instance_core__NativeArray*)var45)->values[3]=var55; +((struct instance_core__NativeArray*)var57)->values[3]=var75; { -var56 = ((val*(*)(val* self))(var45->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var45); /* native_to_s on */ +var76 = ((val*(*)(val* self))(var57->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var57); /* native_to_s on */ } -varonce44 = var45; +varonce56 = var57; { -nitc___nitc__AbstractCompiler___provide_declaration(self, var_n2, var56); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ +nitc___nitc__AbstractCompiler___provide_declaration(self, var_n2, var76); /* Direct call abstract_compiler$AbstractCompiler$provide_declaration on */ } } else { } RET_LABEL:; } -/* method separate_compiler#SeparateCompiler#is_monomorphic for (self: SeparateCompiler, MMethod): nullable MMethodDef */ +/* method separate_compiler$SeparateCompiler$is_monomorphic for (self: SeparateCompiler, MMethod): nullable MMethodDef */ val* nitc___nitc__SeparateCompiler___is_monomorphic(val* self, val* p0) { val* var /* : nullable MMethodDef */; val* var_m /* var m: MMethod */; @@ -8478,7 +9627,7 @@ short int var38 /* : Bool */; short int var39 /* : Bool */; var_m = p0; { -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ +{ /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (self) on */ var3 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ var1 = var3; RET_LABEL2:(void)0; @@ -8491,10 +9640,10 @@ var4 = 1; /* is null */ var4 = 0; /* arg is null but 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); { -{ /* Inline kernel#Object#is_same_instance (var_rta,var_other) on */ +{ /* Inline kernel$Object$is_same_instance (var_rta,var_other) on */ var9 = var_rta == var_other; var7 = var9; goto RET_LABEL8; @@ -8509,11 +9658,14 @@ var4 = var5; } if (var4){ { -{ /* Inline model#MProperty#mpropdefs (var_m) on */ +{ /* Inline model$MProperty$mpropdefs (var_m) on */ var12 = var_m->attrs[COLOR_nitc__model__MProperty___mpropdefs].val; /* _mpropdefs on */ if (unlikely(var12 == 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); } var10 = var12; @@ -8521,14 +9673,14 @@ RET_LABEL11:(void)0; } } { -{ /* Inline array#AbstractArrayRead#length (var10) on */ +{ /* Inline array$AbstractArrayRead$length (var10) on */ var15 = var10->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ var13 = var15; RET_LABEL14:(void)0; } } { -{ /* Inline kernel#Int#== (var13,1l) on */ +{ /* Inline kernel$Int$== (var13,1l) on */ var18 = var13 == 1l; var16 = var18; goto RET_LABEL17; @@ -8537,11 +9689,14 @@ RET_LABEL17:(void)0; } if (var16){ { -{ /* Inline model#MProperty#mpropdefs (var_m) on */ +{ /* Inline model$MProperty$mpropdefs (var_m) on */ var21 = var_m->attrs[COLOR_nitc__model__MProperty___mpropdefs].val; /* _mpropdefs on */ if (unlikely(var21 == 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); } var19 = var21; @@ -8560,11 +9715,14 @@ goto RET_LABEL; } else { var_res = ((val*)NULL); { -{ /* Inline model#MProperty#mpropdefs (var_m) on */ +{ /* Inline model$MProperty$mpropdefs (var_m) on */ var25 = var_m->attrs[COLOR_nitc__model__MProperty___mpropdefs].val; /* _mpropdefs on */ if (unlikely(var25 == 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); } var23 = var25; @@ -8589,9 +9747,12 @@ var29 = ((val*(*)(val* self))((((long)var_27&3)?class_info[((long)var_27&3)]:var } var_md = var29; { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_methoddefs (var_rta) on */ +{ /* Inline rapid_type_analysis$RapidTypeAnalysis$live_methoddefs (var_rta) on */ var32 = var_rta->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_methoddefs].val; /* _live_methoddefs on */ if (unlikely(var32 == 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); @@ -8610,7 +9771,7 @@ var34 = 0; /* is null */ var34 = 1; /* arg is null and recv is not */ } if (0) { -{ /* Inline kernel#Object#!= (var_res,((val*)NULL)) on */ +{ /* Inline kernel$Object$!= (var_res,((val*)NULL)) on */ var_other37 = ((val*)NULL); { var38 = ((short int(*)(val* self, val* p0))(var_res->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_res, var_other37); /* == on */ @@ -8644,964 +9805,3 @@ goto RET_LABEL; RET_LABEL:; return var; } -/* method separate_compiler#SeparateCompiler#compile_type_to_c for (self: SeparateCompiler, MType) */ -void nitc___nitc__SeparateCompiler___compile_type_to_c(val* self, val* p0) { -val* var_mtype /* var mtype: MType */; -short int var /* : Bool */; -short int var1 /* : Bool */; -short int var2 /* : Bool */; -short int var3 /* : Bool */; -int cltype; -int idtype; -short int var_ /* var : Bool */; -val* var4 /* : nullable RapidTypeAnalysis */; -val* var6 /* : nullable RapidTypeAnalysis */; -val* var7 /* : HashSet[MClassType] */; -val* var9 /* : HashSet[MClassType] */; -short int var10 /* : Bool */; -short int var_is_live /* var is_live: Bool */; -val* var11 /* : nullable RapidTypeAnalysis */; -val* var13 /* : nullable RapidTypeAnalysis */; -val* var14 /* : HashSet[MType] */; -val* var16 /* : HashSet[MType] */; -short int var17 /* : Bool */; -short int var_is_cast_live /* var is_cast_live: Bool */; -val* var18 /* : String */; -val* var_c_name /* var c_name: String */; -val* var19 /* : SeparateCompilerVisitor */; -val* var_v /* var v: SeparateCompilerVisitor */; -val* var20 /* : NativeArray[String] */; -static val* varonce; -static val* varonce21; -val* var22 /* : String */; -char* var23 /* : NativeString */; -val* var24 /* : String */; -static val* varonce25; -val* var26 /* : String */; -char* var27 /* : NativeString */; -val* var28 /* : String */; -val* var29 /* : String */; -val* var30 /* : String */; -val* var32 /* : NativeArray[String] */; -static val* varonce31; -static val* varonce33; -val* var34 /* : String */; -char* var35 /* : NativeString */; -val* var36 /* : String */; -val* var37 /* : String */; -val* var39 /* : NativeArray[String] */; -static val* varonce38; -static val* varonce40; -val* var41 /* : String */; -char* var42 /* : NativeString */; -val* var43 /* : String */; -static val* varonce44; -val* var45 /* : String */; -char* var46 /* : NativeString */; -val* var47 /* : String */; -val* var48 /* : String */; -val* var50 /* : NativeArray[String] */; -static val* varonce49; -static val* varonce51; -val* var52 /* : String */; -char* var53 /* : NativeString */; -val* var54 /* : String */; -static val* varonce55; -val* var56 /* : String */; -char* var57 /* : NativeString */; -val* var58 /* : String */; -val* var59 /* : String */; -val* var61 /* : NativeArray[String] */; -static val* varonce60; -static val* varonce62; -val* var63 /* : String */; -char* var64 /* : NativeString */; -val* var65 /* : String */; -val* var66 /* : Map[MType, Int] */; -val* var68 /* : Map[MType, Int] */; -val* var69 /* : nullable Object */; -val* var70 /* : String */; -long var71 /* : Int */; -val* var72 /* : String */; -static val* varonce73; -val* var74 /* : String */; -char* var75 /* : NativeString */; -val* var76 /* : String */; -val* var78 /* : NativeArray[String] */; -static val* varonce77; -static val* varonce79; -val* var80 /* : String */; -char* var81 /* : NativeString */; -val* var82 /* : String */; -static val* varonce83; -val* var84 /* : String */; -char* var85 /* : NativeString */; -val* var86 /* : String */; -val* var87 /* : String */; -val* var88 /* : String */; -val* var90 /* : NativeArray[String] */; -static val* varonce89; -static val* varonce91; -val* var92 /* : String */; -char* var93 /* : NativeString */; -val* var94 /* : String */; -val* var95 /* : Map[MType, Int] */; -val* var97 /* : Map[MType, Int] */; -val* var98 /* : nullable Object */; -val* var99 /* : String */; -long var100 /* : Int */; -val* var101 /* : String */; -static val* varonce102; -val* var103 /* : String */; -char* var104 /* : NativeString */; -val* var105 /* : String */; -short int var106 /* : Bool */; -int cltype107; -int idtype108; -static val* varonce109; -val* var110 /* : String */; -char* var111 /* : NativeString */; -val* var112 /* : String */; -static val* varonce113; -val* var114 /* : String */; -char* var115 /* : NativeString */; -val* var116 /* : String */; -val* var117 /* : MType */; -val* var_mclass_type /* var mclass_type: MType */; -short int var118 /* : Bool */; -int cltype119; -int idtype120; -val* var121 /* : Map[MClassType, Array[nullable MType]] */; -val* var123 /* : Map[MClassType, Array[nullable MType]] */; -val* var124 /* : nullable Object */; -short int var125 /* : Bool */; -static val* varonce126; -val* var127 /* : String */; -char* var128 /* : NativeString */; -val* var129 /* : String */; -val* var131 /* : NativeArray[String] */; -static val* varonce130; -static val* varonce132; -val* var133 /* : String */; -char* var134 /* : NativeString */; -val* var135 /* : String */; -val* var136 /* : String */; -val* var138 /* : NativeArray[String] */; -static val* varonce137; -static val* varonce139; -val* var140 /* : String */; -char* var141 /* : NativeString */; -val* var142 /* : String */; -static val* varonce143; -val* var144 /* : String */; -char* var145 /* : NativeString */; -val* var146 /* : String */; -val* var147 /* : String */; -static val* varonce148; -val* var149 /* : String */; -char* var150 /* : NativeString */; -val* var151 /* : String */; -val* var153 /* : NativeArray[String] */; -static val* varonce152; -static val* varonce154; -val* var155 /* : String */; -char* var156 /* : NativeString */; -val* var157 /* : String */; -val* var158 /* : Map[MType, Array[nullable MType]] */; -val* var160 /* : Map[MType, Array[nullable MType]] */; -val* var161 /* : nullable Object */; -long var162 /* : Int */; -long var164 /* : Int */; -val* var165 /* : String */; -val* var166 /* : String */; -static val* varonce167; -val* var168 /* : String */; -char* var169 /* : NativeString */; -val* var170 /* : String */; -val* var171 /* : Map[MType, Array[nullable MType]] */; -val* var173 /* : Map[MType, Array[nullable MType]] */; -val* var174 /* : nullable Object */; -val* var_175 /* var : Array[nullable MType] */; -val* var176 /* : IndexedIterator[nullable Object] */; -val* var_177 /* var : IndexedIterator[nullable MType] */; -short int var178 /* : Bool */; -val* var179 /* : nullable Object */; -val* var_stype /* var stype: nullable MType */; -short int var180 /* : Bool */; -short int var181 /* : Bool */; -val* var_other /* var other: nullable Object */; -short int var183 /* : Bool */; -short int var185 /* : Bool */; -static val* varonce186; -val* var187 /* : String */; -char* var188 /* : NativeString */; -val* var189 /* : String */; -val* var191 /* : NativeArray[String] */; -static val* varonce190; -static val* varonce192; -val* var193 /* : String */; -char* var194 /* : NativeString */; -val* var195 /* : String */; -static val* varonce196; -val* var197 /* : String */; -char* var198 /* : NativeString */; -val* var199 /* : String */; -val* var200 /* : Map[MType, Int] */; -val* var202 /* : Map[MType, Int] */; -val* var203 /* : nullable Object */; -val* var204 /* : String */; -long var205 /* : Int */; -val* var206 /* : String */; -val* var207 /* : String */; -static val* varonce208; -val* var209 /* : String */; -char* var210 /* : NativeString */; -val* var211 /* : String */; -static val* varonce212; -val* var213 /* : String */; -char* var214 /* : NativeString */; -val* var215 /* : String */; -static val* varonce216; -val* var217 /* : String */; -char* var218 /* : NativeString */; -val* var219 /* : String */; -var_mtype = p0; -{ -var = ((short int(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model__MType__need_anchor]))(var_mtype); /* need_anchor on */ -} -var1 = !var; -if (unlikely(!var1)) { -PRINT_ERROR("Runtime error: %s", "Assert failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 708); -fatal_exit(1); -} -/* isa MClassType */ -cltype = type_nitc__MClassType.color; -idtype = type_nitc__MClassType.id; -if(cltype >= var_mtype->type->table_size) { -var3 = 0; -} else { -var3 = var_mtype->type->type_table[cltype] == idtype; -} -var_ = var3; -if (var3){ -{ -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ -var6 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ -var4 = var6; -RET_LABEL5:(void)0; -} -} -if (var4 == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 709); -fatal_exit(1); -} else { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_types (var4) on */ -if (unlikely(var4 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 60); -fatal_exit(1); -} -var9 = var4->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_types].val; /* _live_types on */ -if (unlikely(var9 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_types"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 60); -fatal_exit(1); -} -var7 = var9; -RET_LABEL8:(void)0; -} -} -{ -var10 = core___core__HashSet___core__abstract_collection__Collection__has(var7, var_mtype); -} -var2 = var10; -} else { -var2 = var_; -} -var_is_live = var2; -{ -{ /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (self) on */ -var13 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis].val; /* _runtime_type_analysis on */ -var11 = var13; -RET_LABEL12:(void)0; -} -} -if (var11 == NULL) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 710); -fatal_exit(1); -} else { -{ /* Inline rapid_type_analysis#RapidTypeAnalysis#live_cast_types (var11) on */ -if (unlikely(var11 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Receiver is null"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 72); -fatal_exit(1); -} -var16 = var11->attrs[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_cast_types].val; /* _live_cast_types on */ -if (unlikely(var16 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_cast_types"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis, 72); -fatal_exit(1); -} -var14 = var16; -RET_LABEL15:(void)0; -} -} -{ -var17 = core___core__HashSet___core__abstract_collection__Collection__has(var14, var_mtype); -} -var_is_cast_live = var17; -{ -var18 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model_base__MEntity__c_name]))(var_mtype); /* c_name on */ -} -var_c_name = var18; -var19 = NEW_nitc__SeparateCompilerVisitor(&type_nitc__SeparateCompilerVisitor); -{ -((void(*)(val* self, val* p0))(var19->class->vft[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor__compiler_61d]))(var19, self); /* compiler= on */ -} -{ -((void(*)(val* self))(var19->class->vft[COLOR_core__kernel__Object__init]))(var19); /* init on */ -} -var_v = var19; -if (unlikely(varonce==NULL)) { -var20 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce21!=NULL)) { -var22 = varonce21; -} else { -var23 = "/* runtime type "; -var24 = core__flat___NativeString___to_s_full(var23, 16l, 16l); -var22 = var24; -varonce21 = var22; -} -((struct instance_core__NativeArray*)var20)->values[0]=var22; -if (likely(varonce25!=NULL)) { -var26 = varonce25; -} else { -var27 = " */"; -var28 = core__flat___NativeString___to_s_full(var27, 3l, 3l); -var26 = var28; -varonce25 = var26; -} -((struct instance_core__NativeArray*)var20)->values[2]=var26; -} else { -var20 = varonce; -varonce = NULL; -} -{ -var29 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ -} -((struct instance_core__NativeArray*)var20)->values[1]=var29; -{ -var30 = ((val*(*)(val* self))(var20->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var20); /* native_to_s on */ -} -varonce = var20; -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var30); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -if (unlikely(varonce31==NULL)) { -var32 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce33!=NULL)) { -var34 = varonce33; -} else { -var35 = "type_"; -var36 = core__flat___NativeString___to_s_full(var35, 5l, 5l); -var34 = var36; -varonce33 = var34; -} -((struct instance_core__NativeArray*)var32)->values[0]=var34; -} else { -var32 = varonce31; -varonce31 = NULL; -} -((struct instance_core__NativeArray*)var32)->values[1]=var_c_name; -{ -var37 = ((val*(*)(val* self))(var32->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var32); /* native_to_s on */ -} -varonce31 = var32; -if (unlikely(varonce38==NULL)) { -var39 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce40!=NULL)) { -var41 = varonce40; -} else { -var42 = "extern const struct type type_"; -var43 = core__flat___NativeString___to_s_full(var42, 30l, 30l); -var41 = var43; -varonce40 = var41; -} -((struct instance_core__NativeArray*)var39)->values[0]=var41; -if (likely(varonce44!=NULL)) { -var45 = varonce44; -} else { -var46 = ";"; -var47 = core__flat___NativeString___to_s_full(var46, 1l, 1l); -var45 = var47; -varonce44 = var45; -} -((struct instance_core__NativeArray*)var39)->values[2]=var45; -} else { -var39 = varonce38; -varonce38 = NULL; -} -((struct instance_core__NativeArray*)var39)->values[1]=var_c_name; -{ -var48 = ((val*(*)(val* self))(var39->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var39); /* native_to_s on */ -} -varonce38 = var39; -{ -nitc___nitc__AbstractCompiler___provide_declaration(self, var37, var48); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on */ -} -if (unlikely(varonce49==NULL)) { -var50 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce51!=NULL)) { -var52 = varonce51; -} else { -var53 = "const struct type type_"; -var54 = core__flat___NativeString___to_s_full(var53, 23l, 23l); -var52 = var54; -varonce51 = var52; -} -((struct instance_core__NativeArray*)var50)->values[0]=var52; -if (likely(varonce55!=NULL)) { -var56 = varonce55; -} else { -var57 = " = {"; -var58 = core__flat___NativeString___to_s_full(var57, 4l, 4l); -var56 = var58; -varonce55 = var56; -} -((struct instance_core__NativeArray*)var50)->values[2]=var56; -} else { -var50 = varonce49; -varonce49 = NULL; -} -((struct instance_core__NativeArray*)var50)->values[1]=var_c_name; -{ -var59 = ((val*(*)(val* self))(var50->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var50); /* native_to_s on */ -} -varonce49 = var50; -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var59); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -if (var_is_cast_live){ -if (unlikely(varonce60==NULL)) { -var61 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce62!=NULL)) { -var63 = varonce62; -} else { -var64 = ","; -var65 = core__flat___NativeString___to_s_full(var64, 1l, 1l); -var63 = var65; -varonce62 = var63; -} -((struct instance_core__NativeArray*)var61)->values[1]=var63; -} else { -var61 = varonce60; -varonce60 = NULL; -} -{ -{ /* Inline separate_compiler#SeparateCompiler#type_ids (self) on */ -var68 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_ids].val; /* _type_ids on */ -if (unlikely(var68 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_ids"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 149); -fatal_exit(1); -} -var66 = var68; -RET_LABEL67:(void)0; -} -} -{ -var69 = ((val*(*)(val* self, val* p0))((((long)var66&3)?class_info[((long)var66&3)]:var66->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var66, var_mtype); /* [] on */ -} -var71 = (long)(var69)>>2; -var70 = core__flat___Int___core__abstract_text__Object__to_s(var71); -((struct instance_core__NativeArray*)var61)->values[0]=var70; -{ -var72 = ((val*(*)(val* self))(var61->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var61); /* native_to_s on */ -} -varonce60 = var61; -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var72); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} else { -if (likely(varonce73!=NULL)) { -var74 = varonce73; -} else { -var75 = "-1, /*CAST DEAD*/"; -var76 = core__flat___NativeString___to_s_full(var75, 17l, 17l); -var74 = var76; -varonce73 = var74; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var74); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} -if (unlikely(varonce77==NULL)) { -var78 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce79!=NULL)) { -var80 = varonce79; -} else { -var81 = "\""; -var82 = core__flat___NativeString___to_s_full(var81, 1l, 1l); -var80 = var82; -varonce79 = var80; -} -((struct instance_core__NativeArray*)var78)->values[0]=var80; -if (likely(varonce83!=NULL)) { -var84 = varonce83; -} else { -var85 = "\", /* class_name_string */"; -var86 = core__flat___NativeString___to_s_full(var85, 26l, 26l); -var84 = var86; -varonce83 = var84; -} -((struct instance_core__NativeArray*)var78)->values[2]=var84; -} else { -var78 = varonce77; -varonce77 = NULL; -} -{ -var87 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_mtype); /* to_s on */ -} -((struct instance_core__NativeArray*)var78)->values[1]=var87; -{ -var88 = ((val*(*)(val* self))(var78->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var78); /* native_to_s on */ -} -varonce77 = var78; -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var88); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -if (var_is_cast_live){ -if (unlikely(varonce89==NULL)) { -var90 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce91!=NULL)) { -var92 = varonce91; -} else { -var93 = ","; -var94 = core__flat___NativeString___to_s_full(var93, 1l, 1l); -var92 = var94; -varonce91 = var92; -} -((struct instance_core__NativeArray*)var90)->values[1]=var92; -} else { -var90 = varonce89; -varonce89 = NULL; -} -{ -{ /* Inline separate_compiler#SeparateCompiler#type_colors (self) on */ -var97 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_colors].val; /* _type_colors on */ -if (unlikely(var97 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_colors"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 150); -fatal_exit(1); -} -var95 = var97; -RET_LABEL96:(void)0; -} -} -{ -var98 = ((val*(*)(val* self, val* p0))((((long)var95&3)?class_info[((long)var95&3)]:var95->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var95, var_mtype); /* [] on */ -} -var100 = (long)(var98)>>2; -var99 = core__flat___Int___core__abstract_text__Object__to_s(var100); -((struct instance_core__NativeArray*)var90)->values[0]=var99; -{ -var101 = ((val*(*)(val* self))(var90->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var90); /* native_to_s on */ -} -varonce89 = var90; -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var101); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} else { -if (likely(varonce102!=NULL)) { -var103 = varonce102; -} else { -var104 = "-1, /*CAST DEAD*/"; -var105 = core__flat___NativeString___to_s_full(var104, 17l, 17l); -var103 = var105; -varonce102 = var103; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var103); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} -/* isa MNullableType */ -cltype107 = type_nitc__MNullableType.color; -idtype108 = type_nitc__MNullableType.id; -if(cltype107 >= var_mtype->type->table_size) { -var106 = 0; -} else { -var106 = var_mtype->type->type_table[cltype107] == idtype108; -} -if (var106){ -if (likely(varonce109!=NULL)) { -var110 = varonce109; -} else { -var111 = "1,"; -var112 = core__flat___NativeString___to_s_full(var111, 2l, 2l); -var110 = var112; -varonce109 = var110; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var110); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} else { -if (likely(varonce113!=NULL)) { -var114 = varonce113; -} else { -var115 = "0,"; -var116 = core__flat___NativeString___to_s_full(var115, 2l, 2l); -var114 = var116; -varonce113 = var114; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var114); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} -if (var_is_live){ -{ -var117 = ((val*(*)(val* self))(var_mtype->class->vft[COLOR_nitc__model__MType__undecorate]))(var_mtype); /* undecorate on */ -} -var_mclass_type = var117; -/* isa MClassType */ -cltype119 = type_nitc__MClassType.color; -idtype120 = type_nitc__MClassType.id; -if(cltype119 >= var_mclass_type->type->table_size) { -var118 = 0; -} else { -var118 = var_mclass_type->type->type_table[cltype119] == idtype120; -} -if (unlikely(!var118)) { -PRINT_ERROR("Runtime error: %s", "Assert failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 748); -fatal_exit(1); -} -{ -{ /* Inline separate_compiler#SeparateCompiler#resolution_tables (self) on */ -var123 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___resolution_tables].val; /* _resolution_tables on */ -if (unlikely(var123 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _resolution_tables"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1066); -fatal_exit(1); -} -var121 = var123; -RET_LABEL122:(void)0; -} -} -{ -var124 = ((val*(*)(val* self, val* p0))((((long)var121&3)?class_info[((long)var121&3)]:var121->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var121, var_mclass_type); /* [] on */ -} -{ -var125 = core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var124); -} -if (var125){ -if (likely(varonce126!=NULL)) { -var127 = varonce126; -} else { -var128 = "NULL, /*NO RESOLUTIONS*/"; -var129 = core__flat___NativeString___to_s_full(var128, 24l, 24l); -var127 = var129; -varonce126 = var127; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var127); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} else { -{ -nitc___nitc__SeparateCompiler___compile_type_resolution_table(self, var_mtype); /* Direct call separate_compiler#SeparateCompiler#compile_type_resolution_table on */ -} -if (unlikely(varonce130==NULL)) { -var131 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce132!=NULL)) { -var133 = varonce132; -} else { -var134 = "resolution_table_"; -var135 = core__flat___NativeString___to_s_full(var134, 17l, 17l); -var133 = var135; -varonce132 = var133; -} -((struct instance_core__NativeArray*)var131)->values[0]=var133; -} else { -var131 = varonce130; -varonce130 = NULL; -} -((struct instance_core__NativeArray*)var131)->values[1]=var_c_name; -{ -var136 = ((val*(*)(val* self))(var131->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var131); /* native_to_s on */ -} -varonce130 = var131; -{ -nitc___nitc__AbstractCompilerVisitor___require_declaration(var_v, var136); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on */ -} -if (unlikely(varonce137==NULL)) { -var138 = NEW_core__NativeArray(3l, &type_core__NativeArray__core__String); -if (likely(varonce139!=NULL)) { -var140 = varonce139; -} else { -var141 = "&resolution_table_"; -var142 = core__flat___NativeString___to_s_full(var141, 18l, 18l); -var140 = var142; -varonce139 = var140; -} -((struct instance_core__NativeArray*)var138)->values[0]=var140; -if (likely(varonce143!=NULL)) { -var144 = varonce143; -} else { -var145 = ","; -var146 = core__flat___NativeString___to_s_full(var145, 1l, 1l); -var144 = var146; -varonce143 = var144; -} -((struct instance_core__NativeArray*)var138)->values[2]=var144; -} else { -var138 = varonce137; -varonce137 = NULL; -} -((struct instance_core__NativeArray*)var138)->values[1]=var_c_name; -{ -var147 = ((val*(*)(val* self))(var138->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var138); /* native_to_s on */ -} -varonce137 = var138; -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var147); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} -} else { -if (likely(varonce148!=NULL)) { -var149 = varonce148; -} else { -var150 = "NULL, /*DEAD*/"; -var151 = core__flat___NativeString___to_s_full(var150, 14l, 14l); -var149 = var151; -varonce148 = var149; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var149); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} -if (var_is_live){ -if (unlikely(varonce152==NULL)) { -var153 = NEW_core__NativeArray(2l, &type_core__NativeArray__core__String); -if (likely(varonce154!=NULL)) { -var155 = varonce154; -} else { -var156 = ","; -var157 = core__flat___NativeString___to_s_full(var156, 1l, 1l); -var155 = var157; -varonce154 = var155; -} -((struct instance_core__NativeArray*)var153)->values[1]=var155; -} else { -var153 = varonce152; -varonce152 = NULL; -} -{ -{ /* Inline separate_compiler#SeparateCompiler#type_tables (self) on */ -var160 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_tables].val; /* _type_tables on */ -if (unlikely(var160 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_tables"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1065); -fatal_exit(1); -} -var158 = var160; -RET_LABEL159:(void)0; -} -} -{ -var161 = ((val*(*)(val* self, val* p0))((((long)var158&3)?class_info[((long)var158&3)]:var158->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var158, var_mtype); /* [] on */ -} -{ -{ /* Inline array#AbstractArrayRead#length (var161) on */ -var164 = var161->attrs[COLOR_core__array__AbstractArrayRead___length].l; /* _length on */ -var162 = var164; -RET_LABEL163:(void)0; -} -} -var165 = core__flat___Int___core__abstract_text__Object__to_s(var162); -((struct instance_core__NativeArray*)var153)->values[0]=var165; -{ -var166 = ((val*(*)(val* self))(var153->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var153); /* native_to_s on */ -} -varonce152 = var153; -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var166); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -if (likely(varonce167!=NULL)) { -var168 = varonce167; -} else { -var169 = "{"; -var170 = core__flat___NativeString___to_s_full(var169, 1l, 1l); -var168 = var170; -varonce167 = var168; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var168); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -{ -{ /* Inline separate_compiler#SeparateCompiler#type_tables (self) on */ -var173 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_tables].val; /* _type_tables on */ -if (unlikely(var173 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_tables"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 1065); -fatal_exit(1); -} -var171 = var173; -RET_LABEL172:(void)0; -} -} -{ -var174 = ((val*(*)(val* self, val* p0))((((long)var171&3)?class_info[((long)var171&3)]:var171->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var171, var_mtype); /* [] on */ -} -var_175 = var174; -{ -var176 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_175); -} -var_177 = var176; -for(;;) { -{ -var178 = ((short int(*)(val* self))((((long)var_177&3)?class_info[((long)var_177&3)]:var_177->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_177); /* is_ok on */ -} -if (var178){ -} else { -goto BREAK_label; -} -{ -var179 = ((val*(*)(val* self))((((long)var_177&3)?class_info[((long)var_177&3)]:var_177->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_177); /* item on */ -} -var_stype = var179; -if (var_stype == NULL) { -var180 = 1; /* is null */ -} else { -var180 = 0; /* arg is null but recv is not */ -} -if (0) { -{ /* Inline kernel#Object#== (var_stype,((val*)NULL)) on */ -var_other = ((val*)NULL); -{ -{ /* Inline kernel#Object#is_same_instance (var_stype,var_other) on */ -var185 = var_stype == var_other; -var183 = var185; -goto RET_LABEL184; -RET_LABEL184:(void)0; -} -} -var181 = var183; -goto RET_LABEL182; -RET_LABEL182:(void)0; -} -var180 = var181; -} -if (var180){ -if (likely(varonce186!=NULL)) { -var187 = varonce186; -} else { -var188 = "-1, /* empty */"; -var189 = core__flat___NativeString___to_s_full(var188, 15l, 15l); -var187 = var189; -varonce186 = var187; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var187); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} else { -if (unlikely(varonce190==NULL)) { -var191 = NEW_core__NativeArray(4l, &type_core__NativeArray__core__String); -if (likely(varonce192!=NULL)) { -var193 = varonce192; -} else { -var194 = ", /* "; -var195 = core__flat___NativeString___to_s_full(var194, 5l, 5l); -var193 = var195; -varonce192 = var193; -} -((struct instance_core__NativeArray*)var191)->values[1]=var193; -if (likely(varonce196!=NULL)) { -var197 = varonce196; -} else { -var198 = " */"; -var199 = core__flat___NativeString___to_s_full(var198, 3l, 3l); -var197 = var199; -varonce196 = var197; -} -((struct instance_core__NativeArray*)var191)->values[3]=var197; -} else { -var191 = varonce190; -varonce190 = NULL; -} -{ -{ /* Inline separate_compiler#SeparateCompiler#type_ids (self) on */ -var202 = self->attrs[COLOR_nitc__separate_compiler__SeparateCompiler___type_ids].val; /* _type_ids on */ -if (unlikely(var202 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _type_ids"); -PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler, 149); -fatal_exit(1); -} -var200 = var202; -RET_LABEL201:(void)0; -} -} -{ -var203 = ((val*(*)(val* self, val* p0))((((long)var200&3)?class_info[((long)var200&3)]:var200->class)->vft[COLOR_core__abstract_collection__MapRead___91d_93d]))(var200, var_stype); /* [] on */ -} -var205 = (long)(var203)>>2; -var204 = core__flat___Int___core__abstract_text__Object__to_s(var205); -((struct instance_core__NativeArray*)var191)->values[0]=var204; -{ -var206 = ((val*(*)(val* self))(var_stype->class->vft[COLOR_core__abstract_text__Object__to_s]))(var_stype); /* to_s on */ -} -((struct instance_core__NativeArray*)var191)->values[2]=var206; -{ -var207 = ((val*(*)(val* self))(var191->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var191); /* native_to_s on */ -} -varonce190 = var191; -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var207); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} -{ -((void(*)(val* self))((((long)var_177&3)?class_info[((long)var_177&3)]:var_177->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_177); /* next on */ -} -} -BREAK_label: (void)0; -{ -((void(*)(val* self))((((long)var_177&3)?class_info[((long)var_177&3)]:var_177->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_177); /* finish on */ -} -if (likely(varonce208!=NULL)) { -var209 = varonce208; -} else { -var210 = "},"; -var211 = core__flat___NativeString___to_s_full(var210, 2l, 2l); -var209 = var211; -varonce208 = var209; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var209); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} else { -if (likely(varonce212!=NULL)) { -var213 = varonce212; -} else { -var214 = "-1, {}, /*DEAD TYPE*/"; -var215 = core__flat___NativeString___to_s_full(var214, 21l, 21l); -var213 = var215; -varonce212 = var213; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var213); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -} -if (likely(varonce216!=NULL)) { -var217 = varonce216; -} else { -var218 = "};"; -var219 = core__flat___NativeString___to_s_full(var218, 2l, 2l); -var217 = var219; -varonce216 = var217; -} -{ -nitc___nitc__AbstractCompilerVisitor___add_decl(var_v, var217); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on */ -} -RET_LABEL:; -}