+ /* Register variable[14]: Result */
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[14]) /*CompilerVisitor::add_instr*/;
+ }
+ CALL_compiling_base___CompilerVisitor___unindent( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::unindent*/;
+ /* Register variable[14]: Once String constant */
+ if (once_value_142 != NIT_NULL) variable[14] = once_value_142;
+ else {
+ variable[14] = NEW_String_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)) /*new String*/;
+ once_value_142 = variable[14];
+ }
+ /* Register variable[14]: Result */
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[14]) /*CompilerVisitor::add_instr*/;
+ continue_122: while(0);
+ CALL_abstract_collection___Iterator___next(variable[11])(variable[11]) /*Iterator::next*/;
+ }
+ break_122: while(0);
+ variable[4] = variable[10] /*e*/;
+ goto return_label116;
+ return_label116: while(false);
+ tracehead = trace.prev;
+ return variable[4];
+}
+val_t compiling_methods___MMMethod___compile_constructor_call(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 435, LOCATE_compiling_methods___MMMethod___compile_constructor_call};
+ static val_t once_value_144 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_145 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_146 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_147 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_148 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_149 = NIT_NULL; /* Once value for string variable[6]*/
+ val_t variable[7];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Method return value and escape marker */
+ variable[5] = NEW_Array_array___Array___with_capacity(TAG_Int(9)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_144 != NIT_NULL) variable[6] = once_value_144;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("NEW_"), TAG_Int(4)) /*new String*/;
+ once_value_144 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_static_type___MMType___local_class( variable[2] /*recvtype*/)( variable[2] /*recvtype*/) /*MMType::local_class*/;
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], CALL_string___Object___to_s(variable[6])(variable[6]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_145 != NIT_NULL) variable[6] = once_value_145;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)) /*new String*/;
+ once_value_145 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMLocalProperty___global(variable[0])(variable[0]) /*MMLocalProperty::global*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMGlobalProperty___intro(variable[6])(variable[6]) /*MMGlobalProperty::intro*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_compiling_base___MMLocalProperty___cname(variable[6])(variable[6]) /*MMLocalProperty::cname*/;
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_146 != NIT_NULL) variable[6] = once_value_146;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_146 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_147 != NIT_NULL) variable[6] = once_value_147;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)) /*new String*/;
+ once_value_147 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Register variable[6]: Result */
+ variable[6] = CALL_string___Collection___join( variable[3] /*cargs*/)( variable[3] /*cargs*/, variable[6]) /*Collection::join*/;
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_148 != NIT_NULL) variable[6] = once_value_148;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString(") /*new "), TAG_Int(8)) /*new String*/;
+ once_value_148 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ variable[6] = variable[2] /*recvtype*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], CALL_string___Object___to_s(variable[6])(variable[6]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_149 != NIT_NULL) variable[6] = once_value_149;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)) /*new String*/;
+ once_value_149 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_string___Object___to_s(variable[5])(variable[5]) /*Object::to_s*/;
+ variable[4] = variable[5];
+ goto return_label143;
+ return_label143: while(false);
+ tracehead = trace.prev;
+ return variable[4];
+}
+val_t compiling_methods___MMMethod___compile_super_call(val_t self, val_t param0, val_t param1) {
+ struct trace_t trace = {NULL, NULL, 441, LOCATE_compiling_methods___MMMethod___compile_super_call};
+ static val_t once_value_151 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_152 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_154 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_155 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_156 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_157 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_158 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_159 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_160 = NIT_NULL; /* Once value for string variable[7]*/
+ val_t variable[10];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Method return value and escape marker */
+ /* Register variable[4]: Local variable */
+ variable[5] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_151 != NIT_NULL) variable[6] = once_value_151;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_151 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_compiling_base___MMLocalProperty___super_meth_call(variable[0])(variable[0]) /*MMLocalProperty::super_meth_call*/;
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_152 != NIT_NULL) variable[6] = once_value_152;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_152 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Local variable */
+ variable[6] = variable[2] /*cargs*/;
+ /* Register variable[7]: Local variable */
+ variable[7] = TAG_Int(0);
+ /* Register variable[8]: Method return value and escape marker */
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(UNTAG_Int( variable[7] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[9]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[9])) { /* and */
+ /* Register variable[9]: Result */
+ variable[9] = ATTR_array___AbstractArrayRead____length(variable[6]) /*AbstractArrayRead::_length*/;
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(UNTAG_Int( variable[7] /*index*/)<UNTAG_Int(variable[9]));
+ }
+ /* Register variable[9]: Result */
+ if (!UNTAG_Bool(variable[9])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[9]: Result */
+ variable[9] = ATTR_array___Array____items(variable[6]) /*Array::_items*/;
+ /* Register variable[9]: Result */
+ variable[9] = UNBOX_NativeArray(variable[9])[UNTAG_Int( variable[7] /*index*/)];
+ variable[8] = variable[9];
+ goto return_label153;
+ return_label153: while(false);
+ /* Register variable[6]: Result */
+ variable[6] = variable[8];
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_154 != NIT_NULL) variable[6] = once_value_154;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)) /*new String*/;
+ once_value_154 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_string___Object___to_s(variable[5])(variable[5]) /*Object::to_s*/;
+ variable[4] = variable[5];
+ /* Register variable[5]: Local variable */
+ variable[6] = NEW_Array_array___Array___with_capacity(TAG_Int(9)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_155 != NIT_NULL) variable[7] = once_value_155;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_155 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ variable[7] = variable[4] /*m*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_156 != NIT_NULL) variable[7] = once_value_156;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_156 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_157 != NIT_NULL) variable[7] = once_value_157;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)) /*new String*/;
+ once_value_157 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Register variable[7]: Result */
+ variable[7] = CALL_string___Collection___join( variable[2] /*cargs*/)( variable[2] /*cargs*/, variable[7]) /*Collection::join*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_158 != NIT_NULL) variable[7] = once_value_158;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(") /*super "), TAG_Int(10)) /*new String*/;
+ once_value_158 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___local_class(variable[0])(variable[0]) /*MMLocalProperty::local_class*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_159 != NIT_NULL) variable[7] = once_value_159;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)) /*new String*/;
+ once_value_159 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___name(variable[0])(variable[0]) /*MMLocalProperty::name*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_160 != NIT_NULL) variable[7] = once_value_160;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)) /*new String*/;
+ once_value_160 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_string___Object___to_s(variable[6])(variable[6]) /*Object::to_s*/;
+ variable[5] = variable[6];
+ variable[3] = variable[5] /*vcall*/;
+ goto return_label150;
+ return_label150: while(false);
+ tracehead = trace.prev;
+ return variable[3];
+}
+val_t compiling_methods___MMMethod___closure_cname(val_t self, val_t param0) {
+ struct trace_t trace = {NULL, NULL, 449, LOCATE_compiling_methods___MMMethod___closure_cname};
+ static val_t once_value_162 = NIT_NULL; /* Once value for string variable[4]*/
+ static val_t once_value_163 = NIT_NULL; /* Once value for string variable[4]*/
+ static val_t once_value_164 = NIT_NULL; /* Once value for string variable[4]*/
+ val_t variable[5];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Method return value and escape marker */
+ variable[3] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[4]: Once String constant */
+ if (once_value_162 != NIT_NULL) variable[4] = once_value_162;
+ else {
+ variable[4] = NEW_String_string___String___with_native(BOX_NativeString("FWBT_"), TAG_Int(5)) /*new String*/;
+ once_value_162 = variable[4];
+ }
+ /* Register variable[4]: Result */
+ /* Ensure var variable[4]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[3])(variable[3], variable[4]) /*AbstractArray::add*/;
+ /* Register variable[4]: Result */
+ variable[4] = CALL_compiling_base___MMLocalProperty___cname(variable[0])(variable[0]) /*MMLocalProperty::cname*/;
+ /* Ensure var variable[4]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[3])(variable[3], variable[4]) /*AbstractArray::add*/;
+ /* Register variable[4]: Once String constant */
+ if (once_value_163 != NIT_NULL) variable[4] = once_value_163;
+ else {
+ variable[4] = NEW_String_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)) /*new String*/;
+ once_value_163 = variable[4];
+ }
+ /* Register variable[4]: Result */
+ /* Ensure var variable[4]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[3])(variable[3], variable[4]) /*AbstractArray::add*/;
+ variable[4] = variable[1] /*i*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[3])(variable[3], CALL_string___Object___to_s(variable[4])(variable[4]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[4]: Once String constant */
+ if (once_value_164 != NIT_NULL) variable[4] = once_value_164;
+ else {
+ variable[4] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_164 = variable[4];
+ }
+ /* Register variable[4]: Result */
+ /* Ensure var variable[4]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[3])(variable[3], variable[4]) /*AbstractArray::add*/;
+ /* Register variable[3]: Result */
+ variable[3] = CALL_string___Object___to_s(variable[3])(variable[3]) /*Object::to_s*/;
+ variable[2] = variable[3];
+ goto return_label161;
+ return_label161: while(false);
+ tracehead = trace.prev;
+ return variable[2];
+}
+val_t compiling_methods___MMAttribute___compile_isset(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 457, LOCATE_compiling_methods___MMAttribute___compile_isset};
+ static val_t once_value_166 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_167 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_168 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_169 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_170 = NIT_NULL; /* Once value for string variable[6]*/
+ val_t variable[7];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Method return value and escape marker */
+ variable[5] = NEW_Array_array___Array___with_capacity(TAG_Int(9)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_166 != NIT_NULL) variable[6] = once_value_166;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool("), TAG_Int(9)) /*new String*/;
+ once_value_166 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMLocalProperty___global(variable[0])(variable[0]) /*MMLocalProperty::global*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_compiling_base___MMGlobalProperty___attr_access(variable[6])(variable[6]) /*MMGlobalProperty::attr_access*/;
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_167 != NIT_NULL) variable[6] = once_value_167;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_167 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ variable[6] = variable[3] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_168 != NIT_NULL) variable[6] = once_value_168;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString(")!=NIT_NULL) /* isset "), TAG_Int(22)) /*new String*/;
+ once_value_168 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMLocalProperty___local_class(variable[0])(variable[0]) /*MMLocalProperty::local_class*/;
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], CALL_string___Object___to_s(variable[6])(variable[6]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_169 != NIT_NULL) variable[6] = once_value_169;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)) /*new String*/;
+ once_value_169 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMLocalProperty___name(variable[0])(variable[0]) /*MMLocalProperty::name*/;
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], CALL_string___Object___to_s(variable[6])(variable[6]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_170 != NIT_NULL) variable[6] = once_value_170;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)) /*new String*/;
+ once_value_170 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_string___Object___to_s(variable[5])(variable[5]) /*Object::to_s*/;
+ variable[4] = variable[5];
+ goto return_label165;
+ return_label165: while(false);
+ tracehead = trace.prev;
+ return variable[4];
+}
+val_t compiling_methods___MMAttribute___compile_read_access(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 463, LOCATE_compiling_methods___MMAttribute___compile_read_access};
+ static val_t once_value_172 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_173 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_174 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_175 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_176 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_177 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_178 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_179 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_180 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_181 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_182 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_183 = NIT_NULL; /* Once value for string variable[7]*/
+ val_t variable[8];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Method return value and escape marker */
+ /* Register variable[5]: Local variable */
+ variable[6] = NEW_Array_array___Array___with_capacity(TAG_Int(9)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_172 != NIT_NULL) variable[7] = once_value_172;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_172 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___global(variable[0])(variable[0]) /*MMLocalProperty::global*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_compiling_base___MMGlobalProperty___attr_access(variable[7])(variable[7]) /*MMGlobalProperty::attr_access*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_173 != NIT_NULL) variable[7] = once_value_173;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_173 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ variable[7] = variable[3] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_174 != NIT_NULL) variable[7] = once_value_174;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(") /*"), TAG_Int(4)) /*new String*/;
+ once_value_174 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___local_class(variable[0])(variable[0]) /*MMLocalProperty::local_class*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_175 != NIT_NULL) variable[7] = once_value_175;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)) /*new String*/;
+ once_value_175 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___name(variable[0])(variable[0]) /*MMLocalProperty::name*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_176 != NIT_NULL) variable[7] = once_value_176;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)) /*new String*/;
+ once_value_176 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_string___Object___to_s(variable[6])(variable[6]) /*Object::to_s*/;
+ variable[5] = variable[6];
+ /* Register variable[6]: Result */
+ variable[6] = CALL_static_type___MMLocalProperty___signature(variable[0])(variable[0]) /*MMLocalProperty::signature*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_static_type___MMSignature___return_type(variable[6])(variable[6]) /*MMSignature::return_type*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_static_type___MMType___is_nullable(variable[6])(variable[6]) /*MMType::is_nullable*/;
+ variable[6] = TAG_Bool(!UNTAG_Bool(variable[6])) /* Ensure var: Left 'and' operand*/;
+ if (UNTAG_Bool(variable[6])) { /* and */
+ /* Register variable[6]: Result */
+ variable[6] = CALL_compiling_base___CompilerVisitor___tc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::tc*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_mmloader___ToolContext___opt_warn(variable[6])(variable[6]) /*ToolContext::opt_warn*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_opts___Option___value(variable[6])(variable[6]) /*Option::value*/;
+ /* Register variable[6]: Result */
+ variable[6] = TAG_Bool(UNTAG_Int(variable[6])>UNTAG_Int( TAG_Int(0)));
+ }
+ /* Register variable[6]: Result */
+ if (UNTAG_Bool(variable[6])) { /*if*/
+ variable[6] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_177 != NIT_NULL) variable[7] = once_value_177;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_177 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___local_class(variable[0])(variable[0]) /*MMLocalProperty::local_class*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_178 != NIT_NULL) variable[7] = once_value_178;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)) /*new String*/;
+ once_value_178 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___name(variable[0])(variable[0]) /*MMLocalProperty::name*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_179 != NIT_NULL) variable[7] = once_value_179;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_179 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_string___Object___to_s(variable[6])(variable[6]) /*Object::to_s*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_compiling_methods___CompilerVisitor___ensure_var( variable[1] /*v*/)( variable[1] /*v*/, variable[5] /*res*/, variable[6]) /*CompilerVisitor::ensure_var*/;
+ variable[5] = variable[6] /*res=*/;
+ variable[6] = NEW_Array_array___Array___with_capacity(TAG_Int(7)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_180 != NIT_NULL) variable[7] = once_value_180;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("if ("), TAG_Int(4)) /*new String*/;
+ once_value_180 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ variable[7] = variable[5] /*res*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_181 != NIT_NULL) variable[7] = once_value_181;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(" == NIT_NULL) { fprintf(stderr, \"Uninitialized attribute %s\", \""), TAG_Int(63)) /*new String*/;
+ once_value_181 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___name(variable[0])(variable[0]) /*MMLocalProperty::name*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_182 != NIT_NULL) variable[7] = once_value_182;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("\"); "), TAG_Int(4)) /*new String*/;
+ once_value_182 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_compiling_methods___CompilerVisitor___printf_locate_error( variable[1] /*v*/)( variable[1] /*v*/, variable[2] /*n*/) /*CompilerVisitor::printf_locate_error*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_183 != NIT_NULL) variable[7] = once_value_183;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(" } /* implicit isset */;"), TAG_Int(24)) /*new String*/;
+ once_value_183 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_string___Object___to_s(variable[6])(variable[6]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[6]) /*CompilerVisitor::add_instr*/;
+ }
+ variable[4] = variable[5] /*res*/;
+ goto return_label171;
+ return_label171: while(false);
+ tracehead = trace.prev;
+ return variable[4];
+}
+void compiling_methods___MMAttribute___compile_write_access(val_t self, val_t param0, val_t param1, val_t param2, val_t param3) {
+ struct trace_t trace = {NULL, NULL, 474, LOCATE_compiling_methods___MMAttribute___compile_write_access};
+ static val_t once_value_185 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_186 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_187 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_188 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_189 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_190 = NIT_NULL; /* Once value for string variable[7]*/
+ val_t variable[8];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Local variable */
+ variable[4] = param3;
+ /* Register variable[5]: Method return value and escape marker */
+ variable[6] = NEW_Array_array___Array___with_capacity(TAG_Int(11)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_185 != NIT_NULL) variable[7] = once_value_185;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_185 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___global(variable[0])(variable[0]) /*MMLocalProperty::global*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_compiling_base___MMGlobalProperty___attr_access(variable[7])(variable[7]) /*MMGlobalProperty::attr_access*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_186 != NIT_NULL) variable[7] = once_value_186;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_186 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ variable[7] = variable[3] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_187 != NIT_NULL) variable[7] = once_value_187;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(") /*"), TAG_Int(4)) /*new String*/;
+ once_value_187 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___local_class(variable[0])(variable[0]) /*MMLocalProperty::local_class*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_188 != NIT_NULL) variable[7] = once_value_188;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)) /*new String*/;
+ once_value_188 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___name(variable[0])(variable[0]) /*MMLocalProperty::name*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_189 != NIT_NULL) variable[7] = once_value_189;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("*/ = "), TAG_Int(5)) /*new String*/;
+ once_value_189 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ variable[7] = variable[4] /*value*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_190 != NIT_NULL) variable[7] = once_value_190;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)) /*new String*/;
+ once_value_190 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_string___Object___to_s(variable[6])(variable[6]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[6]) /*CompilerVisitor::add_instr*/;
+ return_label184: while(false);
+ tracehead = trace.prev;
+ return;
+}
+void compiling_methods___MMLocalProperty___compile_property_to_c(val_t self, val_t param0) {
+ struct trace_t trace = {NULL, NULL, 482, LOCATE_compiling_methods___MMLocalProperty___compile_property_to_c};
+ val_t variable[3];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Method return value and escape marker */
+ return_label191: while(false);
+ tracehead = trace.prev;
+ return;
+}
+void compiling_methods___MMSrcMethod___compile_property_to_c(val_t self, val_t param0) {
+ struct trace_t trace = {NULL, NULL, 532, LOCATE_compiling_methods___MMSrcMethod___compile_property_to_c};
+ static val_t once_value_193 = NIT_NULL; /* Once value for string variable[4]*/
+ static val_t once_value_195 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_196 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_198 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_199 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_200 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_201 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_202 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_203 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_204 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_205 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_206 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_207 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_208 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_209 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_210 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_211 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_212 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_213 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_214 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_215 = NIT_NULL; /* Once value for string variable[9]*/
+ val_t variable[13];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Method return value and escape marker */
+ /* Register variable[3]: Result */
+ variable[3] = NEW_CFunctionContext_compiling_methods___CFunctionContext___init( variable[1] /*v*/) /*new CFunctionContext*/;
+ CALL_compiling_methods___CompilerVisitor___cfc__eq( variable[1] /*v*/)( variable[1] /*v*/, variable[3]) /*CompilerVisitor::cfc=*/;
+ /* Register variable[3]: Local variable */
+ /* Register variable[4]: Result */
+ variable[4] = NEW_Array_array___Array___init() /*new Array[String]*/;
+ variable[3] = variable[4];
+ /* Register variable[4]: Once String constant */
+ if (once_value_193 != NIT_NULL) variable[4] = once_value_193;
+ else {
+ variable[4] = NEW_String_string___String___with_native(BOX_NativeString(" self"), TAG_Int(5)) /*new String*/;
+ once_value_193 = variable[4];
+ }
+ /* Register variable[4]: Result */
+ CALL_abstract_collection___SimpleCollection___add( variable[3] /*args*/)( variable[3] /*args*/, variable[4]) /*AbstractArray::add*/;
+ /* Register variable[4]: Result */
+ variable[4] = CALL_static_type___MMLocalProperty___signature(variable[0])(variable[0]) /*MMLocalProperty::signature*/;
+ /* Register variable[4]: Result */
+ variable[4] = CALL_static_type___MMSignature___arity(variable[4])(variable[4]) /*MMSignature::arity*/;
+ /* Register variable[4]: Result */
+ variable[4] = NEW_Range_range___Range___without_last( TAG_Int(0), variable[4]) /*new Range[Int]*/;
+ /* Register variable[4]: For iterator */
+ variable[4] = CALL_abstract_collection___Collection___iterator(variable[4])(variable[4]) /*Range::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[5]: For 'is_ok' result */
+ variable[5] = CALL_abstract_collection___Iterator___is_ok(variable[4])(variable[4]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[5])) break; /*for*/
+ variable[5] = CALL_abstract_collection___Iterator___item(variable[4])(variable[4]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[6]: Local variable */
+ variable[6] = variable[5];
+ variable[7] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_195 != NIT_NULL) variable[8] = once_value_195;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(" param"), TAG_Int(6)) /*new String*/;
+ once_value_195 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ variable[8] = variable[6] /*i*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_196 != NIT_NULL) variable[8] = once_value_196;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_196 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/;
+ CALL_abstract_collection___SimpleCollection___add( variable[3] /*args*/)( variable[3] /*args*/, variable[7]) /*AbstractArray::add*/;
+ continue_194: while(0);
+ CALL_abstract_collection___Iterator___next(variable[4])(variable[4]) /*Iterator::next*/;
+ }
+ break_194: while(0);
+ /* Register variable[4]: Result */
+ variable[4] = CALL_static_type___MMLocalProperty___signature(variable[0])(variable[0]) /*MMLocalProperty::signature*/;
+ /* Register variable[4]: Result */
+ variable[4] = CALL_static_type___MMSignature___closures(variable[4])(variable[4]) /*MMSignature::closures*/;
+ /* Register variable[4]: Result */
+ variable[4] = CALL_abstract_collection___Collection___length(variable[4])(variable[4]) /*AbstractArrayRead::length*/;
+ /* Register variable[4]: Result */
+ variable[4] = NEW_Range_range___Range___without_last( TAG_Int(0), variable[4]) /*new Range[Int]*/;
+ /* Register variable[4]: For iterator */
+ variable[4] = CALL_abstract_collection___Collection___iterator(variable[4])(variable[4]) /*Range::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[5]: For 'is_ok' result */
+ variable[5] = CALL_abstract_collection___Iterator___is_ok(variable[4])(variable[4]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[5])) break; /*for*/
+ variable[5] = CALL_abstract_collection___Iterator___item(variable[4])(variable[4]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[6]: Local variable */
+ variable[6] = variable[5];
+ variable[7] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_198 != NIT_NULL) variable[8] = once_value_198;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(" wd"), TAG_Int(3)) /*new String*/;
+ once_value_198 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ variable[8] = variable[6] /*i*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_199 != NIT_NULL) variable[8] = once_value_199;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_199 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/;
+ CALL_abstract_collection___SimpleCollection___add( variable[3] /*args*/)( variable[3] /*args*/, variable[7]) /*AbstractArray::add*/;
+ continue_197: while(0);
+ CALL_abstract_collection___Iterator___next(variable[4])(variable[4]) /*Iterator::next*/;
+ }
+ break_197: while(0);
+ /* Register variable[4]: Local variable */
+ /* Register variable[5]: Result */
+ variable[5] = CALL_compiling_methods___MMSrcMethod___decl_csignature(variable[0])(variable[0], variable[1] /*v*/, variable[3] /*args*/) /*MMSrcMethod::decl_csignature*/;
+ variable[4] = variable[5];
+ variable[5] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_200 != NIT_NULL) variable[6] = once_value_200;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("#define LOCATE_"), TAG_Int(15)) /*new String*/;
+ once_value_200 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_compiling_base___MMLocalProperty___cname(variable[0])(variable[0]) /*MMLocalProperty::cname*/;
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_201 != NIT_NULL) variable[6] = once_value_201;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString(" \""), TAG_Int(2)) /*new String*/;
+ once_value_201 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMLocalProperty___full_name(variable[0])(variable[0]) /*MMLocalProperty::full_name*/;
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_202 != NIT_NULL) variable[6] = once_value_202;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("\""), TAG_Int(1)) /*new String*/;
+ once_value_202 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_string___Object___to_s(variable[5])(variable[5]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_decl( variable[1] /*v*/)( variable[1] /*v*/, variable[5]) /*CompilerVisitor::add_decl*/;
+ variable[5] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_203 != NIT_NULL) variable[6] = once_value_203;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_203 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ variable[6] = variable[4] /*cs*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_204 != NIT_NULL) variable[6] = once_value_204;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString(" {"), TAG_Int(2)) /*new String*/;
+ once_value_204 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_string___Object___to_s(variable[5])(variable[5]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[5]) /*CompilerVisitor::add_instr*/;
+ CALL_compiling_base___CompilerVisitor___indent( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::indent*/;
+ /* Register variable[5]: Local variable */
+ /* Register variable[6]: Result */
+ variable[6] = CALL_compiling_base___CompilerVisitor___ctx( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::ctx*/;
+ variable[5] = variable[6];
+ /* Register variable[6]: Result */
+ variable[6] = NEW_CContext_compiling_base___CContext___init() /*new CContext*/;
+ CALL_compiling_base___CompilerVisitor___ctx__eq( variable[1] /*v*/)( variable[1] /*v*/, variable[6]) /*CompilerVisitor::ctx=*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_compiling_methods___CompilerVisitor___out_contexts( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::out_contexts*/;
+ CALL_abstract_collection___RemovableCollection___clear(variable[6])(variable[6]) /*AbstractArray::clear*/;
+ /* Register variable[6]: Local variable */
+ variable[6] = TAG_Int(0);
+ /* Register variable[7]: Local variable */
+ variable[7] = variable[0];
+ /* Register variable[8]: Result */
+ variable[8] = CALL_syntax_base___MMLocalProperty___node( variable[7] /*s*/)( variable[7] /*s*/) /*MMLocalProperty::node*/;
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable[8] == NIT_NULL /*null*/) || ((variable[8] != NIT_NULL) && ((CALL_kernel___Object_____eqeq(variable[8])==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable[8], NIT_NULL /*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable[8])(variable[8], NIT_NULL /*null*/) /*Object::==*/)))))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ /* Register variable[8]: Result */
+ variable[8] = CALL_syntax_base___MMLocalProperty___node( variable[7] /*s*/)( variable[7] /*s*/) /*MMLocalProperty::node*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_parser_prod___PNode___line_number(variable[8])(variable[8]) /*PNode::line_number*/;
+ variable[6] = variable[8] /*ln=*/;
+ }
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_205 != NIT_NULL) variable[9] = once_value_205;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("struct trace_t trace = {NULL, NULL, "), TAG_Int(36)) /*new String*/;
+ once_value_205 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ variable[9] = variable[6] /*ln*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], CALL_string___Object___to_s(variable[9])(variable[9]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_206 != NIT_NULL) variable[9] = once_value_206;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(", LOCATE_"), TAG_Int(9)) /*new String*/;
+ once_value_206 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_base___MMLocalProperty___cname(variable[0])(variable[0]) /*MMLocalProperty::cname*/;
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_207 != NIT_NULL) variable[9] = once_value_207;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("};"), TAG_Int(2)) /*new String*/;
+ once_value_207 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_decl( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::add_decl*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_208 != NIT_NULL) variable[8] = once_value_208;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("trace.prev = tracehead; tracehead = &trace;"), TAG_Int(43)) /*new String*/;
+ once_value_208 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::add_instr*/;
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_209 != NIT_NULL) variable[9] = once_value_209;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("trace.file = LOCATE_"), TAG_Int(20)) /*new String*/;
+ once_value_209 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_abstractmetamodel___MMLocalProperty___module(variable[0])(variable[0]) /*MMLocalProperty::module*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_abstractmetamodel___MMModule___name(variable[9])(variable[9]) /*MMModule::name*/;
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], CALL_string___Object___to_s(variable[9])(variable[9]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_210 != NIT_NULL) variable[9] = once_value_210;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)) /*new String*/;
+ once_value_210 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::add_instr*/;
+ /* Register variable[8]: Local variable */
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___MMSrcMethod___do_compile_inside(variable[0])(variable[0], variable[1] /*v*/, variable[3] /*args*/) /*MMSrcMethod::do_compile_inside*/;
+ variable[8] = variable[9];
+ /* Register variable[9]: Once String constant */
+ if (once_value_211 != NIT_NULL) variable[9] = once_value_211;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("tracehead = trace.prev;"), TAG_Int(23)) /*new String*/;
+ once_value_211 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[9]) /*CompilerVisitor::add_instr*/;
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(( variable[8] /*s*/ == NIT_NULL /*null*/) || (( variable[8] /*s*/ != NIT_NULL) && UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[8] /*s*/)( variable[8] /*s*/, NIT_NULL /*null*/) /*String::==*/)));
+ if (UNTAG_Bool(variable[9])) { /*if*/
+ /* Register variable[9]: Once String constant */
+ if (once_value_212 != NIT_NULL) variable[9] = once_value_212;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("return;"), TAG_Int(7)) /*new String*/;
+ once_value_212 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[9]) /*CompilerVisitor::add_instr*/;
+ } else { /*if*/
+ variable[9] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_213 != NIT_NULL) variable[10] = once_value_213;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString("return "), TAG_Int(7)) /*new String*/;
+ once_value_213 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ variable[10] = variable[8] /*s*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_214 != NIT_NULL) variable[10] = once_value_214;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)) /*new String*/;
+ once_value_214 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_string___Object___to_s(variable[9])(variable[9]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[9]) /*CompilerVisitor::add_instr*/;
+ }
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___CompilerVisitor___cfc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::cfc*/;
+ CALL_compiling_methods___CFunctionContext___generate_var_decls(variable[9])(variable[9]) /*CFunctionContext::generate_var_decls*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_base___CompilerVisitor___ctx( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::ctx*/;
+ CALL_compiling_base___CContext___append( variable[5] /*ctx_old*/)( variable[5] /*ctx_old*/, variable[9]) /*CContext::append*/;
+ CALL_compiling_base___CompilerVisitor___ctx__eq( variable[1] /*v*/)( variable[1] /*v*/, variable[5] /*ctx_old*/) /*CompilerVisitor::ctx=*/;
+ CALL_compiling_base___CompilerVisitor___unindent( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::unindent*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_215 != NIT_NULL) variable[9] = once_value_215;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)) /*new String*/;
+ once_value_215 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[9]) /*CompilerVisitor::add_instr*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___CompilerVisitor___out_contexts( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::out_contexts*/;
+ /* Register variable[9]: For iterator */
+ variable[9] = CALL_abstract_collection___Collection___iterator(variable[9])(variable[9]) /*AbstractArrayRead::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[10]: For 'is_ok' result */
+ variable[10] = CALL_abstract_collection___Iterator___is_ok(variable[9])(variable[9]) /*ArrayIterator::is_ok*/;
+ if (!UNTAG_Bool(variable[10])) break; /*for*/
+ variable[10] = CALL_abstract_collection___Iterator___item(variable[9])(variable[9]) /*ArrayIterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[11]: Local variable */
+ variable[11] = variable[10];
+ /* Register variable[12]: Result */
+ variable[12] = CALL_compiling_base___CompilerVisitor___ctx( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::ctx*/;
+ CALL_compiling_base___CContext___merge(variable[12])(variable[12], variable[11] /*ctx*/) /*CContext::merge*/;
+ continue_216: while(0);
+ CALL_abstract_collection___Iterator___next(variable[9])(variable[9]) /*ArrayIterator::next*/;
+ }
+ break_216: while(0);
+ return_label192: while(false);
+ tracehead = trace.prev;
+ return;
+}
+val_t compiling_methods___MMSrcMethod___decl_csignature(val_t self, val_t param0, val_t param1) {
+ struct trace_t trace = {NULL, NULL, 488, LOCATE_compiling_methods___MMSrcMethod___decl_csignature};
+ static val_t once_value_218 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_220 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_222 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_224 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_227 = NIT_NULL; /* Once value for string variable[12]*/
+ static val_t once_value_229 = NIT_NULL; /* Once value for string variable[16]*/
+ static val_t once_value_230 = NIT_NULL; /* Once value for string variable[13]*/
+ static val_t once_value_231 = NIT_NULL; /* Once value for string variable[13]*/
+ static val_t once_value_232 = NIT_NULL; /* Once value for string variable[14]*/
+ static val_t once_value_234 = NIT_NULL; /* Once value for string variable[14]*/
+ static val_t once_value_235 = NIT_NULL; /* Once value for string variable[14]*/
+ static val_t once_value_236 = NIT_NULL; /* Once value for string variable[14]*/
+ static val_t once_value_237 = NIT_NULL; /* Once value for string variable[14]*/
+ static val_t once_value_238 = NIT_NULL; /* Once value for string variable[14]*/
+ static val_t once_value_239 = NIT_NULL; /* Once value for string variable[14]*/
+ static val_t once_value_240 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_241 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_242 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_243 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_244 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_245 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_246 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_247 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_248 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_249 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_250 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_251 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_252 = NIT_NULL; /* Once value for string variable[9]*/
+ val_t variable[19];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Method return value and escape marker */
+ /* Register variable[4]: Local variable */
+ /* Register variable[5]: Result */
+ variable[5] = NEW_Array_array___Array___init() /*new Array[String]*/;
+ variable[4] = variable[5];
+ variable[5] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_218 != NIT_NULL) variable[6] = once_value_218;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("val_t "), TAG_Int(6)) /*new String*/;
+ once_value_218 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Local variable */
+ variable[6] = variable[2] /*args*/;
+ /* Register variable[7]: Local variable */
+ variable[7] = TAG_Int(0);
+ /* Register variable[8]: Method return value and escape marker */
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(UNTAG_Int( variable[7] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[9]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[9])) { /* and */
+ /* Register variable[9]: Result */
+ variable[9] = ATTR_array___AbstractArrayRead____length(variable[6]) /*AbstractArrayRead::_length*/;
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(UNTAG_Int( variable[7] /*index*/)<UNTAG_Int(variable[9]));
+ }
+ /* Register variable[9]: Result */
+ if (!UNTAG_Bool(variable[9])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[9]: Result */
+ variable[9] = ATTR_array___Array____items(variable[6]) /*Array::_items*/;
+ /* Register variable[9]: Result */
+ variable[9] = UNBOX_NativeArray(variable[9])[UNTAG_Int( variable[7] /*index*/)];
+ variable[8] = variable[9];
+ goto return_label219;
+ return_label219: while(false);
+ /* Register variable[6]: Result */
+ variable[6] = variable[8];
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_220 != NIT_NULL) variable[6] = once_value_220;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_220 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_string___Object___to_s(variable[5])(variable[5]) /*Object::to_s*/;
+ CALL_abstract_collection___SimpleCollection___add( variable[4] /*params*/)( variable[4] /*params*/, variable[5]) /*AbstractArray::add*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_static_type___MMLocalProperty___signature(variable[0])(variable[0]) /*MMLocalProperty::signature*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_static_type___MMSignature___arity(variable[5])(variable[5]) /*MMSignature::arity*/;
+ /* Register variable[5]: Result */
+ variable[5] = NEW_Range_range___Range___without_last( TAG_Int(0), variable[5]) /*new Range[Int]*/;
+ /* Register variable[5]: For iterator */
+ variable[5] = CALL_abstract_collection___Collection___iterator(variable[5])(variable[5]) /*Range::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[6]: For 'is_ok' result */
+ variable[6] = CALL_abstract_collection___Iterator___is_ok(variable[5])(variable[5]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[6])) break; /*for*/
+ variable[6] = CALL_abstract_collection___Iterator___item(variable[5])(variable[5]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[7]: Local variable */
+ variable[7] = variable[6];
+ /* Register variable[8]: Local variable */
+ variable[9] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_222 != NIT_NULL) variable[10] = once_value_222;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString("val_t "), TAG_Int(6)) /*new String*/;
+ once_value_222 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Result */
+ variable[10] = TAG_Int(UNTAG_Int( variable[7] /*i*/)+UNTAG_Int( TAG_Int(1)));
+ /* Register variable[11]: Local variable */
+ variable[11] = variable[2] /*args*/;
+ /* Register variable[12]: Local variable */
+ variable[12] = variable[10];
+ /* Register variable[13]: Method return value and escape marker */
+ /* Register variable[14]: Result */
+ variable[14] = TAG_Bool(UNTAG_Int( variable[12] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[14]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[14])) { /* and */
+ /* Register variable[14]: Result */
+ variable[14] = ATTR_array___AbstractArrayRead____length(variable[11]) /*AbstractArrayRead::_length*/;
+ /* Register variable[14]: Result */
+ variable[14] = TAG_Bool(UNTAG_Int( variable[12] /*index*/)<UNTAG_Int(variable[14]));
+ }
+ /* Register variable[14]: Result */
+ if (!UNTAG_Bool(variable[14])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[14]: Result */
+ variable[14] = ATTR_array___Array____items(variable[11]) /*Array::_items*/;
+ /* Register variable[14]: Result */
+ variable[14] = UNBOX_NativeArray(variable[14])[UNTAG_Int( variable[12] /*index*/)];
+ variable[13] = variable[14];
+ goto return_label223;
+ return_label223: while(false);
+ /* Register variable[10]: Result */
+ variable[10] = variable[13];
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_224 != NIT_NULL) variable[10] = once_value_224;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_224 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_string___Object___to_s(variable[9])(variable[9]) /*Object::to_s*/;
+ variable[8] = variable[9];
+ CALL_abstract_collection___SimpleCollection___add( variable[4] /*params*/)( variable[4] /*params*/, variable[8] /*p*/) /*AbstractArray::add*/;
+ continue_221: while(0);
+ CALL_abstract_collection___Iterator___next(variable[5])(variable[5]) /*Iterator::next*/;
+ }
+ break_221: while(0);
+ /* Register variable[5]: Local variable */
+ /* Register variable[6]: Result */
+ variable[6] = CALL_static_type___MMLocalProperty___signature(variable[0])(variable[0]) /*MMLocalProperty::signature*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_static_type___MMSignature___arity(variable[6])(variable[6]) /*MMSignature::arity*/;
+ /* Register variable[6]: Result */
+ variable[6] = TAG_Int(UNTAG_Int(variable[6])+UNTAG_Int( TAG_Int(1)));
+ variable[5] = variable[6];
+ /* Register variable[6]: Result */
+ variable[6] = CALL_static_type___MMLocalProperty___signature(variable[0])(variable[0]) /*MMLocalProperty::signature*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_static_type___MMSignature___closures(variable[6])(variable[6]) /*MMSignature::closures*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstract_collection___Collection___length(variable[6])(variable[6]) /*AbstractArrayRead::length*/;
+ /* Register variable[6]: Result */
+ variable[6] = NEW_Range_range___Range___without_last( TAG_Int(0), variable[6]) /*new Range[Int]*/;
+ /* Register variable[6]: For iterator */
+ variable[6] = CALL_abstract_collection___Collection___iterator(variable[6])(variable[6]) /*Range::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[7]: For 'is_ok' result */
+ variable[7] = CALL_abstract_collection___Iterator___is_ok(variable[6])(variable[6]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[7])) break; /*for*/
+ variable[7] = CALL_abstract_collection___Iterator___item(variable[6])(variable[6]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[8]: Local variable */
+ variable[8] = variable[7];
+ /* Register variable[9]: Local variable */
+ /* Register variable[10]: Result */
+ variable[10] = CALL_compiling_methods___MMMethod___closure_cname(variable[0])(variable[0], variable[8] /*i*/) /*MMMethod::closure_cname*/;
+ variable[9] = variable[10];
+ /* Register variable[10]: Local variable */
+ /* Register variable[11]: Result */
+ variable[11] = CALL_static_type___MMLocalProperty___signature(variable[0])(variable[0]) /*MMLocalProperty::signature*/;
+ /* Register variable[11]: Result */
+ variable[11] = CALL_static_type___MMSignature___closures(variable[11])(variable[11]) /*MMSignature::closures*/;
+ /* Register variable[12]: Local variable */
+ variable[12] = variable[11];
+ /* Register variable[13]: Local variable */
+ variable[13] = variable[8] /*i*/;
+ /* Register variable[14]: Method return value and escape marker */
+ /* Register variable[15]: Result */
+ variable[15] = TAG_Bool(UNTAG_Int( variable[13] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[15]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[15])) { /* and */
+ /* Register variable[15]: Result */
+ variable[15] = ATTR_array___AbstractArrayRead____length(variable[12]) /*AbstractArrayRead::_length*/;
+ /* Register variable[15]: Result */
+ variable[15] = TAG_Bool(UNTAG_Int( variable[13] /*index*/)<UNTAG_Int(variable[15]));
+ }
+ /* Register variable[15]: Result */
+ if (!UNTAG_Bool(variable[15])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[15]: Result */
+ variable[15] = ATTR_array___Array____items(variable[12]) /*Array::_items*/;
+ /* Register variable[15]: Result */
+ variable[15] = UNBOX_NativeArray(variable[15])[UNTAG_Int( variable[13] /*index*/)];
+ variable[14] = variable[15];
+ goto return_label226;
+ return_label226: while(false);
+ /* Register variable[11]: Result */
+ variable[11] = variable[14];
+ /* Register variable[11]: Result */
+ variable[11] = CALL_static_type___MMClosure___signature(variable[11])(variable[11]) /*MMClosure::signature*/;
+ variable[10] = variable[11];
+ /* Register variable[11]: Local variable */
+ /* Register variable[12]: Result */
+ variable[12] = NEW_Array_array___Array___init() /*new Array[String]*/;
+ variable[11] = variable[12];
+ /* Register variable[12]: Once String constant */
+ if (once_value_227 != NIT_NULL) variable[12] = once_value_227;
+ else {
+ variable[12] = NEW_String_string___String___with_native(BOX_NativeString("struct WBT_ *"), TAG_Int(13)) /*new String*/;
+ once_value_227 = variable[12];
+ }
+ /* Register variable[12]: Result */
+ CALL_abstract_collection___SimpleCollection___add( variable[11] /*subparams*/)( variable[11] /*subparams*/, variable[12]) /*AbstractArray::add*/;
+ /* Register variable[12]: Result */
+ variable[12] = CALL_static_type___MMSignature___arity( variable[10] /*cs*/)( variable[10] /*cs*/) /*MMSignature::arity*/;
+ /* Register variable[12]: Result */
+ variable[12] = NEW_Range_range___Range___without_last( TAG_Int(0), variable[12]) /*new Range[Int]*/;
+ /* Register variable[12]: For iterator */
+ variable[12] = CALL_abstract_collection___Collection___iterator(variable[12])(variable[12]) /*Range::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[13]: For 'is_ok' result */
+ variable[13] = CALL_abstract_collection___Iterator___is_ok(variable[12])(variable[12]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[13])) break; /*for*/
+ variable[13] = CALL_abstract_collection___Iterator___item(variable[12])(variable[12]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[14]: Local variable */
+ variable[14] = variable[13];
+ /* Register variable[15]: Local variable */
+ /* Register variable[16]: Once String constant */
+ if (once_value_229 != NIT_NULL) variable[16] = once_value_229;
+ else {
+ variable[16] = NEW_String_string___String___with_native(BOX_NativeString("val_t"), TAG_Int(5)) /*new String*/;
+ once_value_229 = variable[16];
+ }
+ /* Register variable[16]: Result */
+ variable[15] = variable[16];
+ CALL_abstract_collection___SimpleCollection___add( variable[11] /*subparams*/)( variable[11] /*subparams*/, variable[15] /*p*/) /*AbstractArray::add*/;
+ continue_228: while(0);
+ CALL_abstract_collection___Iterator___next(variable[12])(variable[12]) /*Iterator::next*/;
+ }
+ break_228: while(0);
+ /* Register variable[12]: Local variable */
+ /* Register variable[13]: Once String constant */
+ if (once_value_230 != NIT_NULL) variable[13] = once_value_230;
+ else {
+ variable[13] = NEW_String_string___String___with_native(BOX_NativeString("void"), TAG_Int(4)) /*new String*/;
+ once_value_230 = variable[13];
+ }
+ /* Register variable[13]: Result */
+ variable[12] = variable[13];
+ /* Register variable[13]: Result */
+ variable[13] = CALL_static_type___MMSignature___return_type( variable[10] /*cs*/)( variable[10] /*cs*/) /*MMSignature::return_type*/;
+ /* Register variable[13]: Result */
+ variable[13] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable[13] == NIT_NULL /*null*/) || ((variable[13] != NIT_NULL) && ((CALL_kernel___Object_____eqeq(variable[13])==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable[13], NIT_NULL /*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable[13])(variable[13], NIT_NULL /*null*/) /*Object::==*/)))))));
+ if (UNTAG_Bool(variable[13])) { /*if*/
+ /* Register variable[13]: Once String constant */
+ if (once_value_231 != NIT_NULL) variable[13] = once_value_231;
+ else {
+ variable[13] = NEW_String_string___String___with_native(BOX_NativeString("val_t"), TAG_Int(5)) /*new String*/;
+ once_value_231 = variable[13];
+ }
+ /* Register variable[13]: Result */
+ variable[12] = variable[13] /*r=*/;
+ }
+ variable[13] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[14]: Once String constant */
+ if (once_value_232 != NIT_NULL) variable[14] = once_value_232;
+ else {
+ variable[14] = NEW_String_string___String___with_native(BOX_NativeString("struct WBT_ *"), TAG_Int(13)) /*new String*/;
+ once_value_232 = variable[14];
+ }
+ /* Register variable[14]: Result */
+ /* Ensure var variable[14]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[13])(variable[13], variable[14]) /*AbstractArray::add*/;
+ /* Register variable[14]: Result */
+ variable[14] = TAG_Int(UNTAG_Int( variable[5] /*first_closure_index*/)+UNTAG_Int( variable[8] /*i*/));
+ /* Register variable[15]: Local variable */
+ variable[15] = variable[2] /*args*/;
+ /* Register variable[16]: Local variable */
+ variable[16] = variable[14];
+ /* Register variable[17]: Method return value and escape marker */
+ /* Register variable[18]: Result */
+ variable[18] = TAG_Bool(UNTAG_Int( variable[16] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[18]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[18])) { /* and */
+ /* Register variable[18]: Result */
+ variable[18] = ATTR_array___AbstractArrayRead____length(variable[15]) /*AbstractArrayRead::_length*/;
+ /* Register variable[18]: Result */
+ variable[18] = TAG_Bool(UNTAG_Int( variable[16] /*index*/)<UNTAG_Int(variable[18]));
+ }
+ /* Register variable[18]: Result */
+ if (!UNTAG_Bool(variable[18])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[18]: Result */
+ variable[18] = ATTR_array___Array____items(variable[15]) /*Array::_items*/;
+ /* Register variable[18]: Result */
+ variable[18] = UNBOX_NativeArray(variable[18])[UNTAG_Int( variable[16] /*index*/)];
+ variable[17] = variable[18];
+ goto return_label233;
+ return_label233: while(false);
+ /* Register variable[14]: Result */
+ variable[14] = variable[17];
+ /* Ensure var variable[14]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[13])(variable[13], variable[14]) /*AbstractArray::add*/;
+ /* Register variable[14]: Once String constant */
+ if (once_value_234 != NIT_NULL) variable[14] = once_value_234;
+ else {
+ variable[14] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_234 = variable[14];
+ }
+ /* Register variable[14]: Result */
+ /* Ensure var variable[14]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[13])(variable[13], variable[14]) /*AbstractArray::add*/;
+ /* Register variable[13]: Result */
+ variable[13] = CALL_string___Object___to_s(variable[13])(variable[13]) /*Object::to_s*/;
+ CALL_abstract_collection___SimpleCollection___add( variable[4] /*params*/)( variable[4] /*params*/, variable[13]) /*AbstractArray::add*/;
+ variable[13] = NEW_Array_array___Array___with_capacity(TAG_Int(7)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[14]: Once String constant */
+ if (once_value_235 != NIT_NULL) variable[14] = once_value_235;
+ else {
+ variable[14] = NEW_String_string___String___with_native(BOX_NativeString("typedef "), TAG_Int(8)) /*new String*/;
+ once_value_235 = variable[14];
+ }
+ /* Register variable[14]: Result */
+ /* Ensure var variable[14]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[13])(variable[13], variable[14]) /*AbstractArray::add*/;
+ variable[14] = variable[12] /*r*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[13])(variable[13], variable[14]) /*AbstractArray::add*/;
+ /* Register variable[14]: Once String constant */
+ if (once_value_236 != NIT_NULL) variable[14] = once_value_236;
+ else {
+ variable[14] = NEW_String_string___String___with_native(BOX_NativeString(" (*"), TAG_Int(3)) /*new String*/;
+ once_value_236 = variable[14];
+ }
+ /* Register variable[14]: Result */
+ /* Ensure var variable[14]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[13])(variable[13], variable[14]) /*AbstractArray::add*/;
+ variable[14] = variable[9] /*closcn*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[13])(variable[13], variable[14]) /*AbstractArray::add*/;
+ /* Register variable[14]: Once String constant */
+ if (once_value_237 != NIT_NULL) variable[14] = once_value_237;
+ else {
+ variable[14] = NEW_String_string___String___with_native(BOX_NativeString(")("), TAG_Int(2)) /*new String*/;
+ once_value_237 = variable[14];
+ }
+ /* Register variable[14]: Result */
+ /* Ensure var variable[14]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[13])(variable[13], variable[14]) /*AbstractArray::add*/;
+ /* Register variable[14]: Once String constant */
+ if (once_value_238 != NIT_NULL) variable[14] = once_value_238;
+ else {
+ variable[14] = NEW_String_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)) /*new String*/;
+ once_value_238 = variable[14];
+ }
+ /* Register variable[14]: Result */
+ /* Register variable[14]: Result */
+ variable[14] = CALL_string___Collection___join( variable[11] /*subparams*/)( variable[11] /*subparams*/, variable[14]) /*Collection::join*/;
+ /* Ensure var variable[14]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[13])(variable[13], variable[14]) /*AbstractArray::add*/;
+ /* Register variable[14]: Once String constant */
+ if (once_value_239 != NIT_NULL) variable[14] = once_value_239;
+ else {
+ variable[14] = NEW_String_string___String___with_native(BOX_NativeString(");"), TAG_Int(2)) /*new String*/;
+ once_value_239 = variable[14];
+ }
+ /* Register variable[14]: Result */
+ /* Ensure var variable[14]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[13])(variable[13], variable[14]) /*AbstractArray::add*/;
+ /* Register variable[13]: Result */
+ variable[13] = CALL_string___Object___to_s(variable[13])(variable[13]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_decl( variable[1] /*v*/)( variable[1] /*v*/, variable[13]) /*CompilerVisitor::add_decl*/;
+ continue_225: while(0);
+ CALL_abstract_collection___Iterator___next(variable[6])(variable[6]) /*Iterator::next*/;
+ }
+ break_225: while(0);
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMLocalProperty___global(variable[0])(variable[0]) /*MMLocalProperty::global*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMGlobalProperty___is_init(variable[6])(variable[6]) /*MMGlobalProperty::is_init*/;
+ if (UNTAG_Bool(variable[6])) { /*if*/
+ /* Register variable[6]: Once String constant */
+ if (once_value_240 != NIT_NULL) variable[6] = once_value_240;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("int* init_table"), TAG_Int(15)) /*new String*/;
+ once_value_240 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ CALL_abstract_collection___SimpleCollection___add( variable[4] /*params*/)( variable[4] /*params*/, variable[6]) /*AbstractArray::add*/;
+ }
+ /* Register variable[6]: Local variable */
+ /*variable[6] is variable ret*/
+ /* Register variable[7]: Result */
+ variable[7] = CALL_static_type___MMLocalProperty___signature(variable[0])(variable[0]) /*MMLocalProperty::signature*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_static_type___MMSignature___return_type(variable[7])(variable[7]) /*MMSignature::return_type*/;
+ /* Register variable[7]: Result */
+ variable[7] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable[7] == NIT_NULL /*null*/) || ((variable[7] != NIT_NULL) && ((CALL_kernel___Object_____eqeq(variable[7])==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable[7], NIT_NULL /*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable[7])(variable[7], NIT_NULL /*null*/) /*Object::==*/)))))));
+ if (UNTAG_Bool(variable[7])) { /*if*/
+ /* Register variable[7]: Once String constant */
+ if (once_value_241 != NIT_NULL) variable[7] = once_value_241;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("val_t"), TAG_Int(5)) /*new String*/;
+ once_value_241 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ variable[6] = variable[7] /*ret=*/;
+ } else { /*if*/
+ /* Register variable[7]: Once String constant */
+ if (once_value_242 != NIT_NULL) variable[7] = once_value_242;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("void"), TAG_Int(4)) /*new String*/;
+ once_value_242 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ variable[6] = variable[7] /*ret=*/;
+ }
+ /* Register variable[7]: Local variable */
+ /* Register variable[8]: Once String constant */
+ if (once_value_243 != NIT_NULL) variable[8] = once_value_243;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)) /*new String*/;
+ once_value_243 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Collection___join( variable[4] /*params*/)( variable[4] /*params*/, variable[8]) /*Collection::join*/;
+ variable[7] = variable[8];
+ /* Register variable[8]: Local variable */
+ variable[9] = NEW_Array_array___Array___with_capacity(TAG_Int(7)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_244 != NIT_NULL) variable[10] = once_value_244;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_244 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ variable[10] = variable[6] /*ret*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_245 != NIT_NULL) variable[10] = once_value_245;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(" "), TAG_Int(1)) /*new String*/;
+ once_value_245 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_compiling_base___MMLocalProperty___cname(variable[0])(variable[0]) /*MMLocalProperty::cname*/;
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_246 != NIT_NULL) variable[10] = once_value_246;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_246 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ variable[10] = variable[7] /*p*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_247 != NIT_NULL) variable[10] = once_value_247;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)) /*new String*/;
+ once_value_247 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_string___Object___to_s(variable[9])(variable[9]) /*Object::to_s*/;
+ variable[8] = variable[9];
+ variable[9] = NEW_Array_array___Array___with_capacity(TAG_Int(7)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_248 != NIT_NULL) variable[10] = once_value_248;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString("typedef "), TAG_Int(8)) /*new String*/;
+ once_value_248 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ variable[10] = variable[6] /*ret*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_249 != NIT_NULL) variable[10] = once_value_249;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(" (* "), TAG_Int(4)) /*new String*/;
+ once_value_249 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_compiling_base___MMLocalProperty___cname(variable[0])(variable[0]) /*MMLocalProperty::cname*/;
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_250 != NIT_NULL) variable[10] = once_value_250;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString("_t)("), TAG_Int(4)) /*new String*/;
+ once_value_250 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ variable[10] = variable[7] /*p*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_251 != NIT_NULL) variable[10] = once_value_251;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(");"), TAG_Int(2)) /*new String*/;
+ once_value_251 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_string___Object___to_s(variable[9])(variable[9]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_decl( variable[1] /*v*/)( variable[1] /*v*/, variable[9]) /*CompilerVisitor::add_decl*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_252 != NIT_NULL) variable[9] = once_value_252;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)) /*new String*/;
+ once_value_252 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Register variable[9]: Result */
+ variable[9] = CALL_string___String_____plus( variable[8] /*s*/)( variable[8] /*s*/, variable[9]) /*String::+*/;
+ CALL_compiling_base___CompilerVisitor___add_decl( variable[1] /*v*/)( variable[1] /*v*/, variable[9]) /*CompilerVisitor::add_decl*/;
+ variable[3] = variable[8] /*s*/;
+ goto return_label217;
+ return_label217: while(false);
+ tracehead = trace.prev;
+ return variable[3];
+}
+val_t compiling_methods___MMSrcMethod___do_compile_inside(val_t self, val_t param0, val_t param1) {
+ struct trace_t trace = {NULL, NULL, 578, LOCATE_compiling_methods___MMSrcMethod___do_compile_inside};
+ val_t *variable = NULL;
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ fprintf(stderr, "Deferred method called");
+ fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_methods, 578);
+ nit_exit(1);
+ tracehead = trace.prev;
+ return NIT_NULL;
+}
+val_t compiling_methods___MMReadImplementationMethod___do_compile_inside(val_t self, val_t param0, val_t param1) {
+ struct trace_t trace = {NULL, NULL, 583, LOCATE_compiling_methods___MMReadImplementationMethod___do_compile_inside};
+ val_t variable[10];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Method return value and escape marker */
+ /* Register variable[4]: Result */
+ variable[4] = CALL_syntax_base___MMLocalProperty___node(variable[0])(variable[0]) /*MMAttrImplementationMethod::node*/;
+ /* Register variable[4]: Result */
+ variable[4] = CALL_syntax_base___AAttrPropdef___prop(variable[4])(variable[4]) /*AAttrPropdef::prop*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_syntax_base___MMLocalProperty___node(variable[0])(variable[0]) /*MMAttrImplementationMethod::node*/;
+ /* Register variable[6]: Local variable */
+ variable[6] = variable[2] /*params*/;
+ /* Register variable[7]: Local variable */
+ variable[7] = TAG_Int(0);
+ /* Register variable[8]: Method return value and escape marker */
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(UNTAG_Int( variable[7] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[9]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[9])) { /* and */
+ /* Register variable[9]: Result */
+ variable[9] = ATTR_array___AbstractArrayRead____length(variable[6]) /*AbstractArrayRead::_length*/;
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(UNTAG_Int( variable[7] /*index*/)<UNTAG_Int(variable[9]));
+ }
+ /* Register variable[9]: Result */
+ if (!UNTAG_Bool(variable[9])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[9]: Result */
+ variable[9] = ATTR_array___Array____items(variable[6]) /*Array::_items*/;
+ /* Register variable[9]: Result */
+ variable[9] = UNBOX_NativeArray(variable[9])[UNTAG_Int( variable[7] /*index*/)];
+ variable[8] = variable[9];
+ goto return_label254;
+ return_label254: while(false);
+ /* Register variable[6]: Result */
+ variable[6] = variable[8];
+ /* Register variable[4]: Result */
+ variable[4] = CALL_compiling_methods___MMAttribute___compile_read_access(variable[4])(variable[4], variable[1] /*v*/, variable[5], variable[6]) /*MMAttribute::compile_read_access*/;
+ variable[3] = variable[4];
+ goto return_label253;
+ return_label253: while(false);
+ tracehead = trace.prev;
+ return variable[3];
+}
+val_t compiling_methods___MMWriteImplementationMethod___do_compile_inside(val_t self, val_t param0, val_t param1) {
+ struct trace_t trace = {NULL, NULL, 590, LOCATE_compiling_methods___MMWriteImplementationMethod___do_compile_inside};
+ val_t variable[11];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Method return value and escape marker */
+ /* Register variable[4]: Result */
+ variable[4] = CALL_syntax_base___MMLocalProperty___node(variable[0])(variable[0]) /*MMAttrImplementationMethod::node*/;
+ /* Register variable[4]: Result */
+ variable[4] = CALL_syntax_base___AAttrPropdef___prop(variable[4])(variable[4]) /*AAttrPropdef::prop*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_syntax_base___MMLocalProperty___node(variable[0])(variable[0]) /*MMAttrImplementationMethod::node*/;
+ /* Register variable[6]: Local variable */
+ variable[6] = variable[2] /*params*/;
+ /* Register variable[7]: Local variable */
+ variable[7] = TAG_Int(0);
+ /* Register variable[8]: Method return value and escape marker */
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(UNTAG_Int( variable[7] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[9]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[9])) { /* and */
+ /* Register variable[9]: Result */
+ variable[9] = ATTR_array___AbstractArrayRead____length(variable[6]) /*AbstractArrayRead::_length*/;
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(UNTAG_Int( variable[7] /*index*/)<UNTAG_Int(variable[9]));
+ }
+ /* Register variable[9]: Result */
+ if (!UNTAG_Bool(variable[9])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[9]: Result */
+ variable[9] = ATTR_array___Array____items(variable[6]) /*Array::_items*/;
+ /* Register variable[9]: Result */
+ variable[9] = UNBOX_NativeArray(variable[9])[UNTAG_Int( variable[7] /*index*/)];
+ variable[8] = variable[9];
+ goto return_label256;
+ return_label256: while(false);
+ /* Register variable[6]: Result */
+ variable[6] = variable[8];
+ /* Register variable[7]: Local variable */
+ variable[7] = variable[2] /*params*/;
+ /* Register variable[8]: Local variable */
+ variable[8] = TAG_Int(1);
+ /* Register variable[9]: Method return value and escape marker */
+ /* Register variable[10]: Result */
+ variable[10] = TAG_Bool(UNTAG_Int( variable[8] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[10]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[10])) { /* and */
+ /* Register variable[10]: Result */
+ variable[10] = ATTR_array___AbstractArrayRead____length(variable[7]) /*AbstractArrayRead::_length*/;
+ /* Register variable[10]: Result */
+ variable[10] = TAG_Bool(UNTAG_Int( variable[8] /*index*/)<UNTAG_Int(variable[10]));
+ }
+ /* Register variable[10]: Result */
+ if (!UNTAG_Bool(variable[10])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[10]: Result */
+ variable[10] = ATTR_array___Array____items(variable[7]) /*Array::_items*/;
+ /* Register variable[10]: Result */
+ variable[10] = UNBOX_NativeArray(variable[10])[UNTAG_Int( variable[8] /*index*/)];
+ variable[9] = variable[10];
+ goto return_label257;
+ return_label257: while(false);
+ /* Register variable[7]: Result */
+ variable[7] = variable[9];
+ CALL_compiling_methods___MMAttribute___compile_write_access(variable[4])(variable[4], variable[1] /*v*/, variable[5], variable[6], variable[7]) /*MMAttribute::compile_write_access*/;
+ variable[3] = NIT_NULL /*null*/;
+ goto return_label255;
+ return_label255: while(false);
+ tracehead = trace.prev;
+ return variable[3];
+}
+val_t compiling_methods___MMMethSrcMethod___do_compile_inside(val_t self, val_t param0, val_t param1) {
+ struct trace_t trace = {NULL, NULL, 598, LOCATE_compiling_methods___MMMethSrcMethod___do_compile_inside};
+ val_t variable[5];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Method return value and escape marker */
+ /* Register variable[4]: Result */
+ variable[4] = CALL_syntax_base___MMLocalProperty___node(variable[0])(variable[0]) /*MMMethSrcMethod::node*/;
+ /* Register variable[4]: Result */
+ variable[4] = CALL_compiling_methods___AMethPropdef___do_compile_inside(variable[4])(variable[4], variable[1] /*v*/, variable[0], variable[2] /*params*/) /*AMethPropdef::do_compile_inside*/;
+ variable[3] = variable[4];
+ goto return_label258;
+ return_label258: while(false);
+ tracehead = trace.prev;
+ return variable[3];
+}
+val_t compiling_methods___MMImplicitInit___do_compile_inside(val_t self, val_t param0, val_t param1) {
+ struct trace_t trace = {NULL, NULL, 605, LOCATE_compiling_methods___MMImplicitInit___do_compile_inside};
+ val_t variable[18];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Method return value and escape marker */
+ /* Register variable[4]: Local variable */
+ /* Register variable[5]: Result */
+ variable[5] = CALL_abstract_collection___Collection___length( variable[2] /*params*/)( variable[2] /*params*/) /*AbstractArrayRead::length*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_syntax_base___MMImplicitInit___unassigned_attributes(variable[0])(variable[0]) /*MMImplicitInit::unassigned_attributes*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstract_collection___Collection___length(variable[6])(variable[6]) /*AbstractArrayRead::length*/;
+ /* Register variable[5]: Result */
+ variable[5] = TAG_Int(UNTAG_Int(variable[5])-UNTAG_Int(variable[6]));
+ variable[4] = variable[5];
+ /* Register variable[5]: Local variable */
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstract_collection___Collection___first( variable[2] /*params*/)( variable[2] /*params*/) /*IndexedCollectionRead::first*/;
+ variable[5] = variable[6];
+ /* Register variable[6]: Result */
+ variable[6] = CALL_syntax_base___MMImplicitInit___super_inits(variable[0])(variable[0]) /*MMImplicitInit::super_inits*/;
+ /* Register variable[6]: For iterator */
+ variable[6] = CALL_abstract_collection___Collection___iterator(variable[6])(variable[6]) /*AbstractArrayRead::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[7]: For 'is_ok' result */
+ variable[7] = CALL_abstract_collection___Iterator___is_ok(variable[6])(variable[6]) /*ArrayIterator::is_ok*/;
+ if (!UNTAG_Bool(variable[7])) break; /*for*/
+ variable[7] = CALL_abstract_collection___Iterator___item(variable[6])(variable[6]) /*ArrayIterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[8]: Local variable */
+ variable[8] = variable[7];
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(( variable[8] /*sp*/==NIT_NULL) || VAL_ISA( variable[8] /*sp*/, COLOR_MMMethod, ID_MMMethod)) /*cast MMMethod*/;
+ if (!UNTAG_Bool(variable[9])) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_compiling_methods___MMImplicitInit___do_compile_inside, LOCATE_compiling_methods, 610); nit_exit(1);}
+ /* Register variable[9]: Local variable */
+ variable[10] = NEW_Array_array___Array___with_capacity(TAG_Int(1)) /*new Array[String]*/ /* Ensure var: Literal array*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[10])(variable[10], variable[5] /*recv*/) /*AbstractArray::add*/;
+ /* Register variable[10]: Result */
+ variable[9] = variable[10];
+ /* Register variable[10]: Result */
+ variable[10] = CALL_mmbuilder___MMImplicitInit___super_init(variable[0])(variable[0]) /*MMImplicitInit::super_init*/;
+ /* Register variable[10]: Result */
+ variable[10] = TAG_Bool(( variable[8] /*sp*/ == variable[10]) || (( variable[8] /*sp*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[8] /*sp*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[8] /*sp*/,variable[10])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[8] /*sp*/)( variable[8] /*sp*/, variable[10]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[10])) { /*if*/
+ /* Register variable[10]: Local variable */
+ /* Register variable[11]: Result */
+ variable[11] = NEW_Array_array___Array___with_capacity( variable[4] /*f*/) /*new Array[String]*/;
+ variable[10] = variable[11];
+ CALL_abstract_collection___SimpleCollection___add( variable[10] /*args*/)( variable[10] /*args*/, variable[5] /*recv*/) /*AbstractArray::add*/;
+ /* Register variable[11]: Result */
+ variable[11] = NEW_Range_range___Range___without_last( TAG_Int(1), variable[4] /*f*/) /*new Range[Int]*/;
+ /* Register variable[11]: For iterator */
+ variable[11] = CALL_abstract_collection___Collection___iterator(variable[11])(variable[11]) /*Range::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[12]: For 'is_ok' result */
+ variable[12] = CALL_abstract_collection___Iterator___is_ok(variable[11])(variable[11]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[12])) break; /*for*/
+ variable[12] = CALL_abstract_collection___Iterator___item(variable[11])(variable[11]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[13]: Local variable */
+ variable[13] = variable[12];
+ /* Register variable[14]: Local variable */
+ variable[14] = variable[2] /*params*/;
+ /* Register variable[15]: Local variable */
+ variable[15] = variable[13] /*i*/;
+ /* Register variable[16]: Method return value and escape marker */
+ /* Register variable[17]: Result */
+ variable[17] = TAG_Bool(UNTAG_Int( variable[15] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[17]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[17])) { /* and */
+ /* Register variable[17]: Result */
+ variable[17] = ATTR_array___AbstractArrayRead____length(variable[14]) /*AbstractArrayRead::_length*/;
+ /* Register variable[17]: Result */
+ variable[17] = TAG_Bool(UNTAG_Int( variable[15] /*index*/)<UNTAG_Int(variable[17]));
+ }
+ /* Register variable[17]: Result */
+ if (!UNTAG_Bool(variable[17])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[17]: Result */
+ variable[17] = ATTR_array___Array____items(variable[14]) /*Array::_items*/;
+ /* Register variable[17]: Result */
+ variable[17] = UNBOX_NativeArray(variable[17])[UNTAG_Int( variable[15] /*index*/)];
+ variable[16] = variable[17];
+ goto return_label262;
+ return_label262: while(false);
+ /* Register variable[14]: Result */
+ variable[14] = variable[16];
+ CALL_abstract_collection___SimpleCollection___add( variable[10] /*args*/)( variable[10] /*args*/, variable[14]) /*AbstractArray::add*/;
+ continue_261: while(0);
+ CALL_abstract_collection___Iterator___next(variable[11])(variable[11]) /*Iterator::next*/;
+ }
+ break_261: while(0);
+ CALL_compiling_methods___MMMethod___compile_stmt_call( variable[8] /*sp*/)( variable[8] /*sp*/, variable[1] /*v*/, variable[10] /*args*/) /*MMMethod::compile_stmt_call*/;
+ } else { /*if*/
+ CALL_compiling_methods___MMMethod___compile_stmt_call( variable[8] /*sp*/)( variable[8] /*sp*/, variable[1] /*v*/, variable[9] /*args_recv*/) /*MMMethod::compile_stmt_call*/;
+ }
+ continue_260: while(0);
+ CALL_abstract_collection___Iterator___next(variable[6])(variable[6]) /*ArrayIterator::next*/;
+ }
+ break_260: while(0);
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstract_collection___Collection___length( variable[2] /*params*/)( variable[2] /*params*/) /*AbstractArrayRead::length*/;
+ /* Register variable[6]: Result */
+ variable[6] = NEW_Range_range___Range___without_last( variable[4] /*f*/, variable[6]) /*new Range[Int]*/;
+ /* Register variable[6]: For iterator */
+ variable[6] = CALL_abstract_collection___Collection___iterator(variable[6])(variable[6]) /*Range::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[7]: For 'is_ok' result */
+ variable[7] = CALL_abstract_collection___Iterator___is_ok(variable[6])(variable[6]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[7])) break; /*for*/
+ variable[7] = CALL_abstract_collection___Iterator___item(variable[6])(variable[6]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[8]: Local variable */
+ variable[8] = variable[7];
+ /* Register variable[9]: Local variable */
+ /* Register variable[10]: Result */
+ variable[10] = CALL_syntax_base___MMImplicitInit___unassigned_attributes(variable[0])(variable[0]) /*MMImplicitInit::unassigned_attributes*/;
+ /* Register variable[11]: Result */
+ variable[11] = TAG_Int(UNTAG_Int( variable[8] /*i*/)-UNTAG_Int( variable[4] /*f*/));
+ /* Register variable[12]: Local variable */
+ variable[12] = variable[10];
+ /* Register variable[13]: Local variable */
+ variable[13] = variable[11];
+ /* Register variable[14]: Method return value and escape marker */
+ /* Register variable[15]: Result */
+ variable[15] = TAG_Bool(UNTAG_Int( variable[13] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[15]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[15])) { /* and */
+ /* Register variable[15]: Result */
+ variable[15] = ATTR_array___AbstractArrayRead____length(variable[12]) /*AbstractArrayRead::_length*/;
+ /* Register variable[15]: Result */
+ variable[15] = TAG_Bool(UNTAG_Int( variable[13] /*index*/)<UNTAG_Int(variable[15]));
+ }
+ /* Register variable[15]: Result */
+ if (!UNTAG_Bool(variable[15])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[15]: Result */
+ variable[15] = ATTR_array___Array____items(variable[12]) /*Array::_items*/;
+ /* Register variable[15]: Result */
+ variable[15] = UNBOX_NativeArray(variable[15])[UNTAG_Int( variable[13] /*index*/)];
+ variable[14] = variable[15];
+ goto return_label264;
+ return_label264: while(false);
+ /* Register variable[10]: Result */
+ variable[10] = variable[14];
+ variable[9] = variable[10];
+ /* Register variable[10]: Local variable */
+ variable[10] = variable[2] /*params*/;
+ /* Register variable[11]: Local variable */
+ variable[11] = variable[8] /*i*/;
+ /* Register variable[12]: Method return value and escape marker */
+ /* Register variable[13]: Result */
+ variable[13] = TAG_Bool(UNTAG_Int( variable[11] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[13]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[13])) { /* and */
+ /* Register variable[13]: Result */
+ variable[13] = ATTR_array___AbstractArrayRead____length(variable[10]) /*AbstractArrayRead::_length*/;
+ /* Register variable[13]: Result */
+ variable[13] = TAG_Bool(UNTAG_Int( variable[11] /*index*/)<UNTAG_Int(variable[13]));
+ }
+ /* Register variable[13]: Result */
+ if (!UNTAG_Bool(variable[13])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[13]: Result */
+ variable[13] = ATTR_array___Array____items(variable[10]) /*Array::_items*/;
+ /* Register variable[13]: Result */
+ variable[13] = UNBOX_NativeArray(variable[13])[UNTAG_Int( variable[11] /*index*/)];
+ variable[12] = variable[13];
+ goto return_label265;
+ return_label265: while(false);
+ /* Register variable[10]: Result */
+ variable[10] = variable[12];
+ CALL_compiling_methods___MMAttribute___compile_write_access( variable[9] /*attribute*/)( variable[9] /*attribute*/, variable[1] /*v*/, NIT_NULL /*null*/, variable[5] /*recv*/, variable[10]) /*MMAttribute::compile_write_access*/;
+ continue_263: while(0);
+ CALL_abstract_collection___Iterator___next(variable[6])(variable[6]) /*Iterator::next*/;
+ }
+ break_263: while(0);
+ variable[3] = NIT_NULL /*null*/;
+ goto return_label259;
+ return_label259: while(false);
+ tracehead = trace.prev;
+ return variable[3];
+}
+val_t compiling_methods___MMType___compile_cast(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 632, LOCATE_compiling_methods___MMType___compile_cast};
+ static val_t once_value_267 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_268 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_269 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_270 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_271 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_272 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_273 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_274 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_275 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_276 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_277 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_278 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_279 = NIT_NULL; /* Once value for string variable[8]*/
+ val_t variable[9];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Method return value and escape marker */
+ /* Register variable[5]: Local variable */
+ /* Register variable[6]: Result */
+ variable[6] = CALL_static_type___MMType___local_class(variable[0])(variable[0]) /*MMType::local_class*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMLocalClass___global(variable[6])(variable[6]) /*MMLocalClass::global*/;
+ variable[5] = variable[6];
+ /* Register variable[6]: Local variable */
+ /* Register variable[7]: Once String constant */
+ if (once_value_267 != NIT_NULL) variable[7] = once_value_267;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_267 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ variable[6] = variable[7];
+ /* Register variable[7]: Result */
+ variable[7] = CALL_static_type___MMType___is_nullable( variable[3] /*fromtype*/)( variable[3] /*fromtype*/) /*MMType::is_nullable*/;
+ if (UNTAG_Bool(variable[7])) { /*if*/
+ /* Register variable[7]: Result */
+ variable[7] = CALL_static_type___MMType___is_nullable(variable[0])(variable[0]) /*MMType::is_nullable*/;
+ if (UNTAG_Bool(variable[7])) { /*if*/
+ variable[7] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_268 != NIT_NULL) variable[8] = once_value_268;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_268 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ variable[8] = variable[2] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_269 != NIT_NULL) variable[8] = once_value_269;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("==NIT_NULL) || "), TAG_Int(15)) /*new String*/;
+ once_value_269 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/;
+ variable[6] = variable[7] /*s=*/;
+ } else { /*if*/
+ variable[7] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_270 != NIT_NULL) variable[8] = once_value_270;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_270 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ variable[8] = variable[2] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_271 != NIT_NULL) variable[8] = once_value_271;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("!=NIT_NULL) && "), TAG_Int(15)) /*new String*/;
+ once_value_271 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/;
+ variable[6] = variable[7] /*s=*/;
+ }
+ } else { /*if*/
+ variable[7] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_272 != NIT_NULL) variable[8] = once_value_272;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_272 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ variable[8] = variable[2] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_273 != NIT_NULL) variable[8] = once_value_273;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("==NIT_NULL) || "), TAG_Int(15)) /*new String*/;
+ once_value_273 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/;
+ variable[6] = variable[7] /*s=*/;
+ }
+ variable[7] = NEW_Array_array___Array___with_capacity(TAG_Int(11)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_274 != NIT_NULL) variable[8] = once_value_274;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool("), TAG_Int(9)) /*new String*/;
+ once_value_274 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ variable[8] = variable[6] /*s*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_275 != NIT_NULL) variable[8] = once_value_275;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("VAL_ISA("), TAG_Int(8)) /*new String*/;
+ once_value_275 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ variable[8] = variable[2] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_276 != NIT_NULL) variable[8] = once_value_276;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)) /*new String*/;
+ once_value_276 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_compiling_base___MMGlobalClass___color_id( variable[5] /*g*/)( variable[5] /*g*/) /*MMGlobalClass::color_id*/;
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_277 != NIT_NULL) variable[8] = once_value_277;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)) /*new String*/;
+ once_value_277 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_compiling_base___MMGlobalClass___id_id( variable[5] /*g*/)( variable[5] /*g*/) /*MMGlobalClass::id_id*/;
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_278 != NIT_NULL) variable[8] = once_value_278;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(")) /*cast "), TAG_Int(10)) /*new String*/;
+ once_value_278 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Ensure var variable[0]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], CALL_string___Object___to_s(variable[0])(variable[0]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_279 != NIT_NULL) variable[8] = once_value_279;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)) /*new String*/;
+ once_value_279 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/;
+ variable[4] = variable[7];
+ goto return_label266;
+ return_label266: while(false);
+ tracehead = trace.prev;
+ return variable[4];
+}
+void compiling_methods___MMType___compile_type_check(val_t self, val_t param0, val_t param1, val_t param2, val_t param3) {
+ struct trace_t trace = {NULL, NULL, 652, LOCATE_compiling_methods___MMType___compile_type_check};
+ static val_t once_value_281 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_282 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_283 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_284 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_285 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_286 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_287 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_288 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_289 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_290 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_291 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_292 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_293 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_294 = NIT_NULL; /* Once value for string variable[9]*/
+ val_t variable[10];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Local variable */
+ variable[4] = param3;
+ /* Register variable[5]: Method return value and escape marker */
+ /* Register variable[6]: Local variable */
+ /* Register variable[7]: Result */
+ variable[7] = CALL_static_type___MMType___local_class(variable[0])(variable[0]) /*MMType::local_class*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalClass___global(variable[7])(variable[7]) /*MMLocalClass::global*/;
+ variable[6] = variable[7];
+ /* Register variable[7]: Local variable */
+ /* Register variable[8]: Once String constant */
+ if (once_value_281 != NIT_NULL) variable[8] = once_value_281;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_281 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ variable[7] = variable[8];
+ /* Register variable[8]: Result */
+ variable[8] = CALL_static_type___MMType___is_nullable( variable[4] /*fromtype*/)( variable[4] /*fromtype*/) /*MMType::is_nullable*/;
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ /* Register variable[8]: Result */
+ variable[8] = CALL_static_type___MMType___is_nullable(variable[0])(variable[0]) /*MMType::is_nullable*/;
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_282 != NIT_NULL) variable[9] = once_value_282;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_282 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ variable[9] = variable[2] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_283 != NIT_NULL) variable[9] = once_value_283;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("!=NIT_NULL) && "), TAG_Int(15)) /*new String*/;
+ once_value_283 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_284 != NIT_NULL) variable[9] = once_value_284;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_284 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ variable[9] = variable[2] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_285 != NIT_NULL) variable[9] = once_value_285;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("==NIT_NULL) || "), TAG_Int(15)) /*new String*/;
+ once_value_285 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ }
+ } else { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_286 != NIT_NULL) variable[9] = once_value_286;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_286 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ variable[9] = variable[2] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_287 != NIT_NULL) variable[9] = once_value_287;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("!=NIT_NULL) && "), TAG_Int(15)) /*new String*/;
+ once_value_287 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ }
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(13)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_288 != NIT_NULL) variable[9] = once_value_288;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("if ("), TAG_Int(4)) /*new String*/;
+ once_value_288 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ variable[9] = variable[7] /*s*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_289 != NIT_NULL) variable[9] = once_value_289;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("!VAL_ISA("), TAG_Int(9)) /*new String*/;
+ once_value_289 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ variable[9] = variable[2] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_290 != NIT_NULL) variable[9] = once_value_290;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)) /*new String*/;
+ once_value_290 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_base___MMGlobalClass___color_id( variable[6] /*g*/)( variable[6] /*g*/) /*MMGlobalClass::color_id*/;
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_291 != NIT_NULL) variable[9] = once_value_291;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)) /*new String*/;
+ once_value_291 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_base___MMGlobalClass___id_id( variable[6] /*g*/)( variable[6] /*g*/) /*MMGlobalClass::id_id*/;
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_292 != NIT_NULL) variable[9] = once_value_292;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")) { fprintf(stderr, \"Cast failled\"); "), TAG_Int(38)) /*new String*/;
+ once_value_292 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___CompilerVisitor___printf_locate_error( variable[1] /*v*/)( variable[1] /*v*/, variable[3] /*n*/) /*CompilerVisitor::printf_locate_error*/;
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_293 != NIT_NULL) variable[9] = once_value_293;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(" nit_exit(1); } /*cast "), TAG_Int(23)) /*new String*/;
+ once_value_293 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Ensure var variable[0]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], CALL_string___Object___to_s(variable[0])(variable[0]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_294 != NIT_NULL) variable[9] = once_value_294;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("*/;"), TAG_Int(3)) /*new String*/;
+ once_value_294 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::add_instr*/;
+ return_label280: while(false);
+ tracehead = trace.prev;
+ return;
+}
+void compiling_methods___MMType___compile_notnull_check(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 671, LOCATE_compiling_methods___MMType___compile_notnull_check};
+ static val_t once_value_296 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_297 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_298 = NIT_NULL; /* Once value for string variable[6]*/
+ static val_t once_value_299 = NIT_NULL; /* Once value for string variable[6]*/
+ val_t variable[7];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Method return value and escape marker */
+ /* Register variable[5]: Result */
+ variable[5] = CALL_static_type___MMType___is_nullable(variable[0])(variable[0]) /*MMType::is_nullable*/;
+ if (UNTAG_Bool(variable[5])) { /*if*/
+ variable[5] = NEW_Array_array___Array___with_capacity(TAG_Int(7)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_296 != NIT_NULL) variable[6] = once_value_296;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("if (("), TAG_Int(5)) /*new String*/;
+ once_value_296 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ variable[6] = variable[2] /*recv*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_297 != NIT_NULL) variable[6] = once_value_297;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("==NIT_NULL)) { fprintf(stderr, \"Cast failled\"); "), TAG_Int(48)) /*new String*/;
+ once_value_297 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_compiling_methods___CompilerVisitor___printf_locate_error( variable[1] /*v*/)( variable[1] /*v*/, variable[3] /*n*/) /*CompilerVisitor::printf_locate_error*/;
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_298 != NIT_NULL) variable[6] = once_value_298;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString(" nit_exit(1); } /*cast "), TAG_Int(23)) /*new String*/;
+ once_value_298 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Ensure var variable[0]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], CALL_string___Object___to_s(variable[0])(variable[0]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[6]: Once String constant */
+ if (once_value_299 != NIT_NULL) variable[6] = once_value_299;
+ else {
+ variable[6] = NEW_String_string___String___with_native(BOX_NativeString("*/;"), TAG_Int(3)) /*new String*/;
+ once_value_299 = variable[6];
+ }
+ /* Register variable[6]: Result */
+ /* Ensure var variable[6]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[5])(variable[5], variable[6]) /*AbstractArray::add*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_string___Object___to_s(variable[5])(variable[5]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[5]) /*CompilerVisitor::add_instr*/;
+ }
+ return_label295: while(false);
+ tracehead = trace.prev;
+ return;
+}
+val_t compiling_methods___AMethPropdef___do_compile_inside(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 683, LOCATE_compiling_methods___AMethPropdef___do_compile_inside};
+ val_t *variable = NULL;
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ fprintf(stderr, "Deferred method called");
+ fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_methods, 683);
+ nit_exit(1);
+ tracehead = trace.prev;
+ return NIT_NULL;
+}
+void compiling_methods___PSignature___compile_parameters(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 688, LOCATE_compiling_methods___PSignature___compile_parameters};
+ val_t *variable = NULL;
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ fprintf(stderr, "Deferred method called");
+ fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_methods, 688);
+ nit_exit(1);
+ tracehead = trace.prev;
+ return;
+}
+void compiling_methods___ASignature___compile_parameters(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 692, LOCATE_compiling_methods___ASignature___compile_parameters};
+ static val_t once_value_302 = NIT_NULL; /* Once value for string variable[11]*/
+ static val_t once_value_303 = NIT_NULL; /* Once value for string variable[11]*/
+ static val_t once_value_304 = NIT_NULL; /* Once value for string variable[11]*/
+ static val_t once_value_308 = NIT_NULL; /* Once value for string variable[11]*/
+ static val_t once_value_310 = NIT_NULL; /* Once value for string variable[11]*/
+ val_t variable[16];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Method return value and escape marker */
+ /* Register variable[5]: Result */
+ variable[5] = CALL_parser_nodes___ASignature___n_params(variable[0])(variable[0]) /*ASignature::n_params*/;
+ /* Register variable[5]: For iterator */
+ variable[5] = CALL_abstract_collection___Collection___iterator(variable[5])(variable[5]) /*List::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[6]: For 'is_ok' result */
+ variable[6] = CALL_abstract_collection___Iterator___is_ok(variable[5])(variable[5]) /*ListIterator::is_ok*/;
+ if (!UNTAG_Bool(variable[6])) break; /*for*/
+ variable[6] = CALL_abstract_collection___Iterator___item(variable[5])(variable[5]) /*ListIterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[7]: Local variable */
+ variable[7] = variable[6];
+ /* Register variable[8]: Local variable */
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___CompilerVisitor___cfc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::cfc*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_syntax_base___PParam___variable( variable[7] /*ap*/)( variable[7] /*ap*/) /*PParam::variable*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___CFunctionContext___register_variable(variable[9])(variable[9], variable[10]) /*CFunctionContext::register_variable*/;
+ variable[8] = variable[9];
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___NitMethodContext___method_params(variable[9])(variable[9]) /*NitMethodContext::method_params*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_syntax_base___PParam___variable( variable[7] /*ap*/)( variable[7] /*ap*/) /*PParam::variable*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ /* Register variable[10]: Result */
+ variable[10] = CALL_syntax_base___PParam___position( variable[7] /*ap*/)( variable[7] /*ap*/) /*PParam::position*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_static_type___MMSignature_____bra( variable[2] /*orig_sig*/)( variable[2] /*orig_sig*/, variable[10]) /*MMSignature::[]*/;
+ variable[9] = variable[10];
+ /* Register variable[10]: Result */
+ variable[10] = CALL_syntax_base___PParam___variable( variable[7] /*ap*/)( variable[7] /*ap*/) /*PParam::variable*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_syntax_base___Variable___stype(variable[10])(variable[10]) /*Variable::stype*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_static_type___MMType_____l( variable[9] /*orig_type*/)( variable[9] /*orig_type*/, variable[10]) /*MMType::<*/;
+ if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable[10])))) { /*if*/
+ variable[10] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[11]: Once String constant */
+ if (once_value_302 != NIT_NULL) variable[11] = once_value_302;
+ else {
+ variable[11] = NEW_String_string___String___with_native(BOX_NativeString("/* check if p<"), TAG_Int(14)) /*new String*/;
+ once_value_302 = variable[11];
+ }
+ /* Register variable[11]: Result */
+ /* Ensure var variable[11]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[10])(variable[10], variable[11]) /*AbstractArray::add*/;
+ /* Register variable[11]: Result */
+ variable[11] = CALL_syntax_base___PParam___variable( variable[7] /*ap*/)( variable[7] /*ap*/) /*PParam::variable*/;
+ /* Register variable[11]: Result */
+ variable[11] = CALL_syntax_base___Variable___stype(variable[11])(variable[11]) /*Variable::stype*/;
+ /* Ensure var variable[11]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[10])(variable[10], CALL_string___Object___to_s(variable[11])(variable[11]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[11]: Once String constant */
+ if (once_value_303 != NIT_NULL) variable[11] = once_value_303;
+ else {
+ variable[11] = NEW_String_string___String___with_native(BOX_NativeString(" with p:"), TAG_Int(8)) /*new String*/;
+ once_value_303 = variable[11];
+ }
+ /* Register variable[11]: Result */
+ /* Ensure var variable[11]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[10])(variable[10], variable[11]) /*AbstractArray::add*/;
+ variable[11] = variable[9] /*orig_type*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[10])(variable[10], CALL_string___Object___to_s(variable[11])(variable[11]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[11]: Once String constant */
+ if (once_value_304 != NIT_NULL) variable[11] = once_value_304;
+ else {
+ variable[11] = NEW_String_string___String___with_native(BOX_NativeString(" */"), TAG_Int(3)) /*new String*/;
+ once_value_304 = variable[11];
+ }
+ /* Register variable[11]: Result */
+ /* Ensure var variable[11]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[10])(variable[10], variable[11]) /*AbstractArray::add*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_string___Object___to_s(variable[10])(variable[10]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[10]) /*CompilerVisitor::add_instr*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_syntax_base___PParam___variable( variable[7] /*ap*/)( variable[7] /*ap*/) /*PParam::variable*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_syntax_base___Variable___stype(variable[10])(variable[10]) /*Variable::stype*/;
+ /* Register variable[11]: Result */
+ variable[11] = CALL_syntax_base___PParam___position( variable[7] /*ap*/)( variable[7] /*ap*/) /*PParam::position*/;
+ /* Register variable[12]: Local variable */
+ variable[12] = variable[3] /*params*/;
+ /* Register variable[13]: Local variable */
+ variable[13] = variable[11];
+ /* Register variable[14]: Method return value and escape marker */
+ /* Register variable[15]: Result */
+ variable[15] = TAG_Bool(UNTAG_Int( variable[13] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[15]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[15])) { /* and */
+ /* Register variable[15]: Result */
+ variable[15] = ATTR_array___AbstractArrayRead____length(variable[12]) /*AbstractArrayRead::_length*/;
+ /* Register variable[15]: Result */
+ variable[15] = TAG_Bool(UNTAG_Int( variable[13] /*index*/)<UNTAG_Int(variable[15]));
+ }
+ /* Register variable[15]: Result */
+ if (!UNTAG_Bool(variable[15])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[15]: Result */
+ variable[15] = ATTR_array___Array____items(variable[12]) /*Array::_items*/;
+ /* Register variable[15]: Result */
+ variable[15] = UNBOX_NativeArray(variable[15])[UNTAG_Int( variable[13] /*index*/)];
+ variable[14] = variable[15];
+ goto return_label305;
+ return_label305: while(false);
+ /* Register variable[11]: Result */
+ variable[11] = variable[14];
+ CALL_compiling_methods___MMType___compile_type_check(variable[10])(variable[10], variable[1] /*v*/, variable[11], variable[7] /*ap*/, variable[9] /*orig_type*/) /*MMType::compile_type_check*/;
+ }
+ /* Register variable[10]: Result */
+ variable[10] = CALL_syntax_base___PParam___position( variable[7] /*ap*/)( variable[7] /*ap*/) /*PParam::position*/;
+ /* Register variable[11]: Local variable */
+ variable[11] = variable[3] /*params*/;
+ /* Register variable[12]: Local variable */
+ variable[12] = variable[10];
+ /* Register variable[13]: Method return value and escape marker */
+ /* Register variable[14]: Result */
+ variable[14] = TAG_Bool(UNTAG_Int( variable[12] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[14]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[14])) { /* and */
+ /* Register variable[14]: Result */
+ variable[14] = ATTR_array___AbstractArrayRead____length(variable[11]) /*AbstractArrayRead::_length*/;
+ /* Register variable[14]: Result */
+ variable[14] = TAG_Bool(UNTAG_Int( variable[12] /*index*/)<UNTAG_Int(variable[14]));
+ }
+ /* Register variable[14]: Result */
+ if (!UNTAG_Bool(variable[14])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[14]: Result */
+ variable[14] = ATTR_array___Array____items(variable[11]) /*Array::_items*/;
+ /* Register variable[14]: Result */
+ variable[14] = UNBOX_NativeArray(variable[14])[UNTAG_Int( variable[12] /*index*/)];
+ variable[13] = variable[14];
+ goto return_label306;
+ return_label306: while(false);
+ /* Register variable[10]: Result */
+ variable[10] = variable[13];
+ CALL_compiling_methods___CompilerVisitor___add_assignment( variable[1] /*v*/)( variable[1] /*v*/, variable[8] /*cname*/, variable[10]) /*CompilerVisitor::add_assignment*/;
+ continue_301: while(0);
+ CALL_abstract_collection___Iterator___next(variable[5])(variable[5]) /*ListIterator::next*/;
+ }
+ break_301: while(0);
+ /* Register variable[5]: Result */
+ variable[5] = CALL_parser_nodes___ASignature___n_closure_decls(variable[0])(variable[0]) /*ASignature::n_closure_decls*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_abstract_collection___Collection___length(variable[5])(variable[5]) /*List::length*/;
+ /* Register variable[5]: Result */
+ variable[5] = NEW_Range_range___Range___without_last( TAG_Int(0), variable[5]) /*new Range[Int]*/;
+ /* Register variable[5]: For iterator */
+ variable[5] = CALL_abstract_collection___Collection___iterator(variable[5])(variable[5]) /*Range::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[6]: For 'is_ok' result */
+ variable[6] = CALL_abstract_collection___Iterator___is_ok(variable[5])(variable[5]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[6])) break; /*for*/
+ variable[6] = CALL_abstract_collection___Iterator___item(variable[5])(variable[5]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[7]: Local variable */
+ variable[7] = variable[6];
+ /* Register variable[8]: Local variable */
+ /* Register variable[9]: Result */
+ variable[9] = CALL_parser_nodes___ASignature___n_closure_decls(variable[0])(variable[0]) /*ASignature::n_closure_decls*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_abstract_collection___MapRead_____bra(variable[9])(variable[9], variable[7] /*i*/) /*List::[]*/;
+ variable[8] = variable[9];
+ /* Register variable[9]: Local variable */
+ /* Register variable[10]: Result */
+ variable[10] = CALL_compiling_methods___CompilerVisitor___cfc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::cfc*/;
+ /* Register variable[11]: Result */
+ variable[11] = CALL_syntax_base___PClosureDecl___variable( variable[8] /*wd*/)( variable[8] /*wd*/) /*PClosureDecl::variable*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_compiling_methods___CFunctionContext___register_closurevariable(variable[10])(variable[10], variable[11]) /*CFunctionContext::register_closurevariable*/;
+ variable[9] = variable[10];
+ /* Register variable[10]: Result */
+ variable[10] = CALL_syntax_base___PClosureDecl___variable( variable[8] /*wd*/)( variable[8] /*wd*/) /*PClosureDecl::variable*/;
+ /* Register variable[11]: Result */
+ variable[11] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ /* Register variable[11]: Result */
+ variable[11] = CALL_compiling_methods___NitMethodContext___method(variable[11])(variable[11]) /*NitMethodContext::method*/;
+ /* Register variable[11]: Result */
+ variable[11] = CALL_compiling_methods___MMMethod___closure_cname(variable[11])(variable[11], variable[7] /*i*/) /*MMMethod::closure_cname*/;
+ CALL_compiling_methods___ClosureVariable___ctypename__eq(variable[10])(variable[10], variable[11]) /*ClosureVariable::ctypename=*/;
+ variable[10] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[11]: Once String constant */
+ if (once_value_308 != NIT_NULL) variable[11] = once_value_308;
+ else {
+ variable[11] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_308 = variable[11];
+ }
+ /* Register variable[11]: Result */
+ /* Ensure var variable[11]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[10])(variable[10], variable[11]) /*AbstractArray::add*/;
+ /* Register variable[11]: Result */
+ variable[11] = CALL_static_type___MMSignature___arity( variable[2] /*orig_sig*/)( variable[2] /*orig_sig*/) /*MMSignature::arity*/;
+ /* Register variable[11]: Result */
+ variable[11] = TAG_Int(UNTAG_Int(variable[11])+UNTAG_Int( variable[7] /*i*/));
+ /* Register variable[12]: Local variable */
+ variable[12] = variable[3] /*params*/;
+ /* Register variable[13]: Local variable */
+ variable[13] = variable[11];
+ /* Register variable[14]: Method return value and escape marker */
+ /* Register variable[15]: Result */
+ variable[15] = TAG_Bool(UNTAG_Int( variable[13] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[15]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[15])) { /* and */
+ /* Register variable[15]: Result */
+ variable[15] = ATTR_array___AbstractArrayRead____length(variable[12]) /*AbstractArrayRead::_length*/;
+ /* Register variable[15]: Result */
+ variable[15] = TAG_Bool(UNTAG_Int( variable[13] /*index*/)<UNTAG_Int(variable[15]));
+ }
+ /* Register variable[15]: Result */
+ if (!UNTAG_Bool(variable[15])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[15]: Result */
+ variable[15] = ATTR_array___Array____items(variable[12]) /*Array::_items*/;
+ /* Register variable[15]: Result */
+ variable[15] = UNBOX_NativeArray(variable[15])[UNTAG_Int( variable[13] /*index*/)];
+ variable[14] = variable[15];
+ goto return_label309;
+ return_label309: while(false);
+ /* Register variable[11]: Result */
+ variable[11] = variable[14];
+ /* Ensure var variable[11]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[10])(variable[10], variable[11]) /*AbstractArray::add*/;
+ /* Register variable[11]: Once String constant */
+ if (once_value_310 != NIT_NULL) variable[11] = once_value_310;
+ else {
+ variable[11] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_310 = variable[11];
+ }
+ /* Register variable[11]: Result */
+ /* Ensure var variable[11]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[10])(variable[10], variable[11]) /*AbstractArray::add*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_string___Object___to_s(variable[10])(variable[10]) /*Object::to_s*/;
+ CALL_compiling_methods___CompilerVisitor___add_assignment( variable[1] /*v*/)( variable[1] /*v*/, variable[9] /*cname*/, variable[10]) /*CompilerVisitor::add_assignment*/;
+ continue_307: while(0);
+ CALL_abstract_collection___Iterator___next(variable[5])(variable[5]) /*Iterator::next*/;
+ }
+ break_307: while(0);
+ return_label300: while(false);
+ tracehead = trace.prev;
+ return;
+}
+val_t compiling_methods___AConcreteMethPropdef___do_compile_inside(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 716, LOCATE_compiling_methods___AConcreteMethPropdef___do_compile_inside};
+ static val_t once_value_313 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_314 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_315 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_316 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_317 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_318 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_319 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_320 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_321 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_322 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_323 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_324 = NIT_NULL; /* Once value for string variable[9]*/
+ val_t variable[11];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Method return value and escape marker */
+ /* Register variable[5]: Local variable */
+ /* Register variable[6]: Result */
+ variable[6] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ variable[5] = variable[6];
+ /* Register variable[6]: Result */
+ variable[6] = NEW_NitMethodContext_compiling_methods___NitMethodContext___init( variable[2] /*method*/) /*new NitMethodContext*/;
+ CALL_compiling_methods___CompilerVisitor___nmc__eq( variable[1] /*v*/)( variable[1] /*v*/, variable[6]) /*CompilerVisitor::nmc=*/;
+ /* Register variable[6]: Local variable */
+ /* Register variable[7]: Result */
+ variable[7] = CALL_compiling_methods___CompilerVisitor___cfc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::cfc*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_syntax_base___AMethPropdef___self_var(variable[0])(variable[0]) /*AMethPropdef::self_var*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_compiling_methods___CFunctionContext___register_variable(variable[7])(variable[7], variable[8]) /*CFunctionContext::register_variable*/;
+ variable[6] = variable[7];
+ /* Register variable[7]: Local variable */
+ variable[7] = variable[3] /*params*/;
+ /* Register variable[8]: Local variable */
+ variable[8] = TAG_Int(0);
+ /* Register variable[9]: Method return value and escape marker */
+ /* Register variable[10]: Result */
+ variable[10] = TAG_Bool(UNTAG_Int( variable[8] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[10]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[10])) { /* and */
+ /* Register variable[10]: Result */
+ variable[10] = ATTR_array___AbstractArrayRead____length(variable[7]) /*AbstractArrayRead::_length*/;
+ /* Register variable[10]: Result */
+ variable[10] = TAG_Bool(UNTAG_Int( variable[8] /*index*/)<UNTAG_Int(variable[10]));
+ }
+ /* Register variable[10]: Result */
+ if (!UNTAG_Bool(variable[10])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[10]: Result */
+ variable[10] = ATTR_array___Array____items(variable[7]) /*Array::_items*/;
+ /* Register variable[10]: Result */
+ variable[10] = UNBOX_NativeArray(variable[10])[UNTAG_Int( variable[8] /*index*/)];
+ variable[9] = variable[10];
+ goto return_label312;
+ return_label312: while(false);
+ /* Register variable[7]: Result */
+ variable[7] = variable[9];
+ CALL_compiling_methods___CompilerVisitor___add_assignment( variable[1] /*v*/)( variable[1] /*v*/, variable[6] /*selfcname*/, variable[7]) /*CompilerVisitor::add_assignment*/;
+ CALL_abstract_collection___IndexedCollection___shift( variable[3] /*params*/)( variable[3] /*params*/) /*AbstractArray::shift*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(1)) /*new Array[ParamVariable]*/ /* Ensure var: Literal array*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_syntax_base___AMethPropdef___self_var(variable[0])(variable[0]) /*AMethPropdef::self_var*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ CALL_compiling_methods___NitMethodContext___method_params__eq(variable[7])(variable[7], variable[8]) /*NitMethodContext::method_params=*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_parser_nodes___AMethPropdef___n_signature(variable[0])(variable[0]) /*AMethPropdef::n_signature*/;
+ /* Register variable[7]: Result */
+ variable[7] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable[7] == NIT_NULL /*null*/) || ((variable[7] != NIT_NULL) && ((CALL_kernel___Object_____eqeq(variable[7])==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable[7], NIT_NULL /*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable[7])(variable[7], NIT_NULL /*null*/) /*Object::==*/)))))));
+ if (UNTAG_Bool(variable[7])) { /*if*/
+ /* Register variable[7]: Local variable */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_abstractmetamodel___MMLocalProperty___global( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::global*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_abstractmetamodel___MMGlobalProperty___intro(variable[8])(variable[8]) /*MMGlobalProperty::intro*/;
+ variable[7] = variable[8];
+ /* Register variable[8]: Local variable */
+ /* Register variable[9]: Result */
+ variable[9] = CALL_static_type___MMLocalProperty___signature( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::signature*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_static_type___MMSignature___recv(variable[9])(variable[9]) /*MMSignature::recv*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_static_type___MMLocalProperty___signature_for( variable[7] /*orig_meth*/)( variable[7] /*orig_meth*/, variable[9]) /*MMLocalProperty::signature_for*/;
+ variable[8] = variable[9];
+ /* Register variable[9]: Result */
+ variable[9] = CALL_parser_nodes___AMethPropdef___n_signature(variable[0])(variable[0]) /*AMethPropdef::n_signature*/;
+ CALL_compiling_methods___PSignature___compile_parameters(variable[9])(variable[9], variable[1] /*v*/, variable[8] /*orig_sig*/, variable[3] /*params*/) /*PSignature::compile_parameters*/;
+ }
+ /* Register variable[7]: Local variable */
+ variable[7] = NIT_NULL /*null*/;
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool((variable[0]==NIT_NULL) || VAL_ISA(variable[0], COLOR_AConcreteInitPropdef, ID_AConcreteInitPropdef)) /*cast AConcreteInitPropdef*/;
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_313 != NIT_NULL) variable[9] = once_value_313;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("VAL2OBJ("), TAG_Int(8)) /*new String*/;
+ once_value_313 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ variable[9] = variable[6] /*selfcname*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_314 != NIT_NULL) variable[9] = once_value_314;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")->vft["), TAG_Int(7)) /*new String*/;
+ once_value_314 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_abstractmetamodel___MMLocalProperty___local_class( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::local_class*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_abstractmetamodel___MMLocalClass___global(variable[9])(variable[9]) /*MMLocalClass::global*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_base___MMGlobalClass___init_table_pos_id(variable[9])(variable[9]) /*MMGlobalClass::init_table_pos_id*/;
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_315 != NIT_NULL) variable[9] = once_value_315;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("].i"), TAG_Int(3)) /*new String*/;
+ once_value_315 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*itpos=*/;
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_316 != NIT_NULL) variable[9] = once_value_316;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("if (init_table["), TAG_Int(15)) /*new String*/;
+ once_value_316 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ variable[9] = variable[7] /*itpos*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_317 != NIT_NULL) variable[9] = once_value_317;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("]) return;"), TAG_Int(10)) /*new String*/;
+ once_value_317 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::add_instr*/;
+ }
+ /* Register variable[8]: Result */
+ variable[8] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ variable[9] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_318 != NIT_NULL) variable[10] = once_value_318;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString("return_label"), TAG_Int(12)) /*new String*/;
+ once_value_318 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_compiling_base___CompilerVisitor___new_number( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::new_number*/;
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], CALL_string___Object___to_s(variable[10])(variable[10]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_319 != NIT_NULL) variable[10] = once_value_319;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_319 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_string___Object___to_s(variable[9])(variable[9]) /*Object::to_s*/;
+ CALL_compiling_methods___NitMethodContext___return_label__eq(variable[8])(variable[8], variable[9]) /*NitMethodContext::return_label=*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___CompilerVisitor___cfc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::cfc*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_320 != NIT_NULL) variable[10] = once_value_320;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString("Method return value and escape marker"), TAG_Int(37)) /*new String*/;
+ once_value_320 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___CFunctionContext___get_var(variable[9])(variable[9], variable[10]) /*CFunctionContext::get_var*/;
+ CALL_compiling_methods___NitMethodContext___return_value__eq(variable[8])(variable[8], variable[9]) /*NitMethodContext::return_value=*/;
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool((variable[0]==NIT_NULL) || VAL_ISA(variable[0], COLOR_AConcreteInitPropdef, ID_AConcreteInitPropdef)) /*cast AConcreteInitPropdef*/;
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ CALL_compiling_methods___CompilerVisitor___invoke_super_init_calls_after( variable[1] /*v*/)( variable[1] /*v*/, NIT_NULL /*null*/) /*CompilerVisitor::invoke_super_init_calls_after*/;
+ }
+ /* Register variable[8]: Result */
+ variable[8] = CALL_parser_nodes___AConcreteMethPropdef___n_block(variable[0])(variable[0]) /*AConcreteMethPropdef::n_block*/;
+ CALL_compiling_methods___CompilerVisitor___compile_stmt( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::compile_stmt*/;
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_321 != NIT_NULL) variable[9] = once_value_321;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_321 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___NitMethodContext___return_label(variable[9])(variable[9]) /*NitMethodContext::return_label*/;
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_322 != NIT_NULL) variable[9] = once_value_322;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(": while(false);"), TAG_Int(15)) /*new String*/;
+ once_value_322 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::add_instr*/;
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool((variable[0]==NIT_NULL) || VAL_ISA(variable[0], COLOR_AConcreteInitPropdef, ID_AConcreteInitPropdef)) /*cast AConcreteInitPropdef*/;
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_323 != NIT_NULL) variable[9] = once_value_323;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("init_table["), TAG_Int(11)) /*new String*/;
+ once_value_323 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ variable[9] = variable[7] /*itpos*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_324 != NIT_NULL) variable[9] = once_value_324;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("] = 1;"), TAG_Int(6)) /*new String*/;
+ once_value_324 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::add_instr*/;
+ }
+ /* Register variable[8]: Local variable */
+ variable[8] = NIT_NULL /*null*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_static_type___MMLocalProperty___signature( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::signature*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_static_type___MMSignature___return_type(variable[9])(variable[9]) /*MMSignature::return_type*/;
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable[9] == NIT_NULL /*null*/) || ((variable[9] != NIT_NULL) && ((CALL_kernel___Object_____eqeq(variable[9])==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable[9], NIT_NULL /*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable[9])(variable[9], NIT_NULL /*null*/) /*Object::==*/)))))));
+ if (UNTAG_Bool(variable[9])) { /*if*/
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_methods___NitMethodContext___return_value(variable[9])(variable[9]) /*NitMethodContext::return_value*/;
+ variable[8] = variable[9] /*ret=*/;
+ }
+ CALL_compiling_methods___CompilerVisitor___nmc__eq( variable[1] /*v*/)( variable[1] /*v*/, variable[5] /*old_nmc*/) /*CompilerVisitor::nmc=*/;
+ variable[4] = variable[8] /*ret*/;
+ goto return_label311;
+ return_label311: while(false);
+ tracehead = trace.prev;
+ return variable[4];
+}
+val_t compiling_methods___ADeferredMethPropdef___do_compile_inside(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 761, LOCATE_compiling_methods___ADeferredMethPropdef___do_compile_inside};
+ static val_t once_value_326 = NIT_NULL; /* Once value for string variable[5]*/
+ static val_t once_value_327 = NIT_NULL; /* Once value for string variable[5]*/
+ static val_t once_value_328 = NIT_NULL; /* Once value for string variable[5]*/
+ val_t variable[6];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Method return value and escape marker */
+ /* Register variable[5]: Once String constant */
+ if (once_value_326 != NIT_NULL) variable[5] = once_value_326;
+ else {
+ variable[5] = NEW_String_string___String___with_native(BOX_NativeString("fprintf(stderr, \"Deferred method called\");"), TAG_Int(42)) /*new String*/;
+ once_value_326 = variable[5];
+ }
+ /* Register variable[5]: Result */
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[5]) /*CompilerVisitor::add_instr*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_compiling_methods___CompilerVisitor___printf_locate_error( variable[1] /*v*/)( variable[1] /*v*/, variable[0]) /*CompilerVisitor::printf_locate_error*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[5]) /*CompilerVisitor::add_instr*/;
+ /* Register variable[5]: Once String constant */
+ if (once_value_327 != NIT_NULL) variable[5] = once_value_327;
+ else {
+ variable[5] = NEW_String_string___String___with_native(BOX_NativeString("nit_exit(1);"), TAG_Int(12)) /*new String*/;
+ once_value_327 = variable[5];
+ }
+ /* Register variable[5]: Result */
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[5]) /*CompilerVisitor::add_instr*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_static_type___MMLocalProperty___signature( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::signature*/;
+ /* Register variable[5]: Result */
+ variable[5] = CALL_static_type___MMSignature___return_type(variable[5])(variable[5]) /*MMSignature::return_type*/;
+ /* Register variable[5]: Result */
+ variable[5] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable[5] == NIT_NULL /*null*/) || ((variable[5] != NIT_NULL) && ((CALL_kernel___Object_____eqeq(variable[5])==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable[5], NIT_NULL /*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable[5])(variable[5], NIT_NULL /*null*/) /*Object::==*/)))))));
+ if (UNTAG_Bool(variable[5])) { /*if*/
+ /* Register variable[5]: Once String constant */
+ if (once_value_328 != NIT_NULL) variable[5] = once_value_328;
+ else {
+ variable[5] = NEW_String_string___String___with_native(BOX_NativeString("NIT_NULL"), TAG_Int(8)) /*new String*/;
+ once_value_328 = variable[5];
+ }
+ /* Register variable[5]: Result */
+ variable[4] = variable[5];
+ goto return_label325;
+ } else { /*if*/
+ variable[4] = NIT_NULL /*null*/;
+ goto return_label325;
+ }
+ return_label325: while(false);
+ tracehead = trace.prev;
+ return variable[4];
+}
+val_t compiling_methods___AExternMethPropdef___do_compile_inside(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 775, LOCATE_compiling_methods___AExternMethPropdef___do_compile_inside};
+ static val_t once_value_330 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_331 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_332 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_333 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_334 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_335 = NIT_NULL; /* Once value for string variable[7]*/
+ static val_t once_value_336 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_337 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_338 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_342 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_343 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_344 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_345 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_346 = NIT_NULL; /* Once value for string variable[10]*/
+ static val_t once_value_347 = NIT_NULL; /* Once value for string variable[10]*/
+ val_t variable[17];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Method return value and escape marker */
+ /* Register variable[5]: Local variable */
+ variable[6] = NEW_Array_array___Array___with_capacity(TAG_Int(11)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_330 != NIT_NULL) variable[7] = once_value_330;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_330 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___module( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::module*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMModule___name(variable[7])(variable[7]) /*MMModule::name*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_331 != NIT_NULL) variable[7] = once_value_331;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)) /*new String*/;
+ once_value_331 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___local_class( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::local_class*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalClass___name(variable[7])(variable[7]) /*MMLocalClass::name*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_332 != NIT_NULL) variable[7] = once_value_332;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)) /*new String*/;
+ once_value_332 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___local_class( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::local_class*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalClass___name(variable[7])(variable[7]) /*MMLocalClass::name*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_333 != NIT_NULL) variable[7] = once_value_333;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)) /*new String*/;
+ once_value_333 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___name( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::name*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_334 != NIT_NULL) variable[7] = once_value_334;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)) /*new String*/;
+ once_value_334 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_static_type___MMLocalProperty___signature( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::signature*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_static_type___MMSignature___arity(variable[7])(variable[7]) /*MMSignature::arity*/;
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[7]: Once String constant */
+ if (once_value_335 != NIT_NULL) variable[7] = once_value_335;
+ else {
+ variable[7] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_335 = variable[7];
+ }
+ /* Register variable[7]: Result */
+ /* Ensure var variable[7]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[6])(variable[6], variable[7]) /*AbstractArray::add*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_string___Object___to_s(variable[6])(variable[6]) /*Object::to_s*/;
+ variable[5] = variable[6];
+ /* Register variable[6]: Result */
+ variable[6] = CALL_parser_nodes___AExternMethPropdef___n_extern(variable[0])(variable[0]) /*AExternMethPropdef::n_extern*/;
+ /* Register variable[6]: Result */
+ variable[6] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable[6] == NIT_NULL /*null*/) || ((variable[6] != NIT_NULL) && ((CALL_kernel___Object_____eqeq(variable[6])==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable[6], NIT_NULL /*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable[6])(variable[6], NIT_NULL /*null*/) /*Object::==*/)))))));
+ if (UNTAG_Bool(variable[6])) { /*if*/
+ /* Register variable[6]: Result */
+ variable[6] = CALL_parser_nodes___AExternMethPropdef___n_extern(variable[0])(variable[0]) /*AExternMethPropdef::n_extern*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_lexer___Token___text(variable[6])(variable[6]) /*Token::text*/;
+ variable[5] = variable[6] /*ename=*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstract_collection___Collection___length( variable[5] /*ename*/)( variable[5] /*ename*/) /*AbstractArrayRead::length*/;
+ /* Register variable[6]: Result */
+ variable[6] = TAG_Int(UNTAG_Int(variable[6])-UNTAG_Int( TAG_Int(2)));
+ /* Register variable[6]: Result */
+ variable[6] = CALL_string___AbstractString___substring( variable[5] /*ename*/)( variable[5] /*ename*/, TAG_Int(1), variable[6]) /*AbstractString::substring*/;
+ variable[5] = variable[6] /*ename=*/;
+ }
+ /* Register variable[6]: Local variable */
+ /* Register variable[7]: Result */
+ variable[7] = CALL_static_type___MMLocalProperty___signature( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::signature*/;
+ variable[6] = variable[7];
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstract_collection___Collection___length( variable[3] /*params*/)( variable[3] /*params*/) /*AbstractArrayRead::length*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_static_type___MMSignature___arity( variable[6] /*sig*/)( variable[6] /*sig*/) /*MMSignature::arity*/;
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Int(UNTAG_Int(variable[8])+UNTAG_Int( TAG_Int(1)));
+ /* Register variable[7]: Result */
+ variable[7] = TAG_Bool((variable[7])!=(variable[8]));
+ if (UNTAG_Bool(variable[7])) { /*if*/
+ variable[7] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_336 != NIT_NULL) variable[8] = once_value_336;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("par:"), TAG_Int(4)) /*new String*/;
+ once_value_336 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_abstract_collection___Collection___length( variable[3] /*params*/)( variable[3] /*params*/) /*AbstractArrayRead::length*/;
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_337 != NIT_NULL) variable[8] = once_value_337;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(" sig:"), TAG_Int(5)) /*new String*/;
+ once_value_337 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_static_type___MMSignature___arity( variable[6] /*sig*/)( variable[6] /*sig*/) /*MMSignature::arity*/;
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/) /*AbstractArray::add*/;
+ /* Register variable[8]: Once String constant */
+ if (once_value_338 != NIT_NULL) variable[8] = once_value_338;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_338 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Ensure var variable[8]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[7])(variable[7], variable[8]) /*AbstractArray::add*/;
+ /* Register variable[7]: Result */
+ variable[7] = CALL_string___Object___to_s(variable[7])(variable[7]) /*Object::to_s*/;
+ CALL_parser_prod___PNode___printl(variable[0])(variable[0], variable[7]) /*PNode::printl*/;
+ }
+ /* Register variable[7]: Local variable */
+ /* Register variable[8]: Result */
+ variable[8] = NEW_Array_array___Array___init() /*new Array[String]*/;
+ variable[7] = variable[8];
+ /* Register variable[8]: Result */
+ variable[8] = CALL_static_type___MMSignature___recv( variable[6] /*sig*/)( variable[6] /*sig*/) /*MMSignature::recv*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*params*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label339;
+ return_label339: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Register variable[8]: Result */
+ variable[8] = CALL_compiling_base___MMType___unboxtype(variable[8])(variable[8], variable[9]) /*MMType::unboxtype*/;
+ CALL_abstract_collection___SimpleCollection___add( variable[7] /*args*/)( variable[7] /*args*/, variable[8]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_static_type___MMSignature___arity( variable[6] /*sig*/)( variable[6] /*sig*/) /*MMSignature::arity*/;
+ /* Register variable[8]: Result */
+ variable[8] = NEW_Range_range___Range___without_last( TAG_Int(0), variable[8]) /*new Range[Int]*/;
+ /* Register variable[8]: For iterator */
+ variable[8] = CALL_abstract_collection___Collection___iterator(variable[8])(variable[8]) /*Range::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[9]: For 'is_ok' result */
+ variable[9] = CALL_abstract_collection___Iterator___is_ok(variable[8])(variable[8]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[9])) break; /*for*/
+ variable[9] = CALL_abstract_collection___Iterator___item(variable[8])(variable[8]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = variable[9];
+ /* Register variable[11]: Result */
+ variable[11] = CALL_static_type___MMSignature_____bra( variable[6] /*sig*/)( variable[6] /*sig*/, variable[10] /*i*/) /*MMSignature::[]*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Int(UNTAG_Int( variable[10] /*i*/)+UNTAG_Int( TAG_Int(1)));
+ /* Register variable[13]: Local variable */
+ variable[13] = variable[3] /*params*/;
+ /* Register variable[14]: Local variable */
+ variable[14] = variable[12];
+ /* Register variable[15]: Method return value and escape marker */
+ /* Register variable[16]: Result */
+ variable[16] = TAG_Bool(UNTAG_Int( variable[14] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[16]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[16])) { /* and */
+ /* Register variable[16]: Result */
+ variable[16] = ATTR_array___AbstractArrayRead____length(variable[13]) /*AbstractArrayRead::_length*/;
+ /* Register variable[16]: Result */
+ variable[16] = TAG_Bool(UNTAG_Int( variable[14] /*index*/)<UNTAG_Int(variable[16]));
+ }
+ /* Register variable[16]: Result */
+ if (!UNTAG_Bool(variable[16])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[16]: Result */
+ variable[16] = ATTR_array___Array____items(variable[13]) /*Array::_items*/;
+ /* Register variable[16]: Result */
+ variable[16] = UNBOX_NativeArray(variable[16])[UNTAG_Int( variable[14] /*index*/)];
+ variable[15] = variable[16];
+ goto return_label341;
+ return_label341: while(false);
+ /* Register variable[12]: Result */
+ variable[12] = variable[15];
+ /* Register variable[11]: Result */
+ variable[11] = CALL_compiling_base___MMType___unboxtype(variable[11])(variable[11], variable[12]) /*MMType::unboxtype*/;
+ CALL_abstract_collection___SimpleCollection___add( variable[7] /*args*/)( variable[7] /*args*/, variable[11]) /*AbstractArray::add*/;
+ continue_340: while(0);
+ CALL_abstract_collection___Iterator___next(variable[8])(variable[8]) /*Iterator::next*/;
+ }
+ break_340: while(0);
+ /* Register variable[8]: Local variable */
+ variable[9] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_342 != NIT_NULL) variable[10] = once_value_342;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_342 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ variable[10] = variable[5] /*ename*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_343 != NIT_NULL) variable[10] = once_value_343;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString("("), TAG_Int(1)) /*new String*/;
+ once_value_343 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_344 != NIT_NULL) variable[10] = once_value_344;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)) /*new String*/;
+ once_value_344 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Register variable[10]: Result */
+ variable[10] = CALL_string___Collection___join( variable[7] /*args*/)( variable[7] /*args*/, variable[10]) /*Collection::join*/;
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_345 != NIT_NULL) variable[10] = once_value_345;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)) /*new String*/;
+ once_value_345 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_string___Object___to_s(variable[9])(variable[9]) /*Object::to_s*/;
+ variable[8] = variable[9];
+ /* Register variable[9]: Result */
+ variable[9] = CALL_static_type___MMSignature___return_type( variable[6] /*sig*/)( variable[6] /*sig*/) /*MMSignature::return_type*/;
+ /* Register variable[9]: Result */
+ variable[9] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable[9] == NIT_NULL /*null*/) || ((variable[9] != NIT_NULL) && ((CALL_kernel___Object_____eqeq(variable[9])==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable[9], NIT_NULL /*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable[9])(variable[9], NIT_NULL /*null*/) /*Object::==*/)))))));
+ if (UNTAG_Bool(variable[9])) { /*if*/
+ /* Register variable[9]: Result */
+ variable[9] = CALL_static_type___MMSignature___return_type( variable[6] /*sig*/)( variable[6] /*sig*/) /*MMSignature::return_type*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_compiling_base___MMType___boxtype(variable[9])(variable[9], variable[8] /*s*/) /*MMType::boxtype*/;
+ variable[4] = variable[9];
+ goto return_label329;
+ } else { /*if*/
+ variable[9] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_346 != NIT_NULL) variable[10] = once_value_346;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_346 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ variable[10] = variable[8] /*s*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[10]: Once String constant */
+ if (once_value_347 != NIT_NULL) variable[10] = once_value_347;
+ else {
+ variable[10] = NEW_String_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)) /*new String*/;
+ once_value_347 = variable[10];
+ }
+ /* Register variable[10]: Result */
+ /* Ensure var variable[10]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[9])(variable[9], variable[10]) /*AbstractArray::add*/;
+ /* Register variable[9]: Result */
+ variable[9] = CALL_string___Object___to_s(variable[9])(variable[9]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[9]) /*CompilerVisitor::add_instr*/;
+ variable[4] = NIT_NULL /*null*/;
+ goto return_label329;
+ }
+ return_label329: while(false);
+ tracehead = trace.prev;
+ return variable[4];
+}
+val_t compiling_methods___AInternMethPropdef___do_compile_inside(val_t self, val_t param0, val_t param1, val_t param2) {
+ struct trace_t trace = {NULL, NULL, 802, LOCATE_compiling_methods___AInternMethPropdef___do_compile_inside};
+ static val_t once_value_349; static int once_bool_349; /* Once value for variable[8]*/
+ static val_t once_value_350 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_351; static int once_bool_351; /* Once value for variable[8]*/
+ static val_t once_value_352 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_353 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_355 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_356; static int once_bool_356; /* Once value for variable[8]*/
+ static val_t once_value_357 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_358 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_360 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_361; static int once_bool_361; /* Once value for variable[8]*/
+ static val_t once_value_362 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_363 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_365 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_366; static int once_bool_366; /* Once value for variable[8]*/
+ static val_t once_value_367 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_368 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_370 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_371; static int once_bool_371; /* Once value for variable[8]*/
+ static val_t once_value_372 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_373 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_375 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_376; static int once_bool_376; /* Once value for variable[8]*/
+ static val_t once_value_377 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_378 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_380 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_381; static int once_bool_381; /* Once value for variable[8]*/
+ static val_t once_value_382 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_383 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_385 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_386; static int once_bool_386; /* Once value for variable[8]*/
+ static val_t once_value_387 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_388 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_390 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_392 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_393; static int once_bool_393; /* Once value for variable[8]*/
+ static val_t once_value_394 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_395 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_397 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_399 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_400; static int once_bool_400; /* Once value for variable[8]*/
+ static val_t once_value_401 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_402 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_404 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_406 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_407; static int once_bool_407; /* Once value for variable[8]*/
+ static val_t once_value_408 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_409 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_411 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_413 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_414; static int once_bool_414; /* Once value for variable[8]*/
+ static val_t once_value_415 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_416 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_418 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_420 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_421; static int once_bool_421; /* Once value for variable[8]*/
+ static val_t once_value_422 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_423 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_425 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_427 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_428; static int once_bool_428; /* Once value for variable[8]*/
+ static val_t once_value_429 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_430 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_432 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_434 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_435; static int once_bool_435; /* Once value for variable[8]*/
+ static val_t once_value_436 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_437 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_439 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_441 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_442; static int once_bool_442; /* Once value for variable[8]*/
+ static val_t once_value_443 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_444 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_446 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_448 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_449; static int once_bool_449; /* Once value for variable[8]*/
+ static val_t once_value_450 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_451 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_453 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_455 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_456; static int once_bool_456; /* Once value for variable[8]*/
+ static val_t once_value_457 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_458 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_460 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_462 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_463; static int once_bool_463; /* Once value for variable[8]*/
+ static val_t once_value_464 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_465 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_467 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_469 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_470; static int once_bool_470; /* Once value for variable[8]*/
+ static val_t once_value_471 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_472 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_474 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_476 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_477; static int once_bool_477; /* Once value for variable[8]*/
+ static val_t once_value_478 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_479; static int once_bool_479; /* Once value for variable[8]*/
+ static val_t once_value_480 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_481 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_483 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_484; static int once_bool_484; /* Once value for variable[8]*/
+ static val_t once_value_485 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_486 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_488 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_489; static int once_bool_489; /* Once value for variable[8]*/
+ static val_t once_value_490 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_491 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_493 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_494; static int once_bool_494; /* Once value for variable[8]*/
+ static val_t once_value_495 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_496 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_498 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_499; static int once_bool_499; /* Once value for variable[8]*/
+ static val_t once_value_500 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_501 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_503 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_505 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_506; static int once_bool_506; /* Once value for variable[8]*/
+ static val_t once_value_507 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_508 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_510 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_512 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_513; static int once_bool_513; /* Once value for variable[8]*/
+ static val_t once_value_514 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_515 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_517 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_519 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_520; static int once_bool_520; /* Once value for variable[8]*/
+ static val_t once_value_521 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_522 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_524 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_526 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_527; static int once_bool_527; /* Once value for variable[8]*/
+ static val_t once_value_528 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_529 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_531 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_533 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_534; static int once_bool_534; /* Once value for variable[8]*/
+ static val_t once_value_535 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_536 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_538 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_540 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_541; static int once_bool_541; /* Once value for variable[8]*/
+ static val_t once_value_542 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_543 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_545 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_547 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_548; static int once_bool_548; /* Once value for variable[8]*/
+ static val_t once_value_549 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_550 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_552 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_554 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_555; static int once_bool_555; /* Once value for variable[8]*/
+ static val_t once_value_556 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_557; static int once_bool_557; /* Once value for variable[8]*/
+ static val_t once_value_558 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_559 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_561 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_562; static int once_bool_562; /* Once value for variable[8]*/
+ static val_t once_value_563 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_564 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_566 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_567; static int once_bool_567; /* Once value for variable[8]*/
+ static val_t once_value_568 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_569 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_571 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_572; static int once_bool_572; /* Once value for variable[8]*/
+ static val_t once_value_573 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_574 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_576 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_577; static int once_bool_577; /* Once value for variable[8]*/
+ static val_t once_value_578 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_579 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_581 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_582; static int once_bool_582; /* Once value for variable[8]*/
+ static val_t once_value_583 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_584 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_586 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_587; static int once_bool_587; /* Once value for variable[8]*/
+ static val_t once_value_588 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_589 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_591 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_592; static int once_bool_592; /* Once value for variable[8]*/
+ static val_t once_value_593 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_594 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_596 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_598 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_599; static int once_bool_599; /* Once value for variable[8]*/
+ static val_t once_value_600 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_601 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_603 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_605 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_606; static int once_bool_606; /* Once value for variable[8]*/
+ static val_t once_value_607 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_608 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_610 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_612 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_613; static int once_bool_613; /* Once value for variable[8]*/
+ static val_t once_value_614 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_615 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_617 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_619 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_620; static int once_bool_620; /* Once value for variable[8]*/
+ static val_t once_value_621 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_622 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_624 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_626 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_627; static int once_bool_627; /* Once value for variable[8]*/
+ static val_t once_value_628 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_629 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_631 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_633 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_634; static int once_bool_634; /* Once value for variable[8]*/
+ static val_t once_value_635 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_636 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_638 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_640 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_641; static int once_bool_641; /* Once value for variable[8]*/
+ static val_t once_value_642 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_643 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_645 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_647 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_648; static int once_bool_648; /* Once value for variable[8]*/
+ static val_t once_value_649 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_650 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_652 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_654 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_655; static int once_bool_655; /* Once value for variable[8]*/
+ static val_t once_value_656 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_657 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_659 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_661 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_662; static int once_bool_662; /* Once value for variable[8]*/
+ static val_t once_value_663 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_664 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_666 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_668 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_669; static int once_bool_669; /* Once value for variable[8]*/
+ static val_t once_value_670 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_671; static int once_bool_671; /* Once value for variable[8]*/
+ static val_t once_value_672 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_673 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_675 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_676; static int once_bool_676; /* Once value for variable[8]*/
+ static val_t once_value_677 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_678 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_680 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_681; static int once_bool_681; /* Once value for variable[8]*/
+ static val_t once_value_682 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_683 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_685 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_686; static int once_bool_686; /* Once value for variable[8]*/
+ static val_t once_value_687 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_688 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_690 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_691; static int once_bool_691; /* Once value for variable[8]*/
+ static val_t once_value_692 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_693 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_695 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_696; static int once_bool_696; /* Once value for variable[8]*/
+ static val_t once_value_697 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_698 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_700 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_702 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_703; static int once_bool_703; /* Once value for variable[8]*/
+ static val_t once_value_704 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_705 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_707 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_709 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_710; static int once_bool_710; /* Once value for variable[8]*/
+ static val_t once_value_711 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_712; static int once_bool_712; /* Once value for variable[8]*/
+ static val_t once_value_713 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_714 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_716 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_717; static int once_bool_717; /* Once value for variable[8]*/
+ static val_t once_value_718 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_719 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_721 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_723 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_724; static int once_bool_724; /* Once value for variable[8]*/
+ static val_t once_value_725 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_726 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_728 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_730 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_732 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_733; static int once_bool_733; /* Once value for variable[8]*/
+ static val_t once_value_734 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_735 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_737 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_739 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_741 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_742; static int once_bool_742; /* Once value for variable[8]*/
+ static val_t once_value_743 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_744; static int once_bool_744; /* Once value for variable[8]*/
+ static val_t once_value_745 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_746 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_748 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_749; static int once_bool_749; /* Once value for variable[8]*/
+ static val_t once_value_750 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_751 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_753 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_754; static int once_bool_754; /* Once value for variable[8]*/
+ static val_t once_value_755 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_756 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_758 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_760 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_761; static int once_bool_761; /* Once value for variable[8]*/
+ static val_t once_value_762 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_763 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_765 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_767 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_769 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_770; static int once_bool_770; /* Once value for variable[8]*/
+ static val_t once_value_771 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_772 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_774 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_776 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_778 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_780 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_782 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_783; static int once_bool_783; /* Once value for variable[8]*/
+ static val_t once_value_784 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_785 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_787 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_788; static int once_bool_788; /* Once value for variable[8]*/
+ static val_t once_value_789 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_790 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_791; static int once_bool_791; /* Once value for variable[8]*/
+ static val_t once_value_792 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_793 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_795 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_797 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_798; static int once_bool_798; /* Once value for variable[8]*/
+ static val_t once_value_799 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_800 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_802 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_803; static int once_bool_803; /* Once value for variable[8]*/
+ static val_t once_value_804 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_805 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_807 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_808; static int once_bool_808; /* Once value for variable[8]*/
+ static val_t once_value_809 = NIT_NULL; /* Once value for string variable[8]*/
+ static val_t once_value_810 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_812 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_813 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_814 = NIT_NULL; /* Once value for string variable[9]*/
+ static val_t once_value_815 = NIT_NULL; /* Once value for string variable[8]*/
+ val_t variable[13];
+ struct WBT_ **closurevariable = NULL;
+ trace.prev = tracehead; tracehead = &trace;
+ trace.file = LOCATE_compiling_methods;
+ /* Register variable[0]: Local variable */
+ variable[0] = self;
+ /* Register variable[1]: Local variable */
+ variable[1] = param0;
+ /* Register variable[2]: Local variable */
+ variable[2] = param1;
+ /* Register variable[3]: Local variable */
+ variable[3] = param2;
+ /* Register variable[4]: Method return value and escape marker */
+ /* Register variable[5]: Local variable */
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMLocalProperty___local_class( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::local_class*/;
+ /* Register variable[6]: Result */
+ variable[6] = CALL_abstractmetamodel___MMLocalClass___name(variable[6])(variable[6]) /*MMLocalClass::name*/;
+ variable[5] = variable[6];
+ /* Register variable[6]: Local variable */
+ /* Register variable[7]: Result */
+ variable[7] = CALL_abstractmetamodel___MMLocalProperty___name( variable[2] /*method*/)( variable[2] /*method*/) /*MMLocalProperty::name*/;
+ variable[6] = variable[7];
+ /* Register variable[7]: Local variable */
+ variable[7] = NIT_NULL /*null*/;
+ /* Register variable[8]: Once expression result */
+ if (once_bool_349) variable[8] = once_value_349;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_350 != NIT_NULL) variable[8] = once_value_350;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("Int"), TAG_Int(3)) /*new String*/;
+ once_value_350 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_349 = variable[8];
+ once_bool_349 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[5] /*c*/ == variable[8]) || (( variable[5] /*c*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[5] /*c*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[5] /*c*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[5] /*c*/)( variable[5] /*c*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_351) variable[8] = once_value_351;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_352 != NIT_NULL) variable[8] = once_value_352;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("object_id"), TAG_Int(9)) /*new String*/;
+ once_value_352 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_351 = variable[8];
+ once_bool_351 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_353 != NIT_NULL) variable[9] = once_value_353;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_353 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label354;
+ return_label354: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_355 != NIT_NULL) variable[9] = once_value_355;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
+ once_value_355 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_356) variable[8] = once_value_356;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_357 != NIT_NULL) variable[8] = once_value_357;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("unary -"), TAG_Int(7)) /*new String*/;
+ once_value_357 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_356 = variable[8];
+ once_bool_356 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_358 != NIT_NULL) variable[9] = once_value_358;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(-UNTAG_Int("), TAG_Int(19)) /*new String*/;
+ once_value_358 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label359;
+ return_label359: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_360 != NIT_NULL) variable[9] = once_value_360;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_360 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_361) variable[8] = once_value_361;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_362 != NIT_NULL) variable[8] = once_value_362;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("output"), TAG_Int(6)) /*new String*/;
+ once_value_362 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_361 = variable[8];
+ once_bool_361 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_363 != NIT_NULL) variable[9] = once_value_363;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("printf(\"%ld\\n\", UNTAG_Int("), TAG_Int(26)) /*new String*/;
+ once_value_363 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label364;
+ return_label364: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_365 != NIT_NULL) variable[9] = once_value_365;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("));"), TAG_Int(3)) /*new String*/;
+ once_value_365 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::add_instr*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_366) variable[8] = once_value_366;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_367 != NIT_NULL) variable[8] = once_value_367;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("ascii"), TAG_Int(5)) /*new String*/;
+ once_value_367 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_366 = variable[8];
+ once_bool_366 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_368 != NIT_NULL) variable[9] = once_value_368;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Char(UNTAG_Int("), TAG_Int(19)) /*new String*/;
+ once_value_368 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label369;
+ return_label369: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_370 != NIT_NULL) variable[9] = once_value_370;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_370 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_371) variable[8] = once_value_371;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_372 != NIT_NULL) variable[8] = once_value_372;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("succ"), TAG_Int(4)) /*new String*/;
+ once_value_372 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_371 = variable[8];
+ once_bool_371 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_373 != NIT_NULL) variable[9] = once_value_373;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)) /*new String*/;
+ once_value_373 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label374;
+ return_label374: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_375 != NIT_NULL) variable[9] = once_value_375;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")+1)"), TAG_Int(4)) /*new String*/;
+ once_value_375 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_376) variable[8] = once_value_376;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_377 != NIT_NULL) variable[8] = once_value_377;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("prec"), TAG_Int(4)) /*new String*/;
+ once_value_377 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_376 = variable[8];
+ once_bool_376 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_378 != NIT_NULL) variable[9] = once_value_378;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)) /*new String*/;
+ once_value_378 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label379;
+ return_label379: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_380 != NIT_NULL) variable[9] = once_value_380;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")-1)"), TAG_Int(4)) /*new String*/;
+ once_value_380 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_381) variable[8] = once_value_381;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_382 != NIT_NULL) variable[8] = once_value_382;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("to_f"), TAG_Int(4)) /*new String*/;
+ once_value_382 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_381 = variable[8];
+ once_bool_381 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_383 != NIT_NULL) variable[9] = once_value_383;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("BOX_Float((float)UNTAG_Int("), TAG_Int(27)) /*new String*/;
+ once_value_383 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label384;
+ return_label384: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_385 != NIT_NULL) variable[9] = once_value_385;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_385 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_386) variable[8] = once_value_386;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_387 != NIT_NULL) variable[8] = once_value_387;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("+"), TAG_Int(1)) /*new String*/;
+ once_value_387 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_386 = variable[8];
+ once_bool_386 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_388 != NIT_NULL) variable[9] = once_value_388;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)) /*new String*/;
+ once_value_388 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label389;
+ return_label389: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_390 != NIT_NULL) variable[9] = once_value_390;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")+UNTAG_Int("), TAG_Int(12)) /*new String*/;
+ once_value_390 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label391;
+ return_label391: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_392 != NIT_NULL) variable[9] = once_value_392;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_392 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_393) variable[8] = once_value_393;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_394 != NIT_NULL) variable[8] = once_value_394;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("-"), TAG_Int(1)) /*new String*/;
+ once_value_394 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_393 = variable[8];
+ once_bool_393 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_395 != NIT_NULL) variable[9] = once_value_395;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)) /*new String*/;
+ once_value_395 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label396;
+ return_label396: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_397 != NIT_NULL) variable[9] = once_value_397;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")-UNTAG_Int("), TAG_Int(12)) /*new String*/;
+ once_value_397 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label398;
+ return_label398: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_399 != NIT_NULL) variable[9] = once_value_399;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_399 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_400) variable[8] = once_value_400;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_401 != NIT_NULL) variable[8] = once_value_401;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("*"), TAG_Int(1)) /*new String*/;
+ once_value_401 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_400 = variable[8];
+ once_bool_400 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_402 != NIT_NULL) variable[9] = once_value_402;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)) /*new String*/;
+ once_value_402 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label403;
+ return_label403: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_404 != NIT_NULL) variable[9] = once_value_404;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")*UNTAG_Int("), TAG_Int(12)) /*new String*/;
+ once_value_404 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label405;
+ return_label405: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_406 != NIT_NULL) variable[9] = once_value_406;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_406 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_407) variable[8] = once_value_407;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_408 != NIT_NULL) variable[8] = once_value_408;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("/"), TAG_Int(1)) /*new String*/;
+ once_value_408 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_407 = variable[8];
+ once_bool_407 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_409 != NIT_NULL) variable[9] = once_value_409;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)) /*new String*/;
+ once_value_409 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label410;
+ return_label410: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_411 != NIT_NULL) variable[9] = once_value_411;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")/UNTAG_Int("), TAG_Int(12)) /*new String*/;
+ once_value_411 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label412;
+ return_label412: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_413 != NIT_NULL) variable[9] = once_value_413;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_413 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_414) variable[8] = once_value_414;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_415 != NIT_NULL) variable[8] = once_value_415;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("%"), TAG_Int(1)) /*new String*/;
+ once_value_415 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_414 = variable[8];
+ once_bool_414 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_416 != NIT_NULL) variable[9] = once_value_416;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)) /*new String*/;
+ once_value_416 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label417;
+ return_label417: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_418 != NIT_NULL) variable[9] = once_value_418;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")%UNTAG_Int("), TAG_Int(12)) /*new String*/;
+ once_value_418 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label419;
+ return_label419: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_420 != NIT_NULL) variable[9] = once_value_420;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_420 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_421) variable[8] = once_value_421;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_422 != NIT_NULL) variable[8] = once_value_422;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("<"), TAG_Int(1)) /*new String*/;
+ once_value_422 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_421 = variable[8];
+ once_bool_421 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_423 != NIT_NULL) variable[9] = once_value_423;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Int("), TAG_Int(19)) /*new String*/;
+ once_value_423 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label424;
+ return_label424: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_425 != NIT_NULL) variable[9] = once_value_425;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")<UNTAG_Int("), TAG_Int(12)) /*new String*/;
+ once_value_425 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label426;
+ return_label426: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_427 != NIT_NULL) variable[9] = once_value_427;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_427 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_428) variable[8] = once_value_428;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_429 != NIT_NULL) variable[8] = once_value_429;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(">"), TAG_Int(1)) /*new String*/;
+ once_value_429 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_428 = variable[8];
+ once_bool_428 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_430 != NIT_NULL) variable[9] = once_value_430;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Int("), TAG_Int(19)) /*new String*/;
+ once_value_430 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label431;
+ return_label431: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_432 != NIT_NULL) variable[9] = once_value_432;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")>UNTAG_Int("), TAG_Int(12)) /*new String*/;
+ once_value_432 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label433;
+ return_label433: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_434 != NIT_NULL) variable[9] = once_value_434;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_434 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_435) variable[8] = once_value_435;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_436 != NIT_NULL) variable[8] = once_value_436;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("<="), TAG_Int(2)) /*new String*/;
+ once_value_436 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_435 = variable[8];
+ once_bool_435 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_437 != NIT_NULL) variable[9] = once_value_437;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Int("), TAG_Int(19)) /*new String*/;
+ once_value_437 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label438;
+ return_label438: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_439 != NIT_NULL) variable[9] = once_value_439;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")<=UNTAG_Int("), TAG_Int(13)) /*new String*/;
+ once_value_439 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label440;
+ return_label440: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_441 != NIT_NULL) variable[9] = once_value_441;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_441 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_442) variable[8] = once_value_442;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_443 != NIT_NULL) variable[8] = once_value_443;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(">="), TAG_Int(2)) /*new String*/;
+ once_value_443 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_442 = variable[8];
+ once_bool_442 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_444 != NIT_NULL) variable[9] = once_value_444;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Int("), TAG_Int(19)) /*new String*/;
+ once_value_444 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label445;
+ return_label445: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_446 != NIT_NULL) variable[9] = once_value_446;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")>=UNTAG_Int("), TAG_Int(13)) /*new String*/;
+ once_value_446 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label447;
+ return_label447: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_448 != NIT_NULL) variable[9] = once_value_448;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_448 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_449) variable[8] = once_value_449;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_450 != NIT_NULL) variable[8] = once_value_450;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("lshift"), TAG_Int(6)) /*new String*/;
+ once_value_450 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_449 = variable[8];
+ once_bool_449 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_451 != NIT_NULL) variable[9] = once_value_451;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)) /*new String*/;
+ once_value_451 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label452;
+ return_label452: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_453 != NIT_NULL) variable[9] = once_value_453;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")<<UNTAG_Int("), TAG_Int(13)) /*new String*/;
+ once_value_453 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label454;
+ return_label454: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_455 != NIT_NULL) variable[9] = once_value_455;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_455 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_456) variable[8] = once_value_456;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_457 != NIT_NULL) variable[8] = once_value_457;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("rshift"), TAG_Int(6)) /*new String*/;
+ once_value_457 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_456 = variable[8];
+ once_bool_456 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_458 != NIT_NULL) variable[9] = once_value_458;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)) /*new String*/;
+ once_value_458 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label459;
+ return_label459: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_460 != NIT_NULL) variable[9] = once_value_460;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")>>UNTAG_Int("), TAG_Int(13)) /*new String*/;
+ once_value_460 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label461;
+ return_label461: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_462 != NIT_NULL) variable[9] = once_value_462;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_462 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_463) variable[8] = once_value_463;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_464 != NIT_NULL) variable[8] = once_value_464;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("=="), TAG_Int(2)) /*new String*/;
+ once_value_464 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_463 = variable[8];
+ once_bool_463 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_465 != NIT_NULL) variable[9] = once_value_465;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool(("), TAG_Int(10)) /*new String*/;
+ once_value_465 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label466;
+ return_label466: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_467 != NIT_NULL) variable[9] = once_value_467;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")==("), TAG_Int(4)) /*new String*/;
+ once_value_467 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label468;
+ return_label468: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_469 != NIT_NULL) variable[9] = once_value_469;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_469 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_470) variable[8] = once_value_470;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_471 != NIT_NULL) variable[8] = once_value_471;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("!="), TAG_Int(2)) /*new String*/;
+ once_value_471 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_470 = variable[8];
+ once_bool_470 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_472 != NIT_NULL) variable[9] = once_value_472;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool(("), TAG_Int(10)) /*new String*/;
+ once_value_472 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label473;
+ return_label473: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_474 != NIT_NULL) variable[9] = once_value_474;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")!=("), TAG_Int(4)) /*new String*/;
+ once_value_474 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label475;
+ return_label475: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_476 != NIT_NULL) variable[9] = once_value_476;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_476 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_477) variable[8] = once_value_477;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_478 != NIT_NULL) variable[8] = once_value_478;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("Float"), TAG_Int(5)) /*new String*/;
+ once_value_478 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_477 = variable[8];
+ once_bool_477 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[5] /*c*/ == variable[8]) || (( variable[5] /*c*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[5] /*c*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[5] /*c*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[5] /*c*/)( variable[5] /*c*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_479) variable[8] = once_value_479;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_480 != NIT_NULL) variable[8] = once_value_480;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("object_id"), TAG_Int(9)) /*new String*/;
+ once_value_480 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_479 = variable[8];
+ once_bool_479 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_481 != NIT_NULL) variable[9] = once_value_481;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int((bigint)UNBOX_Float("), TAG_Int(28)) /*new String*/;
+ once_value_481 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label482;
+ return_label482: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_483 != NIT_NULL) variable[9] = once_value_483;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_483 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_484) variable[8] = once_value_484;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_485 != NIT_NULL) variable[8] = once_value_485;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("unary -"), TAG_Int(7)) /*new String*/;
+ once_value_485 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_484 = variable[8];
+ once_bool_484 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_486 != NIT_NULL) variable[9] = once_value_486;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("BOX_Float(-UNBOX_Float("), TAG_Int(23)) /*new String*/;
+ once_value_486 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label487;
+ return_label487: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_488 != NIT_NULL) variable[9] = once_value_488;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_488 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_489) variable[8] = once_value_489;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_490 != NIT_NULL) variable[8] = once_value_490;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("output"), TAG_Int(6)) /*new String*/;
+ once_value_490 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_489 = variable[8];
+ once_bool_489 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_491 != NIT_NULL) variable[9] = once_value_491;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("printf(\"%f\\n\", UNBOX_Float("), TAG_Int(27)) /*new String*/;
+ once_value_491 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label492;
+ return_label492: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_493 != NIT_NULL) variable[9] = once_value_493;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("));"), TAG_Int(3)) /*new String*/;
+ once_value_493 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::add_instr*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_494) variable[8] = once_value_494;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_495 != NIT_NULL) variable[8] = once_value_495;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("to_i"), TAG_Int(4)) /*new String*/;
+ once_value_495 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_494 = variable[8];
+ once_bool_494 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_496 != NIT_NULL) variable[9] = once_value_496;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int((bigint)UNBOX_Float("), TAG_Int(28)) /*new String*/;
+ once_value_496 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label497;
+ return_label497: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_498 != NIT_NULL) variable[9] = once_value_498;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_498 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_499) variable[8] = once_value_499;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_500 != NIT_NULL) variable[8] = once_value_500;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("+"), TAG_Int(1)) /*new String*/;
+ once_value_500 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_499 = variable[8];
+ once_bool_499 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_501 != NIT_NULL) variable[9] = once_value_501;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("BOX_Float(UNBOX_Float("), TAG_Int(22)) /*new String*/;
+ once_value_501 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label502;
+ return_label502: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_503 != NIT_NULL) variable[9] = once_value_503;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")+UNBOX_Float("), TAG_Int(14)) /*new String*/;
+ once_value_503 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label504;
+ return_label504: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_505 != NIT_NULL) variable[9] = once_value_505;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_505 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_506) variable[8] = once_value_506;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_507 != NIT_NULL) variable[8] = once_value_507;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("-"), TAG_Int(1)) /*new String*/;
+ once_value_507 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_506 = variable[8];
+ once_bool_506 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_508 != NIT_NULL) variable[9] = once_value_508;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("BOX_Float(UNBOX_Float("), TAG_Int(22)) /*new String*/;
+ once_value_508 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label509;
+ return_label509: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_510 != NIT_NULL) variable[9] = once_value_510;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")-UNBOX_Float("), TAG_Int(14)) /*new String*/;
+ once_value_510 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label511;
+ return_label511: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_512 != NIT_NULL) variable[9] = once_value_512;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_512 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_513) variable[8] = once_value_513;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_514 != NIT_NULL) variable[8] = once_value_514;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("*"), TAG_Int(1)) /*new String*/;
+ once_value_514 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_513 = variable[8];
+ once_bool_513 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_515 != NIT_NULL) variable[9] = once_value_515;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("BOX_Float(UNBOX_Float("), TAG_Int(22)) /*new String*/;
+ once_value_515 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label516;
+ return_label516: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_517 != NIT_NULL) variable[9] = once_value_517;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")*UNBOX_Float("), TAG_Int(14)) /*new String*/;
+ once_value_517 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label518;
+ return_label518: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_519 != NIT_NULL) variable[9] = once_value_519;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_519 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_520) variable[8] = once_value_520;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_521 != NIT_NULL) variable[8] = once_value_521;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("/"), TAG_Int(1)) /*new String*/;
+ once_value_521 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_520 = variable[8];
+ once_bool_520 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_522 != NIT_NULL) variable[9] = once_value_522;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("BOX_Float(UNBOX_Float("), TAG_Int(22)) /*new String*/;
+ once_value_522 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label523;
+ return_label523: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_524 != NIT_NULL) variable[9] = once_value_524;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")/UNBOX_Float("), TAG_Int(14)) /*new String*/;
+ once_value_524 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label525;
+ return_label525: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_526 != NIT_NULL) variable[9] = once_value_526;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_526 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_527) variable[8] = once_value_527;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_528 != NIT_NULL) variable[8] = once_value_528;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("<"), TAG_Int(1)) /*new String*/;
+ once_value_528 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_527 = variable[8];
+ once_bool_527 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_529 != NIT_NULL) variable[9] = once_value_529;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool(UNBOX_Float("), TAG_Int(21)) /*new String*/;
+ once_value_529 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label530;
+ return_label530: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_531 != NIT_NULL) variable[9] = once_value_531;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")<UNBOX_Float("), TAG_Int(14)) /*new String*/;
+ once_value_531 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label532;
+ return_label532: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_533 != NIT_NULL) variable[9] = once_value_533;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_533 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_534) variable[8] = once_value_534;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_535 != NIT_NULL) variable[8] = once_value_535;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(">"), TAG_Int(1)) /*new String*/;
+ once_value_535 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_534 = variable[8];
+ once_bool_534 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_536 != NIT_NULL) variable[9] = once_value_536;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool(UNBOX_Float("), TAG_Int(21)) /*new String*/;
+ once_value_536 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label537;
+ return_label537: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_538 != NIT_NULL) variable[9] = once_value_538;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")>UNBOX_Float("), TAG_Int(14)) /*new String*/;
+ once_value_538 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label539;
+ return_label539: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_540 != NIT_NULL) variable[9] = once_value_540;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_540 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_541) variable[8] = once_value_541;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_542 != NIT_NULL) variable[8] = once_value_542;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("<="), TAG_Int(2)) /*new String*/;
+ once_value_542 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_541 = variable[8];
+ once_bool_541 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_543 != NIT_NULL) variable[9] = once_value_543;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool(UNBOX_Float("), TAG_Int(21)) /*new String*/;
+ once_value_543 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label544;
+ return_label544: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_545 != NIT_NULL) variable[9] = once_value_545;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")<=UNBOX_Float("), TAG_Int(15)) /*new String*/;
+ once_value_545 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label546;
+ return_label546: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_547 != NIT_NULL) variable[9] = once_value_547;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_547 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_548) variable[8] = once_value_548;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_549 != NIT_NULL) variable[8] = once_value_549;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString(">="), TAG_Int(2)) /*new String*/;
+ once_value_549 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_548 = variable[8];
+ once_bool_548 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_550 != NIT_NULL) variable[9] = once_value_550;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Bool(UNBOX_Float("), TAG_Int(21)) /*new String*/;
+ once_value_550 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label551;
+ return_label551: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_552 != NIT_NULL) variable[9] = once_value_552;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString(")>=UNBOX_Float("), TAG_Int(15)) /*new String*/;
+ once_value_552 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(1);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label553;
+ return_label553: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_554 != NIT_NULL) variable[9] = once_value_554;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_554 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_555) variable[8] = once_value_555;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_556 != NIT_NULL) variable[8] = once_value_556;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("Char"), TAG_Int(4)) /*new String*/;
+ once_value_556 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_555 = variable[8];
+ once_bool_555 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[5] /*c*/ == variable[8]) || (( variable[5] /*c*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[5] /*c*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[5] /*c*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[5] /*c*/)( variable[5] /*c*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_557) variable[8] = once_value_557;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_558 != NIT_NULL) variable[8] = once_value_558;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("object_id"), TAG_Int(9)) /*new String*/;
+ once_value_558 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_557 = variable[8];
+ once_bool_557 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_559 != NIT_NULL) variable[9] = once_value_559;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Char("), TAG_Int(19)) /*new String*/;
+ once_value_559 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label560;
+ return_label560: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_561 != NIT_NULL) variable[9] = once_value_561;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_561 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_562) variable[8] = once_value_562;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_563 != NIT_NULL) variable[8] = once_value_563;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("unary -"), TAG_Int(7)) /*new String*/;
+ once_value_563 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_562 = variable[8];
+ once_bool_562 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_564 != NIT_NULL) variable[9] = once_value_564;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("TAG_Char(-UNTAG_Char("), TAG_Int(21)) /*new String*/;
+ once_value_564 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label565;
+ return_label565: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_566 != NIT_NULL) variable[9] = once_value_566;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)) /*new String*/;
+ once_value_566 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ variable[7] = variable[8] /*s=*/;
+ } else { /*if*/
+ /* Register variable[8]: Once expression result */
+ if (once_bool_567) variable[8] = once_value_567;
+ else {
+ /* Register variable[8]: Once String constant */
+ if (once_value_568 != NIT_NULL) variable[8] = once_value_568;
+ else {
+ variable[8] = NEW_String_string___String___with_native(BOX_NativeString("output"), TAG_Int(6)) /*new String*/;
+ once_value_568 = variable[8];
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = CALL_symbol___String___to_symbol(variable[8])(variable[8]) /*String::to_symbol*/;
+ once_value_567 = variable[8];
+ once_bool_567 = true;
+ }
+ /* Register variable[8]: Result */
+ /* Register variable[8]: Result */
+ variable[8] = TAG_Bool(( variable[6] /*n*/ == variable[8]) || (( variable[6] /*n*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[6] /*n*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[6] /*n*/,variable[8])):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[6] /*n*/)( variable[6] /*n*/, variable[8]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[8])) { /*if*/
+ variable[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_569 != NIT_NULL) variable[9] = once_value_569;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("printf(\"%c\", (unsigned char)UNTAG_Char("), TAG_Int(39)) /*new String*/;
+ once_value_569 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Local variable */
+ variable[9] = variable[3] /*p*/;
+ /* Register variable[10]: Local variable */
+ variable[10] = TAG_Int(0);
+ /* Register variable[11]: Method return value and escape marker */
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)>=UNTAG_Int( TAG_Int(0)));
+ /* Ensure var variable[12]: Left 'and' operand*/
+ if (UNTAG_Bool(variable[12])) { /* and */
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___AbstractArrayRead____length(variable[9]) /*AbstractArrayRead::_length*/;
+ /* Register variable[12]: Result */
+ variable[12] = TAG_Bool(UNTAG_Int( variable[10] /*index*/)<UNTAG_Int(variable[12]));
+ }
+ /* Register variable[12]: Result */
+ if (!UNTAG_Bool(variable[12])) { fprintf(stderr, "Assert%s failed", " 'index' "); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_array___Array_____bra, LOCATE_compiling_methods, 234); nit_exit(1);}
+ /* Register variable[12]: Result */
+ variable[12] = ATTR_array___Array____items(variable[9]) /*Array::_items*/;
+ /* Register variable[12]: Result */
+ variable[12] = UNBOX_NativeArray(variable[12])[UNTAG_Int( variable[10] /*index*/)];
+ variable[11] = variable[12];
+ goto return_label570;
+ return_label570: while(false);
+ /* Register variable[9]: Result */
+ variable[9] = variable[11];
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[9]: Once String constant */
+ if (once_value_571 != NIT_NULL) variable[9] = once_value_571;
+ else {
+ variable[9] = NEW_String_string___String___with_native(BOX_NativeString("));"), TAG_Int(3)) /*new String*/;
+ once_value_571 = variable[9];
+ }
+ /* Register variable[9]: Result */
+ /* Ensure var variable[9]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[8])(variable[8], variable[9]) /*AbstractArray::add*/;
+ /* Register variable[8]: Result */
+ variable[8] = CALL_string___Object___to_s(variable[8])(variable[8]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[8]) /*CompilerVisitor::add_instr*/;