+ /* Register variable[11]: For 'is_ok' result */
+ variable[11] = CALL_abstract_collection___Iterator___is_ok(variable[10])(variable[10]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[11])) break; /*for*/
+ variable[11] = CALL_abstract_collection___Iterator___item(variable[10])(variable[10]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[12]: Local variable */
+ variable[12] = variable[11];
+ /* Register variable[13]: Local variable */
+ /* Register variable[14]: Local variable */
+ variable[14] = variable[3] /*clos_defs*/;
+ /* Register variable[15]: Local variable */
+ variable[15] = variable[12] /*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_label119;
+ return_label119: while(false);
+ /* Register variable[14]: Result */
+ variable[14] = variable[16];
+ /* Register variable[15]: Result */
+ variable[15] = CALL_compiling_methods___MMMethod___closure_cname(variable[0])(variable[0], variable[12] /*i*/) /*MMMethod::closure_cname*/;
+ /* Register variable[14]: Result */
+ variable[14] = CALL_compiling_methods___PClosureDef___compile_closure(variable[14])(variable[14], variable[1] /*v*/, variable[15]) /*PClosureDef::compile_closure*/;
+ variable[13] = variable[14];
+ CALL_abstract_collection___SimpleCollection___add( variable[9] /*closcns*/)( variable[9] /*closcns*/, variable[13] /*cn*/) /*AbstractArray::add*/;
+ CALL_abstract_collection___SimpleCollection___add( variable[8] /*realcargs*/)( variable[8] /*realcargs*/, variable[13] /*cn*/) /*AbstractArray::add*/;
+ continue_118: while(0);
+ CALL_abstract_collection___Iterator___next(variable[10])(variable[10]) /*Iterator::next*/;
+ }
+ break_118: while(0);
+ /* Register variable[10]: Result */
+ variable[10] = CALL_static_type___MMLocalProperty___signature(variable[0])(variable[0]) /*MMLocalProperty::signature*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_static_type___MMSignature___closures(variable[10])(variable[10]) /*MMSignature::closures*/;
+ /* Register variable[10]: Result */
+ variable[10] = CALL_abstract_collection___Collection___length(variable[10])(variable[10]) /*AbstractArrayRead::length*/;
+ /* Register variable[10]: Result */
+ variable[10] = NEW_Range_range___Range___without_last( variable[6] /*arity*/, variable[10]) /*new Range[Int]*/;
+ /* Register variable[10]: For iterator */
+ variable[10] = CALL_abstract_collection___Collection___iterator(variable[10])(variable[10]) /*Range::iterator*/;
+ while (true) { /*for*/
+ /* Register variable[11]: For 'is_ok' result */
+ variable[11] = CALL_abstract_collection___Iterator___is_ok(variable[10])(variable[10]) /*Iterator::is_ok*/;
+ if (!UNTAG_Bool(variable[11])) break; /*for*/
+ variable[11] = CALL_abstract_collection___Iterator___item(variable[10])(variable[10]) /*Iterator::item*/ /* Ensure var: For item*/;
+ /* Register variable[12]: Local variable */
+ variable[12] = variable[11];
+ /* Register variable[13]: Once String constant */
+ if (once_value_121 != NIT_NULL) variable[13] = once_value_121;
+ else {
+ variable[13] = NEW_String_string___String___with_native(BOX_NativeString("NULL"), TAG_Int(4)) /*new String*/;
+ once_value_121 = variable[13];
+ }
+ /* Register variable[13]: Result */
+ CALL_abstract_collection___SimpleCollection___add( variable[8] /*realcargs*/)( variable[8] /*realcargs*/, variable[13]) /*AbstractArray::add*/;
+ continue_120: while(0);
+ CALL_abstract_collection___Iterator___next(variable[10])(variable[10]) /*Iterator::next*/;
+ }
+ break_120: while(0);
+ /* Register variable[10]: Result */
+ variable[10] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ CALL_compiling_methods___NitMethodContext___break_value__eq(variable[10])(variable[10], variable[7] /*old_bv*/) /*NitMethodContext::break_value=*/;
+ /* Register variable[10]: Local variable */
+ /* Register variable[11]: Result */
+ variable[11] = CALL_compiling_methods___MMMethod___intern_compile_call(variable[0])(variable[0], variable[1] /*v*/, variable[8] /*realcargs*/) /*MMMethod::intern_compile_call*/;
+ variable[10] = variable[11];
+ /* Register variable[11]: Result */
+ variable[11] = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable[10] /*e*/ == NIT_NULL /*null*/) || (( variable[10] /*e*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[10] /*e*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[10] /*e*/, NIT_NULL /*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[10] /*e*/)( variable[10] /*e*/, NIT_NULL /*null*/) /*Object::==*/)))))));
+ if (UNTAG_Bool(variable[11])) { /*if*/
+ CALL_compiling_methods___CompilerVisitor___add_assignment( variable[1] /*v*/)( variable[1] /*v*/, variable[5] /*ve*/, variable[10] /*e*/) /*CompilerVisitor::add_assignment*/;
+ variable[10] = variable[5] /*ve*/ /*e=*/;
+ }
+ /* Register variable[11]: Result */
+ variable[11] = NEW_Range_range___Range___without_last( TAG_Int(0), variable[6] /*arity*/) /*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];
+ variable[14] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_123 != NIT_NULL) variable[15] = once_value_123;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString("if ("), TAG_Int(4)) /*new String*/;
+ once_value_123 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Local variable */
+ variable[15] = variable[9] /*closcns*/;
+ /* Register variable[16]: Local variable */
+ variable[16] = variable[13] /*i*/;
+ /* 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_label124;
+ return_label124: while(false);
+ /* Register variable[15]: Result */
+ variable[15] = variable[17];
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_125 != NIT_NULL) variable[15] = once_value_125;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString("->has_broke != NULL) {"), TAG_Int(22)) /*new String*/;
+ once_value_125 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[14]: Result */
+ variable[14] = CALL_string___Object___to_s(variable[14])(variable[14]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[14]) /*CompilerVisitor::add_instr*/;
+ CALL_compiling_base___CompilerVisitor___indent( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::indent*/;
+ variable[14] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_126 != NIT_NULL) variable[15] = once_value_126;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString("if ("), TAG_Int(4)) /*new String*/;
+ once_value_126 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Local variable */
+ variable[15] = variable[9] /*closcns*/;
+ /* Register variable[16]: Local variable */
+ variable[16] = variable[13] /*i*/;
+ /* 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_label127;
+ return_label127: while(false);
+ /* Register variable[15]: Result */
+ variable[15] = variable[17];
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_128 != NIT_NULL) variable[15] = once_value_128;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString("->has_broke != &("), TAG_Int(17)) /*new String*/;
+ once_value_128 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ variable[15] = variable[5] /*ve*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_129 != NIT_NULL) variable[15] = once_value_129;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString(")) {"), TAG_Int(4)) /*new String*/;
+ once_value_129 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[14]: Result */
+ variable[14] = CALL_string___Object___to_s(variable[14])(variable[14]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[14]) /*CompilerVisitor::add_instr*/;
+ CALL_compiling_base___CompilerVisitor___indent( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::indent*/;
+ /* Register variable[14]: Result */
+ variable[14] = CALL_compiling_methods___CompilerVisitor___cfc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::cfc*/;
+ /* Register variable[14]: Result */
+ variable[14] = CALL_compiling_methods___CFunctionContext___closure(variable[14])(variable[14]) /*CFunctionContext::closure*/;
+ /* Register variable[15]: Result */
+ variable[15] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ /* Register variable[14]: Result */
+ variable[14] = TAG_Bool((variable[14] == variable[15]) || ((variable[14] != NIT_NULL) && ((CALL_kernel___Object_____eqeq(variable[14])==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable[14],variable[15])):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable[14])(variable[14], variable[15]) /*Object::==*/)))));
+ if (UNTAG_Bool(variable[14])) { /*if*/
+ variable[14] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_130 != NIT_NULL) variable[15] = once_value_130;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString("closctx->has_broke = "), TAG_Int(21)) /*new String*/;
+ once_value_130 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Local variable */
+ variable[15] = variable[9] /*closcns*/;
+ /* Register variable[16]: Local variable */
+ variable[16] = variable[13] /*i*/;
+ /* 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_label131;
+ return_label131: while(false);
+ /* Register variable[15]: Result */
+ variable[15] = variable[17];
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_132 != NIT_NULL) variable[15] = once_value_132;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString("->has_broke; closctx->broke_value = "), TAG_Int(36)) /*new String*/;
+ once_value_132 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Local variable */
+ variable[15] = variable[9] /*closcns*/;
+ /* Register variable[16]: Local variable */
+ variable[16] = variable[13] /*i*/;
+ /* 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_label133;
+ return_label133: while(false);
+ /* Register variable[15]: Result */
+ variable[15] = variable[17];
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_134 != NIT_NULL) variable[15] = once_value_134;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString("->broke_value;"), TAG_Int(14)) /*new String*/;
+ once_value_134 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[14]: Result */
+ variable[14] = CALL_string___Object___to_s(variable[14])(variable[14]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[14]) /*CompilerVisitor::add_instr*/;
+ }
+ variable[14] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_135 != NIT_NULL) variable[15] = once_value_135;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString("goto "), TAG_Int(5)) /*new String*/;
+ once_value_135 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Result */
+ variable[15] = CALL_compiling_methods___CompilerVisitor___nmc( variable[1] /*v*/)( variable[1] /*v*/) /*CompilerVisitor::nmc*/;
+ /* Register variable[15]: Result */
+ variable[15] = CALL_compiling_methods___NitMethodContext___return_label(variable[15])(variable[15]) /*NitMethodContext::return_label*/;
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_136 != NIT_NULL) variable[15] = once_value_136;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)) /*new String*/;
+ once_value_136 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[14]: Result */
+ variable[14] = CALL_string___Object___to_s(variable[14])(variable[14]) /*Object::to_s*/;
+ 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]: Result */
+ variable[14] = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable[10] /*e*/ == NIT_NULL /*null*/) || (( variable[10] /*e*/ != NIT_NULL) && ((CALL_kernel___Object_____eqeq( variable[10] /*e*/)==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable[10] /*e*/, NIT_NULL /*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable[10] /*e*/)( variable[10] /*e*/, NIT_NULL /*null*/) /*Object::==*/)))))));
+ if (UNTAG_Bool(variable[14])) { /*if*/
+ variable[14] = NEW_Array_array___Array___with_capacity(TAG_Int(5)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_137 != NIT_NULL) variable[15] = once_value_137;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString("} else "), TAG_Int(7)) /*new String*/;
+ once_value_137 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ variable[15] = variable[5] /*ve*/ /* Ensure var: super-string element*/;
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_138 != NIT_NULL) variable[15] = once_value_138;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString(" = "), TAG_Int(3)) /*new String*/;
+ once_value_138 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Local variable */
+ variable[15] = variable[9] /*closcns*/;
+ /* Register variable[16]: Local variable */
+ variable[16] = variable[13] /*i*/;
+ /* 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_label139;
+ return_label139: while(false);
+ /* Register variable[15]: Result */
+ variable[15] = variable[17];
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[15]: Once String constant */
+ if (once_value_140 != NIT_NULL) variable[15] = once_value_140;
+ else {
+ variable[15] = NEW_String_string___String___with_native(BOX_NativeString("->broke_value;"), TAG_Int(14)) /*new String*/;
+ once_value_140 = variable[15];
+ }
+ /* Register variable[15]: Result */
+ /* Ensure var variable[15]: super-string element*/
+ CALL_abstract_collection___SimpleCollection___add(variable[14])(variable[14], variable[15]) /*AbstractArray::add*/;
+ /* Register variable[14]: Result */
+ variable[14] = CALL_string___Object___to_s(variable[14])(variable[14]) /*Object::to_s*/;
+ CALL_compiling_base___CompilerVisitor___add_instr( variable[1] /*v*/)( variable[1] /*v*/, variable[14]) /*CompilerVisitor::add_instr*/;
+ } else { /*if*/
+ /* Register variable[14]: Once String constant */
+ if (once_value_141 != NIT_NULL) variable[14] = once_value_141;
+ else {
+ variable[14] = NEW_String_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)) /*new String*/;
+ once_value_141 = variable[14];
+ }
+ /* 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 */