X-Git-Url: http://nitlanguage.org diff --git a/c_src/nit__modelbuilder.sep.1.c b/c_src/nit__modelbuilder.sep.1.c index b2fb2a6..bace201 100644 --- a/c_src/nit__modelbuilder.sep.1.c +++ b/c_src/nit__modelbuilder.sep.1.c @@ -7,7 +7,7 @@ var1 = self->attrs[COLOR_nit__modelbuilder__ToolContext___opt_ignore_visibility] if (unlikely(var1 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_ignore_visibility"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder, 27); -show_backtrace(1); +fatal_exit(1); } var = var1; RET_LABEL:; @@ -20,18 +20,17 @@ val* var2 /* : OptionContext */; val* var3 /* : OptionBool */; val* var5 /* : OptionBool */; val* var6 /* : Array[Option] */; -long var7 /* : Int */; -val* var8 /* : NativeArray[Option] */; +val* var7 /* : NativeArray[Option] */; { -((void (*)(val* self))(self->class->vft[COLOR_nit__modelbuilder___ToolContext___standard__kernel__Object__init]))(self) /* init on */; +((void(*)(val* self))(self->class->vft[COLOR_nit__modelbuilder___ToolContext___standard__kernel__Object__init]))(self); /* init on */ } { { /* Inline toolcontext#ToolContext#option_context (self) on */ var2 = self->attrs[COLOR_nit__toolcontext__ToolContext___option_context].val; /* _option_context on */ if (unlikely(var2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext, 270); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__toolcontext, 332); +fatal_exit(1); } var = var2; RET_LABEL1:(void)0; @@ -43,7 +42,7 @@ var5 = self->attrs[COLOR_nit__modelbuilder__ToolContext___opt_ignore_visibility] if (unlikely(var5 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_ignore_visibility"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder, 27); -show_backtrace(1); +fatal_exit(1); } var3 = var5; RET_LABEL4:(void)0; @@ -51,11 +50,10 @@ RET_LABEL4:(void)0; } var6 = NEW_standard__Array(&type_standard__Array__opts__Option); { /* var6 = array_instance Array[Option] */ -var7 = 1; -var8 = NEW_standard__NativeArray(var7, &type_standard__NativeArray__opts__Option); -((struct instance_standard__NativeArray*)var8)->values[0] = (val*) var3; +var7 = NEW_standard__NativeArray(1l, &type_standard__NativeArray__opts__Option); +((struct instance_standard__NativeArray*)var7)->values[0] = (val*) var3; { -((void (*)(val* self, val* p0, long p1))(var6->class->vft[COLOR_standard__array__Array__with_native]))(var6, var8, var7) /* with_native on */; +((void(*)(val* self, val* p0, long p1))(var6->class->vft[COLOR_standard__array__Array__with_native]))(var6, var7, 1l); /* with_native on */ } } { @@ -71,36 +69,28 @@ short int var1 /* : Bool */; short int var2 /* : Bool */; long var3 /* : Int */; long var5 /* : Int */; -long var6 /* : Int */; -short int var7 /* : Bool */; -short int var9 /* : Bool */; -val* var10 /* : nullable Object */; +short int var6 /* : Bool */; +short int var8 /* : Bool */; +val* var9 /* : nullable Object */; val* var_mainmodule /* var mainmodule: nullable Object */; -val* var11 /* : MModule */; -val* var12 /* : ModelBuilder */; -val* var13 /* : Model */; -val* var15 /* : Model */; -val* var16 /* : null */; -val* var17 /* : nullable Object */; +val* var10 /* : MModule */; +val* var11 /* : ModelBuilder */; +val* var12 /* : Model */; +val* var14 /* : Model */; +val* var15 /* : nullable Object */; +val* var16 /* : String */; val* var18 /* : String */; -val* var20 /* : String */; static val* varonce; -val* var21 /* : String */; -char* var22 /* : NativeString */; -long var23 /* : Int */; -val* var24 /* : FlatString */; -val* var25 /* : String */; -val* var26 /* : Location */; -val* var27 /* : nullable Object */; -val* var28 /* : Location */; -val* var30 /* : Location */; -val* var31 /* : nullable SourceFile */; -val* var33 /* : nullable SourceFile */; -long var34 /* : Int */; -long var35 /* : Int */; -long var36 /* : Int */; -long var37 /* : Int */; -short int var38 /* : Bool */; +val* var19 /* : String */; +char* var20 /* : NativeString */; +val* var21 /* : FlatString */; +val* var22 /* : String */; +val* var23 /* : Location */; +val* var24 /* : nullable Object */; +val* var25 /* : Location */; +val* var27 /* : Location */; +val* var28 /* : nullable SourceFile */; +val* var30 /* : nullable SourceFile */; var_mmodules = p0; { var1 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var_mmodules); @@ -109,7 +99,7 @@ var2 = !var1; if (unlikely(!var2)) { PRINT_ERROR("Runtime error: %s", "Assert failed"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder, 39); -show_backtrace(1); +fatal_exit(1); } { { /* Inline array#AbstractArrayRead#length (var_mmodules) on */ @@ -118,131 +108,123 @@ var3 = var5; RET_LABEL4:(void)0; } } -var6 = 1; { -{ /* Inline kernel#Int#== (var3,var6) on */ -var9 = var3 == var6; -var7 = var9; -goto RET_LABEL8; -RET_LABEL8:(void)0; +{ /* Inline kernel#Int#== (var3,1l) on */ +var8 = var3 == 1l; +var6 = var8; +goto RET_LABEL7; +RET_LABEL7:(void)0; } } -if (var7){ +if (var6){ { -var10 = standard___standard__SequenceRead___Collection__first(var_mmodules); +var9 = standard___standard__SequenceRead___Collection__first(var_mmodules); } -var_mainmodule = var10; +var_mainmodule = var9; } else { -var11 = NEW_nit__MModule(&type_nit__MModule); +var10 = NEW_nit__MModule(&type_nit__MModule); { -var12 = nit__modelbuilder_base___ToolContext___modelbuilder(self); +var11 = nit__modelbuilder_base___ToolContext___modelbuilder(self); } { -{ /* Inline modelbuilder_base#ModelBuilder#model (var12) on */ -var15 = var12->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___model].val; /* _model on */ -if (unlikely(var15 == NULL)) { +{ /* Inline modelbuilder_base#ModelBuilder#model (var11) on */ +var14 = var11->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___model].val; /* _model on */ +if (unlikely(var14 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base, 44); -show_backtrace(1); +fatal_exit(1); } -var13 = var15; -RET_LABEL14:(void)0; +var12 = var14; +RET_LABEL13:(void)0; } } -var16 = NULL; { -var17 = standard___standard__SequenceRead___Collection__first(var_mmodules); +var15 = standard___standard__SequenceRead___Collection__first(var_mmodules); } { -{ /* Inline mmodule#MModule#name (var17) on */ -var20 = var17->attrs[COLOR_nit__mmodule__MModule___name].val; /* _name on */ -if (unlikely(var20 == NULL)) { +{ /* Inline mmodule#MModule#name (var15) on */ +var18 = var15->attrs[COLOR_nit__mmodule__MModule___name].val; /* _name on */ +if (unlikely(var18 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule, 87); -show_backtrace(1); +fatal_exit(1); } -var18 = var20; -RET_LABEL19:(void)0; +var16 = var18; +RET_LABEL17:(void)0; } } -if (varonce) { -var21 = varonce; +if (likely(varonce!=NULL)) { +var19 = varonce; } else { -var22 = "-m"; -var23 = 2; -var24 = standard___standard__NativeString___to_s_with_length(var22, var23); -var21 = var24; -varonce = var21; +var20 = "-m"; +var21 = standard___standard__NativeString___to_s_with_length(var20, 2l); +var19 = var21; +varonce = var19; } { -var25 = ((val* (*)(val* self, val* p0))(var18->class->vft[COLOR_standard__string__String___43d]))(var18, var21) /* + on */; +var22 = ((val*(*)(val* self, val* p0))(var16->class->vft[COLOR_standard__string__String___43d]))(var16, var19); /* + on */ } -var26 = NEW_nit__Location(&type_nit__Location); +var23 = NEW_nit__Location(&type_nit__Location); { -var27 = standard___standard__SequenceRead___Collection__first(var_mmodules); +var24 = standard___standard__SequenceRead___Collection__first(var_mmodules); } { -{ /* Inline mmodule#MModule#location (var27) on */ -var30 = var27->attrs[COLOR_nit__mmodule__MModule___location].val; /* _location on */ -if (unlikely(var30 == NULL)) { +{ /* Inline mmodule#MModule#location (var24) on */ +var27 = var24->attrs[COLOR_nit__mmodule__MModule___location].val; /* _location on */ +if (unlikely(var27 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule, 90); -show_backtrace(1); +fatal_exit(1); } -var28 = var30; -RET_LABEL29:(void)0; +var25 = var27; +RET_LABEL26:(void)0; } } { -{ /* Inline location#Location#file (var28) on */ -var33 = var28->attrs[COLOR_nit__location__Location___file].val; /* _file on */ -var31 = var33; -RET_LABEL32:(void)0; +{ /* Inline location#Location#file (var25) on */ +var30 = var25->attrs[COLOR_nit__location__Location___file].val; /* _file on */ +var28 = var30; +RET_LABEL29:(void)0; } } -var34 = 0; -var35 = 0; -var36 = 0; -var37 = 0; { -((void (*)(val* self, val* p0))(var26->class->vft[COLOR_nit__location__Location__file_61d]))(var26, var31) /* file= on */; +((void(*)(val* self, val* p0))(var23->class->vft[COLOR_nit__location__Location__file_61d]))(var23, var28); /* file= on */ } { -((void (*)(val* self, long p0))(var26->class->vft[COLOR_nit__location__Location__line_start_61d]))(var26, var34) /* line_start= on */; +((void(*)(val* self, long p0))(var23->class->vft[COLOR_nit__location__Location__line_start_61d]))(var23, 0l); /* line_start= on */ } { -((void (*)(val* self, long p0))(var26->class->vft[COLOR_nit__location__Location__line_end_61d]))(var26, var35) /* line_end= on */; +((void(*)(val* self, long p0))(var23->class->vft[COLOR_nit__location__Location__line_end_61d]))(var23, 0l); /* line_end= on */ } { -((void (*)(val* self, long p0))(var26->class->vft[COLOR_nit__location__Location__column_start_61d]))(var26, var36) /* column_start= on */; +((void(*)(val* self, long p0))(var23->class->vft[COLOR_nit__location__Location__column_start_61d]))(var23, 0l); /* column_start= on */ } { -((void (*)(val* self, long p0))(var26->class->vft[COLOR_nit__location__Location__column_end_61d]))(var26, var37) /* column_end= on */; +((void(*)(val* self, long p0))(var23->class->vft[COLOR_nit__location__Location__column_end_61d]))(var23, 0l); /* column_end= on */ } { -((void (*)(val* self))(var26->class->vft[COLOR_standard__kernel__Object__init]))(var26) /* init on */; +((void(*)(val* self))(var23->class->vft[COLOR_standard__kernel__Object__init]))(var23); /* init on */ } { -((void (*)(val* self, val* p0))(var11->class->vft[COLOR_nit__mmodule__MModule__model_61d]))(var11, var13) /* model= on */; +((void(*)(val* self, val* p0))(var10->class->vft[COLOR_nit__mmodule__MModule__model_61d]))(var10, var12); /* model= on */ } { -((void (*)(val* self, val* p0))(var11->class->vft[COLOR_nit__mmodule__MModule__mgroup_61d]))(var11, var16) /* mgroup= on */; +((void(*)(val* self, val* p0))(var10->class->vft[COLOR_nit__mmodule__MModule__mgroup_61d]))(var10, ((val*)NULL)); /* mgroup= on */ } { -((void (*)(val* self, val* p0))(var11->class->vft[COLOR_nit__mmodule__MModule__name_61d]))(var11, var25) /* name= on */; +((void(*)(val* self, val* p0))(var10->class->vft[COLOR_nit__mmodule__MModule__name_61d]))(var10, var22); /* name= on */ } { -((void (*)(val* self, val* p0))(var11->class->vft[COLOR_nit__mmodule__MModule__location_61d]))(var11, var26) /* location= on */; +((void(*)(val* self, val* p0))(var10->class->vft[COLOR_nit__mmodule__MModule__location_61d]))(var10, var23); /* location= on */ } { -((void (*)(val* self))(var11->class->vft[COLOR_standard__kernel__Object__init]))(var11) /* init on */; +((void(*)(val* self))(var10->class->vft[COLOR_standard__kernel__Object__init]))(var10); /* init on */ } -var_mainmodule = var11; -var38 = 1; +var_mainmodule = var10; { -{ /* Inline mmodule#MModule#is_fictive= (var_mainmodule,var38) on */ -var_mainmodule->attrs[COLOR_nit__mmodule__MModule___is_fictive].s = var38; /* _is_fictive on */ -RET_LABEL39:(void)0; +{ /* Inline mmodule#MModule#is_fictive= (var_mainmodule,1) on */ +var_mainmodule->attrs[COLOR_nit__mmodule__MModule___is_fictive].s = 1; /* _is_fictive on */ +RET_LABEL31:(void)0; } } { @@ -257,66 +239,80 @@ return var; /* method modelbuilder#ToolContext#run_global_phases for (self: ToolContext, Array[MModule]) */ void nit__modelbuilder___ToolContext___run_global_phases(val* self, val* p0) { val* var_mmodules /* var mmodules: Array[MModule] */; -val* var /* : MModule */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var2 /* : MModule */; val* var_mainmodule /* var mainmodule: MModule */; -val* var1 /* : Sequence[Phase] */; +val* var3 /* : Sequence[Phase] */; val* var_ /* var : Sequence[Phase] */; -val* var2 /* : Iterator[nullable Object] */; -val* var_3 /* var : IndexedIterator[Phase] */; -short int var4 /* : Bool */; -val* var5 /* : nullable Object */; -val* var_phase /* var phase: Phase */; +val* var4 /* : Iterator[nullable Object] */; +val* var_5 /* var : IndexedIterator[Phase] */; short int var6 /* : Bool */; +val* var7 /* : nullable Object */; +val* var_phase /* var phase: Phase */; short int var8 /* : Bool */; +short int var10 /* : Bool */; +short int var12 /* : Bool */; var_mmodules = p0; { -var = nit__mixin___ToolContext___make_main_module(self, var_mmodules); +var = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var_mmodules); +} +var1 = !var; +if (var1){ +{ +var2 = nit__mixin___ToolContext___make_main_module(self, var_mmodules); } -var_mainmodule = var; +var_mainmodule = var2; { -var1 = nit__phase___ToolContext___phases_list(self); +var3 = nit__phase___ToolContext___phases_list(self); } -var_ = var1; +var_ = var3; { -var2 = ((val* (*)(val* self))(var_->class->vft[COLOR_standard__abstract_collection__Collection__iterator]))(var_) /* iterator on */; +var4 = ((val*(*)(val* self))((((long)var_&3)?class_info[((long)var_&3)]:var_->class)->vft[COLOR_standard__abstract_collection__Collection__iterator]))(var_); /* iterator on */ } -var_3 = var2; +var_5 = var4; for(;;) { { -var4 = ((short int (*)(val* self))(var_3->class->vft[COLOR_standard__abstract_collection__Iterator__is_ok]))(var_3) /* is_ok on */; +var6 = ((short int(*)(val* self))((((long)var_5&3)?class_info[((long)var_5&3)]:var_5->class)->vft[COLOR_standard__abstract_collection__Iterator__is_ok]))(var_5); /* is_ok on */ } -if (var4){ +if (var6){ { -var5 = ((val* (*)(val* self))(var_3->class->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_3) /* item on */; +var7 = ((val*(*)(val* self))((((long)var_5&3)?class_info[((long)var_5&3)]:var_5->class)->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_5); /* item on */ } -var_phase = var5; +var_phase = var7; { { /* Inline phase#Phase#disabled (var_phase) on */ -var8 = var_phase->attrs[COLOR_nit__phase__Phase___disabled].s; /* _disabled on */ -var6 = var8; -RET_LABEL7:(void)0; +var10 = var_phase->attrs[COLOR_nit__phase__Phase___disabled].s; /* _disabled on */ +var8 = var10; +RET_LABEL9:(void)0; } } -if (var6){ +if (var8){ goto BREAK_label; } else { } { -((void (*)(val* self, val* p0, val* p1))(var_phase->class->vft[COLOR_nit__modelbuilder__Phase__process_mainmodule]))(var_phase, var_mainmodule, var_mmodules) /* process_mainmodule on */; +((void(*)(val* self, val* p0, val* p1))(var_phase->class->vft[COLOR_nit__modelbuilder__Phase__process_mainmodule]))(var_phase, var_mainmodule, var_mmodules); /* process_mainmodule on */ } BREAK_label: (void)0; { -((void (*)(val* self))(var_3->class->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_3) /* next on */; +((void(*)(val* self))((((long)var_5&3)?class_info[((long)var_5&3)]:var_5->class)->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_5); /* next on */ } } else { -goto BREAK_label9; +goto BREAK_label11; +} } +BREAK_label11: (void)0; +{ +((void(*)(val* self))((((long)var_5&3)?class_info[((long)var_5&3)]:var_5->class)->vft[COLOR_standard__abstract_collection__Iterator__finish]))(var_5); /* finish on */ +} +} else { } -BREAK_label9: (void)0; { -{ /* Inline abstract_collection#Iterator#finish (var_3) on */ -RET_LABEL10:(void)0; +var12 = nit___nit__ToolContext___check_errors(self); } +{ +nit___nit__ToolContext___errors_info(self); /* Direct call toolcontext#ToolContext#errors_info on */ } RET_LABEL:; } @@ -348,32 +344,32 @@ val* var_15 /* var : ArrayIterator[MModule] */; short int var16 /* : Bool */; val* var17 /* : nullable Object */; val* var_mm /* var mm: MModule */; -val* var18 /* : nullable AModule */; -val* var20 /* : ToolContext */; -val* var22 /* : ToolContext */; +short int var18 /* : Bool */; +short int var20 /* : Bool */; +val* var21 /* : nullable AModule */; val* var23 /* : ToolContext */; val* var25 /* : ToolContext */; -val* var26 /* : OptionBool */; -val* var28 /* : OptionBool */; -val* var29 /* : nullable Object */; -val* var31 /* : nullable Object */; -short int var32 /* : Bool */; -val* var33 /* : ToolContext */; -val* var35 /* : ToolContext */; +val* var26 /* : ToolContext */; +val* var28 /* : ToolContext */; +val* var29 /* : OptionBool */; +val* var31 /* : OptionBool */; +val* var32 /* : nullable Object */; +val* var34 /* : nullable Object */; +short int var35 /* : Bool */; +val* var36 /* : ToolContext */; +val* var38 /* : ToolContext */; static val* varonce; -val* var36 /* : String */; -char* var37 /* : NativeString */; -long var38 /* : Int */; -val* var39 /* : FlatString */; -long var40 /* : Int */; -long var41 /* : Int */; +val* var39 /* : String */; +char* var40 /* : NativeString */; +val* var41 /* : FlatString */; +val* var42 /* : Sys */; { { /* Inline modelbuilder_base#ModelBuilder#model (self) on */ var2 = self->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___model].val; /* _model on */ if (unlikely(var2 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base, 44); -show_backtrace(1); +fatal_exit(1); } var = var2; RET_LABEL1:(void)0; @@ -385,7 +381,7 @@ var5 = var->attrs[COLOR_nit__mmodule__Model___mmodules].val; /* _mmodules on attrs[COLOR_nit__modelbuilder_base__ModelBuilder___model].val; /* _ if (unlikely(var9 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base, 44); -show_backtrace(1); +fatal_exit(1); } var7 = var9; RET_LABEL8:(void)0; @@ -413,7 +409,7 @@ var12 = var7->attrs[COLOR_nit__mmodule__Model___mmodule_importation_hierarchy].v if (unlikely(var12 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule_importation_hierarchy"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__mmodule, 30); -show_backtrace(1); +fatal_exit(1); } var10 = var12; RET_LABEL11:(void)0; @@ -442,107 +438,115 @@ var17 = standard__array___standard__array__ArrayIterator___standard__abstract_co } var_mm = var17; { -var18 = nit__loader___ModelBuilder___mmodule2node(self, var_mm); +{ /* Inline mmodule#MModule#is_fictive (var_mm) on */ +var20 = var_mm->attrs[COLOR_nit__mmodule__MModule___is_fictive].s; /* _is_fictive on */ +var18 = var20; +RET_LABEL19:(void)0; } -if (unlikely(var18 == NULL)) { +} +if (var18){ +goto BREAK_label; +} else { +} +{ +var21 = nit__loader___ModelBuilder___mmodule2node(self, var_mm); +} +if (unlikely(var21 == NULL)) { PRINT_ERROR("Runtime error: %s", "Cast failed"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder, 89); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder, 95); +fatal_exit(1); } { -standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_nmodules, var18); /* Direct call array#Array#add on */ +standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_nmodules, var21); /* Direct call array#Array#add on */ } +BREAK_label: (void)0; { standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_15); /* Direct call array#ArrayIterator#next on */ } } else { -goto BREAK_label; +goto BREAK_label22; } } -BREAK_label: (void)0; +BREAK_label22: (void)0; { -{ /* Inline abstract_collection#Iterator#finish (var_15) on */ -RET_LABEL19:(void)0; -} +standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(var_15); /* Direct call array#ArrayIterator#finish on */ } { { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on */ -var22 = self->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var22 == NULL)) { +var25 = self->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var25 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base, 47); -show_backtrace(1); +fatal_exit(1); } -var20 = var22; -RET_LABEL21:(void)0; +var23 = var25; +RET_LABEL24:(void)0; } } { -nit__phase___ToolContext___run_phases(var20, var_nmodules); /* Direct call phase#ToolContext#run_phases on */ +nit__phase___ToolContext___run_phases(var23, var_nmodules); /* Direct call phase#ToolContext#run_phases on */ } { { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on */ -var25 = self->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var25 == NULL)) { +var28 = self->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var28 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base, 47); -show_backtrace(1); +fatal_exit(1); } -var23 = var25; -RET_LABEL24:(void)0; +var26 = var28; +RET_LABEL27:(void)0; } } { -{ /* Inline loader#ToolContext#opt_only_metamodel (var23) on */ -var28 = var23->attrs[COLOR_nit__loader__ToolContext___opt_only_metamodel].val; /* _opt_only_metamodel on */ -if (unlikely(var28 == NULL)) { +{ /* Inline loader#ToolContext#opt_only_metamodel (var26) on */ +var31 = var26->attrs[COLOR_nit__loader__ToolContext___opt_only_metamodel].val; /* _opt_only_metamodel on */ +if (unlikely(var31 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_only_metamodel"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__loader, 26); -show_backtrace(1); +fatal_exit(1); } -var26 = var28; -RET_LABEL27:(void)0; +var29 = var31; +RET_LABEL30:(void)0; } } { -{ /* Inline opts#Option#value (var26) on */ -var31 = var26->attrs[COLOR_opts__Option___value].val; /* _value on */ -var29 = var31; -RET_LABEL30:(void)0; +{ /* Inline opts#Option#value (var29) on */ +var34 = var29->attrs[COLOR_opts__Option___value].val; /* _value on */ +var32 = var34; +RET_LABEL33:(void)0; } } -var32 = ((struct instance_standard__Bool*)var29)->value; /* autounbox from nullable Object to Bool */; -if (var32){ +var35 = (short int)((long)(var32)>>2); +if (var35){ { { /* Inline modelbuilder_base#ModelBuilder#toolcontext (self) on */ -var35 = self->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ -if (unlikely(var35 == NULL)) { +var38 = self->attrs[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext].val; /* _toolcontext on */ +if (unlikely(var38 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext"); PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base, 47); -show_backtrace(1); +fatal_exit(1); } -var33 = var35; -RET_LABEL34:(void)0; +var36 = var38; +RET_LABEL37:(void)0; } } -if (varonce) { -var36 = varonce; +if (likely(varonce!=NULL)) { +var39 = varonce; } else { -var37 = "*** ONLY METAMODEL"; -var38 = 18; -var39 = standard___standard__NativeString___to_s_with_length(var37, var38); -var36 = var39; -varonce = var36; +var40 = "*** ONLY METAMODEL"; +var41 = standard___standard__NativeString___to_s_with_length(var40, 18l); +var39 = var41; +varonce = var39; } -var40 = 1; { -nit___nit__ToolContext___info(var33, var36, var40); /* Direct call toolcontext#ToolContext#info on */ +nit___nit__ToolContext___info(var36, var39, 1l); /* Direct call toolcontext#ToolContext#info on */ } -var41 = 0; +var42 = glob_sys; { -{ /* Inline kernel#Object#exit (self,var41) on */ -exit(var41); -RET_LABEL42:(void)0; +{ /* Inline kernel#Sys#exit (var42,0l) on */ +exit(0l); +RET_LABEL43:(void)0; } } } else {