X-Git-Url: http://nitlanguage.org diff --git a/c_src/opts.sep.1.c b/c_src/opts.sep.1.c index 5ea6272..ab29be2 100644 --- a/c_src/opts.sep.1.c +++ b/c_src/opts.sep.1.c @@ -1,57 +1,66 @@ #include "opts.sep.0.h" -/* method opts#Option#names for (self: Option): Array[String] */ +/* method opts$Option$names for (self: Option): Array[String] */ val* opts___opts__Option___names(val* self) { val* var /* : Array[String] */; val* var1 /* : Array[String] */; var1 = self->attrs[COLOR_opts__Option___names].val; /* _names on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 19); -show_backtrace(1); +fatal_exit(1); } var = var1; RET_LABEL:; return var; } -/* method opts#Option#names= for (self: Option, Array[String]) */ +/* method opts$Option$names= for (self: Option, Array[String]) */ void opts___opts__Option___names_61d(val* self, val* p0) { self->attrs[COLOR_opts__Option___names].val = p0; /* _names on */ RET_LABEL:; } -/* method opts#Option#helptext for (self: Option): String */ +/* method opts$Option$helptext for (self: Option): String */ val* opts___opts__Option___helptext(val* self) { val* var /* : String */; val* var1 /* : String */; var1 = self->attrs[COLOR_opts__Option___helptext].val; /* _helptext on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _helptext"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 25); -show_backtrace(1); +fatal_exit(1); } var = var1; RET_LABEL:; return var; } -/* method opts#Option#helptext= for (self: Option, String) */ +/* method opts$Option$helptext= for (self: Option, String) */ void opts___opts__Option___helptext_61d(val* self, val* p0) { self->attrs[COLOR_opts__Option___helptext].val = p0; /* _helptext on */ RET_LABEL:; } -/* method opts#Option#errors for (self: Option): Array[String] */ +/* method opts$Option$errors for (self: Option): Array[String] */ val* opts___opts__Option___errors(val* self) { val* var /* : Array[String] */; val* var1 /* : Array[String] */; var1 = self->attrs[COLOR_opts__Option___errors].val; /* _errors on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 28); -show_backtrace(1); +fatal_exit(1); } var = var1; RET_LABEL:; return var; } -/* method opts#Option#mandatory for (self: Option): Bool */ +/* method opts$Option$mandatory for (self: Option): Bool */ short int opts___opts__Option___mandatory(val* self) { short int var /* : Bool */; short int var1 /* : Bool */; @@ -60,7 +69,7 @@ var = var1; RET_LABEL:; return var; } -/* method opts#Option#hidden for (self: Option): Bool */ +/* method opts$Option$hidden for (self: Option): Bool */ short int opts___opts__Option___hidden(val* self) { short int var /* : Bool */; short int var1 /* : Bool */; @@ -69,12 +78,12 @@ var = var1; RET_LABEL:; return var; } -/* method opts#Option#hidden= for (self: Option, Bool) */ +/* method opts$Option$hidden= for (self: Option, Bool) */ void opts___opts__Option___hidden_61d(val* self, short int p0) { self->attrs[COLOR_opts__Option___hidden].s = p0; /* _hidden on */ RET_LABEL:; } -/* method opts#Option#read for (self: Option): Bool */ +/* method opts$Option$read for (self: Option): Bool */ short int opts___opts__Option___read(val* self) { short int var /* : Bool */; short int var1 /* : Bool */; @@ -83,12 +92,12 @@ var = var1; RET_LABEL:; return var; } -/* method opts#Option#read= for (self: Option, Bool) */ +/* method opts$Option$read= for (self: Option, Bool) */ void opts___opts__Option___read_61d(val* self, short int p0) { self->attrs[COLOR_opts__Option___read].s = p0; /* _read on */ RET_LABEL:; } -/* method opts#Option#value for (self: Option): nullable Object */ +/* method opts$Option$value for (self: Option): nullable Object */ val* opts___opts__Option___value(val* self) { val* var /* : nullable Object */; val* var1 /* : nullable Object */; @@ -97,7 +106,7 @@ var = var1; RET_LABEL:; return var; } -/* method opts#Option#value= for (self: Option, nullable Object) */ +/* method opts$Option$value= for (self: Option, nullable Object) */ void opts___opts__Option___value_61d(val* self, val* p0) { short int var /* : Bool */; int cltype; @@ -114,22 +123,22 @@ is_nullable = type_struct->is_nullable; if(p0 == NULL) { var = is_nullable; } else { -if(cltype >= p0->type->table_size) { +if(cltype >= (((long)p0&3)?type_info[((long)p0&3)]:p0->type)->table_size) { var = 0; } else { -var = p0->type->type_table[cltype] == idtype; +var = (((long)p0&3)?type_info[((long)p0&3)]:p0->type)->type_table[cltype] == idtype; } } if (unlikely(!var)) { -var_class_name = p0 == NULL ? "null" : p0->type->name; +var_class_name = p0 == NULL ? "null" : (((long)p0&3)?type_info[((long)p0&3)]:p0->type)->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 40); -show_backtrace(1); +fatal_exit(1); } self->attrs[COLOR_opts__Option___value].val = p0; /* _value on */ RET_LABEL:; } -/* method opts#Option#default_value= for (self: Option, nullable Object) */ +/* method opts$Option$default_value= for (self: Option, nullable Object) */ void opts___opts__Option___default_value_61d(val* self, val* p0) { short int var /* : Bool */; int cltype; @@ -146,22 +155,22 @@ is_nullable = type_struct->is_nullable; if(p0 == NULL) { var = is_nullable; } else { -if(cltype >= p0->type->table_size) { +if(cltype >= (((long)p0&3)?type_info[((long)p0&3)]:p0->type)->table_size) { var = 0; } else { -var = p0->type->type_table[cltype] == idtype; +var = (((long)p0&3)?type_info[((long)p0&3)]:p0->type)->type_table[cltype] == idtype; } } if (unlikely(!var)) { -var_class_name = p0 == NULL ? "null" : p0->type->name; +var_class_name = p0 == NULL ? "null" : (((long)p0&3)?type_info[((long)p0&3)]:p0->type)->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 43); -show_backtrace(1); +fatal_exit(1); } self->attrs[COLOR_opts__Option___default_value].val = p0; /* _default_value on */ RET_LABEL:; } -/* method opts#Option#init for (self: Option, String, nullable Object, nullable Array[String]) */ +/* method opts$Option$init for (self: Option, String, nullable Object, nullable Array[String]) */ void opts___opts__Option___init(val* self, val* p0, val* p1, val* p2) { short int var /* : Bool */; int cltype; @@ -181,27 +190,32 @@ is_nullable = type_struct->is_nullable; if(p1 == NULL) { var = is_nullable; } else { -if(cltype >= p1->type->table_size) { +if(cltype >= (((long)p1&3)?type_info[((long)p1&3)]:p1->type)->table_size) { var = 0; } else { -var = p1->type->type_table[cltype] == idtype; +var = (((long)p1&3)?type_info[((long)p1&3)]:p1->type)->type_table[cltype] == idtype; } } if (unlikely(!var)) { -var_class_name = p1 == NULL ? "null" : p1->type->name; +var_class_name = p1 == NULL ? "null" : (((long)p1&3)?type_info[((long)p1&3)]:p1->type)->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 46); -show_backtrace(1); +fatal_exit(1); +} +{ +{ /* Inline kernel$Object$init (self) on */ +RET_LABEL1:(void)0; +} } var_help = p0; var_default = p1; var_names = p2; { -opts___opts__Option___init_opt(self, var_help, var_default, var_names); /* Direct call opts#Option#init_opt on */ +opts___opts__Option___init_opt(self, var_help, var_default, var_names); /* Direct call opts$Option$init_opt on */ } RET_LABEL:; } -/* method opts#Option#init_opt for (self: Option, String, nullable Object, nullable Array[String]) */ +/* method opts$Option$init_opt for (self: Option, String, nullable Object, nullable Array[String]) */ void opts___opts__Option___init_opt(val* self, val* p0, val* p1, val* p2) { short int var /* : Bool */; int cltype; @@ -212,23 +226,22 @@ const char* var_class_name; val* var_help /* var help: String */; val* var_default /* var default: nullable Object */; val* var_names /* var names: nullable Array[String] */; -val* var1 /* : null */; +short int var1 /* : Bool */; short int var2 /* : Bool */; -short int var3 /* : Bool */; -val* var4 /* : Array[String] */; -val* var6 /* : Array[nullable Object] */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; -const struct type* type_struct13; -short int is_nullable14; -const char* var_class_name15; -short int var17 /* : Bool */; -int cltype18; -int idtype19; -const struct type* type_struct20; -short int is_nullable21; -const char* var_class_name22; +val* var3 /* : Array[String] */; +val* var5 /* : Array[nullable Object] */; +short int var9 /* : Bool */; +int cltype10; +int idtype11; +const struct type* type_struct12; +short int is_nullable13; +const char* var_class_name14; +short int var16 /* : Bool */; +int cltype17; +int idtype18; +const struct type* type_struct19; +short int is_nullable20; +const char* var_class_name21; /* Covariant cast for argument 1 (default) isa VALUE */ /* isa VALUE */ type_struct = self->type->resolution_table->types[COLOR_opts__Option__VALUE]; @@ -238,477 +251,498 @@ is_nullable = type_struct->is_nullable; if(p1 == NULL) { var = is_nullable; } else { -if(cltype >= p1->type->table_size) { +if(cltype >= (((long)p1&3)?type_info[((long)p1&3)]:p1->type)->table_size) { var = 0; } else { -var = p1->type->type_table[cltype] == idtype; +var = (((long)p1&3)?type_info[((long)p1&3)]:p1->type)->type_table[cltype] == idtype; } } if (unlikely(!var)) { -var_class_name = p1 == NULL ? "null" : p1->type->name; +var_class_name = p1 == NULL ? "null" : (((long)p1&3)?type_info[((long)p1&3)]:p1->type)->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 51); -show_backtrace(1); +fatal_exit(1); } var_help = p0; var_default = p1; var_names = p2; -var1 = NULL; if (var_names == NULL) { -var2 = 1; /* is null */ +var1 = 1; /* is null */ } else { -var2 = 0; /* arg is null but recv is not */ +var1 = 0; /* arg is null but recv is not */ } if (0) { -var3 = standard___standard__Array___standard__kernel__Object___61d_61d(var_names, var1); -var2 = var3; +var2 = core___core__Array___core__kernel__Object___61d_61d(var_names, ((val*)NULL)); +var1 = var2; } -if (var2){ -var4 = NEW_standard__Array(&type_standard__Array__standard__String); +if (var1){ +var3 = NEW_core__Array(&type_core__Array__core__String); { -standard___standard__Array___standard__kernel__Object__init(var4); /* Direct call array#Array#init on */ +core___core__Array___core__kernel__Object__init(var3); /* Direct call array$Array$init on */ } { -{ /* Inline opts#Option#names= (self,var4) on */ -self->attrs[COLOR_opts__Option___names].val = var4; /* _names on */ -RET_LABEL5:(void)0; +{ /* Inline opts$Option$names= (self,var3) on */ +self->attrs[COLOR_opts__Option___names].val = var3; /* _names on */ +RET_LABEL4:(void)0; } } } else { { -var6 = standard__array___Collection___to_a(var_names); +var5 = core__array___Collection___to_a(var_names); } { -{ /* Inline opts#Option#names= (self,var6) on */ -self->attrs[COLOR_opts__Option___names].val = var6; /* _names on */ -RET_LABEL7:(void)0; +{ /* Inline opts$Option$names= (self,var5) on */ +self->attrs[COLOR_opts__Option___names].val = var5; /* _names on */ +RET_LABEL6:(void)0; } } } { -{ /* Inline opts#Option#helptext= (self,var_help) on */ +{ /* Inline opts$Option$helptext= (self,var_help) on */ self->attrs[COLOR_opts__Option___helptext].val = var_help; /* _helptext on */ -RET_LABEL8:(void)0; +RET_LABEL7:(void)0; } } { -{ /* Inline opts#Option#default_value= (self,var_default) on */ +{ /* Inline opts$Option$default_value= (self,var_default) on */ /* Covariant cast for argument 0 (default_value) isa VALUE */ /* isa VALUE */ -type_struct13 = self->type->resolution_table->types[COLOR_opts__Option__VALUE]; -cltype11 = type_struct13->color; -idtype12 = type_struct13->id; -is_nullable14 = type_struct13->is_nullable; +type_struct12 = self->type->resolution_table->types[COLOR_opts__Option__VALUE]; +cltype10 = type_struct12->color; +idtype11 = type_struct12->id; +is_nullable13 = type_struct12->is_nullable; if(var_default == NULL) { -var10 = is_nullable14; +var9 = is_nullable13; } else { -if(cltype11 >= var_default->type->table_size) { -var10 = 0; +if(cltype10 >= (((long)var_default&3)?type_info[((long)var_default&3)]:var_default->type)->table_size) { +var9 = 0; } else { -var10 = var_default->type->type_table[cltype11] == idtype12; +var9 = (((long)var_default&3)?type_info[((long)var_default&3)]:var_default->type)->type_table[cltype10] == idtype11; } } -if (unlikely(!var10)) { -var_class_name15 = var_default == NULL ? "null" : var_default->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name15); +if (unlikely(!var9)) { +var_class_name14 = var_default == NULL ? "null" : (((long)var_default&3)?type_info[((long)var_default&3)]:var_default->type)->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name14); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 43); -show_backtrace(1); +fatal_exit(1); } self->attrs[COLOR_opts__Option___default_value].val = var_default; /* _default_value on */ -RET_LABEL9:(void)0; +RET_LABEL8:(void)0; } } { -{ /* Inline opts#Option#value= (self,var_default) on */ +{ /* Inline opts$Option$value= (self,var_default) on */ /* Covariant cast for argument 0 (value) isa VALUE */ /* isa VALUE */ -type_struct20 = self->type->resolution_table->types[COLOR_opts__Option__VALUE]; -cltype18 = type_struct20->color; -idtype19 = type_struct20->id; -is_nullable21 = type_struct20->is_nullable; +type_struct19 = self->type->resolution_table->types[COLOR_opts__Option__VALUE]; +cltype17 = type_struct19->color; +idtype18 = type_struct19->id; +is_nullable20 = type_struct19->is_nullable; if(var_default == NULL) { -var17 = is_nullable21; +var16 = is_nullable20; } else { -if(cltype18 >= var_default->type->table_size) { -var17 = 0; +if(cltype17 >= (((long)var_default&3)?type_info[((long)var_default&3)]:var_default->type)->table_size) { +var16 = 0; } else { -var17 = var_default->type->type_table[cltype18] == idtype19; +var16 = (((long)var_default&3)?type_info[((long)var_default&3)]:var_default->type)->type_table[cltype17] == idtype18; } } -if (unlikely(!var17)) { -var_class_name22 = var_default == NULL ? "null" : var_default->type->name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name22); +if (unlikely(!var16)) { +var_class_name21 = var_default == NULL ? "null" : (((long)var_default&3)?type_info[((long)var_default&3)]:var_default->type)->name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name21); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 40); -show_backtrace(1); +fatal_exit(1); } self->attrs[COLOR_opts__Option___value].val = var_default; /* _value on */ -RET_LABEL16:(void)0; +RET_LABEL15:(void)0; } } RET_LABEL:; } -/* method opts#Option#to_s for (self: Option): String */ -val* opts___opts__Option___standard__string__Object__to_s(val* self) { +/* method opts$Option$to_s for (self: Option): String */ +val* opts___opts__Option___core__abstract_text__Object__to_s(val* self) { val* var /* : String */; -long var1 /* : Int */; -val* var2 /* : String */; -var1 = 2; +val* var1 /* : String */; { -var2 = opts___opts__Option___pretty(self, var1); +var1 = opts___opts__Option___pretty(self, 2l); } -var = var2; +var = var1; goto RET_LABEL; RET_LABEL:; return var; } -/* method opts#Option#pretty for (self: Option, Int): String */ +/* method opts$Option$pretty for (self: Option, Int): String */ val* opts___opts__Option___pretty(val* self, long p0) { val* var /* : String */; long var_off /* var off: Int */; val* var1 /* : FlatBuffer */; static val* varonce; val* var2 /* : String */; -char* var3 /* : NativeString */; -long var4 /* : Int */; -val* var5 /* : FlatString */; +char* var3 /* : CString */; +val* var4 /* : String */; +val* var5 /* : nullable Int */; +val* var6 /* : nullable Int */; +val* var7 /* : nullable Bool */; +val* var8 /* : nullable Bool */; val* var_text /* var text: FlatBuffer */; -val* var6 /* : Array[String] */; -val* var8 /* : Array[String] */; -static val* varonce9; -val* var10 /* : String */; -char* var11 /* : NativeString */; -long var12 /* : Int */; -val* var13 /* : FlatString */; -val* var14 /* : String */; -static val* varonce15; -val* var16 /* : String */; -char* var17 /* : NativeString */; -long var18 /* : Int */; -val* var19 /* : FlatString */; -long var20 /* : Int */; -long var22 /* : Int */; -long var23 /* : Int */; -short int var25 /* : Bool */; +val* var9 /* : Array[String] */; +val* var11 /* : Array[String] */; +static val* varonce12; +val* var13 /* : String */; +char* var14 /* : CString */; +val* var15 /* : String */; +val* var16 /* : nullable Int */; +val* var17 /* : nullable Int */; +val* var18 /* : nullable Bool */; +val* var19 /* : nullable Bool */; +val* var20 /* : String */; +static val* varonce21; +val* var22 /* : String */; +char* var23 /* : CString */; +val* var24 /* : String */; +val* var25 /* : nullable Int */; +val* var26 /* : nullable Int */; +val* var27 /* : nullable Bool */; +val* var28 /* : nullable Bool */; +long var29 /* : Int */; +long var31 /* : Int */; +long var32 /* : Int */; +short int var34 /* : Bool */; int cltype; int idtype; const char* var_class_name; -long var26 /* : Int */; +long var35 /* : Int */; long var_rest /* var rest: Int */; -long var27 /* : Int */; -short int var28 /* : Bool */; -short int var30 /* : Bool */; -int cltype31; -int idtype32; -const char* var_class_name33; -short int var34 /* : Bool */; -static val* varonce35; -val* var36 /* : String */; -char* var37 /* : NativeString */; -long var38 /* : Int */; -val* var39 /* : FlatString */; -val* var40 /* : String */; -val* var41 /* : String */; -val* var43 /* : String */; +short int var36 /* : Bool */; +short int var38 /* : Bool */; +int cltype39; +int idtype40; +const char* var_class_name41; +short int var42 /* : Bool */; +static val* varonce43; val* var44 /* : String */; +char* var45 /* : CString */; +val* var46 /* : String */; +val* var47 /* : nullable Int */; +val* var48 /* : nullable Int */; +val* var49 /* : nullable Bool */; +val* var50 /* : nullable Bool */; +val* var51 /* : Text */; +val* var52 /* : String */; +val* var54 /* : String */; +val* var55 /* : String */; var_off = p0; -var1 = NEW_standard__FlatBuffer(&type_standard__FlatBuffer); -if (varonce) { +var1 = NEW_core__FlatBuffer(&type_core__FlatBuffer); +if (likely(varonce!=NULL)) { var2 = varonce; } else { var3 = " "; -var4 = 2; -var5 = standard___standard__NativeString___to_s_with_length(var3, var4); -var2 = var5; +var5 = (val*)(2l<<2|1); +var6 = (val*)(2l<<2|1); +var7 = (val*)((long)(0)<<2|3); +var8 = (val*)((long)(0)<<2|3); +var4 = core__flat___CString___to_s_unsafe(var3, var5, var6, var7, var8); +var2 = var4; varonce = var2; } { -standard___standard__FlatBuffer___from(var1, var2); /* Direct call string#FlatBuffer#from on */ +core___core__FlatBuffer___from(var1, var2); /* Direct call flat$FlatBuffer$from on */ } var_text = var1; { -{ /* Inline opts#Option#names (self) on */ -var8 = self->attrs[COLOR_opts__Option___names].val; /* _names on */ -if (unlikely(var8 == NULL)) { +{ /* Inline opts$Option$names (self) on */ +var11 = self->attrs[COLOR_opts__Option___names].val; /* _names on */ +if (unlikely(var11 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 19); -show_backtrace(1); +fatal_exit(1); } -var6 = var8; -RET_LABEL7:(void)0; +var9 = var11; +RET_LABEL10:(void)0; } } -if (varonce9) { -var10 = varonce9; +if (likely(varonce12!=NULL)) { +var13 = varonce12; } else { -var11 = ", "; -var12 = 2; -var13 = standard___standard__NativeString___to_s_with_length(var11, var12); -var10 = var13; -varonce9 = var10; +var14 = ", "; +var16 = (val*)(2l<<2|1); +var17 = (val*)(2l<<2|1); +var18 = (val*)((long)(0)<<2|3); +var19 = (val*)((long)(0)<<2|3); +var15 = core__flat___CString___to_s_unsafe(var14, var16, var17, var18, var19); +var13 = var15; +varonce12 = var13; } { -var14 = standard__string___Collection___join(var6, var10); +var20 = core__abstract_text___Collection___join(var9, var13, ((val*)NULL)); } { -standard___standard__FlatBuffer___Buffer__append(var_text, var14); /* Direct call string#FlatBuffer#append on */ +core___core__FlatBuffer___core__abstract_text__Buffer__append(var_text, var20); /* Direct call flat$FlatBuffer$append on */ } -if (varonce15) { -var16 = varonce15; +if (likely(varonce21!=NULL)) { +var22 = varonce21; } else { -var17 = " "; -var18 = 2; -var19 = standard___standard__NativeString___to_s_with_length(var17, var18); -var16 = var19; -varonce15 = var16; +var23 = " "; +var25 = (val*)(2l<<2|1); +var26 = (val*)(2l<<2|1); +var27 = (val*)((long)(0)<<2|3); +var28 = (val*)((long)(0)<<2|3); +var24 = core__flat___CString___to_s_unsafe(var23, var25, var26, var27, var28); +var22 = var24; +varonce21 = var22; } { -standard___standard__FlatBuffer___Buffer__append(var_text, var16); /* Direct call string#FlatBuffer#append on */ +core___core__FlatBuffer___core__abstract_text__Buffer__append(var_text, var22); /* Direct call flat$FlatBuffer$append on */ } { -{ /* Inline string#FlatText#length (var_text) on */ -var22 = var_text->attrs[COLOR_standard__string__FlatText___length].l; /* _length on */ -var20 = var22; -RET_LABEL21:(void)0; +{ /* Inline abstract_text$FlatText$length (var_text) on */ +var31 = var_text->attrs[COLOR_core__abstract_text__FlatText___length].l; /* _length on */ +var29 = var31; +RET_LABEL30:(void)0; } } { -{ /* Inline kernel#Int#- (var_off,var20) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var25 = 1; /* easy isa OTHER*/ -if (unlikely(!var25)) { -var_class_name = type_standard__Int.name; +{ /* Inline kernel$Int$- (var_off,var29) on */ +/* Covariant cast for argument 0 (i) isa OTHER */ +/* isa OTHER */ +var34 = 1; /* easy isa OTHER*/ +if (unlikely(!var34)) { +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_standard__kernel, 416); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731); +fatal_exit(1); } -var26 = var_off - var20; -var23 = var26; -goto RET_LABEL24; -RET_LABEL24:(void)0; +var35 = var_off - var29; +var32 = var35; +goto RET_LABEL33; +RET_LABEL33:(void)0; } } -var_rest = var23; -var27 = 0; +var_rest = var32; { -{ /* Inline kernel#Int#> (var_rest,var27) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var30 = 1; /* easy isa OTHER*/ -if (unlikely(!var30)) { -var_class_name33 = type_standard__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name33); -PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 412); -show_backtrace(1); +{ /* Inline kernel$Int$> (var_rest,0l) on */ +/* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */ +/* <0l:Int> isa OTHER */ +var38 = 1; /* easy <0l:Int> isa OTHER*/ +if (unlikely(!var38)) { +var_class_name41 = type_core__Int.name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name41); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 727); +fatal_exit(1); } -var34 = var_rest > var27; -var28 = var34; -goto RET_LABEL29; -RET_LABEL29:(void)0; +var42 = var_rest > 0l; +var36 = var42; +goto RET_LABEL37; +RET_LABEL37:(void)0; } } -if (var28){ -if (varonce35) { -var36 = varonce35; +if (var36){ +if (likely(varonce43!=NULL)) { +var44 = varonce43; } else { -var37 = " "; -var38 = 1; -var39 = standard___standard__NativeString___to_s_with_length(var37, var38); -var36 = var39; -varonce35 = var36; +var45 = " "; +var47 = (val*)(1l<<2|1); +var48 = (val*)(1l<<2|1); +var49 = (val*)((long)(0)<<2|3); +var50 = (val*)((long)(0)<<2|3); +var46 = core__flat___CString___to_s_unsafe(var45, var47, var48, var49, var50); +var44 = var46; +varonce43 = var44; } { -var40 = ((val* (*)(val* self, long p0))(var36->class->vft[COLOR_standard__string__String___42d]))(var36, var_rest) /* * on */; +var51 = ((val*(*)(val* self, long p0))(var44->class->vft[COLOR_core__abstract_text__Text___42d]))(var44, var_rest); /* * on */ } { -standard___standard__FlatBuffer___Buffer__append(var_text, var40); /* Direct call string#FlatBuffer#append on */ +core___core__FlatBuffer___core__abstract_text__Buffer__append(var_text, var51); /* Direct call flat$FlatBuffer$append on */ } } else { } { -{ /* Inline opts#Option#helptext (self) on */ -var43 = self->attrs[COLOR_opts__Option___helptext].val; /* _helptext on */ -if (unlikely(var43 == NULL)) { +{ /* Inline opts$Option$helptext (self) on */ +var54 = self->attrs[COLOR_opts__Option___helptext].val; /* _helptext on */ +if (unlikely(var54 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _helptext"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 25); -show_backtrace(1); +fatal_exit(1); } -var41 = var43; -RET_LABEL42:(void)0; +var52 = var54; +RET_LABEL53:(void)0; } } { -standard___standard__FlatBuffer___Buffer__append(var_text, var41); /* Direct call string#FlatBuffer#append on */ +core___core__FlatBuffer___core__abstract_text__Buffer__append(var_text, var52); /* Direct call flat$FlatBuffer$append on */ } { -var44 = standard___standard__FlatBuffer___Object__to_s(var_text); +var55 = core___core__FlatBuffer___core__abstract_text__Object__to_s(var_text); } -var = var44; +var = var55; goto RET_LABEL; RET_LABEL:; return var; } -/* method opts#Option#read_param for (self: Option, Iterator[String]) */ -void opts___opts__Option___read_param(val* self, val* p0) { +/* method opts$Option$read_param for (self: Option, OptionContext, Iterator[String]) */ +void opts___opts__Option___read_param(val* self, val* p0, val* p1) { +val* var_opts /* var opts: OptionContext */; val* var_it /* var it: Iterator[String] */; -short int var /* : Bool */; -var_it = p0; -var = 1; +var_opts = p0; +var_it = p1; { -{ /* Inline opts#Option#read= (self,var) on */ -self->attrs[COLOR_opts__Option___read].s = var; /* _read on */ +{ /* Inline opts$Option$read= (self,1) on */ +self->attrs[COLOR_opts__Option___read].s = 1; /* _read on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method opts#OptionBool#init for (self: OptionBool, String, Array[String]) */ +/* method opts$OptionBool$init for (self: OptionBool, String, Array[String]) */ void opts___opts__OptionBool___init(val* self, val* p0, val* p1) { val* var_help /* var help: String */; val* var_names /* var names: Array[String] */; -short int var /* : Bool */; -val* var1 /* : nullable Object */; +val* var /* : nullable Object */; var_help = p0; var_names = p1; -var = 0; { -var1 = BOX_standard__Bool(var); /* autobox from Bool to nullable Object */ -opts___opts__Option___init(self, var_help, var1, var_names); /* Direct call opts#Option#init on */ +var = (val*)((long)(0)<<2|3); +opts___opts__Option___init(self, var_help, var, var_names); /* Direct call opts$Option$init on */ } RET_LABEL:; } -/* method opts#OptionBool#read_param for (self: OptionBool, Iterator[String]) */ -void opts___opts__OptionBool___Option__read_param(val* self, val* p0) { +/* method opts$OptionBool$read_param for (self: OptionBool, OptionContext, Iterator[String]) */ +void opts___opts__OptionBool___Option__read_param(val* self, val* p0, val* p1) { +val* var_opts /* var opts: OptionContext */; val* var_it /* var it: Iterator[String] */; short int var /* : Bool */; -short int var2 /* : Bool */; int cltype; int idtype; const struct type* type_struct; const char* var_class_name; -val* var3 /* : nullable Object */; -var_it = p0; +val* var2 /* : nullable Object */; +var_opts = p0; +var_it = p1; { -((void (*)(val* self, val* p0))(self->class->vft[COLOR_opts___opts__OptionBool___Option__read_param]))(self, p0) /* read_param on */; +((void(*)(val* self, val* p0, val* p1))(self->class->vft[COLOR_opts___opts__OptionBool___Option__read_param]))(self, p0, p1); /* read_param on */ } -var = 1; { -{ /* Inline opts#Option#value= (self,var) on */ -/* Covariant cast for argument 0 (value) isa VALUE */ -/* isa VALUE */ +{ /* Inline opts$Option$value= (self,1) on */ +/* Covariant cast for argument 0 (value) <1:Bool> isa VALUE */ +/* <1:Bool> isa VALUE */ type_struct = self->type->resolution_table->types[COLOR_opts__Option__VALUE]; cltype = type_struct->color; idtype = type_struct->id; -if(cltype >= (&type_standard__Bool)->table_size) { -var2 = 0; +if(cltype >= (&type_core__Bool)->table_size) { +var = 0; } else { -var2 = (&type_standard__Bool)->type_table[cltype] == idtype; +var = (&type_core__Bool)->type_table[cltype] == idtype; } -if (unlikely(!var2)) { -var_class_name = type_standard__Bool.name; +if (unlikely(!var)) { +var_class_name = type_core__Bool.name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 40); -show_backtrace(1); +fatal_exit(1); } -var3 = BOX_standard__Bool(var); /* autobox from Bool to nullable Object */ -self->attrs[COLOR_opts__Option___value].val = var3; /* _value on */ +var2 = (val*)((long)(1)<<2|3); +self->attrs[COLOR_opts__Option___value].val = var2; /* _value on */ RET_LABEL1:(void)0; } } RET_LABEL:; } -/* method opts#OptionCount#init for (self: OptionCount, String, Array[String]) */ +/* method opts$OptionCount$init for (self: OptionCount, String, Array[String]) */ void opts___opts__OptionCount___init(val* self, val* p0, val* p1) { val* var_help /* var help: String */; val* var_names /* var names: Array[String] */; -long var /* : Int */; -val* var1 /* : nullable Object */; +val* var /* : nullable Object */; var_help = p0; var_names = p1; -var = 0; { -var1 = BOX_standard__Int(var); /* autobox from Int to nullable Object */ -opts___opts__Option___init(self, var_help, var1, var_names); /* Direct call opts#Option#init on */ +var = (val*)(0l<<2|1); +opts___opts__Option___init(self, var_help, var, var_names); /* Direct call opts$Option$init on */ } RET_LABEL:; } -/* method opts#OptionCount#read_param for (self: OptionCount, Iterator[String]) */ -void opts___opts__OptionCount___Option__read_param(val* self, val* p0) { +/* method opts$OptionCount$read_param for (self: OptionCount, OptionContext, Iterator[String]) */ +void opts___opts__OptionCount___Option__read_param(val* self, val* p0, val* p1) { +val* var_opts /* var opts: OptionContext */; val* var_it /* var it: Iterator[String] */; val* var_ /* var : OptionCount */; val* var /* : nullable Object */; val* var2 /* : nullable Object */; long var3 /* : Int */; -long var4 /* : Int */; -short int var6 /* : Bool */; +short int var5 /* : Bool */; int cltype; int idtype; const char* var_class_name; +long var6 /* : Int */; long var7 /* : Int */; -long var8 /* : Int */; -short int var10 /* : Bool */; -int cltype11; -int idtype12; +short int var9 /* : Bool */; +int cltype10; +int idtype11; const struct type* type_struct; -const char* var_class_name13; -val* var14 /* : nullable Object */; -var_it = p0; +const char* var_class_name12; +val* var13 /* : nullable Object */; +var_opts = p0; +var_it = p1; { -((void (*)(val* self, val* p0))(self->class->vft[COLOR_opts___opts__OptionCount___Option__read_param]))(self, p0) /* read_param on */; +((void(*)(val* self, val* p0, val* p1))(self->class->vft[COLOR_opts___opts__OptionCount___Option__read_param]))(self, p0, p1); /* read_param on */ } var_ = self; { -{ /* Inline opts#Option#value (var_) on */ +{ /* Inline opts$Option$value (var_) on */ var2 = var_->attrs[COLOR_opts__Option___value].val; /* _value on */ var = var2; RET_LABEL1:(void)0; } } -var3 = 1; { -{ /* Inline kernel#Int#+ (var,var3) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var6 = 1; /* easy isa OTHER*/ -if (unlikely(!var6)) { -var_class_name = type_standard__Int.name; +{ /* Inline kernel$Int$+ (var,1l) on */ +/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */ +/* <1l:Int> isa OTHER */ +var5 = 1; /* easy <1l:Int> isa OTHER*/ +if (unlikely(!var5)) { +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_standard__kernel, 413); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728); +fatal_exit(1); } -var7 = ((struct instance_standard__Int*)var)->value; /* autounbox from nullable Object to Int */; -var8 = var7 + var3; -var4 = var8; -goto RET_LABEL5; -RET_LABEL5:(void)0; +var6 = (long)(var)>>2; +var7 = var6 + 1l; +var3 = var7; +goto RET_LABEL4; +RET_LABEL4:(void)0; } } { -{ /* Inline opts#Option#value= (var_,var4) on */ -/* Covariant cast for argument 0 (value) isa VALUE */ -/* isa VALUE */ +{ /* Inline opts$Option$value= (var_,var3) on */ +/* Covariant cast for argument 0 (value) isa VALUE */ +/* isa VALUE */ type_struct = var_->type->resolution_table->types[COLOR_opts__Option__VALUE]; -cltype11 = type_struct->color; -idtype12 = type_struct->id; -if(cltype11 >= (&type_standard__Int)->table_size) { -var10 = 0; +cltype10 = type_struct->color; +idtype11 = type_struct->id; +if(cltype10 >= (&type_core__Int)->table_size) { +var9 = 0; } else { -var10 = (&type_standard__Int)->type_table[cltype11] == idtype12; +var9 = (&type_core__Int)->type_table[cltype10] == idtype11; } -if (unlikely(!var10)) { -var_class_name13 = type_standard__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name13); +if (unlikely(!var9)) { +var_class_name12 = type_core__Int.name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name12); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 40); -show_backtrace(1); +fatal_exit(1); } -var14 = BOX_standard__Int(var4); /* autobox from Int to nullable Object */ -var_->attrs[COLOR_opts__Option___value].val = var14; /* _value on */ -RET_LABEL9:(void)0; +var13 = (val*)(var3<<2|1); +var_->attrs[COLOR_opts__Option___value].val = var13; /* _value on */ +RET_LABEL8:(void)0; } } RET_LABEL:; } -/* method opts#OptionParameter#parameter_mandatory for (self: OptionParameter): Bool */ +/* method opts$OptionParameter$parameter_mandatory for (self: OptionParameter): Bool */ short int opts___opts__OptionParameter___parameter_mandatory(val* self) { short int var /* : Bool */; short int var1 /* : Bool */; @@ -717,220 +751,322 @@ var = var1; RET_LABEL:; return var; } -/* method opts#OptionParameter#read_param for (self: OptionParameter, Iterator[String]) */ -void opts___opts__OptionParameter___Option__read_param(val* self, val* p0) { +/* method opts$OptionParameter$read_param for (self: OptionParameter, OptionContext, Iterator[String]) */ +void opts___opts__OptionParameter___Option__read_param(val* self, val* p0, val* p1) { +val* var_opts /* var opts: OptionContext */; val* var_it /* var it: Iterator[String] */; short int var /* : Bool */; +short int var_ok /* var ok: Bool */; short int var1 /* : Bool */; -short int var_ /* var : Bool */; short int var2 /* : Bool */; -val* var3 /* : nullable Object */; +short int var3 /* : Bool */; +short int var_ /* var : Bool */; short int var4 /* : Bool */; -short int var_5 /* var : Bool */; -val* var6 /* : nullable Object */; -val* var7 /* : SequenceRead[Char] */; -val* var8 /* : nullable Object */; -char var9 /* : Char */; +short int var6 /* : Bool */; +short int var7 /* : Bool */; +short int var_8 /* var : Bool */; +val* var9 /* : nullable Object */; short int var10 /* : Bool */; -short int var12 /* : Bool */; -char var13 /* : Char */; -short int var14 /* : Bool */; +short int var11 /* : Bool */; +short int var_12 /* var : Bool */; +val* var13 /* : nullable Object */; +val* var14 /* : SequenceRead[Char] */; val* var15 /* : nullable Object */; -val* var16 /* : nullable Object */; +short int var16 /* : Bool */; short int var18 /* : Bool */; +uint32_t var19 /* : Char */; +val* var20 /* : Array[Option] */; +val* var22 /* : Array[Option] */; +val* var_23 /* var : Array[Option] */; +val* var24 /* : IndexedIterator[nullable Object] */; +val* var_25 /* var : IndexedIterator[Option] */; +short int var26 /* : Bool */; +val* var27 /* : nullable Object */; +val* var_opt /* var opt: Option */; +val* var28 /* : Array[String] */; +val* var30 /* : Array[String] */; +val* var31 /* : nullable Object */; +short int var32 /* : Bool */; +val* var33 /* : nullable Object */; +val* var34 /* : nullable Object */; +short int var36 /* : Bool */; int cltype; int idtype; const struct type* type_struct; short int is_nullable; const char* var_class_name; -short int var19 /* : Bool */; -short int var21 /* : Bool */; -val* var22 /* : Array[String] */; -val* var24 /* : Array[String] */; +val* var37 /* : Array[String] */; +val* var39 /* : Array[String] */; +val* var40 /* : NativeArray[String] */; static val* varonce; -val* var25 /* : String */; -char* var26 /* : NativeString */; -long var27 /* : Int */; -val* var28 /* : FlatString */; -val* var29 /* : Array[String] */; -val* var31 /* : Array[String] */; -val* var32 /* : nullable Object */; -static val* varonce33; -val* var34 /* : String */; -char* var35 /* : NativeString */; -long var36 /* : Int */; -val* var37 /* : FlatString */; -val* var38 /* : Array[Object] */; -long var39 /* : Int */; -val* var40 /* : NativeArray[Object] */; -val* var41 /* : String */; -var_it = p0; +static val* varonce41; +val* var42 /* : String */; +char* var43 /* : CString */; +val* var44 /* : String */; +val* var45 /* : nullable Int */; +val* var46 /* : nullable Int */; +val* var47 /* : nullable Bool */; +val* var48 /* : nullable Bool */; +static val* varonce49; +val* var50 /* : String */; +char* var51 /* : CString */; +val* var52 /* : String */; +val* var53 /* : nullable Int */; +val* var54 /* : nullable Int */; +val* var55 /* : nullable Bool */; +val* var56 /* : nullable Bool */; +val* var57 /* : Array[String] */; +val* var59 /* : Array[String] */; +val* var60 /* : nullable Object */; +val* var61 /* : String */; +var_opts = p0; +var_it = p1; +{ +((void(*)(val* self, val* p0, val* p1))(self->class->vft[COLOR_opts___opts__OptionParameter___Option__read_param]))(self, p0, p1); /* read_param on */ +} { -((void (*)(val* self, val* p0))(self->class->vft[COLOR_opts___opts__OptionParameter___Option__read_param]))(self, p0) /* read_param on */; +var = ((short int(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_it); /* is_ok on */ } +var_ok = var; +var_ = var_ok; +if (var_ok){ { -var1 = ((short int (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__is_ok]))(var_it) /* is_ok on */; +{ /* Inline opts$OptionParameter$parameter_mandatory (self) on */ +var6 = self->attrs[COLOR_opts__OptionParameter___parameter_mandatory].s; /* _parameter_mandatory on */ +var4 = var6; +RET_LABEL5:(void)0; +} +} +var7 = !var4; +var3 = var7; +} else { +var3 = var_; +} +var_8 = var3; +if (var3){ +{ +var9 = ((val*(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_it); /* item on */ +} +{ +var10 = ((short int(*)(val* self))(var9->class->vft[COLOR_core__abstract_text__Text__is_empty]))(var9); /* is_empty on */ +} +var11 = !var10; +var2 = var11; +} else { +var2 = var_8; +} +var_12 = var2; +if (var2){ +{ +var13 = ((val*(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_it); /* item on */ +} +{ +var14 = ((val*(*)(val* self))(var13->class->vft[COLOR_core__abstract_text__Text__chars]))(var13); /* chars on */ +} +{ +var15 = ((val*(*)(val* self))((((long)var14&3)?class_info[((long)var14&3)]:var14->class)->vft[COLOR_core__abstract_collection__Collection__first]))(var14); /* first on */ +} +{ +{ /* Inline kernel$Char$== (var15,'-') on */ +var19 = (uint32_t)((long)(var15)>>2); +var18 = var19 == '-'; +var16 = var18; +goto RET_LABEL17; +RET_LABEL17:(void)0; +} +} +var1 = var16; +} else { +var1 = var_12; } -var_ = var1; if (var1){ { -var3 = ((val* (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_it) /* item on */; +{ /* Inline opts$OptionContext$options (var_opts) on */ +var22 = var_opts->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ +if (unlikely(var22 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options"); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 283); +fatal_exit(1); +} +var20 = var22; +RET_LABEL21:(void)0; +} +} +var_23 = var20; +{ +var24 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_23); } +var_25 = var24; +for(;;) { { -var4 = standard___standard__Text___is_empty(var3); +var26 = ((short int(*)(val* self))((((long)var_25&3)?class_info[((long)var_25&3)]:var_25->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_25); /* is_ok on */ } -var_5 = var4; -if (var4){ -var2 = var_5; +if (var26){ } else { +goto BREAK_label; +} { -var6 = ((val* (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_it) /* item on */; +var27 = ((val*(*)(val* self))((((long)var_25&3)?class_info[((long)var_25&3)]:var_25->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_25); /* item on */ } +var_opt = var27; { -var7 = ((val* (*)(val* self))(var6->class->vft[COLOR_standard__string__Text__chars]))(var6) /* chars on */; +{ /* Inline opts$Option$names (var_opt) on */ +var30 = var_opt->attrs[COLOR_opts__Option___names].val; /* _names on */ +if (unlikely(var30 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names"); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 19); +fatal_exit(1); +} +var28 = var30; +RET_LABEL29:(void)0; +} } { -var8 = ((val* (*)(val* self))(var7->class->vft[COLOR_standard__abstract_collection__Collection__first]))(var7) /* first on */; +var31 = ((val*(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_it); /* item on */ } -var9 = '-'; { -{ /* Inline kernel#Char#!= (var8,var9) on */ -var12 = (var8 != NULL) && (var8->class == &class_standard__Char); -if (var12) { -var13 = ((struct instance_standard__Char*)var8)->value; /* autounbox from nullable Object to Char */; -var12 = (var13 == var9); +var32 = core___core__AbstractArrayRead___core__abstract_collection__Collection__has(var28, var31); } -var14 = !var12; -var10 = var14; -goto RET_LABEL11; -RET_LABEL11:(void)0; +if (var32){ +var_ok = 0; +goto BREAK_label; +} else { } +{ +((void(*)(val* self))((((long)var_25&3)?class_info[((long)var_25&3)]:var_25->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_25); /* next on */ } -var2 = var10; } -var = var2; +BREAK_label: (void)0; +{ +((void(*)(val* self))((((long)var_25&3)?class_info[((long)var_25&3)]:var_25->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_25); /* finish on */ +} } else { -var = var_; } -if (var){ +if (var_ok){ { -var15 = ((val* (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_it) /* item on */; +var33 = ((val*(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_it); /* item on */ } { -var16 = ((val* (*)(val* self, val* p0))(self->class->vft[COLOR_opts__OptionParameter__convert]))(self, var15) /* convert on */; +var34 = ((val*(*)(val* self, val* p0))(self->class->vft[COLOR_opts__OptionParameter__convert]))(self, var33); /* convert on */ } { -{ /* Inline opts#Option#value= (self,var16) on */ -/* Covariant cast for argument 0 (value) isa VALUE */ -/* isa VALUE */ +{ /* Inline opts$Option$value= (self,var34) on */ +/* Covariant cast for argument 0 (value) isa VALUE */ +/* isa VALUE */ type_struct = self->type->resolution_table->types[COLOR_opts__Option__VALUE]; cltype = type_struct->color; idtype = type_struct->id; is_nullable = type_struct->is_nullable; -if(var16 == NULL) { -var18 = is_nullable; +if(var34 == NULL) { +var36 = is_nullable; } else { -if(cltype >= var16->type->table_size) { -var18 = 0; +if(cltype >= (((long)var34&3)?type_info[((long)var34&3)]:var34->type)->table_size) { +var36 = 0; } else { -var18 = var16->type->type_table[cltype] == idtype; +var36 = (((long)var34&3)?type_info[((long)var34&3)]:var34->type)->type_table[cltype] == idtype; } } -if (unlikely(!var18)) { -var_class_name = var16 == NULL ? "null" : var16->type->name; +if (unlikely(!var36)) { +var_class_name = var34 == NULL ? "null" : (((long)var34&3)?type_info[((long)var34&3)]:var34->type)->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 40); -show_backtrace(1); +fatal_exit(1); } -self->attrs[COLOR_opts__Option___value].val = var16; /* _value on */ -RET_LABEL17:(void)0; +self->attrs[COLOR_opts__Option___value].val = var34; /* _value on */ +RET_LABEL35:(void)0; } } { -((void (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_it) /* next on */; +((void(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_it); /* next on */ } } else { { -{ /* Inline opts#OptionParameter#parameter_mandatory (self) on */ -var21 = self->attrs[COLOR_opts__OptionParameter___parameter_mandatory].s; /* _parameter_mandatory on */ -var19 = var21; -RET_LABEL20:(void)0; -} +{ /* Inline opts$Option$errors (self) on */ +var39 = self->attrs[COLOR_opts__Option___errors].val; /* _errors on */ +if (unlikely(var39 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); } -if (var19){ -{ -{ /* Inline opts#Option#errors (self) on */ -var24 = self->attrs[COLOR_opts__Option___errors].val; /* _errors on */ -if (unlikely(var24 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 28); -show_backtrace(1); +fatal_exit(1); } -var22 = var24; -RET_LABEL23:(void)0; +var37 = var39; +RET_LABEL38:(void)0; } } -if (varonce) { -var25 = varonce; +if (unlikely(varonce==NULL)) { +var40 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce41!=NULL)) { +var42 = varonce41; } else { -var26 = "Parameter expected for option "; -var27 = 30; -var28 = standard___standard__NativeString___to_s_with_length(var26, var27); -var25 = var28; -varonce = var25; +var43 = "Parameter expected for option "; +var45 = (val*)(30l<<2|1); +var46 = (val*)(30l<<2|1); +var47 = (val*)((long)(0)<<2|3); +var48 = (val*)((long)(0)<<2|3); +var44 = core__flat___CString___to_s_unsafe(var43, var45, var46, var47, var48); +var42 = var44; +varonce41 = var42; +} +((struct instance_core__NativeArray*)var40)->values[0]=var42; +if (likely(varonce49!=NULL)) { +var50 = varonce49; +} else { +var51 = "."; +var53 = (val*)(1l<<2|1); +var54 = (val*)(1l<<2|1); +var55 = (val*)((long)(0)<<2|3); +var56 = (val*)((long)(0)<<2|3); +var52 = core__flat___CString___to_s_unsafe(var51, var53, var54, var55, var56); +var50 = var52; +varonce49 = var50; +} +((struct instance_core__NativeArray*)var40)->values[2]=var50; +} else { +var40 = varonce; +varonce = NULL; } { -{ /* Inline opts#Option#names (self) on */ -var31 = self->attrs[COLOR_opts__Option___names].val; /* _names on */ -if (unlikely(var31 == NULL)) { +{ /* Inline opts$Option$names (self) on */ +var59 = self->attrs[COLOR_opts__Option___names].val; /* _names on */ +if (unlikely(var59 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 19); -show_backtrace(1); +fatal_exit(1); } -var29 = var31; -RET_LABEL30:(void)0; +var57 = var59; +RET_LABEL58:(void)0; } } { -var32 = standard___standard__SequenceRead___Collection__first(var29); +var60 = core___core__SequenceRead___Collection__first(var57); } -if (varonce33) { -var34 = varonce33; -} else { -var35 = "."; -var36 = 1; -var37 = standard___standard__NativeString___to_s_with_length(var35, var36); -var34 = var37; -varonce33 = var34; -} -var38 = NEW_standard__Array(&type_standard__Array__standard__Object); -{ /* var38 = array_instance Array[Object] */ -var39 = 3; -var40 = NEW_standard__NativeArray(var39, &type_standard__NativeArray__standard__Object); -((struct instance_standard__NativeArray*)var40)->values[0] = (val*) var25; -((struct instance_standard__NativeArray*)var40)->values[1] = (val*) var32; -((struct instance_standard__NativeArray*)var40)->values[2] = (val*) var34; +((struct instance_core__NativeArray*)var40)->values[1]=var60; { -((void (*)(val* self, val* p0, long p1))(var38->class->vft[COLOR_standard__array__Array__with_native]))(var38, var40, var39) /* with_native on */; -} +var61 = ((val*(*)(val* self))(var40->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var40); /* native_to_s on */ } +varonce = var40; { -var41 = ((val* (*)(val* self))(var38->class->vft[COLOR_standard__string__Object__to_s]))(var38) /* to_s on */; -} -{ -standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var22, var41); /* Direct call array#Array#add on */ -} -} else { +core___core__Array___core__abstract_collection__SimpleCollection__add(var37, var61); /* Direct call array$Array$add on */ } } RET_LABEL:; } -/* method opts#OptionString#init for (self: OptionString, String, Array[String]) */ +/* method opts$OptionString$init for (self: OptionString, String, Array[String]) */ void opts___opts__OptionString___init(val* self, val* p0, val* p1) { val* var_help /* var help: String */; val* var_names /* var names: Array[String] */; -val* var /* : null */; -short int var1 /* : Bool */; +short int var /* : Bool */; int cltype; int idtype; const struct type* type_struct; @@ -938,33 +1074,32 @@ short int is_nullable; const char* var_class_name; var_help = p0; var_names = p1; -var = NULL; -/* isa VALUE */ +/* <((val*)NULL):null> isa VALUE */ type_struct = self->type->resolution_table->types[COLOR_opts__Option__VALUE]; cltype = type_struct->color; idtype = type_struct->id; is_nullable = type_struct->is_nullable; -if(var == NULL) { -var1 = is_nullable; +if(((val*)NULL) == NULL) { +var = is_nullable; } else { -if(cltype >= var->type->table_size) { -var1 = 0; +if(cltype >= ((val*)NULL)->type->table_size) { +var = 0; } else { -var1 = var->type->type_table[cltype] == idtype; +var = ((val*)NULL)->type->type_table[cltype] == idtype; } } -if (unlikely(!var1)) { -var_class_name = var == NULL ? "null" : var->type->name; +if (unlikely(!var)) { +var_class_name = ((val*)NULL) == NULL ? "null" : ((val*)NULL)->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 172); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 184); +fatal_exit(1); } { -opts___opts__Option___init(self, var_help, var, var_names); /* Direct call opts#Option#init on */ +opts___opts__Option___init(self, var_help, ((val*)NULL), var_names); /* Direct call opts$Option$init on */ } RET_LABEL:; } -/* method opts#OptionString#convert for (self: OptionString, String): nullable String */ +/* method opts$OptionString$convert for (self: OptionString, String): nullable String */ val* opts___opts__OptionString___OptionParameter__convert(val* self, val* p0) { val* var /* : nullable String */; val* var_str /* var str: String */; @@ -986,15 +1121,15 @@ var1 = var_str->type->type_table[cltype] == idtype; if (unlikely(!var1)) { var_class_name = var_str == NULL ? "null" : var_str->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 174); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 186); +fatal_exit(1); } var = var_str; goto RET_LABEL; RET_LABEL:; return var; } -/* method opts#OptionInt#init for (self: OptionInt, String, Int, Array[String]) */ +/* method opts$OptionInt$init for (self: OptionInt, String, Int, Array[String]) */ void opts___opts__OptionInt___init(val* self, val* p0, long p1, val* p2) { val* var_help /* var help: String */; long var_default /* var default: Int */; @@ -1004,37 +1139,163 @@ var_help = p0; var_default = p1; var_names = p2; { -var = BOX_standard__Int(var_default); /* autobox from Int to nullable Object */ -opts___opts__Option___init(self, var_help, var, var_names); /* Direct call opts#Option#init on */ +var = (val*)(var_default<<2|1); +opts___opts__Option___init(self, var_help, var, var_names); /* Direct call opts$Option$init on */ } RET_LABEL:; } -/* method opts#OptionInt#convert for (self: OptionInt, String): Int */ +/* method opts$OptionInt$convert for (self: OptionInt, String): Int */ long opts___opts__OptionInt___OptionParameter__convert(val* self, val* p0) { long var /* : Int */; val* var_str /* var str: String */; -long var1 /* : Int */; +short int var1 /* : Bool */; +long var2 /* : Int */; +val* var3 /* : Array[String] */; +val* var5 /* : Array[String] */; +val* var6 /* : NativeArray[String] */; +static val* varonce; +static val* varonce7; +val* var8 /* : String */; +char* var9 /* : CString */; +val* var10 /* : String */; +val* var11 /* : nullable Int */; +val* var12 /* : nullable Int */; +val* var13 /* : nullable Bool */; +val* var14 /* : nullable Bool */; +static val* varonce15; +val* var16 /* : String */; +char* var17 /* : CString */; +val* var18 /* : String */; +val* var19 /* : nullable Int */; +val* var20 /* : nullable Int */; +val* var21 /* : nullable Bool */; +val* var22 /* : nullable Bool */; +val* var23 /* : Array[String] */; +val* var25 /* : Array[String] */; +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 /* : String */; +val* var35 /* : String */; var_str = p0; { -var1 = standard___standard__Text___to_i(var_str); +var1 = core__fixed_ints_text___Text___is_int(var_str); } -var = var1; +if (var1){ +{ +var2 = core__fixed_ints_text___Text___to_i(var_str); +} +var = var2; +goto RET_LABEL; +} else { +} +{ +{ /* Inline opts$Option$errors (self) on */ +var5 = self->attrs[COLOR_opts__Option___errors].val; /* _errors on */ +if (unlikely(var5 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors"); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 28); +fatal_exit(1); +} +var3 = var5; +RET_LABEL4:(void)0; +} +} +if (unlikely(varonce==NULL)) { +var6 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce7!=NULL)) { +var8 = varonce7; +} else { +var9 = "Expected an integer for option "; +var11 = (val*)(31l<<2|1); +var12 = (val*)(31l<<2|1); +var13 = (val*)((long)(0)<<2|3); +var14 = (val*)((long)(0)<<2|3); +var10 = core__flat___CString___to_s_unsafe(var9, var11, var12, var13, var14); +var8 = var10; +varonce7 = var8; +} +((struct instance_core__NativeArray*)var6)->values[0]=var8; +if (likely(varonce15!=NULL)) { +var16 = varonce15; +} else { +var17 = "."; +var19 = (val*)(1l<<2|1); +var20 = (val*)(1l<<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; +varonce15 = var16; +} +((struct instance_core__NativeArray*)var6)->values[2]=var16; +} else { +var6 = varonce; +varonce = NULL; +} +{ +{ /* Inline opts$Option$names (self) on */ +var25 = self->attrs[COLOR_opts__Option___names].val; /* _names on */ +if (unlikely(var25 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names"); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 19); +fatal_exit(1); +} +var23 = var25; +RET_LABEL24:(void)0; +} +} +if (likely(varonce26!=NULL)) { +var27 = varonce26; +} else { +var28 = ", "; +var30 = (val*)(2l<<2|1); +var31 = (val*)(2l<<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; +} +{ +var34 = core__abstract_text___Collection___join(var23, var27, ((val*)NULL)); +} +((struct instance_core__NativeArray*)var6)->values[1]=var34; +{ +var35 = ((val*(*)(val* self))(var6->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var6); /* native_to_s on */ +} +varonce = var6; +{ +core___core__Array___core__abstract_collection__SimpleCollection__add(var3, var35); /* Direct call array$Array$add on */ +} +var = 0l; goto RET_LABEL; RET_LABEL:; return var; } -/* method opts#OptionInt#convert for (self: OptionParameter, String): nullable Object */ +/* method opts$OptionInt$convert for (self: OptionParameter, String): nullable Object */ val* VIRTUAL_opts___opts__OptionInt___OptionParameter__convert(val* self, val* p0) { val* var /* : nullable Object */; long var1 /* : Int */; val* var2 /* : nullable Object */; var1 = opts___opts__OptionInt___OptionParameter__convert(self, p0); -var2 = BOX_standard__Int(var1); /* autobox from Int to nullable Object */ +var2 = (val*)(var1<<2|1); var = var2; RET_LABEL:; return var; } -/* method opts#OptionArray#init for (self: OptionArray, String, Array[String]) */ +/* method opts$OptionArray$init for (self: OptionArray, String, Array[String]) */ void opts___opts__OptionArray___init(val* self, val* p0, val* p1) { val* var_help /* var help: String */; val* var_names /* var names: Array[String] */; @@ -1048,23 +1309,26 @@ const struct type* type_struct; const char* var_class_name; var_help = p0; var_names = p1; -var = NEW_standard__Array(&type_standard__Array__standard__String); +var = NEW_core__Array(&type_core__Array__core__String); { -standard___standard__Array___standard__kernel__Object__init(var); /* Direct call array#Array#init on */ +core___core__Array___core__kernel__Object__init(var); /* Direct call array$Array$init on */ } { -{ /* Inline opts#OptionArray#values= (self,var) on */ +{ /* Inline opts$OptionArray$values= (self,var) on */ self->attrs[COLOR_opts__OptionArray___values].val = var; /* _values on */ RET_LABEL1:(void)0; } } { -{ /* Inline opts#OptionArray#values (self) on */ +{ /* Inline opts$OptionArray$values (self) on */ var4 = self->attrs[COLOR_opts__OptionArray___values].val; /* _values on */ if (unlikely(var4 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _values"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 254); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 273); +fatal_exit(1); } var2 = var4; RET_LABEL3:(void)0; @@ -1082,34 +1346,37 @@ var5 = var2->type->type_table[cltype] == idtype; if (unlikely(!var5)) { var_class_name = var2 == NULL ? "null" : var2->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 251); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 270); +fatal_exit(1); } { -opts___opts__Option___init(self, var_help, var2, var_names); /* Direct call opts#Option#init on */ +opts___opts__Option___init(self, var_help, var2, var_names); /* Direct call opts$Option$init on */ } RET_LABEL:; } -/* method opts#OptionArray#values for (self: OptionArray): Array[String] */ +/* method opts$OptionArray$values for (self: OptionArray): Array[String] */ val* opts___opts__OptionArray___values(val* self) { val* var /* : Array[String] */; val* var1 /* : Array[String] */; var1 = self->attrs[COLOR_opts__OptionArray___values].val; /* _values on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _values"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 254); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 273); +fatal_exit(1); } var = var1; RET_LABEL:; return var; } -/* method opts#OptionArray#values= for (self: OptionArray, Array[String]) */ +/* method opts$OptionArray$values= for (self: OptionArray, Array[String]) */ void opts___opts__OptionArray___values_61d(val* self, val* p0) { self->attrs[COLOR_opts__OptionArray___values].val = p0; /* _values on */ RET_LABEL:; } -/* method opts#OptionArray#convert for (self: OptionArray, String): Array[String] */ +/* method opts$OptionArray$convert for (self: OptionArray, String): Array[String] */ val* opts___opts__OptionArray___OptionParameter__convert(val* self, val* p0) { val* var /* : Array[String] */; val* var_str /* var str: String */; @@ -1124,27 +1391,33 @@ const struct type* type_struct; const char* var_class_name; var_str = p0; { -{ /* Inline opts#OptionArray#values (self) on */ +{ /* Inline opts$OptionArray$values (self) on */ var3 = self->attrs[COLOR_opts__OptionArray___values].val; /* _values on */ if (unlikely(var3 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _values"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 254); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 273); +fatal_exit(1); } var1 = var3; RET_LABEL2:(void)0; } } { -standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var1, var_str); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var1, var_str); /* Direct call array$Array$add on */ } { -{ /* Inline opts#OptionArray#values (self) on */ +{ /* Inline opts$OptionArray$values (self) on */ var6 = self->attrs[COLOR_opts__OptionArray___values].val; /* _values on */ if (unlikely(var6 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _values"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 254); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 273); +fatal_exit(1); } var4 = var6; RET_LABEL5:(void)0; @@ -1162,363 +1435,398 @@ var7 = var4->type->type_table[cltype] == idtype; if (unlikely(!var7)) { var_class_name = var4 == NULL ? "null" : var4->type->name; PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VALUE", var_class_name); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 258); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 277); +fatal_exit(1); } var = var4; goto RET_LABEL; RET_LABEL:; return var; } -/* method opts#OptionContext#options for (self: OptionContext): Array[Option] */ +/* method opts$OptionContext$options for (self: OptionContext): Array[Option] */ val* opts___opts__OptionContext___options(val* self) { val* var /* : Array[Option] */; val* var1 /* : Array[Option] */; var1 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 264); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 283); +fatal_exit(1); } var = var1; RET_LABEL:; return var; } -/* method opts#OptionContext#rest for (self: OptionContext): Array[String] */ +/* method opts$OptionContext$rest for (self: OptionContext): Array[String] */ val* opts___opts__OptionContext___rest(val* self) { val* var /* : Array[String] */; val* var1 /* : Array[String] */; var1 = self->attrs[COLOR_opts__OptionContext___rest].val; /* _rest on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _rest"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 267); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 286); +fatal_exit(1); } var = var1; RET_LABEL:; return var; } -/* method opts#OptionContext#errors for (self: OptionContext): Array[String] */ -val* opts___opts__OptionContext___errors(val* self) { +/* method opts$OptionContext$context_errors for (self: OptionContext): Array[String] */ +val* opts___opts__OptionContext___context_errors(val* self) { val* var /* : Array[String] */; val* var1 /* : Array[String] */; -var1 = self->attrs[COLOR_opts__OptionContext___errors].val; /* _errors on */ +var1 = self->attrs[COLOR_opts__OptionContext___context_errors].val; /* _context_errors on */ if (unlikely(var1 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 270); -show_backtrace(1); +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _context_errors"); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 289); +fatal_exit(1); } var = var1; RET_LABEL:; return var; } -/* method opts#OptionContext#optmap for (self: OptionContext): HashMap[String, Option] */ +/* method opts$OptionContext$optmap for (self: OptionContext): HashMap[String, Option] */ val* opts___opts__OptionContext___optmap(val* self) { val* var /* : HashMap[String, Option] */; val* var1 /* : HashMap[String, Option] */; var1 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ if (unlikely(var1 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 273); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 292); +fatal_exit(1); } var = var1; RET_LABEL:; return var; } -/* method opts#OptionContext#add_option for (self: OptionContext, Array[Option]) */ +/* method opts$OptionContext$add_option for (self: OptionContext, Array[Option]) */ void opts___opts__OptionContext___add_option(val* self, val* p0) { val* var_opts /* var opts: Array[Option] */; val* var /* : Array[Option] */; val* var2 /* : Array[Option] */; var_opts = p0; { -{ /* Inline opts#OptionContext#options (self) on */ +{ /* Inline opts$OptionContext$options (self) on */ var2 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 264); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 283); +fatal_exit(1); } var = var2; RET_LABEL1:(void)0; } } { -standard___standard__Array___standard__abstract_collection__SimpleCollection__add_all(var, var_opts); /* Direct call array#Array#add_all on */ +core___core__Array___core__abstract_collection__SimpleCollection__add_all(var, var_opts); /* Direct call array$Array$add_all on */ } RET_LABEL:; } -/* method opts#OptionContext#usage for (self: OptionContext) */ +/* method opts$OptionContext$usage for (self: OptionContext) */ void opts___opts__OptionContext___usage(val* self) { -long var /* : Int */; long var_lmax /* var lmax: Int */; -val* var1 /* : Array[Option] */; -val* var3 /* : Array[Option] */; +val* var /* : Array[Option] */; +val* var2 /* : Array[Option] */; val* var_ /* var : Array[Option] */; -val* var4 /* : ArrayIterator[nullable Object] */; -val* var_5 /* var : ArrayIterator[Option] */; -short int var6 /* : Bool */; -val* var7 /* : nullable Object */; +val* var3 /* : IndexedIterator[nullable Object] */; +val* var_4 /* var : IndexedIterator[Option] */; +short int var5 /* : Bool */; +val* var6 /* : nullable Object */; val* var_i /* var i: Option */; -long var8 /* : Int */; long var_l /* var l: Int */; +val* var7 /* : Array[String] */; val* var9 /* : Array[String] */; -val* var11 /* : Array[String] */; -val* var_12 /* var : Array[String] */; -val* var13 /* : ArrayIterator[nullable Object] */; -val* var_14 /* var : ArrayIterator[String] */; -short int var15 /* : Bool */; -val* var16 /* : nullable Object */; +val* var_10 /* var : Array[String] */; +val* var11 /* : IndexedIterator[nullable Object] */; +val* var_12 /* var : IndexedIterator[String] */; +short int var13 /* : Bool */; +val* var15 /* : nullable Object */; val* var_n /* var n: String */; +long var16 /* : Int */; long var17 /* : Int */; -long var18 /* : Int */; -long var19 /* : Int */; -short int var21 /* : Bool */; +short int var19 /* : Bool */; int cltype; int idtype; const char* var_class_name; -long var22 /* : Int */; -long var23 /* : Int */; -short int var25 /* : Bool */; -int cltype26; -int idtype27; -const char* var_class_name28; -long var29 /* : Int */; -short int var31 /* : Bool */; -short int var33 /* : Bool */; -int cltype34; -int idtype35; -const char* var_class_name36; -short int var37 /* : Bool */; -val* var40 /* : Array[Option] */; -val* var42 /* : Array[Option] */; -val* var_43 /* var : Array[Option] */; -val* var44 /* : ArrayIterator[nullable Object] */; -val* var_45 /* var : ArrayIterator[Option] */; -short int var46 /* : Bool */; -val* var47 /* : nullable Object */; -val* var_i48 /* var i: Option */; -short int var49 /* : Bool */; -short int var51 /* : Bool */; -short int var52 /* : Bool */; -val* var53 /* : String */; -var = 1; -var_lmax = var; -{ -{ /* Inline opts#OptionContext#options (self) on */ -var3 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ -if (unlikely(var3 == NULL)) { +long var20 /* : Int */; +long var21 /* : Int */; +short int var23 /* : Bool */; +int cltype24; +int idtype25; +const char* var_class_name26; +long var27 /* : Int */; +short int var28 /* : Bool */; +short int var30 /* : Bool */; +int cltype31; +int idtype32; +const char* var_class_name33; +short int var34 /* : Bool */; +val* var35 /* : Array[Option] */; +val* var37 /* : Array[Option] */; +val* var_38 /* var : Array[Option] */; +val* var39 /* : IndexedIterator[nullable Object] */; +val* var_40 /* var : IndexedIterator[Option] */; +short int var41 /* : Bool */; +val* var43 /* : nullable Object */; +val* var_i44 /* var i: Option */; +short int var45 /* : Bool */; +short int var47 /* : Bool */; +short int var48 /* : Bool */; +val* var49 /* : Sys */; +val* var50 /* : String */; +var_lmax = 1l; +{ +{ /* Inline opts$OptionContext$options (self) on */ +var2 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ +if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 264); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 283); +fatal_exit(1); } -var1 = var3; -RET_LABEL2:(void)0; +var = var2; +RET_LABEL1:(void)0; } } -var_ = var1; +var_ = var; { -var4 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_); +var3 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_); } -var_5 = var4; +var_4 = var3; for(;;) { { -var6 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_5); +var5 = ((short int(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_4); /* is_ok on */ +} +if (var5){ +} else { +goto BREAK_label; } -if (var6){ { -var7 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_5); +var6 = ((val*(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_4); /* item on */ } -var_i = var7; -var8 = 3; -var_l = var8; +var_i = var6; +var_l = 3l; { -{ /* Inline opts#Option#names (var_i) on */ -var11 = var_i->attrs[COLOR_opts__Option___names].val; /* _names on */ -if (unlikely(var11 == NULL)) { +{ /* Inline opts$Option$names (var_i) on */ +var9 = var_i->attrs[COLOR_opts__Option___names].val; /* _names on */ +if (unlikely(var9 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 19); -show_backtrace(1); +fatal_exit(1); } -var9 = var11; -RET_LABEL10:(void)0; +var7 = var9; +RET_LABEL8:(void)0; } } -var_12 = var9; +var_10 = var7; { -var13 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_12); +var11 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_10); } -var_14 = var13; +var_12 = var11; for(;;) { { -var15 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_14); +var13 = ((short int(*)(val* self))((((long)var_12&3)?class_info[((long)var_12&3)]:var_12->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_12); /* is_ok on */ +} +if (var13){ +} else { +goto BREAK_label14; } -if (var15){ { -var16 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_14); +var15 = ((val*(*)(val* self))((((long)var_12&3)?class_info[((long)var_12&3)]:var_12->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_12); /* item on */ } -var_n = var16; +var_n = var15; { -var17 = ((long (*)(val* self))(var_n->class->vft[COLOR_standard__string__Text__length]))(var_n) /* length on */; +var16 = ((long(*)(val* self))(var_n->class->vft[COLOR_core__abstract_text__Text__length]))(var_n); /* length on */ } -var18 = 2; { -{ /* Inline kernel#Int#+ (var17,var18) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var21 = 1; /* easy isa OTHER*/ -if (unlikely(!var21)) { -var_class_name = type_standard__Int.name; +{ /* Inline kernel$Int$+ (var16,2l) on */ +/* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */ +/* <2l:Int> isa OTHER */ +var19 = 1; /* easy <2l:Int> isa OTHER*/ +if (unlikely(!var19)) { +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_standard__kernel, 413); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728); +fatal_exit(1); } -var22 = var17 + var18; -var19 = var22; -goto RET_LABEL20; -RET_LABEL20:(void)0; +var20 = var16 + 2l; +var17 = var20; +goto RET_LABEL18; +RET_LABEL18:(void)0; } } { -{ /* Inline kernel#Int#+ (var_l,var19) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var25 = 1; /* easy isa OTHER*/ -if (unlikely(!var25)) { -var_class_name28 = type_standard__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name28); -PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413); -show_backtrace(1); +{ /* Inline kernel$Int$+ (var_l,var17) on */ +/* Covariant cast for argument 0 (i) isa OTHER */ +/* isa OTHER */ +var23 = 1; /* easy isa OTHER*/ +if (unlikely(!var23)) { +var_class_name26 = type_core__Int.name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name26); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728); +fatal_exit(1); } -var29 = var_l + var19; -var23 = var29; -goto RET_LABEL24; -RET_LABEL24:(void)0; +var27 = var_l + var17; +var21 = var27; +goto RET_LABEL22; +RET_LABEL22:(void)0; } } -var_l = var23; +var_l = var21; { -standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_14); /* Direct call array#ArrayIterator#next on */ -} -} else { -goto BREAK_label; +((void(*)(val* self))((((long)var_12&3)?class_info[((long)var_12&3)]:var_12->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_12); /* next on */ } } -BREAK_label: (void)0; +BREAK_label14: (void)0; { -{ /* Inline abstract_collection#Iterator#finish (var_14) on */ -RET_LABEL30:(void)0; -} +((void(*)(val* self))((((long)var_12&3)?class_info[((long)var_12&3)]:var_12->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_12); /* finish on */ } { -{ /* Inline kernel#Int#< (var_lmax,var_l) on */ +{ /* Inline kernel$Int$< (var_lmax,var_l) on */ /* Covariant cast for argument 0 (i) isa OTHER */ /* isa OTHER */ -var33 = 1; /* easy isa OTHER*/ -if (unlikely(!var33)) { -var_class_name36 = type_standard__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name36); -PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 410); -show_backtrace(1); +var30 = 1; /* easy isa OTHER*/ +if (unlikely(!var30)) { +var_class_name33 = type_core__Int.name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name33); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 725); +fatal_exit(1); } -var37 = var_lmax < var_l; -var31 = var37; -goto RET_LABEL32; -RET_LABEL32:(void)0; +var34 = var_lmax < var_l; +var28 = var34; +goto RET_LABEL29; +RET_LABEL29:(void)0; } } -if (var31){ +if (var28){ var_lmax = var_l; } else { } { -standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_5); /* Direct call array#ArrayIterator#next on */ -} -} else { -goto BREAK_label38; +((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_4); /* next on */ } } -BREAK_label38: (void)0; +BREAK_label: (void)0; { -{ /* Inline abstract_collection#Iterator#finish (var_5) on */ -RET_LABEL39:(void)0; -} +((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_4); /* finish on */ } { -{ /* Inline opts#OptionContext#options (self) on */ -var42 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ -if (unlikely(var42 == NULL)) { +{ /* Inline opts$OptionContext$options (self) on */ +var37 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ +if (unlikely(var37 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 264); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 283); +fatal_exit(1); } -var40 = var42; -RET_LABEL41:(void)0; +var35 = var37; +RET_LABEL36:(void)0; } } -var_43 = var40; +var_38 = var35; { -var44 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_43); +var39 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_38); } -var_45 = var44; +var_40 = var39; for(;;) { { -var46 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_45); +var41 = ((short int(*)(val* self))((((long)var_40&3)?class_info[((long)var_40&3)]:var_40->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_40); /* is_ok on */ +} +if (var41){ +} else { +goto BREAK_label42; } -if (var46){ { -var47 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_45); +var43 = ((val*(*)(val* self))((((long)var_40&3)?class_info[((long)var_40&3)]:var_40->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_40); /* item on */ } -var_i48 = var47; +var_i44 = var43; { -{ /* Inline opts#Option#hidden (var_i48) on */ -var51 = var_i48->attrs[COLOR_opts__Option___hidden].s; /* _hidden on */ -var49 = var51; -RET_LABEL50:(void)0; +{ /* Inline opts$Option$hidden (var_i44) on */ +var47 = var_i44->attrs[COLOR_opts__Option___hidden].s; /* _hidden on */ +var45 = var47; +RET_LABEL46:(void)0; } } -var52 = !var49; -if (var52){ +var48 = !var45; +if (var48){ +var49 = glob_sys; { -var53 = opts___opts__Option___pretty(var_i48, var_lmax); +var50 = opts___opts__Option___pretty(var_i44, var_lmax); } { -standard__file___Object___print(self, var53); /* Direct call file#Object#print on */ +core__file___Sys___print(var49, var50); /* Direct call file$Sys$print on */ } } else { } { -standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_45); /* Direct call array#ArrayIterator#next on */ -} -} else { -goto BREAK_label54; +((void(*)(val* self))((((long)var_40&3)?class_info[((long)var_40&3)]:var_40->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_40); /* next on */ } } -BREAK_label54: (void)0; +BREAK_label42: (void)0; { -{ /* Inline abstract_collection#Iterator#finish (var_45) on */ -RET_LABEL55:(void)0; -} +((void(*)(val* self))((((long)var_40&3)?class_info[((long)var_40&3)]:var_40->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_40); /* finish on */ } RET_LABEL:; } -/* method opts#OptionContext#parse for (self: OptionContext, Collection[String]) */ +/* method opts$OptionContext$parse for (self: OptionContext, nullable Collection[String]) */ void opts___opts__OptionContext___parse(val* self, val* p0) { -val* var_argv /* var argv: Collection[String] */; -val* var /* : Iterator[nullable Object] */; +val* var_argv /* var argv: nullable Collection[String] */; +short int var /* : Bool */; +short int var1 /* : Bool */; +val* var2 /* : Sys */; +val* var3 /* : Sequence[String] */; +val* var4 /* : Iterator[nullable Object] */; val* var_it /* var it: Iterator[String] */; var_argv = p0; +if (var_argv == NULL) { +var = 1; /* is null */ +} else { +var = 0; /* arg is null but recv is not */ +} +if (0) { +var1 = ((short int(*)(val* self, val* p0))((((long)var_argv&3)?class_info[((long)var_argv&3)]:var_argv->class)->vft[COLOR_core__kernel__Object___61d_61d]))(var_argv, ((val*)NULL)); /* == on */ +var = var1; +} +if (var){ +var2 = glob_sys; +{ +var3 = core__abstract_text___Sys___args(var2); +} +var_argv = var3; +} else { +} { -var = ((val* (*)(val* self))(var_argv->class->vft[COLOR_standard__abstract_collection__Collection__iterator]))(var_argv) /* iterator on */; +var4 = ((val*(*)(val* self))((((long)var_argv&3)?class_info[((long)var_argv&3)]:var_argv->class)->vft[COLOR_core__abstract_collection__Collection__iterator]))(var_argv); /* iterator on */ } -var_it = var; +var_it = var4; { -opts___opts__OptionContext___parse_intern(self, var_it); /* Direct call opts#OptionContext#parse_intern on */ +opts___opts__OptionContext___parse_intern(self, var_it); /* Direct call opts$OptionContext$parse_intern on */ } RET_LABEL:; } -/* method opts#OptionContext#options_before_rest for (self: OptionContext): Bool */ +/* method opts$OptionContext$options_before_rest for (self: OptionContext): Bool */ short int opts___opts__OptionContext___options_before_rest(val* self) { short int var /* : Bool */; short int var1 /* : Bool */; @@ -1527,594 +1835,627 @@ var = var1; RET_LABEL:; return var; } -/* method opts#OptionContext#parse_intern for (self: OptionContext, Iterator[String]) */ +/* method opts$OptionContext$parse_intern for (self: OptionContext, Iterator[String]) */ void opts___opts__OptionContext___parse_intern(val* self, val* p0) { val* var_it /* var it: Iterator[String] */; -short int var /* : Bool */; short int var_parseargs /* var parseargs: Bool */; -val* var1 /* : Array[String] */; -val* var3 /* : Array[String] */; +val* var /* : Array[String] */; +val* var2 /* : Array[String] */; val* var_rest /* var rest: Array[String] */; -short int var4 /* : Bool */; +short int var3 /* : Bool */; short int var_ /* var : Bool */; -short int var5 /* : Bool */; -val* var6 /* : nullable Object */; +short int var4 /* : Bool */; +val* var5 /* : nullable Object */; val* var_str /* var str: String */; static val* varonce; -val* var7 /* : String */; -char* var8 /* : NativeString */; -long var9 /* : Int */; -val* var10 /* : FlatString */; -short int var11 /* : Bool */; -val* var12 /* : Array[nullable Object] */; +val* var6 /* : String */; +char* var7 /* : CString */; +val* var8 /* : String */; +val* var9 /* : nullable Int */; +val* var10 /* : nullable Int */; +val* var11 /* : nullable Bool */; +val* var12 /* : nullable Bool */; short int var13 /* : Bool */; -short int var14 /* : Bool */; -val* var15 /* : SequenceRead[Char] */; -char var16 /* : Char */; -long var17 /* : Int */; -val* var18 /* : nullable Object */; -long var19 /* : Int */; -short int var20 /* : Bool */; -short int var22 /* : Bool */; -short int var_23 /* var : Bool */; -long var24 /* : Int */; -long var25 /* : Int */; +val* var14 /* : Array[nullable Object] */; +short int var15 /* : Bool */; +val* var16 /* : SequenceRead[Char] */; +val* var17 /* : nullable Object */; +long var18 /* : Int */; +short int var19 /* : Bool */; +short int var21 /* : Bool */; +short int var_22 /* var : Bool */; +long var23 /* : Int */; +short int var24 /* : Bool */; short int var26 /* : Bool */; -short int var28 /* : Bool */; int cltype; int idtype; const char* var_class_name; -short int var29 /* : Bool */; -short int var30 /* : Bool */; +short int var27 /* : Bool */; short int var_next_called /* var next_called: Bool */; -long var31 /* : Int */; long var_i /* var i: Int */; -long var32 /* : Int */; -long var_33 /* var : Int */; -short int var34 /* : Bool */; +long var28 /* : Int */; +long var_29 /* var : Int */; +short int var30 /* : Bool */; +short int var32 /* : Bool */; +int cltype33; +int idtype34; +const char* var_class_name35; short int var36 /* : Bool */; -int cltype37; -int idtype38; -const char* var_class_name39; -short int var40 /* : Bool */; -static val* varonce41; -val* var42 /* : String */; -char* var43 /* : NativeString */; -long var44 /* : Int */; -val* var45 /* : FlatString */; -val* var46 /* : SequenceRead[Char] */; -val* var47 /* : nullable Object */; -val* var48 /* : String */; -char var49 /* : Char */; -val* var50 /* : String */; +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 /* : SequenceRead[Char] */; +val* var46 /* : nullable Object */; +val* var47 /* : String */; +uint32_t var48 /* : Char */; +val* var49 /* : Text */; val* var_short_opt /* var short_opt: String */; -val* var51 /* : HashMap[String, Option] */; -val* var53 /* : HashMap[String, Option] */; -short int var54 /* : Bool */; -val* var55 /* : HashMap[String, Option] */; -val* var57 /* : HashMap[String, Option] */; -val* var58 /* : nullable Object */; +val* var50 /* : HashMap[String, Option] */; +val* var52 /* : HashMap[String, Option] */; +short int var53 /* : Bool */; +val* var54 /* : HashMap[String, Option] */; +val* var56 /* : HashMap[String, Option] */; +val* var57 /* : nullable Object */; val* var_option /* var option: Option */; -short int var59 /* : Bool */; -int cltype60; -int idtype61; +short int var58 /* : Bool */; +int cltype59; +int idtype60; +long var61 /* : Int */; short int var62 /* : Bool */; -long var63 /* : Int */; -long var64 /* : Int */; -short int var65 /* : Bool */; -val* var66 /* : HashMap[String, Option] */; -val* var68 /* : HashMap[String, Option] */; -short int var69 /* : Bool */; -val* var70 /* : HashMap[String, Option] */; -val* var72 /* : HashMap[String, Option] */; -val* var73 /* : nullable Object */; +val* var63 /* : HashMap[String, Option] */; +val* var65 /* : HashMap[String, Option] */; +short int var66 /* : Bool */; +val* var67 /* : HashMap[String, Option] */; +val* var69 /* : HashMap[String, Option] */; +val* var70 /* : nullable Object */; val* var_opt /* var opt: Option */; -val* var74 /* : nullable Object */; -short int var75 /* : Bool */; -short int var77 /* : Bool */; -val* var78 /* : Array[nullable Object] */; -short int var79 /* : Bool */; -val* var81 /* : Array[Option] */; -val* var83 /* : Array[Option] */; -val* var_84 /* var : Array[Option] */; -val* var85 /* : ArrayIterator[nullable Object] */; -val* var_86 /* var : ArrayIterator[Option] */; +val* var71 /* : nullable Object */; +short int var72 /* : Bool */; +short int var74 /* : Bool */; +val* var75 /* : Array[nullable Object] */; +val* var77 /* : Array[Option] */; +val* var79 /* : Array[Option] */; +val* var_80 /* var : Array[Option] */; +val* var81 /* : IndexedIterator[nullable Object] */; +val* var_82 /* var : IndexedIterator[Option] */; +short int var83 /* : Bool */; +val* var85 /* : nullable Object */; +val* var_opt86 /* var opt: Option */; short int var87 /* : Bool */; -val* var88 /* : nullable Object */; -val* var_opt89 /* var opt: Option */; +short int var88 /* : Bool */; short int var90 /* : Bool */; -short int var91 /* : Bool */; -short int var93 /* : Bool */; -short int var_94 /* var : Bool */; +short int var_91 /* var : Bool */; +short int var92 /* : Bool */; +short int var94 /* : Bool */; short int var95 /* : Bool */; -short int var97 /* : Bool */; -short int var98 /* : Bool */; -val* var99 /* : Array[String] */; -val* var101 /* : Array[String] */; -static val* varonce102; -val* var103 /* : String */; -char* var104 /* : NativeString */; -long var105 /* : Int */; -val* var106 /* : FlatString */; -val* var107 /* : Array[String] */; -val* var109 /* : Array[String] */; -static val* varonce110; -val* var111 /* : String */; -char* var112 /* : NativeString */; -long var113 /* : Int */; -val* var114 /* : FlatString */; -val* var115 /* : String */; -static val* varonce116; -val* var117 /* : String */; -char* var118 /* : NativeString */; -long var119 /* : Int */; -val* var120 /* : FlatString */; -val* var121 /* : Array[Object] */; -long var122 /* : Int */; -val* var123 /* : NativeArray[Object] */; -val* var124 /* : String */; +val* var96 /* : Array[String] */; +val* var98 /* : Array[String] */; +val* var100 /* : NativeArray[String] */; +static val* varonce99; +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 */; +static val* varonce109; +val* var110 /* : String */; +char* var111 /* : CString */; +val* var112 /* : String */; +val* var113 /* : nullable Int */; +val* var114 /* : nullable Int */; +val* var115 /* : nullable Bool */; +val* var116 /* : nullable Bool */; +val* var117 /* : Array[String] */; +val* var119 /* : Array[String] */; +static val* varonce120; +val* var121 /* : String */; +char* var122 /* : CString */; +val* var123 /* : String */; +val* var124 /* : nullable Int */; +val* var125 /* : nullable Int */; +val* var126 /* : nullable Bool */; +val* var127 /* : nullable Bool */; +val* var128 /* : String */; +val* var129 /* : String */; var_it = p0; -var = 1; -var_parseargs = var; +var_parseargs = 1; { -opts___opts__OptionContext___build(self); /* Direct call opts#OptionContext#build on */ +opts___opts__OptionContext___build(self); /* Direct call opts$OptionContext$build on */ } { -{ /* Inline opts#OptionContext#rest (self) on */ -var3 = self->attrs[COLOR_opts__OptionContext___rest].val; /* _rest on */ -if (unlikely(var3 == NULL)) { +{ /* Inline opts$OptionContext$rest (self) on */ +var2 = self->attrs[COLOR_opts__OptionContext___rest].val; /* _rest on */ +if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _rest"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 267); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 286); +fatal_exit(1); } -var1 = var3; -RET_LABEL2:(void)0; +var = var2; +RET_LABEL1:(void)0; } } -var_rest = var1; +var_rest = var; for(;;) { var_ = var_parseargs; if (var_parseargs){ { -var5 = ((short int (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__is_ok]))(var_it) /* is_ok on */; +var4 = ((short int(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_it); /* is_ok on */ } -var4 = var5; +var3 = var4; } else { -var4 = var_; +var3 = var_; } -if (var4){ +if (var3){ { -var6 = ((val* (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_it) /* item on */; +var5 = ((val*(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_it); /* item on */ } -var_str = var6; -if (varonce) { -var7 = varonce; +var_str = var5; +if (likely(varonce!=NULL)) { +var6 = varonce; } else { -var8 = "--"; -var9 = 2; -var10 = standard___standard__NativeString___to_s_with_length(var8, var9); -var7 = var10; -varonce = var7; +var7 = "--"; +var9 = (val*)(2l<<2|1); +var10 = (val*)(2l<<2|1); +var11 = (val*)((long)(0)<<2|3); +var12 = (val*)((long)(0)<<2|3); +var8 = core__flat___CString___to_s_unsafe(var7, var9, var10, var11, var12); +var6 = var8; +varonce = var6; } { -var11 = ((short int (*)(val* self, val* p0))(var_str->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_str, var7) /* == on */; +var13 = ((short int(*)(val* self, val* p0))(var_str->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_str, var6); /* == on */ } -if (var11){ +if (var13){ { -((void (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_it) /* next on */; +((void(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_it); /* next on */ } { -var12 = standard__array___Iterator___to_a(var_it); +var14 = core__array___Iterator___to_a(var_it); } { -standard___standard__Array___standard__abstract_collection__SimpleCollection__add_all(var_rest, var12); /* Direct call array#Array#add_all on */ +core___core__Array___core__abstract_collection__SimpleCollection__add_all(var_rest, var14); /* Direct call array$Array$add_all on */ } -var13 = 0; -var_parseargs = var13; +var_parseargs = 0; } else { { -var15 = ((val* (*)(val* self))(var_str->class->vft[COLOR_standard__string__Text__chars]))(var_str) /* chars on */; +var16 = ((val*(*)(val* self))(var_str->class->vft[COLOR_core__abstract_text__Text__chars]))(var_str); /* chars on */ } -var16 = '-'; { -var18 = BOX_standard__Char(var16); /* autobox from Char to nullable Object */ -var17 = ((long (*)(val* self, val* p0))(var15->class->vft[COLOR_standard__abstract_collection__SequenceRead__last_index_of]))(var15, var18) /* last_index_of on */; +var17 = (val*)((long)('-')<<2|2); +var18 = ((long(*)(val* self, val* p0))((((long)var16&3)?class_info[((long)var16&3)]:var16->class)->vft[COLOR_core__abstract_collection__SequenceRead__last_index_of]))(var16, var17); /* last_index_of on */ } -var19 = 0; { -{ /* Inline kernel#Int#== (var17,var19) on */ -var22 = var17 == var19; -var20 = var22; -goto RET_LABEL21; -RET_LABEL21:(void)0; +{ /* Inline kernel$Int$== (var18,0l) on */ +var21 = var18 == 0l; +var19 = var21; +goto RET_LABEL20; +RET_LABEL20:(void)0; } } -var_23 = var20; -if (var20){ +var_22 = var19; +if (var19){ { -var24 = ((long (*)(val* self))(var_str->class->vft[COLOR_standard__string__Text__length]))(var_str) /* length on */; +var23 = ((long(*)(val* self))(var_str->class->vft[COLOR_core__abstract_text__Text__length]))(var_str); /* length on */ } -var25 = 2; { -{ /* Inline kernel#Int#> (var24,var25) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var28 = 1; /* easy isa OTHER*/ -if (unlikely(!var28)) { -var_class_name = type_standard__Int.name; +{ /* Inline kernel$Int$> (var23,2l) on */ +/* Covariant cast for argument 0 (i) <2l:Int> isa OTHER */ +/* <2l:Int> isa OTHER */ +var26 = 1; /* easy <2l:Int> isa OTHER*/ +if (unlikely(!var26)) { +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_standard__kernel, 412); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 727); +fatal_exit(1); } -var29 = var24 > var25; -var26 = var29; -goto RET_LABEL27; -RET_LABEL27:(void)0; +var27 = var23 > 2l; +var24 = var27; +goto RET_LABEL25; +RET_LABEL25:(void)0; } } -var14 = var26; +var15 = var24; } else { -var14 = var_23; +var15 = var_22; } -if (var14){ -var30 = 0; -var_next_called = var30; -var31 = 1; -var_i = var31; +if (var15){ +var_next_called = 0; +var_i = 1l; { -var32 = ((long (*)(val* self))(var_str->class->vft[COLOR_standard__string__Text__length]))(var_str) /* length on */; +var28 = ((long(*)(val* self))(var_str->class->vft[COLOR_core__abstract_text__Text__length]))(var_str); /* length on */ } -var_33 = var32; +var_29 = var28; for(;;) { { -{ /* Inline kernel#Int#< (var_i,var_33) on */ -/* Covariant cast for argument 0 (i) isa OTHER */ -/* isa OTHER */ -var36 = 1; /* easy isa OTHER*/ -if (unlikely(!var36)) { -var_class_name39 = type_standard__Int.name; -PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name39); -PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 410); -show_backtrace(1); -} -var40 = var_i < var_33; -var34 = var40; -goto RET_LABEL35; -RET_LABEL35:(void)0; +{ /* Inline kernel$Int$< (var_i,var_29) on */ +/* Covariant cast for argument 0 (i) isa OTHER */ +/* isa OTHER */ +var32 = 1; /* easy isa OTHER*/ +if (unlikely(!var32)) { +var_class_name35 = type_core__Int.name; +PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name35); +PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 725); +fatal_exit(1); } +var36 = var_i < var_29; +var30 = var36; +goto RET_LABEL31; +RET_LABEL31:(void)0; } -if (var34){ -if (varonce41) { -var42 = varonce41; +} +if (var30){ } else { -var43 = "-"; -var44 = 1; -var45 = standard___standard__NativeString___to_s_with_length(var43, var44); -var42 = var45; -varonce41 = var42; +goto BREAK_label; +} +if (likely(varonce37!=NULL)) { +var38 = varonce37; +} else { +var39 = "-"; +var41 = (val*)(1l<<2|1); +var42 = (val*)(1l<<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; } { -var46 = ((val* (*)(val* self))(var_str->class->vft[COLOR_standard__string__Text__chars]))(var_str) /* chars on */; +var45 = ((val*(*)(val* self))(var_str->class->vft[COLOR_core__abstract_text__Text__chars]))(var_str); /* chars on */ } { -var47 = ((val* (*)(val* self, long p0))(var46->class->vft[COLOR_standard__abstract_collection__SequenceRead___91d_93d]))(var46, var_i) /* [] on */; +var46 = ((val*(*)(val* self, long p0))((((long)var45&3)?class_info[((long)var45&3)]:var45->class)->vft[COLOR_core__abstract_collection__SequenceRead___91d_93d]))(var45, var_i); /* [] on */ } { -var49 = ((struct instance_standard__Char*)var47)->value; /* autounbox from nullable Object to Char */; -var48 = standard__string___Char___Object__to_s(var49); +var48 = (uint32_t)((long)(var46)>>2); +var47 = core__abstract_text___Char___Object__to_s(var48); } { -var50 = ((val* (*)(val* self, val* p0))(var42->class->vft[COLOR_standard__string__String___43d]))(var42, var48) /* + on */; +var49 = ((val*(*)(val* self, val* p0))(var38->class->vft[COLOR_core__abstract_text__Text___43d]))(var38, var47); /* + on */ } -var_short_opt = var50; +var_short_opt = var49; { -{ /* Inline opts#OptionContext#optmap (self) on */ -var53 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ -if (unlikely(var53 == NULL)) { +{ /* Inline opts$OptionContext$optmap (self) on */ +var52 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ +if (unlikely(var52 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 273); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 292); +fatal_exit(1); } -var51 = var53; -RET_LABEL52:(void)0; +var50 = var52; +RET_LABEL51:(void)0; } } { -var54 = standard___standard__MapRead___has_key(var51, var_short_opt); +var53 = core___core__HashMap___core__abstract_collection__MapRead__has_key(var50, var_short_opt); } -if (var54){ +if (var53){ { -{ /* Inline opts#OptionContext#optmap (self) on */ -var57 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ -if (unlikely(var57 == NULL)) { +{ /* Inline opts$OptionContext$optmap (self) on */ +var56 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ +if (unlikely(var56 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 273); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 292); +fatal_exit(1); } -var55 = var57; -RET_LABEL56:(void)0; +var54 = var56; +RET_LABEL55:(void)0; } } { -var58 = standard___standard__HashMap___standard__abstract_collection__MapRead___91d_93d(var55, var_short_opt); +var57 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var54, var_short_opt); } -var_option = var58; +var_option = var57; /* isa OptionParameter */ -cltype60 = type_opts__OptionParameter.color; -idtype61 = type_opts__OptionParameter.id; -if(cltype60 >= var_option->type->table_size) { -var59 = 0; +cltype59 = type_opts__OptionParameter.color; +idtype60 = type_opts__OptionParameter.id; +if(cltype59 >= var_option->type->table_size) { +var58 = 0; } else { -var59 = var_option->type->type_table[cltype60] == idtype61; +var58 = var_option->type->type_table[cltype59] == idtype60; } -if (var59){ +if (var58){ { -((void (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_it) /* next on */; +((void(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_it); /* next on */ } -var62 = 1; -var_next_called = var62; +var_next_called = 1; } else { } { -((void (*)(val* self, val* p0))(var_option->class->vft[COLOR_opts__Option__read_param]))(var_option, var_it) /* read_param on */; +((void(*)(val* self, val* p0, val* p1))(var_option->class->vft[COLOR_opts__Option__read_param]))(var_option, self, var_it); /* read_param on */ } } else { } -var63 = 1; { -var64 = standard___standard__Int___Discrete__successor(var_i, var63); -} -var_i = var64; -} else { -goto BREAK_label; +var61 = core___core__Int___Discrete__successor(var_i, 1l); } +var_i = var61; } BREAK_label: (void)0; -var65 = !var_next_called; -if (var65){ +var62 = !var_next_called; +if (var62){ { -((void (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_it) /* next on */; +((void(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_it); /* next on */ } } else { } } else { { -{ /* Inline opts#OptionContext#optmap (self) on */ -var68 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ -if (unlikely(var68 == NULL)) { +{ /* Inline opts$OptionContext$optmap (self) on */ +var65 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ +if (unlikely(var65 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 273); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 292); +fatal_exit(1); } -var66 = var68; -RET_LABEL67:(void)0; +var63 = var65; +RET_LABEL64:(void)0; } } { -var69 = standard___standard__MapRead___has_key(var66, var_str); +var66 = core___core__HashMap___core__abstract_collection__MapRead__has_key(var63, var_str); } -if (var69){ +if (var66){ { -{ /* Inline opts#OptionContext#optmap (self) on */ -var72 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ -if (unlikely(var72 == NULL)) { +{ /* Inline opts$OptionContext$optmap (self) on */ +var69 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ +if (unlikely(var69 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 273); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 292); +fatal_exit(1); } -var70 = var72; -RET_LABEL71:(void)0; +var67 = var69; +RET_LABEL68:(void)0; } } { -var73 = standard___standard__HashMap___standard__abstract_collection__MapRead___91d_93d(var70, var_str); +var70 = core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var67, var_str); } -var_opt = var73; +var_opt = var70; { -((void (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_it) /* next on */; +((void(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_it); /* next on */ } { -((void (*)(val* self, val* p0))(var_opt->class->vft[COLOR_opts__Option__read_param]))(var_opt, var_it) /* read_param on */; +((void(*)(val* self, val* p0, val* p1))(var_opt->class->vft[COLOR_opts__Option__read_param]))(var_opt, self, var_it); /* read_param on */ } } else { { -var74 = ((val* (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_it) /* item on */; +var71 = ((val*(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_it); /* item on */ } { -standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_rest, var74); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var_rest, var71); /* Direct call array$Array$add on */ } { -((void (*)(val* self))(var_it->class->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_it) /* next on */; +((void(*)(val* self))((((long)var_it&3)?class_info[((long)var_it&3)]:var_it->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_it); /* next on */ } { -{ /* Inline opts#OptionContext#options_before_rest (self) on */ -var77 = self->attrs[COLOR_opts__OptionContext___options_before_rest].s; /* _options_before_rest on */ -var75 = var77; -RET_LABEL76:(void)0; +{ /* Inline opts$OptionContext$options_before_rest (self) on */ +var74 = self->attrs[COLOR_opts__OptionContext___options_before_rest].s; /* _options_before_rest on */ +var72 = var74; +RET_LABEL73:(void)0; } } -if (var75){ +if (var72){ { -var78 = standard__array___Iterator___to_a(var_it); +var75 = core__array___Iterator___to_a(var_it); } { -standard___standard__Array___standard__abstract_collection__SimpleCollection__add_all(var_rest, var78); /* Direct call array#Array#add_all on */ +core___core__Array___core__abstract_collection__SimpleCollection__add_all(var_rest, var75); /* Direct call array$Array$add_all on */ } -var79 = 0; -var_parseargs = var79; +var_parseargs = 0; } else { } } } } } else { -goto BREAK_label80; +goto BREAK_label76; } } -BREAK_label80: (void)0; +BREAK_label76: (void)0; { -{ /* Inline opts#OptionContext#options (self) on */ -var83 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ -if (unlikely(var83 == NULL)) { +{ /* Inline opts$OptionContext$options (self) on */ +var79 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ +if (unlikely(var79 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 264); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 283); +fatal_exit(1); } -var81 = var83; -RET_LABEL82:(void)0; +var77 = var79; +RET_LABEL78:(void)0; } } -var_84 = var81; +var_80 = var77; { -var85 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_84); +var81 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_80); } -var_86 = var85; +var_82 = var81; for(;;) { { -var87 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_86); +var83 = ((short int(*)(val* self))((((long)var_82&3)?class_info[((long)var_82&3)]:var_82->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_82); /* is_ok on */ +} +if (var83){ +} else { +goto BREAK_label84; } -if (var87){ { -var88 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_86); +var85 = ((val*(*)(val* self))((((long)var_82&3)?class_info[((long)var_82&3)]:var_82->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_82); /* item on */ } -var_opt89 = var88; +var_opt86 = var85; { -{ /* Inline opts#Option#mandatory (var_opt89) on */ -var93 = var_opt89->attrs[COLOR_opts__Option___mandatory].s; /* _mandatory on */ -var91 = var93; -RET_LABEL92:(void)0; +{ /* Inline opts$Option$mandatory (var_opt86) on */ +var90 = var_opt86->attrs[COLOR_opts__Option___mandatory].s; /* _mandatory on */ +var88 = var90; +RET_LABEL89:(void)0; } } -var_94 = var91; -if (var91){ +var_91 = var88; +if (var88){ { -{ /* Inline opts#Option#read (var_opt89) on */ -var97 = var_opt89->attrs[COLOR_opts__Option___read].s; /* _read on */ -var95 = var97; -RET_LABEL96:(void)0; +{ /* Inline opts$Option$read (var_opt86) on */ +var94 = var_opt86->attrs[COLOR_opts__Option___read].s; /* _read on */ +var92 = var94; +RET_LABEL93:(void)0; } } -var98 = !var95; -var90 = var98; +var95 = !var92; +var87 = var95; } else { -var90 = var_94; +var87 = var_91; } -if (var90){ +if (var87){ { -{ /* Inline opts#OptionContext#errors (self) on */ -var101 = self->attrs[COLOR_opts__OptionContext___errors].val; /* _errors on */ -if (unlikely(var101 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 270); -show_backtrace(1); +{ /* Inline opts$OptionContext$context_errors (self) on */ +var98 = self->attrs[COLOR_opts__OptionContext___context_errors].val; /* _context_errors on */ +if (unlikely(var98 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); } -var99 = var101; -RET_LABEL100:(void)0; +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _context_errors"); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 289); +fatal_exit(1); } +var96 = var98; +RET_LABEL97:(void)0; } -if (varonce102) { -var103 = varonce102; +} +if (unlikely(varonce99==NULL)) { +var100 = NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String); +if (likely(varonce101!=NULL)) { +var102 = varonce101; +} else { +var103 = "Mandatory option "; +var105 = (val*)(17l<<2|1); +var106 = (val*)(17l<<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*)var100)->values[0]=var102; +if (likely(varonce109!=NULL)) { +var110 = varonce109; } else { -var104 = "Mandatory option "; -var105 = 17; -var106 = standard___standard__NativeString___to_s_with_length(var104, var105); -var103 = var106; -varonce102 = var103; +var111 = " not found."; +var113 = (val*)(11l<<2|1); +var114 = (val*)(11l<<2|1); +var115 = (val*)((long)(0)<<2|3); +var116 = (val*)((long)(0)<<2|3); +var112 = core__flat___CString___to_s_unsafe(var111, var113, var114, var115, var116); +var110 = var112; +varonce109 = var110; +} +((struct instance_core__NativeArray*)var100)->values[2]=var110; +} else { +var100 = varonce99; +varonce99 = NULL; } { -{ /* Inline opts#Option#names (var_opt89) on */ -var109 = var_opt89->attrs[COLOR_opts__Option___names].val; /* _names on */ -if (unlikely(var109 == NULL)) { +{ /* Inline opts$Option$names (var_opt86) on */ +var119 = var_opt86->attrs[COLOR_opts__Option___names].val; /* _names on */ +if (unlikely(var119 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 19); -show_backtrace(1); -} -var107 = var109; -RET_LABEL108:(void)0; -} +fatal_exit(1); } -if (varonce110) { -var111 = varonce110; -} else { -var112 = ", "; -var113 = 2; -var114 = standard___standard__NativeString___to_s_with_length(var112, var113); -var111 = var114; -varonce110 = var111; +var117 = var119; +RET_LABEL118:(void)0; } -{ -var115 = standard__string___Collection___join(var107, var111); } -if (varonce116) { -var117 = varonce116; +if (likely(varonce120!=NULL)) { +var121 = varonce120; } else { -var118 = " not found."; -var119 = 11; -var120 = standard___standard__NativeString___to_s_with_length(var118, var119); -var117 = var120; -varonce116 = var117; +var122 = ", "; +var124 = (val*)(2l<<2|1); +var125 = (val*)(2l<<2|1); +var126 = (val*)((long)(0)<<2|3); +var127 = (val*)((long)(0)<<2|3); +var123 = core__flat___CString___to_s_unsafe(var122, var124, var125, var126, var127); +var121 = var123; +varonce120 = var121; } -var121 = NEW_standard__Array(&type_standard__Array__standard__Object); -{ /* var121 = array_instance Array[Object] */ -var122 = 3; -var123 = NEW_standard__NativeArray(var122, &type_standard__NativeArray__standard__Object); -((struct instance_standard__NativeArray*)var123)->values[0] = (val*) var103; -((struct instance_standard__NativeArray*)var123)->values[1] = (val*) var115; -((struct instance_standard__NativeArray*)var123)->values[2] = (val*) var117; { -((void (*)(val* self, val* p0, long p1))(var121->class->vft[COLOR_standard__array__Array__with_native]))(var121, var123, var122) /* with_native on */; -} +var128 = core__abstract_text___Collection___join(var117, var121, ((val*)NULL)); } +((struct instance_core__NativeArray*)var100)->values[1]=var128; { -var124 = ((val* (*)(val* self))(var121->class->vft[COLOR_standard__string__Object__to_s]))(var121) /* to_s on */; +var129 = ((val*(*)(val* self))(var100->class->vft[COLOR_core__abstract_text__NativeArray__native_to_s]))(var100); /* native_to_s on */ } +varonce99 = var100; { -standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var99, var124); /* Direct call array#Array#add on */ +core___core__Array___core__abstract_collection__SimpleCollection__add(var96, var129); /* Direct call array$Array$add on */ } } else { } { -standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_86); /* Direct call array#ArrayIterator#next on */ +((void(*)(val* self))((((long)var_82&3)?class_info[((long)var_82&3)]:var_82->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_82); /* next on */ } -} else { -goto BREAK_label125; } -} -BREAK_label125: (void)0; +BREAK_label84: (void)0; { -{ /* Inline abstract_collection#Iterator#finish (var_86) on */ -RET_LABEL126:(void)0; -} +((void(*)(val* self))((((long)var_82&3)?class_info[((long)var_82&3)]:var_82->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_82); /* finish on */ } RET_LABEL:; } -/* method opts#OptionContext#build for (self: OptionContext) */ +/* method opts$OptionContext$build for (self: OptionContext) */ void opts___opts__OptionContext___build(val* self) { val* var /* : Array[Option] */; val* var2 /* : Array[Option] */; val* var_ /* var : Array[Option] */; -val* var3 /* : ArrayIterator[nullable Object] */; -val* var_4 /* var : ArrayIterator[Option] */; +val* var3 /* : IndexedIterator[nullable Object] */; +val* var_4 /* var : IndexedIterator[Option] */; short int var5 /* : Bool */; val* var6 /* : nullable Object */; val* var_o /* var o: Option */; val* var7 /* : Array[String] */; val* var9 /* : Array[String] */; val* var_10 /* var : Array[String] */; -val* var11 /* : ArrayIterator[nullable Object] */; -val* var_12 /* var : ArrayIterator[String] */; +val* var11 /* : IndexedIterator[nullable Object] */; +val* var_12 /* var : IndexedIterator[String] */; short int var13 /* : Bool */; -val* var14 /* : nullable Object */; +val* var15 /* : nullable Object */; val* var_n /* var n: String */; -val* var15 /* : HashMap[String, Option] */; -val* var17 /* : HashMap[String, Option] */; +val* var16 /* : HashMap[String, Option] */; +val* var18 /* : HashMap[String, Option] */; { -{ /* Inline opts#OptionContext#options (self) on */ +{ /* Inline opts$OptionContext$options (self) on */ var2 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ if (unlikely(var2 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 264); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 283); +fatal_exit(1); } var = var2; RET_LABEL1:(void)0; @@ -2122,25 +2463,31 @@ RET_LABEL1:(void)0; } var_ = var; { -var3 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_); +var3 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_); } var_4 = var3; for(;;) { { -var5 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_4); +var5 = ((short int(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_4); /* is_ok on */ } if (var5){ +} else { +goto BREAK_label; +} { -var6 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_4); +var6 = ((val*(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_4); /* item on */ } var_o = var6; { -{ /* Inline opts#Option#names (var_o) on */ +{ /* Inline opts$Option$names (var_o) on */ var9 = var_o->attrs[COLOR_opts__Option___names].val; /* _names on */ if (unlikely(var9 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 19); -show_backtrace(1); +fatal_exit(1); } var7 = var9; RET_LABEL8:(void)0; @@ -2148,170 +2495,185 @@ RET_LABEL8:(void)0; } var_10 = var7; { -var11 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_10); +var11 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_10); } var_12 = var11; for(;;) { { -var13 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_12); +var13 = ((short int(*)(val* self))((((long)var_12&3)?class_info[((long)var_12&3)]:var_12->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_12); /* is_ok on */ } if (var13){ +} else { +goto BREAK_label14; +} { -var14 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_12); +var15 = ((val*(*)(val* self))((((long)var_12&3)?class_info[((long)var_12&3)]:var_12->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_12); /* item on */ } -var_n = var14; +var_n = var15; { -{ /* Inline opts#OptionContext#optmap (self) on */ -var17 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ -if (unlikely(var17 == NULL)) { +{ /* Inline opts$OptionContext$optmap (self) on */ +var18 = self->attrs[COLOR_opts__OptionContext___optmap].val; /* _optmap on */ +if (unlikely(var18 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _optmap"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 273); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 292); +fatal_exit(1); } -var15 = var17; -RET_LABEL16:(void)0; +var16 = var18; +RET_LABEL17:(void)0; } } { -standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var15, var_n, var_o); /* Direct call hash_collection#HashMap#[]= on */ +core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var16, var_n, var_o); /* Direct call hash_collection$HashMap$[]= on */ } { -standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_12); /* Direct call array#ArrayIterator#next on */ -} -} else { -goto BREAK_label; +((void(*)(val* self))((((long)var_12&3)?class_info[((long)var_12&3)]:var_12->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_12); /* next on */ } } -BREAK_label: (void)0; +BREAK_label14: (void)0; { -{ /* Inline abstract_collection#Iterator#finish (var_12) on */ -RET_LABEL18:(void)0; -} +((void(*)(val* self))((((long)var_12&3)?class_info[((long)var_12&3)]:var_12->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_12); /* finish on */ } { -standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_4); /* Direct call array#ArrayIterator#next on */ +((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_4); /* next on */ } -} else { -goto BREAK_label19; } -} -BREAK_label19: (void)0; +BREAK_label: (void)0; { -{ /* Inline abstract_collection#Iterator#finish (var_4) on */ -RET_LABEL20:(void)0; -} +((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_4); /* finish on */ } RET_LABEL:; } -/* method opts#OptionContext#get_errors for (self: OptionContext): Array[String] */ -val* opts___opts__OptionContext___get_errors(val* self) { +/* method opts$OptionContext$errors for (self: OptionContext): Array[String] */ +val* opts___opts__OptionContext___errors(val* self) { val* var /* : Array[String] */; val* var1 /* : Array[String] */; val* var_errors /* var errors: Array[String] */; -val* var2 /* : Array[Option] */; -val* var4 /* : Array[Option] */; +val* var2 /* : Array[String] */; +val* var4 /* : Array[String] */; +val* var5 /* : Array[Option] */; +val* var7 /* : Array[Option] */; val* var_ /* var : Array[Option] */; -val* var5 /* : ArrayIterator[nullable Object] */; -val* var_6 /* var : ArrayIterator[Option] */; -short int var7 /* : Bool */; -val* var8 /* : nullable Object */; +val* var8 /* : IndexedIterator[nullable Object] */; +val* var_9 /* var : IndexedIterator[Option] */; +short int var10 /* : Bool */; +val* var11 /* : nullable Object */; val* var_o /* var o: Option */; -val* var9 /* : Array[String] */; -val* var11 /* : Array[String] */; -val* var_12 /* var : Array[String] */; -val* var13 /* : ArrayIterator[nullable Object] */; -val* var_14 /* var : ArrayIterator[String] */; -short int var15 /* : Bool */; -val* var16 /* : nullable Object */; +val* var12 /* : Array[String] */; +val* var14 /* : Array[String] */; +val* var_15 /* var : Array[String] */; +val* var16 /* : IndexedIterator[nullable Object] */; +val* var_17 /* var : IndexedIterator[String] */; +short int var18 /* : Bool */; +val* var20 /* : nullable Object */; val* var_e /* var e: String */; -var1 = NEW_standard__Array(&type_standard__Array__standard__String); +var1 = NEW_core__Array(&type_core__Array__core__String); { -standard___standard__Array___standard__kernel__Object__init(var1); /* Direct call array#Array#init on */ +core___core__Array___core__kernel__Object__init(var1); /* Direct call array$Array$init on */ } var_errors = var1; { -standard___standard__Array___standard__abstract_collection__SimpleCollection__add_all(var_errors, var_errors); /* Direct call array#Array#add_all on */ -} -{ -{ /* Inline opts#OptionContext#options (self) on */ -var4 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ +{ /* Inline opts$OptionContext$context_errors (self) on */ +var4 = self->attrs[COLOR_opts__OptionContext___context_errors].val; /* _context_errors on */ if (unlikely(var4 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options"); -PRINT_ERROR(" (%s:%d)\n", FILE_opts, 264); -show_backtrace(1); +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _context_errors"); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 289); +fatal_exit(1); } var2 = var4; RET_LABEL3:(void)0; } } -var_ = var2; { -var5 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_); +core___core__Array___core__abstract_collection__SimpleCollection__add_all(var_errors, var2); /* Direct call array$Array$add_all on */ +} +{ +{ /* Inline opts$OptionContext$options (self) on */ +var7 = self->attrs[COLOR_opts__OptionContext___options].val; /* _options on */ +if (unlikely(var7 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _options"); +PRINT_ERROR(" (%s:%d)\n", FILE_opts, 283); +fatal_exit(1); +} +var5 = var7; +RET_LABEL6:(void)0; +} +} +var_ = var5; +{ +var8 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_); } -var_6 = var5; +var_9 = var8; for(;;) { { -var7 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_6); +var10 = ((short int(*)(val* self))((((long)var_9&3)?class_info[((long)var_9&3)]:var_9->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_9); /* is_ok on */ +} +if (var10){ +} else { +goto BREAK_label; } -if (var7){ { -var8 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_6); +var11 = ((val*(*)(val* self))((((long)var_9&3)?class_info[((long)var_9&3)]:var_9->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_9); /* item on */ } -var_o = var8; +var_o = var11; { -{ /* Inline opts#Option#errors (var_o) on */ -var11 = var_o->attrs[COLOR_opts__Option___errors].val; /* _errors on */ -if (unlikely(var11 == NULL)) { +{ /* Inline opts$Option$errors (var_o) on */ +var14 = var_o->attrs[COLOR_opts__Option___errors].val; /* _errors on */ +if (unlikely(var14 == NULL)) { +if(catchStack.cursor >= 0){ +longjmp(catchStack.envs[catchStack.cursor], 1); +} PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _errors"); PRINT_ERROR(" (%s:%d)\n", FILE_opts, 28); -show_backtrace(1); +fatal_exit(1); } -var9 = var11; -RET_LABEL10:(void)0; +var12 = var14; +RET_LABEL13:(void)0; } } -var_12 = var9; +var_15 = var12; { -var13 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_12); +var16 = core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_15); } -var_14 = var13; +var_17 = var16; for(;;) { { -var15 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_14); +var18 = ((short int(*)(val* self))((((long)var_17&3)?class_info[((long)var_17&3)]:var_17->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_17); /* is_ok on */ } -if (var15){ -{ -var16 = standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_14); +if (var18){ +} else { +goto BREAK_label19; } -var_e = var16; { -standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_errors, var_e); /* Direct call array#Array#add on */ +var20 = ((val*(*)(val* self))((((long)var_17&3)?class_info[((long)var_17&3)]:var_17->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_17); /* item on */ } +var_e = var20; { -standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_14); /* Direct call array#ArrayIterator#next on */ -} -} else { -goto BREAK_label; -} +core___core__Array___core__abstract_collection__SimpleCollection__add(var_errors, var_e); /* Direct call array$Array$add on */ } -BREAK_label: (void)0; { -{ /* Inline abstract_collection#Iterator#finish (var_14) on */ -RET_LABEL17:(void)0; +((void(*)(val* self))((((long)var_17&3)?class_info[((long)var_17&3)]:var_17->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_17); /* next on */ } } +BREAK_label19: (void)0; { -standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_6); /* Direct call array#ArrayIterator#next on */ +((void(*)(val* self))((((long)var_17&3)?class_info[((long)var_17&3)]:var_17->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_17); /* finish on */ } -} else { -goto BREAK_label18; +{ +((void(*)(val* self))((((long)var_9&3)?class_info[((long)var_9&3)]:var_9->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_9); /* next on */ } } -BREAK_label18: (void)0; +BREAK_label: (void)0; { -{ /* Inline abstract_collection#Iterator#finish (var_6) on */ -RET_LABEL19:(void)0; -} +((void(*)(val* self))((((long)var_9&3)?class_info[((long)var_9&3)]:var_9->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_9); /* finish on */ } var = var_errors; goto RET_LABEL;