remove putenv, setenv and unsetenv
[nit.git] / c_src / compiling_methods._sep.c
1 /* This C file is generated by NIT to compile module compiling_methods. */
2 #include "compiling_methods._sep.h"
3 void compiling_methods___CompilerVisitor___compile_stmt(val_t self, val_t param0) {
4 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___compile_stmt, 24};
5 val_t variable0;
6 val_t variable1;
7 val_t variable2;
8 trace.prev = tracehead; tracehead = &trace;
9 variable0 = param0;
10 ((compiling_methods___PExpr___prepare_compile_stmt_t)CALL( variable0 /*n*/,COLOR_compiling_methods___PExpr___prepare_compile_stmt))( variable0 /*n*/, self) /*PExpr::prepare_compile_stmt*/;
11 variable2 = ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/;
12 variable1 = variable2;
13 ((compiling_methods___PExpr___compile_stmt_t)CALL( variable0 /*n*/,COLOR_compiling_methods___PExpr___compile_stmt))( variable0 /*n*/, self) /*PExpr::compile_stmt*/;
14 ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/ = variable1 /*i*/;
15 tracehead = trace.prev;
16 return;
17 }
18 val_t compiling_methods___CompilerVisitor___compile_expr(val_t self, val_t param0) {
19 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___compile_expr, 33};
20 val_t variable0;
21 val_t variable1;
22 val_t variable2;
23 val_t variable3;
24 val_t variable4;
25 trace.prev = tracehead; tracehead = &trace;
26 variable0 = param0;
27 variable2 = ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/;
28 variable1 = variable2;
29 variable3 = ((compiling_methods___PExpr___compile_expr_t)CALL( variable0 /*n*/,COLOR_compiling_methods___PExpr___compile_expr))( variable0 /*n*/, self) /*PExpr::compile_expr*/;
30 variable2 = variable3;
31 ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/ = variable1 /*i*/;
32 variable3 = ((string___String_____bra_t)CALL( variable2 /*s*/,COLOR_abstract_collection___Map_____bra))( variable2 /*s*/, TAG_Int(0)) /*String::[]*/;
33 variable3 = TAG_Bool((variable3)==( TAG_Char(' ')));
34 if (UNTAG_Bool(variable3)) { /*if*/
35 variable1 = variable2 /*s*/;
36 goto return_label1;
37 }
38 variable3 = ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/;
39 variable3 = TAG_Int(UNTAG_Int(variable3)-UNTAG_Int( TAG_Int(1)));
40 variable3 = ((compiling_methods___CompilerVisitor___variable_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___variable))( self, variable3) /*CompilerVisitor::variable*/;
41 variable3 = TAG_Bool(( variable2 /*s*/ == variable3) || (( variable2 /*s*/ != NIT_NULL) && UNTAG_Bool(((string___String_____eqeq_t)CALL( variable2 /*s*/,COLOR_kernel___Object_____eqeq))( variable2 /*s*/, variable3) /*String::==*/)));
42 if (UNTAG_Bool(variable3)) { /*if*/
43 variable1 = variable2 /*s*/;
44 goto return_label1;
45 }
46 variable4 = ((compiling_methods___CompilerVisitor___get_var_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___get_var))( self) /*CompilerVisitor::get_var*/;
47 variable3 = variable4;
48 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___add_assignment))( self, variable3 /*v*/, variable2 /*s*/) /*CompilerVisitor::add_assignment*/;
49 variable1 = variable3 /*v*/;
50 goto return_label1;
51 return_label1: while(false);
52 tracehead = trace.prev;
53 return variable1;
54 }
55 val_t compiling_methods___CompilerVisitor___ensure_var(val_t self, val_t param0) {
56 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___ensure_var, 50};
57 val_t variable0;
58 val_t variable1;
59 val_t variable2;
60 trace.prev = tracehead; tracehead = &trace;
61 variable0 = param0;
62 variable1 = ((string___String___substring_t)CALL( variable0 /*s*/,COLOR_string___String___substring))( variable0 /*s*/, TAG_Int(0), TAG_Int(3)) /*String::substring*/;
63 variable2 = NEW_string___String___with_native(BOX_NativeString("variable"), TAG_Int(8)); /*new String*/
64 variable1 = TAG_Bool((variable1 == variable2) || ((variable1 != NIT_NULL) && UNTAG_Bool(((string___String_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))(variable1, variable2) /*String::==*/)));
65 if (UNTAG_Bool(variable1)) { /*if*/
66 variable1 = variable0 /*s*/;
67 goto return_label2;
68 }
69 variable2 = ((compiling_methods___CompilerVisitor___get_var_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___get_var))( self) /*CompilerVisitor::get_var*/;
70 variable1 = variable2;
71 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___add_assignment))( self, variable1 /*v*/, variable0 /*s*/) /*CompilerVisitor::add_assignment*/;
72 variable1 = variable1 /*v*/;
73 goto return_label2;
74 return_label2: while(false);
75 tracehead = trace.prev;
76 return variable1;
77 }
78 void compiling_methods___CompilerVisitor___add_assignment(val_t self, val_t param0, val_t param1) {
79 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___add_assignment, 61};
80 val_t variable0;
81 val_t variable1;
82 val_t variable2;
83 val_t variable3;
84 val_t variable4;
85 val_t variable5;
86 val_t variable6;
87 val_t variable7;
88 val_t variable8;
89 val_t variable9;
90 val_t variable10;
91 trace.prev = tracehead; tracehead = &trace;
92 variable0 = param0;
93 variable1 = param1;
94 variable2 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0 /*v*/ == variable1 /*s*/) || (( variable0 /*v*/ != NIT_NULL) && UNTAG_Bool(((string___String_____eqeq_t)CALL( variable0 /*v*/,COLOR_kernel___Object_____eqeq))( variable0 /*v*/, variable1 /*s*/) /*String::==*/)))));
95 if (UNTAG_Bool(variable2)) { /*if*/
96 variable2 = NEW_string___String___init(); /*new String*/
97 variable3 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
98 variable4 = variable3;
99 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable4) /*String::append*/;
100 variable5 = variable0 /*v*/;
101 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable5) /*String::append*/;
102 variable6 = NEW_string___String___with_native(BOX_NativeString(" = "), TAG_Int(3)); /*new String*/
103 variable7 = variable6;
104 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable7) /*String::append*/;
105 variable8 = variable1 /*s*/;
106 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable8) /*String::append*/;
107 variable9 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
108 variable10 = variable9;
109 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable10) /*String::append*/;
110 ((compiling_base___CompilerVisitor___add_instr_t)CALL( self,COLOR_compiling_base___CompilerVisitor___add_instr))( self, variable2) /*CompilerVisitor::add_instr*/;
111 }
112 tracehead = trace.prev;
113 return;
114 }
115 val_t compiling_methods___CompilerVisitor___variable(val_t self, val_t param0) {
116 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___variable, 69};
117 val_t variable0;
118 val_t variable1;
119 val_t variable2;
120 val_t variable3;
121 val_t variable4;
122 val_t variable5;
123 val_t variable6;
124 trace.prev = tracehead; tracehead = &trace;
125 variable0 = param0;
126 variable1 = NEW_string___String___init(); /*new String*/
127 variable2 = NEW_string___String___with_native(BOX_NativeString("variable"), TAG_Int(8)); /*new String*/
128 variable3 = variable2;
129 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
130 variable4 = variable0 /*i*/;
131 variable4 = ((string___String___to_s_t)CALL(variable4,COLOR_string___Object___to_s))(variable4) /*String::to_s*/;
132 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable4) /*String::append*/;
133 variable5 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
134 variable6 = variable5;
135 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable6) /*String::append*/;
136 goto return_label4;
137 return_label4: while(false);
138 tracehead = trace.prev;
139 return variable1;
140 }
141 val_t compiling_methods___CompilerVisitor___get_var(val_t self) {
142 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___get_var, 81};
143 val_t variable0;
144 val_t variable1;
145 val_t variable2;
146 val_t variable3;
147 val_t variable4;
148 val_t variable5;
149 val_t variable6;
150 trace.prev = tracehead; tracehead = &trace;
151 variable1 = ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/;
152 variable1 = ((compiling_methods___CompilerVisitor___variable_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___variable))( self, variable1) /*CompilerVisitor::variable*/;
153 variable0 = variable1;
154 variable1 = ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/;
155 variable1 = TAG_Int(UNTAG_Int(variable1)+UNTAG_Int( TAG_Int(1)));
156 ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/ = variable1;
157 variable1 = ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/;
158 variable2 = ATTR_compiling_methods___CompilerVisitor____variable_index_max( self) /*CompilerVisitor::_variable_index_max*/;
159 variable1 = TAG_Bool(UNTAG_Int(variable1)>UNTAG_Int(variable2));
160 if (UNTAG_Bool(variable1)) { /*if*/
161 variable1 = NEW_string___String___init(); /*new String*/
162 variable2 = NEW_string___String___with_native(BOX_NativeString("val_t "), TAG_Int(6)); /*new String*/
163 variable3 = variable2;
164 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
165 variable4 = variable0 /*v*/;
166 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable4) /*String::append*/;
167 variable5 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
168 variable6 = variable5;
169 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable6) /*String::append*/;
170 ((compiling_base___CompilerVisitor___add_decl_t)CALL( self,COLOR_compiling_base___CompilerVisitor___add_decl))( self, variable1) /*CompilerVisitor::add_decl*/;
171 variable1 = ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/;
172 ATTR_compiling_methods___CompilerVisitor____variable_index_max( self) /*CompilerVisitor::_variable_index_max*/ = variable1;
173 }
174 variable0 = variable0 /*v*/;
175 goto return_label5;
176 return_label5: while(false);
177 tracehead = trace.prev;
178 return variable0;
179 }
180 void compiling_methods___CompilerVisitor___free_var(val_t self, val_t param0) {
181 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___free_var, 93};
182 val_t variable0;
183 val_t variable1;
184 trace.prev = tracehead; tracehead = &trace;
185 variable0 = param0;
186 variable1 = ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/;
187 variable1 = TAG_Int(UNTAG_Int(variable1)-UNTAG_Int( TAG_Int(1)));
188 variable1 = ((compiling_methods___CompilerVisitor___variable_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___variable))( self, variable1) /*CompilerVisitor::variable*/;
189 variable1 = TAG_Bool(( variable0 /*v*/ == variable1) || (( variable0 /*v*/ != NIT_NULL) && UNTAG_Bool(((string___String_____eqeq_t)CALL( variable0 /*v*/,COLOR_kernel___Object_____eqeq))( variable0 /*v*/, variable1) /*String::==*/)));
190 if (UNTAG_Bool(variable1)) { /*if*/
191 variable1 = ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/;
192 variable1 = TAG_Int(UNTAG_Int(variable1)-UNTAG_Int( TAG_Int(1)));
193 ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/ = variable1;
194 }
195 tracehead = trace.prev;
196 return;
197 }
198 void compiling_methods___CompilerVisitor___clear(val_t self) {
199 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___clear, 102};
200 trace.prev = tracehead; tracehead = &trace;
201 ATTR_compiling_methods___CompilerVisitor____has_return( self) /*CompilerVisitor::_has_return*/ = TAG_Bool(false);
202 ((compiling_base___CompilerVisitor___indent_level__eq_t)CALL( self,COLOR_compiling_base___CompilerVisitor___indent_level__eq))( self, TAG_Int(0)) /*CompilerVisitor::indent_level=*/;
203 ATTR_compiling_methods___CompilerVisitor____variable_index( self) /*CompilerVisitor::_variable_index*/ = TAG_Int(0);
204 ATTR_compiling_methods___CompilerVisitor____variable_index_max( self) /*CompilerVisitor::_variable_index_max*/ = TAG_Int(0);
205 tracehead = trace.prev;
206 return;
207 }
208 val_t compiling_methods___CompilerVisitor___varnames(val_t self) {
209 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___varnames, 111};
210 trace.prev = tracehead; tracehead = &trace;
211 tracehead = trace.prev;
212 return ATTR_compiling_methods___CompilerVisitor____varnames( self) /*CompilerVisitor::_varnames*/;
213 }
214 val_t compiling_methods___CompilerVisitor___has_return(val_t self) {
215 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___has_return, 114};
216 trace.prev = tracehead; tracehead = &trace;
217 tracehead = trace.prev;
218 return ATTR_compiling_methods___CompilerVisitor____has_return( self) /*CompilerVisitor::_has_return*/;
219 }
220 void compiling_methods___CompilerVisitor___has_return__eq(val_t self, val_t param0) {
221 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___has_return__eq, 114};
222 trace.prev = tracehead; tracehead = &trace;
223 ATTR_compiling_methods___CompilerVisitor____has_return( self) /*CompilerVisitor::_has_return*/ = param0;
224 tracehead = trace.prev;
225 return;
226 }
227 val_t compiling_methods___CompilerVisitor___method_params(val_t self) {
228 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___method_params, 117};
229 trace.prev = tracehead; tracehead = &trace;
230 tracehead = trace.prev;
231 return ATTR_compiling_methods___CompilerVisitor____method_params( self) /*CompilerVisitor::_method_params*/;
232 }
233 void compiling_methods___CompilerVisitor___method_params__eq(val_t self, val_t param0) {
234 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___method_params__eq, 117};
235 trace.prev = tracehead; tracehead = &trace;
236 ATTR_compiling_methods___CompilerVisitor____method_params( self) /*CompilerVisitor::_method_params*/ = param0;
237 tracehead = trace.prev;
238 return;
239 }
240 val_t compiling_methods___CompilerVisitor___method(val_t self) {
241 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___method, 120};
242 trace.prev = tracehead; tracehead = &trace;
243 tracehead = trace.prev;
244 return ATTR_compiling_methods___CompilerVisitor____method( self) /*CompilerVisitor::_method*/;
245 }
246 void compiling_methods___CompilerVisitor___method__eq(val_t self, val_t param0) {
247 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___method__eq, 120};
248 trace.prev = tracehead; tracehead = &trace;
249 ATTR_compiling_methods___CompilerVisitor____method( self) /*CompilerVisitor::_method*/ = param0;
250 tracehead = trace.prev;
251 return;
252 }
253 val_t compiling_methods___CompilerVisitor___return_label(val_t self) {
254 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___return_label, 123};
255 trace.prev = tracehead; tracehead = &trace;
256 tracehead = trace.prev;
257 return ATTR_compiling_methods___CompilerVisitor____return_label( self) /*CompilerVisitor::_return_label*/;
258 }
259 void compiling_methods___CompilerVisitor___return_label__eq(val_t self, val_t param0) {
260 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___return_label__eq, 123};
261 trace.prev = tracehead; tracehead = &trace;
262 ATTR_compiling_methods___CompilerVisitor____return_label( self) /*CompilerVisitor::_return_label*/ = param0;
263 tracehead = trace.prev;
264 return;
265 }
266 val_t compiling_methods___CompilerVisitor___break_label(val_t self) {
267 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___break_label, 126};
268 trace.prev = tracehead; tracehead = &trace;
269 tracehead = trace.prev;
270 return ATTR_compiling_methods___CompilerVisitor____break_label( self) /*CompilerVisitor::_break_label*/;
271 }
272 void compiling_methods___CompilerVisitor___break_label__eq(val_t self, val_t param0) {
273 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___break_label__eq, 126};
274 trace.prev = tracehead; tracehead = &trace;
275 ATTR_compiling_methods___CompilerVisitor____break_label( self) /*CompilerVisitor::_break_label*/ = param0;
276 tracehead = trace.prev;
277 return;
278 }
279 val_t compiling_methods___CompilerVisitor___continue_label(val_t self) {
280 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___continue_label, 129};
281 trace.prev = tracehead; tracehead = &trace;
282 tracehead = trace.prev;
283 return ATTR_compiling_methods___CompilerVisitor____continue_label( self) /*CompilerVisitor::_continue_label*/;
284 }
285 void compiling_methods___CompilerVisitor___continue_label__eq(val_t self, val_t param0) {
286 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___continue_label__eq, 129};
287 trace.prev = tracehead; tracehead = &trace;
288 ATTR_compiling_methods___CompilerVisitor____continue_label( self) /*CompilerVisitor::_continue_label*/ = param0;
289 tracehead = trace.prev;
290 return;
291 }
292 val_t compiling_methods___CompilerVisitor___return_value(val_t self) {
293 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___return_value, 132};
294 trace.prev = tracehead; tracehead = &trace;
295 tracehead = trace.prev;
296 return ATTR_compiling_methods___CompilerVisitor____return_value( self) /*CompilerVisitor::_return_value*/;
297 }
298 void compiling_methods___CompilerVisitor___return_value__eq(val_t self, val_t param0) {
299 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___return_value__eq, 132};
300 trace.prev = tracehead; tracehead = &trace;
301 ATTR_compiling_methods___CompilerVisitor____return_value( self) /*CompilerVisitor::_return_value*/ = param0;
302 tracehead = trace.prev;
303 return;
304 }
305 val_t compiling_methods___CompilerVisitor___locate(val_t self) {
306 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___locate, 135};
307 val_t variable0;
308 val_t variable1;
309 val_t variable2;
310 val_t variable3;
311 val_t variable4;
312 val_t variable5;
313 val_t variable6;
314 trace.prev = tracehead; tracehead = &trace;
315 variable0 = ((compiling_methods___CompilerVisitor___method_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___method))( self) /*CompilerVisitor::method*/;
316 variable0 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable0 == NIT_NULL /*null*/) || ((variable0 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable0,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable0, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable0,COLOR_kernel___Object_____eqeq))(variable0, NIT_NULL /*null*/) /*MMSrcMethod::==*/)))))));
317 if (UNTAG_Bool(variable0)) { /*if*/
318 variable0 = NEW_string___String___init(); /*new String*/
319 variable1 = NEW_string___String___with_native(BOX_NativeString("LOCATE_"), TAG_Int(7)); /*new String*/
320 variable2 = variable1;
321 ((string___String___append_t)CALL(variable0,COLOR_abstract_collection___IndexedCollection___append))(variable0, variable2) /*String::append*/;
322 variable3 = ((compiling_methods___CompilerVisitor___method_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___method))( self) /*CompilerVisitor::method*/;
323 variable3 = ((compiling_base___MMLocalProperty___cname_t)CALL(variable3,COLOR_compiling_base___MMLocalProperty___cname))(variable3) /*MMSrcMethod::cname*/;
324 variable4 = variable3;
325 ((string___String___append_t)CALL(variable0,COLOR_abstract_collection___IndexedCollection___append))(variable0, variable4) /*String::append*/;
326 variable5 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
327 variable6 = variable5;
328 ((string___String___append_t)CALL(variable0,COLOR_abstract_collection___IndexedCollection___append))(variable0, variable6) /*String::append*/;
329 goto return_label8;
330 } else { /*if*/
331 variable0 = NEW_string___String___init(); /*new String*/
332 variable1 = NEW_string___String___with_native(BOX_NativeString("LOCATE_"), TAG_Int(7)); /*new String*/
333 variable2 = variable1;
334 ((string___String___append_t)CALL(variable0,COLOR_abstract_collection___IndexedCollection___append))(variable0, variable2) /*String::append*/;
335 variable3 = ((compiling_base___CompilerVisitor___module_t)CALL( self,COLOR_compiling_base___CompilerVisitor___module))( self) /*CompilerVisitor::module*/;
336 variable3 = ((abstractmetamodel___MMModule___name_t)CALL(variable3,COLOR_abstractmetamodel___MMModule___name))(variable3) /*MMSrcModule::name*/;
337 variable4 = variable3;
338 variable4 = ((string___String___to_s_t)CALL(variable4,COLOR_string___Object___to_s))(variable4) /*String::to_s*/;
339 ((string___String___append_t)CALL(variable0,COLOR_abstract_collection___IndexedCollection___append))(variable0, variable4) /*String::append*/;
340 variable5 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
341 variable6 = variable5;
342 ((string___String___append_t)CALL(variable0,COLOR_abstract_collection___IndexedCollection___append))(variable0, variable6) /*String::append*/;
343 goto return_label8;
344 }
345 return_label8: while(false);
346 tracehead = trace.prev;
347 return variable0;
348 }
349 void compiling_methods___CompilerVisitor___init(val_t self, val_t param0, int* init_table) {
350 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___init, 145};
351 val_t variable0;
352 trace.prev = tracehead; tracehead = &trace;
353 variable0 = param0;
354 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_CompilerVisitor].i]) return;
355 ((compiling_methods___CompilerVisitor___init_t)CALL( self,COLOR_SUPER_compiling_methods___CompilerVisitor___init))( self, param0, init_table) /*super CompilerVisitor::init*/;
356 ((compiling_methods___CompilerVisitor___clear_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___clear))( self) /*CompilerVisitor::clear*/;
357 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_CompilerVisitor].i] = 1;
358 tracehead = trace.prev;
359 return;
360 }
361 void compiling_methods___CompilerVisitor___invoke_super_init_calls_after(val_t self, val_t param0) {
362 struct trace_t trace = {NULL, LOCATE_compiling_methods___CompilerVisitor___invoke_super_init_calls_after, 151};
363 val_t variable0;
364 val_t variable1;
365 val_t variable2;
366 val_t variable3;
367 val_t variable4;
368 val_t variable5;
369 val_t variable6;
370 val_t variable7;
371 val_t variable8;
372 val_t variable9;
373 val_t variable10;
374 val_t variable11;
375 val_t variable12;
376 trace.prev = tracehead; tracehead = &trace;
377 variable0 = param0;
378 variable2 = ((compiling_methods___CompilerVisitor___method_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___method))( self) /*CompilerVisitor::method*/;
379 variable2 = ((syntax_base___MMSrcLocalProperty___node_t)CALL(variable2,COLOR_syntax_base___MMSrcLocalProperty___node))(variable2) /*MMSrcMethod::node*/;
380 variable1 = variable2;
381 variable2 = TAG_Bool(( variable1 /*n*/==NIT_NULL) || VAL_ISA( variable1 /*n*/, COLOR_AConcreteInitPropdef, ID_AConcreteInitPropdef)) /*cast AConcreteInitPropdef*/;
382 if (!UNTAG_Bool(variable2)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", "", LOCATE_compiling_methods___CompilerVisitor___invoke_super_init_calls_after, 154); nit_exit(1);}
383 variable2 = ((typing___AConcreteInitPropdef___super_init_calls_t)CALL( variable1 /*n*/,COLOR_typing___AConcreteInitPropdef___super_init_calls))( variable1 /*n*/) /*AConcreteInitPropdef::super_init_calls*/;
384 variable2 = ((array___AbstractArray___is_empty_t)CALL(variable2,COLOR_abstract_collection___Collection___is_empty))(variable2) /*Array::is_empty*/;
385 if (UNTAG_Bool(variable2)) { /*if*/
386 goto return_label10;
387 }
388 variable2 = TAG_Int(0);
389 variable3 = TAG_Int(0);
390 variable4 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0 /*start_prop*/ == NIT_NULL /*null*/) || (( variable0 /*start_prop*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable0 /*start_prop*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable0 /*start_prop*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable0 /*start_prop*/,COLOR_kernel___Object_____eqeq))( variable0 /*start_prop*/, NIT_NULL /*null*/) /*MMMethod::==*/)))))));
391 if (UNTAG_Bool(variable4)) { /*if*/
392 while (true) { /*while*/
393 variable4 = ((typing___AConcreteInitPropdef___super_init_calls_t)CALL( variable1 /*n*/,COLOR_typing___AConcreteInitPropdef___super_init_calls))( variable1 /*n*/) /*AConcreteInitPropdef::super_init_calls*/;
394 variable5 = variable2 /*i*/;
395 variable6 = TAG_Bool(UNTAG_Int( variable5 /*index*/)>=UNTAG_Int( TAG_Int(0)));
396 variable7 = variable6;
397 if (UNTAG_Bool(variable7)) { /* and */
398 variable7 = variable4;
399 variable7 = ATTR_array___AbstractArray____length(variable7) /*Array::_length*/;
400 variable7 = TAG_Bool(UNTAG_Int( variable5 /*index*/)<UNTAG_Int(variable7));
401 }
402 variable6 = variable7;
403 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
404 variable6 = variable4;
405 variable6 = ATTR_array___Array____items(variable6) /*Array::_items*/;
406 variable6 = UNBOX_NativeArray(variable6)[UNTAG_Int( variable5 /*index*/)];
407 goto return_label12;
408 return_label12: while(false);
409 variable4 = variable6;
410 variable4 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable4 == variable0 /*start_prop*/) || ((variable4 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable4,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable4, variable0 /*start_prop*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable4,COLOR_kernel___Object_____eqeq))(variable4, variable0 /*start_prop*/) /*MMMethod::==*/)))))));
411 if (!UNTAG_Bool(variable4)) break; /* while*/
412 variable2 = TAG_Int(UNTAG_Int(variable2)+UNTAG_Int( TAG_Int(1))) /*i*/;
413 continue_11: while(0);
414 }
415 break_11: while(0);
416 variable2 = TAG_Int(UNTAG_Int(variable2)+UNTAG_Int( TAG_Int(1))) /*i*/;
417 while (true) { /*while*/
418 variable4 = ((typing___AConcreteInitPropdef___explicit_super_init_calls_t)CALL( variable1 /*n*/,COLOR_typing___AConcreteInitPropdef___explicit_super_init_calls))( variable1 /*n*/) /*AConcreteInitPropdef::explicit_super_init_calls*/;
419 variable5 = variable3 /*j*/;
420 variable6 = TAG_Bool(UNTAG_Int( variable5 /*index*/)>=UNTAG_Int( TAG_Int(0)));
421 variable7 = variable6;
422 if (UNTAG_Bool(variable7)) { /* and */
423 variable7 = variable4;
424 variable7 = ATTR_array___AbstractArray____length(variable7) /*Array::_length*/;
425 variable7 = TAG_Bool(UNTAG_Int( variable5 /*index*/)<UNTAG_Int(variable7));
426 }
427 variable6 = variable7;
428 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
429 variable6 = variable4;
430 variable6 = ATTR_array___Array____items(variable6) /*Array::_items*/;
431 variable6 = UNBOX_NativeArray(variable6)[UNTAG_Int( variable5 /*index*/)];
432 goto return_label14;
433 return_label14: while(false);
434 variable4 = variable6;
435 variable4 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable4 == variable0 /*start_prop*/) || ((variable4 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable4,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable4, variable0 /*start_prop*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable4,COLOR_kernel___Object_____eqeq))(variable4, variable0 /*start_prop*/) /*MMMethod::==*/)))))));
436 if (!UNTAG_Bool(variable4)) break; /* while*/
437 variable3 = TAG_Int(UNTAG_Int(variable3)+UNTAG_Int( TAG_Int(1))) /*j*/;
438 continue_13: while(0);
439 }
440 break_13: while(0);
441 variable3 = TAG_Int(UNTAG_Int(variable3)+UNTAG_Int( TAG_Int(1))) /*j*/;
442 }
443 variable4 = NIT_NULL /*decl variable stop_prop*/;
444 variable5 = ((typing___AConcreteInitPropdef___explicit_super_init_calls_t)CALL( variable1 /*n*/,COLOR_typing___AConcreteInitPropdef___explicit_super_init_calls))( variable1 /*n*/) /*AConcreteInitPropdef::explicit_super_init_calls*/;
445 variable5 = ((array___AbstractArray___length_t)CALL(variable5,COLOR_abstract_collection___Collection___length))(variable5) /*Array::length*/;
446 variable5 = TAG_Bool(UNTAG_Int( variable3 /*j*/)<UNTAG_Int(variable5));
447 if (UNTAG_Bool(variable5)) { /*if*/
448 variable5 = ((typing___AConcreteInitPropdef___explicit_super_init_calls_t)CALL( variable1 /*n*/,COLOR_typing___AConcreteInitPropdef___explicit_super_init_calls))( variable1 /*n*/) /*AConcreteInitPropdef::explicit_super_init_calls*/;
449 variable6 = variable3 /*j*/;
450 variable7 = TAG_Bool(UNTAG_Int( variable6 /*index*/)>=UNTAG_Int( TAG_Int(0)));
451 variable8 = variable7;
452 if (UNTAG_Bool(variable8)) { /* and */
453 variable8 = variable5;
454 variable8 = ATTR_array___AbstractArray____length(variable8) /*Array::_length*/;
455 variable8 = TAG_Bool(UNTAG_Int( variable6 /*index*/)<UNTAG_Int(variable8));
456 }
457 variable7 = variable8;
458 if (!UNTAG_Bool(variable7)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
459 variable7 = variable5;
460 variable7 = ATTR_array___Array____items(variable7) /*Array::_items*/;
461 variable7 = UNBOX_NativeArray(variable7)[UNTAG_Int( variable6 /*index*/)];
462 goto return_label15;
463 return_label15: while(false);
464 variable5 = variable7;
465 variable4 = variable5 /*stop_prop=*/;
466 }
467 variable6 = ((typing___AConcreteInitPropdef___super_init_calls_t)CALL( variable1 /*n*/,COLOR_typing___AConcreteInitPropdef___super_init_calls))( variable1 /*n*/) /*AConcreteInitPropdef::super_init_calls*/;
468 variable6 = ((array___AbstractArray___length_t)CALL(variable6,COLOR_abstract_collection___Collection___length))(variable6) /*Array::length*/;
469 variable5 = variable6;
470 while (true) { /*while*/
471 variable6 = TAG_Bool(UNTAG_Int( variable2 /*i*/)<UNTAG_Int( variable5 /*l*/));
472 if (!UNTAG_Bool(variable6)) break; /* while*/
473 variable7 = ((typing___AConcreteInitPropdef___super_init_calls_t)CALL( variable1 /*n*/,COLOR_typing___AConcreteInitPropdef___super_init_calls))( variable1 /*n*/) /*AConcreteInitPropdef::super_init_calls*/;
474 variable8 = variable2 /*i*/;
475 variable9 = TAG_Bool(UNTAG_Int( variable8 /*index*/)>=UNTAG_Int( TAG_Int(0)));
476 variable10 = variable9;
477 if (UNTAG_Bool(variable10)) { /* and */
478 variable10 = variable7;
479 variable10 = ATTR_array___AbstractArray____length(variable10) /*Array::_length*/;
480 variable10 = TAG_Bool(UNTAG_Int( variable8 /*index*/)<UNTAG_Int(variable10));
481 }
482 variable9 = variable10;
483 if (!UNTAG_Bool(variable9)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
484 variable9 = variable7;
485 variable9 = ATTR_array___Array____items(variable9) /*Array::_items*/;
486 variable9 = UNBOX_NativeArray(variable9)[UNTAG_Int( variable8 /*index*/)];
487 goto return_label17;
488 return_label17: while(false);
489 variable7 = variable9;
490 variable6 = variable7;
491 variable7 = TAG_Bool(( variable6 /*p*/ == variable4 /*stop_prop*/) || (( variable6 /*p*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*p*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*p*/, variable4 /*stop_prop*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*p*/,COLOR_kernel___Object_____eqeq))( variable6 /*p*/, variable4 /*stop_prop*/) /*MMMethod::==*/)))));
492 if (UNTAG_Bool(variable7)) { /*if*/
493 goto break_16;
494 }
495 variable8 = ((compiling_methods___CompilerVisitor___method_params_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___method_params))( self) /*CompilerVisitor::method_params*/;
496 variable7 = variable8;
497 variable8 = ((genericity___MMLocalProperty___signature_t)CALL( variable6 /*p*/,COLOR_static_type___MMLocalProperty___signature))( variable6 /*p*/) /*MMMethod::signature*/;
498 variable8 = ((static_type___MMSignature___arity_t)CALL(variable8,COLOR_static_type___MMSignature___arity))(variable8) /*MMSignature::arity*/;
499 variable8 = TAG_Bool((variable8)==( TAG_Int(0)));
500 if (UNTAG_Bool(variable8)) { /*if*/
501 variable8 = NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[String]*/
502 variable9 = ((compiling_methods___CompilerVisitor___method_params_t)CALL( self,COLOR_compiling_methods___CompilerVisitor___method_params))( self) /*CompilerVisitor::method_params*/;
503 variable10 = TAG_Int(0);
504 variable11 = TAG_Bool(UNTAG_Int( variable10 /*index*/)>=UNTAG_Int( TAG_Int(0)));
505 variable12 = variable11;
506 if (UNTAG_Bool(variable12)) { /* and */
507 variable12 = variable9;
508 variable12 = ATTR_array___AbstractArray____length(variable12) /*Array::_length*/;
509 variable12 = TAG_Bool(UNTAG_Int( variable10 /*index*/)<UNTAG_Int(variable12));
510 }
511 variable11 = variable12;
512 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
513 variable11 = variable9;
514 variable11 = ATTR_array___Array____items(variable11) /*Array::_items*/;
515 variable11 = UNBOX_NativeArray(variable11)[UNTAG_Int( variable10 /*index*/)];
516 goto return_label18;
517 return_label18: while(false);
518 variable9 = variable11;
519 ((array___AbstractArray___add_t)CALL(variable8,COLOR_abstract_collection___SimpleCollection___add))(variable8, variable9) /*Array::add*/;
520 variable7 = variable8 /*cargs=*/;
521 }
522 ((compiling_methods___MMMethod___compile_call_t)CALL( variable6 /*p*/,COLOR_compiling_methods___MMMethod___compile_call))( variable6 /*p*/, self, variable7 /*cargs*/) /*MMMethod::compile_call*/;
523 variable2 = TAG_Int(UNTAG_Int(variable2)+UNTAG_Int( TAG_Int(1))) /*i*/;
524 continue_16: while(0);
525 }
526 break_16: while(0);
527 return_label10: while(false);
528 tracehead = trace.prev;
529 return;
530 }
531 val_t compiling_methods___MMMethod___compile_call(val_t self, val_t param0, val_t param1) {
532 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMMethod___compile_call, 203};
533 val_t variable0;
534 val_t variable1;
535 val_t variable2;
536 val_t variable3;
537 val_t variable4;
538 val_t variable5;
539 static val_t once_value_variable5_20; static int once_bool_variable5_20;
540 val_t variable6;
541 static val_t once_value_variable6_21; static int once_bool_variable6_21;
542 static val_t once_value_variable4_22; static int once_bool_variable4_22;
543 static val_t once_value_variable5_23; static int once_bool_variable5_23;
544 val_t variable7;
545 val_t variable8;
546 val_t variable9;
547 val_t variable10;
548 val_t variable11;
549 val_t variable12;
550 val_t variable13;
551 val_t variable14;
552 val_t variable15;
553 val_t variable16;
554 val_t variable17;
555 val_t variable18;
556 val_t variable19;
557 val_t variable20;
558 val_t variable21;
559 val_t variable22;
560 val_t variable23;
561 val_t variable24;
562 static val_t once_value_variable8_25; static int once_bool_variable8_25;
563 val_t variable25;
564 val_t variable26;
565 val_t variable27;
566 val_t variable28;
567 trace.prev = tracehead; tracehead = &trace;
568 variable0 = param0;
569 variable1 = param1;
570 variable3 = ((abstractmetamodel___MMLocalProperty___concrete_property_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___concrete_property))( self) /*MMMethod::concrete_property*/;
571 variable2 = variable3;
572 variable3 = TAG_Bool(( variable2 /*i*/==NIT_NULL) || VAL_ISA( variable2 /*i*/, COLOR_MMSrcMethod, ID_MMSrcMethod)) /*cast MMSrcMethod*/;
573 if (!UNTAG_Bool(variable3)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", "", LOCATE_compiling_methods___MMMethod___compile_call, 210); nit_exit(1);}
574 variable3 = ((syntax_base___MMSrcLocalProperty___node_t)CALL( variable2 /*i*/,COLOR_syntax_base___MMSrcLocalProperty___node))( variable2 /*i*/) /*MMSrcMethod::node*/;
575 variable3 = TAG_Bool((variable3==NIT_NULL) || VAL_ISA(variable3, COLOR_AInternMethPropdef, ID_AInternMethPropdef)) /*cast AInternMethPropdef*/;
576 variable4 = variable3;
577 if (!UNTAG_Bool(variable4)) { /* or */
578 variable4 = ((abstractmetamodel___MMLocalProperty___local_class_t)CALL( variable2 /*i*/,COLOR_abstractmetamodel___MMLocalProperty___local_class))( variable2 /*i*/) /*MMSrcMethod::local_class*/;
579 variable4 = ((abstractmetamodel___MMLocalClass___name_t)CALL(variable4,COLOR_abstractmetamodel___MMLocalClass___name))(variable4) /*MMLocalClass::name*/;
580 if (once_bool_variable5_20) variable5 = once_value_variable5_20;
581 else {
582 variable5 = NEW_string___String___with_native(BOX_NativeString("Array"), TAG_Int(5)); /*new String*/
583 variable5 = ((symbol___String___to_symbol_t)CALL(variable5,COLOR_symbol___String___to_symbol))(variable5) /*String::to_symbol*/;
584 once_value_variable5_20 = variable5;
585 once_bool_variable5_20 = true;
586 }
587 variable4 = TAG_Bool((variable4 == variable5) || ((variable4 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable4,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable4,variable5)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable4,COLOR_kernel___Object_____eqeq))(variable4, variable5) /*Symbol::==*/)))));
588 variable5 = variable4;
589 if (UNTAG_Bool(variable5)) { /* and */
590 variable5 = ((abstractmetamodel___MMLocalProperty___name_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___name))( self) /*MMMethod::name*/;
591 if (once_bool_variable6_21) variable6 = once_value_variable6_21;
592 else {
593 variable6 = NEW_string___String___with_native(BOX_NativeString("[]"), TAG_Int(2)); /*new String*/
594 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
595 once_value_variable6_21 = variable6;
596 once_bool_variable6_21 = true;
597 }
598 variable5 = TAG_Bool((variable5 == variable6) || ((variable5 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable5,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable5,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable5,COLOR_kernel___Object_____eqeq))(variable5, variable6) /*Symbol::==*/)))));
599 }
600 variable4 = variable5;
601 }
602 variable3 = variable4;
603 if (UNTAG_Bool(variable3)) { /*if*/
604 variable4 = ((compiling_methods___MMSrcMethod___do_compile_inside_t)CALL( variable2 /*i*/,COLOR_compiling_methods___MMSrcMethod___do_compile_inside))( variable2 /*i*/, variable0 /*v*/, variable1 /*cargs*/) /*MMSrcMethod::do_compile_inside*/;
605 variable3 = variable4;
606 variable2 = variable3 /*e*/;
607 goto return_label19;
608 }
609 if (once_bool_variable4_22) variable4 = once_value_variable4_22;
610 else {
611 variable4 = NEW_string___String___with_native(BOX_NativeString("=="), TAG_Int(2)); /*new String*/
612 variable4 = ((symbol___String___to_symbol_t)CALL(variable4,COLOR_symbol___String___to_symbol))(variable4) /*String::to_symbol*/;
613 once_value_variable4_22 = variable4;
614 once_bool_variable4_22 = true;
615 }
616 variable3 = variable4;
617 if (once_bool_variable5_23) variable5 = once_value_variable5_23;
618 else {
619 variable5 = NEW_string___String___with_native(BOX_NativeString("!="), TAG_Int(2)); /*new String*/
620 variable5 = ((symbol___String___to_symbol_t)CALL(variable5,COLOR_symbol___String___to_symbol))(variable5) /*String::to_symbol*/;
621 once_value_variable5_23 = variable5;
622 once_bool_variable5_23 = true;
623 }
624 variable4 = variable5;
625 variable5 = ((abstractmetamodel___MMLocalProperty___name_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___name))( self) /*MMMethod::name*/;
626 variable5 = TAG_Bool((variable5 == variable4 /*ne*/) || ((variable5 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable5,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable5, variable4 /*ne*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable5,COLOR_kernel___Object_____eqeq))(variable5, variable4 /*ne*/) /*Symbol::==*/)))));
627 if (UNTAG_Bool(variable5)) { /*if*/
628 variable6 = ((genericity___MMLocalProperty___signature_t)CALL( self,COLOR_static_type___MMLocalProperty___signature))( self) /*MMMethod::signature*/;
629 variable6 = ((static_type___MMSignature___recv_t)CALL(variable6,COLOR_static_type___MMSignature___recv))(variable6) /*MMSignature::recv*/;
630 variable6 = ((static_type___MMType___select_method_t)CALL(variable6,COLOR_static_type___MMType___select_method))(variable6, variable3 /*ee*/) /*MMType::select_method*/;
631 variable5 = variable6;
632 variable7 = ((compiling_methods___MMMethod___compile_call_t)CALL( variable5 /*eqp*/,COLOR_compiling_methods___MMMethod___compile_call))( variable5 /*eqp*/, variable0 /*v*/, variable1 /*cargs*/) /*MMMethod::compile_call*/;
633 variable6 = variable7;
634 variable7 = NEW_string___String___init(); /*new String*/
635 variable8 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(!UNTAG_Bool("), TAG_Int(21)); /*new String*/
636 variable9 = variable8;
637 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable9) /*String::append*/;
638 variable10 = variable6 /*eqcall*/;
639 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable10) /*String::append*/;
640 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
641 variable12 = variable11;
642 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable12) /*String::append*/;
643 variable2 = variable7;
644 goto return_label19;
645 }
646 variable5 = ((abstractmetamodel___MMLocalProperty___global_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___global))( self) /*MMMethod::global*/;
647 variable5 = ((abstractmetamodel___MMGlobalProperty___is_init_t)CALL(variable5,COLOR_abstractmetamodel___MMGlobalProperty___is_init))(variable5) /*MMGlobalProperty::is_init*/;
648 if (UNTAG_Bool(variable5)) { /*if*/
649 variable5 = ((array___Collection___to_a_t)CALL( variable1 /*cargs*/,COLOR_array___Collection___to_a))( variable1 /*cargs*/) /*Array::to_a*/;
650 variable1 = variable5 /*cargs=*/;
651 variable5 = NEW_string___String___with_native(BOX_NativeString("init_table /*YYY*/"), TAG_Int(18)); /*new String*/
652 ((array___AbstractArray___add_t)CALL( variable1 /*cargs*/,COLOR_abstract_collection___SimpleCollection___add))( variable1 /*cargs*/, variable5) /*Array::add*/;
653 }
654 variable6 = NEW_string___String___init(); /*new String*/
655 variable7 = NEW_string___String___with_native(BOX_NativeString("(("), TAG_Int(2)); /*new String*/
656 variable8 = variable7;
657 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
658 variable9 = ((compiling_base___MMLocalProperty___cname_t)CALL( self,COLOR_compiling_base___MMLocalProperty___cname))( self) /*MMMethod::cname*/;
659 variable10 = variable9;
660 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
661 variable11 = NEW_string___String___with_native(BOX_NativeString("_t)CALL("), TAG_Int(8)); /*new String*/
662 variable12 = variable11;
663 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
664 variable13 = TAG_Int(0);
665 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
666 variable15 = variable14;
667 if (UNTAG_Bool(variable15)) { /* and */
668 variable15 = ATTR_array___AbstractArray____length( variable1 /*cargs*/) /*Array::_length*/;
669 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
670 }
671 variable14 = variable15;
672 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
673 variable14 = ATTR_array___Array____items( variable1 /*cargs*/) /*Array::_items*/;
674 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
675 goto return_label24;
676 return_label24: while(false);
677 variable13 = variable14;
678 variable14 = variable13;
679 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
680 variable15 = NEW_string___String___with_native(BOX_NativeString(","), TAG_Int(1)); /*new String*/
681 variable16 = variable15;
682 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
683 variable17 = ((abstractmetamodel___MMLocalProperty___global_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___global))( self) /*MMMethod::global*/;
684 variable17 = ((compiling_base___MMGlobalProperty___color_id_t)CALL(variable17,COLOR_compiling_base___MMGlobalProperty___color_id))(variable17) /*MMGlobalProperty::color_id*/;
685 variable18 = variable17;
686 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable18) /*String::append*/;
687 variable19 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
688 variable20 = variable19;
689 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable20) /*String::append*/;
690 variable5 = variable6;
691 variable7 = NEW_string___String___init(); /*new String*/
692 variable8 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
693 variable9 = variable8;
694 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable9) /*String::append*/;
695 variable10 = variable5 /*m*/;
696 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable10) /*String::append*/;
697 variable11 = NEW_string___String___with_native(BOX_NativeString("("), TAG_Int(1)); /*new String*/
698 variable12 = variable11;
699 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable12) /*String::append*/;
700 variable13 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
701 variable13 = ((string___Collection___join_t)CALL( variable1 /*cargs*/,COLOR_string___Collection___join))( variable1 /*cargs*/, variable13) /*Array::join*/;
702 variable14 = variable13;
703 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable14) /*String::append*/;
704 variable15 = NEW_string___String___with_native(BOX_NativeString(") /*"), TAG_Int(4)); /*new String*/
705 variable16 = variable15;
706 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable16) /*String::append*/;
707 variable17 = ((abstractmetamodel___MMLocalProperty___local_class_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___local_class))( self) /*MMMethod::local_class*/;
708 variable18 = variable17;
709 variable18 = ((string___String___to_s_t)CALL(variable18,COLOR_string___Object___to_s))(variable18) /*String::to_s*/;
710 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable18) /*String::append*/;
711 variable19 = NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
712 variable20 = variable19;
713 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable20) /*String::append*/;
714 variable21 = ((abstractmetamodel___MMLocalProperty___name_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___name))( self) /*MMMethod::name*/;
715 variable22 = variable21;
716 variable22 = ((string___String___to_s_t)CALL(variable22,COLOR_string___Object___to_s))(variable22) /*String::to_s*/;
717 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable22) /*String::append*/;
718 variable23 = NEW_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)); /*new String*/
719 variable24 = variable23;
720 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable24) /*String::append*/;
721 variable6 = variable7;
722 variable7 = ((abstractmetamodel___MMLocalProperty___name_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___name))( self) /*MMMethod::name*/;
723 variable7 = TAG_Bool((variable7 == variable3 /*ee*/) || ((variable7 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable7,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable7, variable3 /*ee*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable7,COLOR_kernel___Object_____eqeq))(variable7, variable3 /*ee*/) /*Symbol::==*/)))));
724 if (UNTAG_Bool(variable7)) { /*if*/
725 variable7 = NEW_string___String___init(); /*new String*/
726 variable8 = NEW_string___String___with_native(BOX_NativeString("UNTAG_Bool("), TAG_Int(11)); /*new String*/
727 variable9 = variable8;
728 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable9) /*String::append*/;
729 variable10 = variable6 /*vcall*/;
730 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable10) /*String::append*/;
731 variable11 = NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
732 variable12 = variable11;
733 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable12) /*String::append*/;
734 variable6 = variable7 /*vcall=*/;
735 if (once_bool_variable8_25) variable8 = once_value_variable8_25;
736 else {
737 variable8 = NEW_string___String___with_native(BOX_NativeString("Object"), TAG_Int(6)); /*new String*/
738 variable8 = ((symbol___String___to_symbol_t)CALL(variable8,COLOR_symbol___String___to_symbol))(variable8) /*String::to_symbol*/;
739 once_value_variable8_25 = variable8;
740 once_bool_variable8_25 = true;
741 }
742 variable7 = variable8;
743 variable8 = ((abstractmetamodel___MMLocalProperty___local_class_t)CALL( variable2 /*i*/,COLOR_abstractmetamodel___MMLocalProperty___local_class))( variable2 /*i*/) /*MMSrcMethod::local_class*/;
744 variable8 = ((abstractmetamodel___MMLocalClass___name_t)CALL(variable8,COLOR_abstractmetamodel___MMLocalClass___name))(variable8) /*MMLocalClass::name*/;
745 variable8 = TAG_Bool((variable8 == variable7 /*obj*/) || ((variable8 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable8,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable8, variable7 /*obj*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable8,COLOR_kernel___Object_____eqeq))(variable8, variable7 /*obj*/) /*Symbol::==*/)))));
746 if (UNTAG_Bool(variable8)) { /*if*/
747 variable8 = NEW_string___String___init(); /*new String*/
748 variable9 = NEW_string___String___with_native(BOX_NativeString("(("), TAG_Int(2)); /*new String*/
749 variable10 = variable9;
750 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable10) /*String::append*/;
751 variable11 = variable5 /*m*/;
752 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable11) /*String::append*/;
753 variable12 = NEW_string___String___with_native(BOX_NativeString("=="), TAG_Int(2)); /*new String*/
754 variable13 = variable12;
755 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable13) /*String::append*/;
756 variable14 = ((compiling_base___MMLocalProperty___cname_t)CALL( variable2 /*i*/,COLOR_compiling_base___MMLocalProperty___cname))( variable2 /*i*/) /*MMSrcMethod::cname*/;
757 variable15 = variable14;
758 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable15) /*String::append*/;
759 variable16 = NEW_string___String___with_native(BOX_NativeString(")?(IS_EQUAL_NN("), TAG_Int(15)); /*new String*/
760 variable17 = variable16;
761 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable17) /*String::append*/;
762 variable18 = TAG_Int(0);
763 variable19 = TAG_Bool(UNTAG_Int( variable18 /*index*/)>=UNTAG_Int( TAG_Int(0)));
764 variable20 = variable19;
765 if (UNTAG_Bool(variable20)) { /* and */
766 variable20 = ATTR_array___AbstractArray____length( variable1 /*cargs*/) /*Array::_length*/;
767 variable20 = TAG_Bool(UNTAG_Int( variable18 /*index*/)<UNTAG_Int(variable20));
768 }
769 variable19 = variable20;
770 if (!UNTAG_Bool(variable19)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
771 variable19 = ATTR_array___Array____items( variable1 /*cargs*/) /*Array::_items*/;
772 variable19 = UNBOX_NativeArray(variable19)[UNTAG_Int( variable18 /*index*/)];
773 goto return_label26;
774 return_label26: while(false);
775 variable18 = variable19;
776 variable19 = variable18;
777 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable19) /*String::append*/;
778 variable20 = NEW_string___String___with_native(BOX_NativeString(","), TAG_Int(1)); /*new String*/
779 variable21 = variable20;
780 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable21) /*String::append*/;
781 variable22 = TAG_Int(1);
782 variable23 = TAG_Bool(UNTAG_Int( variable22 /*index*/)>=UNTAG_Int( TAG_Int(0)));
783 variable24 = variable23;
784 if (UNTAG_Bool(variable24)) { /* and */
785 variable24 = ATTR_array___AbstractArray____length( variable1 /*cargs*/) /*Array::_length*/;
786 variable24 = TAG_Bool(UNTAG_Int( variable22 /*index*/)<UNTAG_Int(variable24));
787 }
788 variable23 = variable24;
789 if (!UNTAG_Bool(variable23)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
790 variable23 = ATTR_array___Array____items( variable1 /*cargs*/) /*Array::_items*/;
791 variable23 = UNBOX_NativeArray(variable23)[UNTAG_Int( variable22 /*index*/)];
792 goto return_label27;
793 return_label27: while(false);
794 variable22 = variable23;
795 variable23 = variable22;
796 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable23) /*String::append*/;
797 variable24 = NEW_string___String___with_native(BOX_NativeString(")):("), TAG_Int(4)); /*new String*/
798 variable25 = variable24;
799 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable25) /*String::append*/;
800 variable26 = variable6 /*vcall*/;
801 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable26) /*String::append*/;
802 variable27 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
803 variable28 = variable27;
804 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable28) /*String::append*/;
805 variable6 = variable8 /*vcall=*/;
806 }
807 variable8 = NEW_string___String___init(); /*new String*/
808 variable9 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(("), TAG_Int(10)); /*new String*/
809 variable10 = variable9;
810 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable10) /*String::append*/;
811 variable11 = ((abstract_collection___IndexedCollection___first_t)CALL( variable1 /*cargs*/,COLOR_abstract_collection___Collection___first))( variable1 /*cargs*/) /*Array::first*/;
812 variable12 = variable11;
813 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable12) /*String::append*/;
814 variable13 = NEW_string___String___with_native(BOX_NativeString(" == "), TAG_Int(4)); /*new String*/
815 variable14 = variable13;
816 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable14) /*String::append*/;
817 variable15 = TAG_Int(1);
818 variable16 = TAG_Bool(UNTAG_Int( variable15 /*index*/)>=UNTAG_Int( TAG_Int(0)));
819 variable17 = variable16;
820 if (UNTAG_Bool(variable17)) { /* and */
821 variable17 = ATTR_array___AbstractArray____length( variable1 /*cargs*/) /*Array::_length*/;
822 variable17 = TAG_Bool(UNTAG_Int( variable15 /*index*/)<UNTAG_Int(variable17));
823 }
824 variable16 = variable17;
825 if (!UNTAG_Bool(variable16)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
826 variable16 = ATTR_array___Array____items( variable1 /*cargs*/) /*Array::_items*/;
827 variable16 = UNBOX_NativeArray(variable16)[UNTAG_Int( variable15 /*index*/)];
828 goto return_label28;
829 return_label28: while(false);
830 variable15 = variable16;
831 variable16 = variable15;
832 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable16) /*String::append*/;
833 variable17 = NEW_string___String___with_native(BOX_NativeString(") || (("), TAG_Int(7)); /*new String*/
834 variable18 = variable17;
835 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable18) /*String::append*/;
836 variable19 = ((abstract_collection___IndexedCollection___first_t)CALL( variable1 /*cargs*/,COLOR_abstract_collection___Collection___first))( variable1 /*cargs*/) /*Array::first*/;
837 variable20 = variable19;
838 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable20) /*String::append*/;
839 variable21 = NEW_string___String___with_native(BOX_NativeString(" != NIT_NULL) && "), TAG_Int(17)); /*new String*/
840 variable22 = variable21;
841 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable22) /*String::append*/;
842 variable23 = variable6 /*vcall*/;
843 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable23) /*String::append*/;
844 variable24 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
845 variable25 = variable24;
846 ((string___String___append_t)CALL(variable8,COLOR_abstract_collection___IndexedCollection___append))(variable8, variable25) /*String::append*/;
847 variable6 = variable8 /*vcall=*/;
848 }
849 variable7 = ((genericity___MMLocalProperty___signature_t)CALL( self,COLOR_static_type___MMLocalProperty___signature))( self) /*MMMethod::signature*/;
850 variable7 = ((static_type___MMSignature___return_type_t)CALL(variable7,COLOR_static_type___MMSignature___return_type))(variable7) /*MMSignature::return_type*/;
851 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable7 == NIT_NULL /*null*/) || ((variable7 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable7,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable7, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable7,COLOR_kernel___Object_____eqeq))(variable7, NIT_NULL /*null*/) /*MMType::==*/)))))));
852 if (UNTAG_Bool(variable7)) { /*if*/
853 variable2 = variable6 /*vcall*/;
854 goto return_label19;
855 } else { /*if*/
856 variable7 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
857 variable7 = ((string___String_____plus_t)CALL( variable6 /*vcall*/,COLOR_string___String_____plus))( variable6 /*vcall*/, variable7) /*String::+*/;
858 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable7) /*CompilerVisitor::add_instr*/;
859 variable2 = NIT_NULL /*null*/;
860 goto return_label19;
861 }
862 return_label19: while(false);
863 tracehead = trace.prev;
864 return variable2;
865 }
866 val_t compiling_methods___MMMethod___compile_constructor_call(val_t self, val_t param0, val_t param1) {
867 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMMethod___compile_constructor_call, 247};
868 val_t variable0;
869 val_t variable1;
870 val_t variable2;
871 val_t variable3;
872 val_t variable4;
873 val_t variable5;
874 val_t variable6;
875 val_t variable7;
876 val_t variable8;
877 val_t variable9;
878 val_t variable10;
879 val_t variable11;
880 val_t variable12;
881 val_t variable13;
882 val_t variable14;
883 val_t variable15;
884 val_t variable16;
885 val_t variable17;
886 val_t variable18;
887 val_t variable19;
888 val_t variable20;
889 trace.prev = tracehead; tracehead = &trace;
890 variable0 = param0;
891 variable1 = param1;
892 variable3 = ((compiling_methods___CompilerVisitor___get_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___get_var))( variable0 /*v*/) /*CompilerVisitor::get_var*/;
893 variable2 = variable3;
894 variable4 = ((genericity___MMLocalProperty___signature_t)CALL( self,COLOR_static_type___MMLocalProperty___signature))( self) /*MMMethod::signature*/;
895 variable4 = ((static_type___MMSignature___recv_t)CALL(variable4,COLOR_static_type___MMSignature___recv))(variable4) /*MMSignature::recv*/;
896 variable3 = variable4;
897 variable4 = NEW_string___String___init(); /*new String*/
898 variable5 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
899 variable6 = variable5;
900 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
901 variable7 = variable2 /*recv*/;
902 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable7) /*String::append*/;
903 variable8 = NEW_string___String___with_native(BOX_NativeString(" = NEW_"), TAG_Int(7)); /*new String*/
904 variable9 = variable8;
905 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable9) /*String::append*/;
906 variable10 = ((abstractmetamodel___MMLocalProperty___global_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___global))( self) /*MMMethod::global*/;
907 variable10 = ((abstractmetamodel___MMGlobalProperty___intro_t)CALL(variable10,COLOR_abstractmetamodel___MMGlobalProperty___intro))(variable10) /*MMGlobalProperty::intro*/;
908 variable10 = ((compiling_base___MMLocalProperty___cname_t)CALL(variable10,COLOR_compiling_base___MMLocalProperty___cname))(variable10) /*MMConcreteProperty::cname*/;
909 variable11 = variable10;
910 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable11) /*String::append*/;
911 variable12 = NEW_string___String___with_native(BOX_NativeString("("), TAG_Int(1)); /*new String*/
912 variable13 = variable12;
913 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable13) /*String::append*/;
914 variable14 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
915 variable14 = ((string___Collection___join_t)CALL( variable1 /*cargs*/,COLOR_string___Collection___join))( variable1 /*cargs*/, variable14) /*Array::join*/;
916 variable15 = variable14;
917 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable15) /*String::append*/;
918 variable16 = NEW_string___String___with_native(BOX_NativeString("); /*new "), TAG_Int(9)); /*new String*/
919 variable17 = variable16;
920 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable17) /*String::append*/;
921 variable18 = variable3 /*stype*/;
922 variable18 = ((string___String___to_s_t)CALL(variable18,COLOR_string___Object___to_s))(variable18) /*String::to_s*/;
923 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable18) /*String::append*/;
924 variable19 = NEW_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)); /*new String*/
925 variable20 = variable19;
926 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable20) /*String::append*/;
927 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable4) /*CompilerVisitor::add_instr*/;
928 variable2 = variable2 /*recv*/;
929 goto return_label29;
930 return_label29: while(false);
931 tracehead = trace.prev;
932 return variable2;
933 }
934 val_t compiling_methods___MMMethod___compile_super_call(val_t self, val_t param0, val_t param1) {
935 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMMethod___compile_super_call, 256};
936 val_t variable0;
937 val_t variable1;
938 val_t variable2;
939 val_t variable3;
940 val_t variable4;
941 val_t variable5;
942 val_t variable6;
943 val_t variable7;
944 val_t variable8;
945 val_t variable9;
946 val_t variable10;
947 val_t variable11;
948 val_t variable12;
949 val_t variable13;
950 val_t variable14;
951 val_t variable15;
952 val_t variable16;
953 val_t variable17;
954 val_t variable18;
955 val_t variable19;
956 val_t variable20;
957 val_t variable21;
958 trace.prev = tracehead; tracehead = &trace;
959 variable0 = param0;
960 variable1 = param1;
961 variable3 = NEW_string___String___init(); /*new String*/
962 variable4 = NEW_string___String___with_native(BOX_NativeString("(("), TAG_Int(2)); /*new String*/
963 variable5 = variable4;
964 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
965 variable6 = ((compiling_base___MMLocalProperty___cname_t)CALL( self,COLOR_compiling_base___MMLocalProperty___cname))( self) /*MMMethod::cname*/;
966 variable7 = variable6;
967 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable7) /*String::append*/;
968 variable8 = NEW_string___String___with_native(BOX_NativeString("_t)CALL("), TAG_Int(8)); /*new String*/
969 variable9 = variable8;
970 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
971 variable10 = TAG_Int(0);
972 variable11 = TAG_Bool(UNTAG_Int( variable10 /*index*/)>=UNTAG_Int( TAG_Int(0)));
973 variable12 = variable11;
974 if (UNTAG_Bool(variable12)) { /* and */
975 variable12 = ATTR_array___AbstractArray____length( variable1 /*cargs*/) /*Array::_length*/;
976 variable12 = TAG_Bool(UNTAG_Int( variable10 /*index*/)<UNTAG_Int(variable12));
977 }
978 variable11 = variable12;
979 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
980 variable11 = ATTR_array___Array____items( variable1 /*cargs*/) /*Array::_items*/;
981 variable11 = UNBOX_NativeArray(variable11)[UNTAG_Int( variable10 /*index*/)];
982 goto return_label31;
983 return_label31: while(false);
984 variable10 = variable11;
985 variable11 = variable10;
986 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable11) /*String::append*/;
987 variable12 = NEW_string___String___with_native(BOX_NativeString(","), TAG_Int(1)); /*new String*/
988 variable13 = variable12;
989 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable13) /*String::append*/;
990 variable14 = ((compiling_base___MMLocalProperty___color_id_for_super_t)CALL( self,COLOR_compiling_base___MMLocalProperty___color_id_for_super))( self) /*MMMethod::color_id_for_super*/;
991 variable15 = variable14;
992 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable15) /*String::append*/;
993 variable16 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
994 variable17 = variable16;
995 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable17) /*String::append*/;
996 variable2 = variable3;
997 variable4 = NEW_string___String___init(); /*new String*/
998 variable5 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
999 variable6 = variable5;
1000 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
1001 variable7 = variable2 /*m*/;
1002 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable7) /*String::append*/;
1003 variable8 = NEW_string___String___with_native(BOX_NativeString("("), TAG_Int(1)); /*new String*/
1004 variable9 = variable8;
1005 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable9) /*String::append*/;
1006 variable10 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
1007 variable10 = ((string___Collection___join_t)CALL( variable1 /*cargs*/,COLOR_string___Collection___join))( variable1 /*cargs*/, variable10) /*Array::join*/;
1008 variable11 = variable10;
1009 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable11) /*String::append*/;
1010 variable12 = NEW_string___String___with_native(BOX_NativeString(") /*super "), TAG_Int(10)); /*new String*/
1011 variable13 = variable12;
1012 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable13) /*String::append*/;
1013 variable14 = ((abstractmetamodel___MMLocalProperty___local_class_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___local_class))( self) /*MMMethod::local_class*/;
1014 variable15 = variable14;
1015 variable15 = ((string___String___to_s_t)CALL(variable15,COLOR_string___Object___to_s))(variable15) /*String::to_s*/;
1016 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable15) /*String::append*/;
1017 variable16 = NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
1018 variable17 = variable16;
1019 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable17) /*String::append*/;
1020 variable18 = ((abstractmetamodel___MMLocalProperty___name_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___name))( self) /*MMMethod::name*/;
1021 variable19 = variable18;
1022 variable19 = ((string___String___to_s_t)CALL(variable19,COLOR_string___Object___to_s))(variable19) /*String::to_s*/;
1023 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable19) /*String::append*/;
1024 variable20 = NEW_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)); /*new String*/
1025 variable21 = variable20;
1026 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable21) /*String::append*/;
1027 variable3 = variable4;
1028 variable2 = variable3 /*vcall*/;
1029 goto return_label30;
1030 return_label30: while(false);
1031 tracehead = trace.prev;
1032 return variable2;
1033 }
1034 val_t compiling_methods___MMAttribute___compile_access(val_t self, val_t param0, val_t param1) {
1035 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMAttribute___compile_access, 266};
1036 val_t variable0;
1037 val_t variable1;
1038 val_t variable2;
1039 val_t variable3;
1040 val_t variable4;
1041 val_t variable5;
1042 val_t variable6;
1043 val_t variable7;
1044 val_t variable8;
1045 val_t variable9;
1046 val_t variable10;
1047 val_t variable11;
1048 val_t variable12;
1049 val_t variable13;
1050 val_t variable14;
1051 val_t variable15;
1052 val_t variable16;
1053 val_t variable17;
1054 val_t variable18;
1055 val_t variable19;
1056 trace.prev = tracehead; tracehead = &trace;
1057 variable0 = param0;
1058 variable1 = param1;
1059 variable2 = NEW_string___String___init(); /*new String*/
1060 variable3 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1061 variable4 = variable3;
1062 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable4) /*String::append*/;
1063 variable5 = ((abstractmetamodel___MMLocalProperty___global_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___global))( self) /*MMAttribute::global*/;
1064 variable5 = ((compiling_base___MMGlobalProperty___attr_access_t)CALL(variable5,COLOR_compiling_base___MMGlobalProperty___attr_access))(variable5) /*MMGlobalProperty::attr_access*/;
1065 variable6 = variable5;
1066 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable6) /*String::append*/;
1067 variable7 = NEW_string___String___with_native(BOX_NativeString("("), TAG_Int(1)); /*new String*/
1068 variable8 = variable7;
1069 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable8) /*String::append*/;
1070 variable9 = variable1 /*recv*/;
1071 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable9) /*String::append*/;
1072 variable10 = NEW_string___String___with_native(BOX_NativeString(") /*"), TAG_Int(4)); /*new String*/
1073 variable11 = variable10;
1074 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable11) /*String::append*/;
1075 variable12 = ((abstractmetamodel___MMLocalProperty___local_class_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___local_class))( self) /*MMAttribute::local_class*/;
1076 variable13 = variable12;
1077 variable13 = ((string___String___to_s_t)CALL(variable13,COLOR_string___Object___to_s))(variable13) /*String::to_s*/;
1078 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable13) /*String::append*/;
1079 variable14 = NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
1080 variable15 = variable14;
1081 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable15) /*String::append*/;
1082 variable16 = ((abstractmetamodel___MMLocalProperty___name_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___name))( self) /*MMAttribute::name*/;
1083 variable17 = variable16;
1084 variable17 = ((string___String___to_s_t)CALL(variable17,COLOR_string___Object___to_s))(variable17) /*String::to_s*/;
1085 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable17) /*String::append*/;
1086 variable18 = NEW_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)); /*new String*/
1087 variable19 = variable18;
1088 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable19) /*String::append*/;
1089 goto return_label32;
1090 return_label32: while(false);
1091 tracehead = trace.prev;
1092 return variable2;
1093 }
1094 void compiling_methods___MMSrcLocalProperty___compile_property_to_c(val_t self, val_t param0) {
1095 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMSrcLocalProperty___compile_property_to_c, 275};
1096 val_t variable0;
1097 trace.prev = tracehead; tracehead = &trace;
1098 variable0 = param0;
1099 tracehead = trace.prev;
1100 return;
1101 }
1102 val_t compiling_methods___MMSrcMethod___decl_csignature(val_t self, val_t param0, val_t param1) {
1103 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMSrcMethod___decl_csignature, 280};
1104 val_t variable0;
1105 val_t variable1;
1106 val_t variable2;
1107 val_t variable3;
1108 val_t variable4;
1109 val_t variable5;
1110 val_t variable6;
1111 val_t variable7;
1112 val_t variable8;
1113 val_t variable9;
1114 val_t variable10;
1115 val_t variable11;
1116 val_t variable12;
1117 val_t variable13;
1118 val_t variable14;
1119 val_t variable15;
1120 val_t variable16;
1121 val_t variable17;
1122 val_t variable18;
1123 val_t variable19;
1124 trace.prev = tracehead; tracehead = &trace;
1125 variable0 = param0;
1126 variable1 = param1;
1127 variable3 = NEW_array___Array___init(); /*new Array[String]*/
1128 variable2 = variable3;
1129 variable3 = NIT_NULL /*decl variable params_new*/;
1130 variable4 = ((abstractmetamodel___MMLocalProperty___global_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___global))( self) /*MMSrcMethod::global*/;
1131 variable4 = ((abstractmetamodel___MMGlobalProperty___is_init_t)CALL(variable4,COLOR_abstractmetamodel___MMGlobalProperty___is_init))(variable4) /*MMGlobalProperty::is_init*/;
1132 if (UNTAG_Bool(variable4)) { /*if*/
1133 variable4 = NEW_array___Array___init(); /*new Array[String]*/
1134 variable3 = variable4 /*params_new=*/;
1135 }
1136 variable4 = NEW_string___String___init(); /*new String*/
1137 variable5 = NEW_string___String___with_native(BOX_NativeString("val_t "), TAG_Int(6)); /*new String*/
1138 variable6 = variable5;
1139 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
1140 variable7 = TAG_Int(0);
1141 variable8 = TAG_Bool(UNTAG_Int( variable7 /*index*/)>=UNTAG_Int( TAG_Int(0)));
1142 variable9 = variable8;
1143 if (UNTAG_Bool(variable9)) { /* and */
1144 variable9 = ATTR_array___AbstractArray____length( variable1 /*args*/) /*Array::_length*/;
1145 variable9 = TAG_Bool(UNTAG_Int( variable7 /*index*/)<UNTAG_Int(variable9));
1146 }
1147 variable8 = variable9;
1148 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
1149 variable8 = ATTR_array___Array____items( variable1 /*args*/) /*Array::_items*/;
1150 variable8 = UNBOX_NativeArray(variable8)[UNTAG_Int( variable7 /*index*/)];
1151 goto return_label35;
1152 return_label35: while(false);
1153 variable7 = variable8;
1154 variable8 = variable7;
1155 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable8) /*String::append*/;
1156 variable9 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1157 variable10 = variable9;
1158 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable10) /*String::append*/;
1159 ((array___AbstractArray___add_t)CALL( variable2 /*params*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*params*/, variable4) /*Array::add*/;
1160 variable4 = ((genericity___MMLocalProperty___signature_t)CALL( self,COLOR_static_type___MMLocalProperty___signature))( self) /*MMSrcMethod::signature*/;
1161 variable4 = ((static_type___MMSignature___arity_t)CALL(variable4,COLOR_static_type___MMSignature___arity))(variable4) /*MMSignature::arity*/;
1162 variable5 = NEW_range___Range___without_last( TAG_Int(0), variable4); /*new Range[Int]*/
1163 variable4 = variable5;
1164 variable4 = ((range___Range___iterator_t)CALL(variable4,COLOR_abstract_collection___Collection___iterator))(variable4) /*Range::iterator*/;
1165 while (true) { /*for*/
1166 variable5 = ((abstract_collection___Iterator___is_ok_t)CALL(variable4,COLOR_abstract_collection___Iterator___is_ok))(variable4) /*Iterator::is_ok*/;
1167 if (!UNTAG_Bool(variable5)) break; /*for*/
1168 variable5 = ((abstract_collection___Iterator___item_t)CALL(variable4,COLOR_abstract_collection___Iterator___item))(variable4) /*Iterator::item*/;
1169 variable7 = NEW_string___String___init(); /*new String*/
1170 variable8 = NEW_string___String___with_native(BOX_NativeString("val_t "), TAG_Int(6)); /*new String*/
1171 variable9 = variable8;
1172 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable9) /*String::append*/;
1173 variable10 = TAG_Int(UNTAG_Int( variable5 /*i*/)+UNTAG_Int( TAG_Int(1)));
1174 variable11 = variable10;
1175 variable12 = TAG_Bool(UNTAG_Int( variable11 /*index*/)>=UNTAG_Int( TAG_Int(0)));
1176 variable13 = variable12;
1177 if (UNTAG_Bool(variable13)) { /* and */
1178 variable13 = ATTR_array___AbstractArray____length( variable1 /*args*/) /*Array::_length*/;
1179 variable13 = TAG_Bool(UNTAG_Int( variable11 /*index*/)<UNTAG_Int(variable13));
1180 }
1181 variable12 = variable13;
1182 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
1183 variable12 = ATTR_array___Array____items( variable1 /*args*/) /*Array::_items*/;
1184 variable12 = UNBOX_NativeArray(variable12)[UNTAG_Int( variable11 /*index*/)];
1185 goto return_label37;
1186 return_label37: while(false);
1187 variable10 = variable12;
1188 variable11 = variable10;
1189 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable11) /*String::append*/;
1190 variable12 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1191 variable13 = variable12;
1192 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable13) /*String::append*/;
1193 variable6 = variable7;
1194 ((array___AbstractArray___add_t)CALL( variable2 /*params*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*params*/, variable6 /*p*/) /*Array::add*/;
1195 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable3 /*params_new*/ == NIT_NULL /*null*/) || (( variable3 /*params_new*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable3 /*params_new*/,COLOR_kernel___Object_____eqeq))( variable3 /*params_new*/, NIT_NULL /*null*/) /*Array::==*/)))));
1196 if (UNTAG_Bool(variable7)) { /*if*/
1197 ((array___AbstractArray___add_t)CALL( variable3 /*params_new*/,COLOR_abstract_collection___SimpleCollection___add))( variable3 /*params_new*/, variable6 /*p*/) /*Array::add*/;
1198 }
1199 continue_36: while(0);
1200 ((abstract_collection___Iterator___next_t)CALL(variable4,COLOR_abstract_collection___Iterator___next))(variable4) /*Iterator::next*/;
1201 }
1202 break_36: while(0);
1203 variable4 = ((abstractmetamodel___MMLocalProperty___global_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___global))( self) /*MMSrcMethod::global*/;
1204 variable4 = ((abstractmetamodel___MMGlobalProperty___is_init_t)CALL(variable4,COLOR_abstractmetamodel___MMGlobalProperty___is_init))(variable4) /*MMGlobalProperty::is_init*/;
1205 if (UNTAG_Bool(variable4)) { /*if*/
1206 variable4 = NEW_string___String___with_native(BOX_NativeString("int* init_table"), TAG_Int(15)); /*new String*/
1207 ((array___AbstractArray___add_t)CALL( variable2 /*params*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*params*/, variable4) /*Array::add*/;
1208 }
1209 variable4 = NIT_NULL /*decl variable ret*/;
1210 variable5 = ((genericity___MMLocalProperty___signature_t)CALL( self,COLOR_static_type___MMLocalProperty___signature))( self) /*MMSrcMethod::signature*/;
1211 variable5 = ((static_type___MMSignature___return_type_t)CALL(variable5,COLOR_static_type___MMSignature___return_type))(variable5) /*MMSignature::return_type*/;
1212 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable5 == NIT_NULL /*null*/) || ((variable5 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable5,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable5, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable5,COLOR_kernel___Object_____eqeq))(variable5, NIT_NULL /*null*/) /*MMType::==*/)))))));
1213 if (UNTAG_Bool(variable5)) { /*if*/
1214 variable5 = NEW_string___String___with_native(BOX_NativeString("val_t"), TAG_Int(5)); /*new String*/
1215 variable4 = variable5 /*ret=*/;
1216 } else { /*if*/
1217 variable5 = NEW_string___String___with_native(BOX_NativeString("void"), TAG_Int(4)); /*new String*/
1218 variable4 = variable5 /*ret=*/;
1219 }
1220 variable6 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
1221 variable6 = ((string___Collection___join_t)CALL( variable2 /*params*/,COLOR_string___Collection___join))( variable2 /*params*/, variable6) /*Array::join*/;
1222 variable5 = variable6;
1223 variable7 = NEW_string___String___init(); /*new String*/
1224 variable8 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1225 variable9 = variable8;
1226 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable9) /*String::append*/;
1227 variable10 = variable4 /*ret*/;
1228 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable10) /*String::append*/;
1229 variable11 = NEW_string___String___with_native(BOX_NativeString(" "), TAG_Int(1)); /*new String*/
1230 variable12 = variable11;
1231 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable12) /*String::append*/;
1232 variable13 = ((compiling_base___MMLocalProperty___cname_t)CALL( self,COLOR_compiling_base___MMLocalProperty___cname))( self) /*MMSrcMethod::cname*/;
1233 variable14 = variable13;
1234 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable14) /*String::append*/;
1235 variable15 = NEW_string___String___with_native(BOX_NativeString("("), TAG_Int(1)); /*new String*/
1236 variable16 = variable15;
1237 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable16) /*String::append*/;
1238 variable17 = variable5 /*p*/;
1239 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable17) /*String::append*/;
1240 variable18 = NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
1241 variable19 = variable18;
1242 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable19) /*String::append*/;
1243 variable6 = variable7;
1244 variable7 = NEW_string___String___init(); /*new String*/
1245 variable8 = NEW_string___String___with_native(BOX_NativeString("typedef "), TAG_Int(8)); /*new String*/
1246 variable9 = variable8;
1247 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable9) /*String::append*/;
1248 variable10 = variable4 /*ret*/;
1249 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable10) /*String::append*/;
1250 variable11 = NEW_string___String___with_native(BOX_NativeString(" (* "), TAG_Int(4)); /*new String*/
1251 variable12 = variable11;
1252 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable12) /*String::append*/;
1253 variable13 = ((compiling_base___MMLocalProperty___cname_t)CALL( self,COLOR_compiling_base___MMLocalProperty___cname))( self) /*MMSrcMethod::cname*/;
1254 variable14 = variable13;
1255 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable14) /*String::append*/;
1256 variable15 = NEW_string___String___with_native(BOX_NativeString("_t)("), TAG_Int(4)); /*new String*/
1257 variable16 = variable15;
1258 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable16) /*String::append*/;
1259 variable17 = variable5 /*p*/;
1260 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable17) /*String::append*/;
1261 variable18 = NEW_string___String___with_native(BOX_NativeString(");"), TAG_Int(2)); /*new String*/
1262 variable19 = variable18;
1263 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable19) /*String::append*/;
1264 ((compiling_base___CompilerVisitor___add_decl_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_decl))( variable0 /*v*/, variable7) /*CompilerVisitor::add_decl*/;
1265 variable7 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
1266 variable7 = ((string___String_____plus_t)CALL( variable6 /*s*/,COLOR_string___String_____plus))( variable6 /*s*/, variable7) /*String::+*/;
1267 ((compiling_base___CompilerVisitor___add_decl_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_decl))( variable0 /*v*/, variable7) /*CompilerVisitor::add_decl*/;
1268 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable3 /*params_new*/ == NIT_NULL /*null*/) || (( variable3 /*params_new*/ != NIT_NULL) && UNTAG_Bool(((array___AbstractArray_____eqeq_t)CALL( variable3 /*params_new*/,COLOR_kernel___Object_____eqeq))( variable3 /*params_new*/, NIT_NULL /*null*/) /*Array::==*/)))));
1269 if (UNTAG_Bool(variable7)) { /*if*/
1270 variable7 = NEW_string___String___init(); /*new String*/
1271 variable8 = NEW_string___String___with_native(BOX_NativeString("val_t NEW_"), TAG_Int(10)); /*new String*/
1272 variable9 = variable8;
1273 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable9) /*String::append*/;
1274 variable10 = ((compiling_base___MMLocalProperty___cname_t)CALL( self,COLOR_compiling_base___MMLocalProperty___cname))( self) /*MMSrcMethod::cname*/;
1275 variable11 = variable10;
1276 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable11) /*String::append*/;
1277 variable12 = NEW_string___String___with_native(BOX_NativeString("("), TAG_Int(1)); /*new String*/
1278 variable13 = variable12;
1279 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable13) /*String::append*/;
1280 variable14 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
1281 variable14 = ((string___Collection___join_t)CALL( variable3 /*params_new*/,COLOR_string___Collection___join))( variable3 /*params_new*/, variable14) /*Array::join*/;
1282 variable15 = variable14;
1283 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable15) /*String::append*/;
1284 variable16 = NEW_string___String___with_native(BOX_NativeString(");"), TAG_Int(2)); /*new String*/
1285 variable17 = variable16;
1286 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable17) /*String::append*/;
1287 ((compiling_base___CompilerVisitor___add_decl_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_decl))( variable0 /*v*/, variable7) /*CompilerVisitor::add_decl*/;
1288 }
1289 variable2 = variable6 /*s*/;
1290 goto return_label34;
1291 return_label34: while(false);
1292 tracehead = trace.prev;
1293 return variable2;
1294 }
1295 void compiling_methods___MMSrcMethod___compile_property_to_c(val_t self, val_t param0) {
1296 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMSrcMethod___compile_property_to_c, 313};
1297 val_t variable0;
1298 val_t variable1;
1299 val_t variable2;
1300 val_t variable3;
1301 val_t variable4;
1302 val_t variable5;
1303 val_t variable6;
1304 val_t variable7;
1305 val_t variable8;
1306 val_t variable9;
1307 val_t variable10;
1308 val_t variable11;
1309 val_t variable12;
1310 val_t variable13;
1311 val_t variable14;
1312 trace.prev = tracehead; tracehead = &trace;
1313 variable0 = param0;
1314 ((compiling_methods___CompilerVisitor___clear_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___clear))( variable0 /*v*/) /*CompilerVisitor::clear*/;
1315 variable2 = NEW_array___Array___init(); /*new Array[String]*/
1316 variable1 = variable2;
1317 variable2 = NEW_string___String___with_native(BOX_NativeString(" self"), TAG_Int(5)); /*new String*/
1318 ((array___AbstractArray___add_t)CALL( variable1 /*args*/,COLOR_abstract_collection___SimpleCollection___add))( variable1 /*args*/, variable2) /*Array::add*/;
1319 variable2 = ((genericity___MMLocalProperty___signature_t)CALL( self,COLOR_static_type___MMLocalProperty___signature))( self) /*MMSrcMethod::signature*/;
1320 variable2 = ((static_type___MMSignature___arity_t)CALL(variable2,COLOR_static_type___MMSignature___arity))(variable2) /*MMSignature::arity*/;
1321 variable3 = NEW_range___Range___without_last( TAG_Int(0), variable2); /*new Range[Int]*/
1322 variable2 = variable3;
1323 variable2 = ((range___Range___iterator_t)CALL(variable2,COLOR_abstract_collection___Collection___iterator))(variable2) /*Range::iterator*/;
1324 while (true) { /*for*/
1325 variable3 = ((abstract_collection___Iterator___is_ok_t)CALL(variable2,COLOR_abstract_collection___Iterator___is_ok))(variable2) /*Iterator::is_ok*/;
1326 if (!UNTAG_Bool(variable3)) break; /*for*/
1327 variable3 = ((abstract_collection___Iterator___item_t)CALL(variable2,COLOR_abstract_collection___Iterator___item))(variable2) /*Iterator::item*/;
1328 variable4 = NEW_string___String___init(); /*new String*/
1329 variable5 = NEW_string___String___with_native(BOX_NativeString(" param"), TAG_Int(6)); /*new String*/
1330 variable6 = variable5;
1331 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
1332 variable7 = variable3 /*i*/;
1333 variable7 = ((string___String___to_s_t)CALL(variable7,COLOR_string___Object___to_s))(variable7) /*String::to_s*/;
1334 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable7) /*String::append*/;
1335 variable8 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1336 variable9 = variable8;
1337 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable9) /*String::append*/;
1338 ((array___AbstractArray___add_t)CALL( variable1 /*args*/,COLOR_abstract_collection___SimpleCollection___add))( variable1 /*args*/, variable4) /*Array::add*/;
1339 continue_39: while(0);
1340 ((abstract_collection___Iterator___next_t)CALL(variable2,COLOR_abstract_collection___Iterator___next))(variable2) /*Iterator::next*/;
1341 }
1342 break_39: while(0);
1343 variable3 = ((compiling_methods___MMSrcMethod___decl_csignature_t)CALL( self,COLOR_compiling_methods___MMSrcMethod___decl_csignature))( self, variable0 /*v*/, variable1 /*args*/) /*MMSrcMethod::decl_csignature*/;
1344 variable2 = variable3;
1345 variable3 = NEW_string___String___init(); /*new String*/
1346 variable4 = NEW_string___String___with_native(BOX_NativeString("#define LOCATE_"), TAG_Int(15)); /*new String*/
1347 variable5 = variable4;
1348 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
1349 variable6 = ((compiling_base___MMLocalProperty___cname_t)CALL( self,COLOR_compiling_base___MMLocalProperty___cname))( self) /*MMSrcMethod::cname*/;
1350 variable7 = variable6;
1351 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable7) /*String::append*/;
1352 variable8 = NEW_string___String___with_native(BOX_NativeString(" \""), TAG_Int(2)); /*new String*/
1353 variable9 = variable8;
1354 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
1355 variable10 = ((abstractmetamodel___MMLocalProperty___full_name_t)CALL( self,COLOR_abstractmetamodel___MMLocalProperty___full_name))( self) /*MMSrcMethod::full_name*/;
1356 variable11 = variable10;
1357 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable11) /*String::append*/;
1358 variable12 = NEW_string___String___with_native(BOX_NativeString("\""), TAG_Int(1)); /*new String*/
1359 variable13 = variable12;
1360 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable13) /*String::append*/;
1361 ((compiling_base___CompilerVisitor___add_decl_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_decl))( variable0 /*v*/, variable3) /*CompilerVisitor::add_decl*/;
1362 variable3 = NEW_string___String___init(); /*new String*/
1363 variable4 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1364 variable5 = variable4;
1365 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
1366 variable6 = variable2 /*cs*/;
1367 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable6) /*String::append*/;
1368 variable7 = NEW_string___String___with_native(BOX_NativeString(" {"), TAG_Int(2)); /*new String*/
1369 variable8 = variable7;
1370 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable8) /*String::append*/;
1371 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable3) /*CompilerVisitor::add_instr*/;
1372 ((compiling_base___CompilerVisitor___indent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___indent))( variable0 /*v*/) /*CompilerVisitor::indent*/;
1373 variable4 = ((compiling_base___CompilerVisitor___ctx_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___ctx))( variable0 /*v*/) /*CompilerVisitor::ctx*/;
1374 variable3 = variable4;
1375 variable4 = NEW_compiling_base___CContext___init(); /*new CContext*/
1376 ((compiling_base___CompilerVisitor___ctx__eq_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___ctx__eq))( variable0 /*v*/, variable4) /*CompilerVisitor::ctx=*/;
1377 variable4 = NEW_string___String___init(); /*new String*/
1378 variable5 = NEW_string___String___with_native(BOX_NativeString("struct trace_t trace = {NULL, LOCATE_"), TAG_Int(37)); /*new String*/
1379 variable6 = variable5;
1380 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
1381 variable7 = ((compiling_base___MMLocalProperty___cname_t)CALL( self,COLOR_compiling_base___MMLocalProperty___cname))( self) /*MMSrcMethod::cname*/;
1382 variable8 = variable7;
1383 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable8) /*String::append*/;
1384 variable9 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
1385 variable10 = variable9;
1386 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable10) /*String::append*/;
1387 variable11 = ((syntax_base___MMSrcLocalProperty___node_t)CALL( self,COLOR_syntax_base___MMSrcLocalProperty___node))( self) /*MMSrcMethod::node*/;
1388 variable11 = ((parser_prod___Prod___line_number_t)CALL(variable11,COLOR_parser_prod___PNode___line_number))(variable11) /*PPropdef::line_number*/;
1389 variable12 = variable11;
1390 variable12 = ((string___String___to_s_t)CALL(variable12,COLOR_string___Object___to_s))(variable12) /*String::to_s*/;
1391 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable12) /*String::append*/;
1392 variable13 = NEW_string___String___with_native(BOX_NativeString("};"), TAG_Int(2)); /*new String*/
1393 variable14 = variable13;
1394 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable14) /*String::append*/;
1395 ((compiling_base___CompilerVisitor___add_decl_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_decl))( variable0 /*v*/, variable4) /*CompilerVisitor::add_decl*/;
1396 variable4 = NEW_string___String___with_native(BOX_NativeString("trace.prev = tracehead; tracehead = &trace;"), TAG_Int(43)); /*new String*/
1397 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable4) /*CompilerVisitor::add_instr*/;
1398 variable5 = ((compiling_methods___MMSrcMethod___do_compile_inside_t)CALL( self,COLOR_compiling_methods___MMSrcMethod___do_compile_inside))( self, variable0 /*v*/, variable1 /*args*/) /*MMSrcMethod::do_compile_inside*/;
1399 variable4 = variable5;
1400 variable5 = NEW_string___String___with_native(BOX_NativeString("tracehead = trace.prev;"), TAG_Int(23)); /*new String*/
1401 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable5) /*CompilerVisitor::add_instr*/;
1402 variable5 = TAG_Bool(( variable4 /*s*/ == NIT_NULL /*null*/) || (( variable4 /*s*/ != NIT_NULL) && UNTAG_Bool(((string___String_____eqeq_t)CALL( variable4 /*s*/,COLOR_kernel___Object_____eqeq))( variable4 /*s*/, NIT_NULL /*null*/) /*String::==*/)));
1403 if (UNTAG_Bool(variable5)) { /*if*/
1404 variable5 = NEW_string___String___with_native(BOX_NativeString("return;"), TAG_Int(7)); /*new String*/
1405 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable5) /*CompilerVisitor::add_instr*/;
1406 } else { /*if*/
1407 variable5 = NEW_string___String___init(); /*new String*/
1408 variable6 = NEW_string___String___with_native(BOX_NativeString("return "), TAG_Int(7)); /*new String*/
1409 variable7 = variable6;
1410 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable7) /*String::append*/;
1411 variable8 = variable4 /*s*/;
1412 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable8) /*String::append*/;
1413 variable9 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
1414 variable10 = variable9;
1415 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable10) /*String::append*/;
1416 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable5) /*CompilerVisitor::add_instr*/;
1417 }
1418 variable5 = ((compiling_base___CompilerVisitor___ctx_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___ctx))( variable0 /*v*/) /*CompilerVisitor::ctx*/;
1419 ((compiling_base___CContext___append_t)CALL( variable3 /*ctx_old*/,COLOR_compiling_base___CContext___append))( variable3 /*ctx_old*/, variable5) /*CContext::append*/;
1420 ((compiling_base___CompilerVisitor___ctx__eq_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___ctx__eq))( variable0 /*v*/, variable3 /*ctx_old*/) /*CompilerVisitor::ctx=*/;
1421 ((compiling_base___CompilerVisitor___unindent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___unindent))( variable0 /*v*/) /*CompilerVisitor::unindent*/;
1422 variable5 = NEW_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)); /*new String*/
1423 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable5) /*CompilerVisitor::add_instr*/;
1424 tracehead = trace.prev;
1425 return;
1426 }
1427 val_t compiling_methods___MMSrcMethod___do_compile_inside(val_t self, val_t param0, val_t param1) {
1428 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMSrcMethod___do_compile_inside, 345};
1429 trace.prev = tracehead; tracehead = &trace;
1430 fprintf(stderr, "Deferred method %s called (%s: %d)\n", "do_compile_inside", LOCATE_compiling_methods___MMSrcMethod___compile_property_to_c, 345);
1431 nit_exit(1);
1432 tracehead = trace.prev;
1433 return NIT_NULL;
1434 }
1435 val_t compiling_methods___MMReadImplementationMethod___do_compile_inside(val_t self, val_t param0, val_t param1) {
1436 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMReadImplementationMethod___do_compile_inside, 350};
1437 val_t variable0;
1438 val_t variable1;
1439 val_t variable2;
1440 val_t variable3;
1441 val_t variable4;
1442 val_t variable5;
1443 trace.prev = tracehead; tracehead = &trace;
1444 variable0 = param0;
1445 variable1 = param1;
1446 variable2 = ((syntax_base___MMSrcLocalProperty___node_t)CALL( self,COLOR_syntax_base___MMSrcLocalProperty___node))( self) /*MMReadImplementationMethod::node*/;
1447 variable2 = ((mmbuilder___AAttrPropdef___prop_t)CALL(variable2,COLOR_syntax_base___AAttrPropdef___prop))(variable2) /*AAttrPropdef::prop*/;
1448 variable3 = TAG_Int(0);
1449 variable4 = TAG_Bool(UNTAG_Int( variable3 /*index*/)>=UNTAG_Int( TAG_Int(0)));
1450 variable5 = variable4;
1451 if (UNTAG_Bool(variable5)) { /* and */
1452 variable5 = ATTR_array___AbstractArray____length( variable1 /*params*/) /*Array::_length*/;
1453 variable5 = TAG_Bool(UNTAG_Int( variable3 /*index*/)<UNTAG_Int(variable5));
1454 }
1455 variable4 = variable5;
1456 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
1457 variable4 = ATTR_array___Array____items( variable1 /*params*/) /*Array::_items*/;
1458 variable4 = UNBOX_NativeArray(variable4)[UNTAG_Int( variable3 /*index*/)];
1459 goto return_label41;
1460 return_label41: while(false);
1461 variable3 = variable4;
1462 variable2 = ((compiling_methods___MMAttribute___compile_access_t)CALL(variable2,COLOR_compiling_methods___MMAttribute___compile_access))(variable2, variable0 /*v*/, variable3) /*MMSrcAttribute::compile_access*/;
1463 goto return_label40;
1464 return_label40: while(false);
1465 tracehead = trace.prev;
1466 return variable2;
1467 }
1468 val_t compiling_methods___MMWriteImplementationMethod___do_compile_inside(val_t self, val_t param0, val_t param1) {
1469 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMWriteImplementationMethod___do_compile_inside, 357};
1470 val_t variable0;
1471 val_t variable1;
1472 val_t variable2;
1473 val_t variable3;
1474 val_t variable4;
1475 val_t variable5;
1476 trace.prev = tracehead; tracehead = &trace;
1477 variable0 = param0;
1478 variable1 = param1;
1479 variable2 = ((syntax_base___MMSrcLocalProperty___node_t)CALL( self,COLOR_syntax_base___MMSrcLocalProperty___node))( self) /*MMWriteImplementationMethod::node*/;
1480 variable2 = ((mmbuilder___AAttrPropdef___prop_t)CALL(variable2,COLOR_syntax_base___AAttrPropdef___prop))(variable2) /*AAttrPropdef::prop*/;
1481 variable3 = TAG_Int(0);
1482 variable4 = TAG_Bool(UNTAG_Int( variable3 /*index*/)>=UNTAG_Int( TAG_Int(0)));
1483 variable5 = variable4;
1484 if (UNTAG_Bool(variable5)) { /* and */
1485 variable5 = ATTR_array___AbstractArray____length( variable1 /*params*/) /*Array::_length*/;
1486 variable5 = TAG_Bool(UNTAG_Int( variable3 /*index*/)<UNTAG_Int(variable5));
1487 }
1488 variable4 = variable5;
1489 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
1490 variable4 = ATTR_array___Array____items( variable1 /*params*/) /*Array::_items*/;
1491 variable4 = UNBOX_NativeArray(variable4)[UNTAG_Int( variable3 /*index*/)];
1492 goto return_label43;
1493 return_label43: while(false);
1494 variable3 = variable4;
1495 variable2 = ((compiling_methods___MMAttribute___compile_access_t)CALL(variable2,COLOR_compiling_methods___MMAttribute___compile_access))(variable2, variable0 /*v*/, variable3) /*MMSrcAttribute::compile_access*/;
1496 variable3 = TAG_Int(1);
1497 variable4 = TAG_Bool(UNTAG_Int( variable3 /*index*/)>=UNTAG_Int( TAG_Int(0)));
1498 variable5 = variable4;
1499 if (UNTAG_Bool(variable5)) { /* and */
1500 variable5 = ATTR_array___AbstractArray____length( variable1 /*params*/) /*Array::_length*/;
1501 variable5 = TAG_Bool(UNTAG_Int( variable3 /*index*/)<UNTAG_Int(variable5));
1502 }
1503 variable4 = variable5;
1504 if (!UNTAG_Bool(variable4)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
1505 variable4 = ATTR_array___Array____items( variable1 /*params*/) /*Array::_items*/;
1506 variable4 = UNBOX_NativeArray(variable4)[UNTAG_Int( variable3 /*index*/)];
1507 goto return_label44;
1508 return_label44: while(false);
1509 variable3 = variable4;
1510 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable2, variable3) /*CompilerVisitor::add_assignment*/;
1511 variable2 = NIT_NULL /*null*/;
1512 goto return_label42;
1513 return_label42: while(false);
1514 tracehead = trace.prev;
1515 return variable2;
1516 }
1517 val_t compiling_methods___MMMethSrcMethod___do_compile_inside(val_t self, val_t param0, val_t param1) {
1518 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMMethSrcMethod___do_compile_inside, 365};
1519 val_t variable0;
1520 val_t variable1;
1521 val_t variable2;
1522 trace.prev = tracehead; tracehead = &trace;
1523 variable0 = param0;
1524 variable1 = param1;
1525 variable2 = ((syntax_base___MMSrcLocalProperty___node_t)CALL( self,COLOR_syntax_base___MMSrcLocalProperty___node))( self) /*MMMethSrcMethod::node*/;
1526 variable2 = ((compiling_methods___AMethPropdef___do_compile_inside_t)CALL(variable2,COLOR_compiling_methods___AMethPropdef___do_compile_inside))(variable2, variable0 /*v*/, self, variable1 /*params*/) /*AMethPropdef::do_compile_inside*/;
1527 goto return_label45;
1528 return_label45: while(false);
1529 tracehead = trace.prev;
1530 return variable2;
1531 }
1532 val_t compiling_methods___MMType___compile_cast(val_t self, val_t param0, val_t param1) {
1533 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMType___compile_cast, 372};
1534 val_t variable0;
1535 val_t variable1;
1536 val_t variable2;
1537 val_t variable3;
1538 val_t variable4;
1539 val_t variable5;
1540 val_t variable6;
1541 val_t variable7;
1542 val_t variable8;
1543 val_t variable9;
1544 val_t variable10;
1545 val_t variable11;
1546 val_t variable12;
1547 val_t variable13;
1548 val_t variable14;
1549 val_t variable15;
1550 val_t variable16;
1551 val_t variable17;
1552 val_t variable18;
1553 val_t variable19;
1554 val_t variable20;
1555 val_t variable21;
1556 val_t variable22;
1557 trace.prev = tracehead; tracehead = &trace;
1558 variable0 = param0;
1559 variable1 = param1;
1560 variable3 = ((static_type___MMType___local_class_t)CALL( self,COLOR_static_type___MMType___local_class))( self) /*MMType::local_class*/;
1561 variable3 = ((abstractmetamodel___MMLocalClass___global_t)CALL(variable3,COLOR_abstractmetamodel___MMLocalClass___global))(variable3) /*MMLocalClass::global*/;
1562 variable2 = variable3;
1563 variable3 = NEW_string___String___init(); /*new String*/
1564 variable4 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(("), TAG_Int(10)); /*new String*/
1565 variable5 = variable4;
1566 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
1567 variable6 = variable1 /*recv*/;
1568 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable6) /*String::append*/;
1569 variable7 = NEW_string___String___with_native(BOX_NativeString("==NIT_NULL) || VAL_ISA("), TAG_Int(23)); /*new String*/
1570 variable8 = variable7;
1571 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable8) /*String::append*/;
1572 variable9 = variable1 /*recv*/;
1573 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
1574 variable10 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
1575 variable11 = variable10;
1576 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable11) /*String::append*/;
1577 variable12 = ((compiling_base___MMGlobalClass___color_id_t)CALL( variable2 /*g*/,COLOR_compiling_base___MMGlobalClass___color_id))( variable2 /*g*/) /*MMGlobalClass::color_id*/;
1578 variable13 = variable12;
1579 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable13) /*String::append*/;
1580 variable14 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
1581 variable15 = variable14;
1582 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable15) /*String::append*/;
1583 variable16 = ((compiling_base___MMGlobalClass___id_id_t)CALL( variable2 /*g*/,COLOR_compiling_base___MMGlobalClass___id_id))( variable2 /*g*/) /*MMGlobalClass::id_id*/;
1584 variable17 = variable16;
1585 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable17) /*String::append*/;
1586 variable18 = NEW_string___String___with_native(BOX_NativeString(")) /*cast "), TAG_Int(10)); /*new String*/
1587 variable19 = variable18;
1588 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable19) /*String::append*/;
1589 variable20 = self;
1590 variable20 = ((string___String___to_s_t)CALL(variable20,COLOR_string___Object___to_s))(variable20) /*String::to_s*/;
1591 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable20) /*String::append*/;
1592 variable21 = NEW_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)); /*new String*/
1593 variable22 = variable21;
1594 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable22) /*String::append*/;
1595 variable2 = variable3;
1596 goto return_label46;
1597 return_label46: while(false);
1598 tracehead = trace.prev;
1599 return variable2;
1600 }
1601 void compiling_methods___MMType___compile_type_check(val_t self, val_t param0, val_t param1, val_t param2) {
1602 struct trace_t trace = {NULL, LOCATE_compiling_methods___MMType___compile_type_check, 381};
1603 val_t variable0;
1604 val_t variable1;
1605 val_t variable2;
1606 val_t variable3;
1607 val_t variable4;
1608 val_t variable5;
1609 val_t variable6;
1610 val_t variable7;
1611 val_t variable8;
1612 val_t variable9;
1613 val_t variable10;
1614 val_t variable11;
1615 val_t variable12;
1616 val_t variable13;
1617 val_t variable14;
1618 val_t variable15;
1619 val_t variable16;
1620 val_t variable17;
1621 val_t variable18;
1622 val_t variable19;
1623 val_t variable20;
1624 val_t variable21;
1625 val_t variable22;
1626 val_t variable23;
1627 val_t variable24;
1628 val_t variable25;
1629 val_t variable26;
1630 val_t variable27;
1631 val_t variable28;
1632 val_t variable29;
1633 val_t variable30;
1634 val_t variable31;
1635 trace.prev = tracehead; tracehead = &trace;
1636 variable0 = param0;
1637 variable1 = param1;
1638 variable2 = param2;
1639 variable4 = ((static_type___MMType___local_class_t)CALL( self,COLOR_static_type___MMType___local_class))( self) /*MMType::local_class*/;
1640 variable4 = ((abstractmetamodel___MMLocalClass___global_t)CALL(variable4,COLOR_abstractmetamodel___MMLocalClass___global))(variable4) /*MMLocalClass::global*/;
1641 variable3 = variable4;
1642 variable4 = NEW_string___String___init(); /*new String*/
1643 variable5 = NEW_string___String___with_native(BOX_NativeString("if (("), TAG_Int(5)); /*new String*/
1644 variable6 = variable5;
1645 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
1646 variable7 = variable1 /*recv*/;
1647 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable7) /*String::append*/;
1648 variable8 = NEW_string___String___with_native(BOX_NativeString("!=NIT_NULL) && !VAL_ISA("), TAG_Int(24)); /*new String*/
1649 variable9 = variable8;
1650 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable9) /*String::append*/;
1651 variable10 = variable1 /*recv*/;
1652 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable10) /*String::append*/;
1653 variable11 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
1654 variable12 = variable11;
1655 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable12) /*String::append*/;
1656 variable13 = ((compiling_base___MMGlobalClass___color_id_t)CALL( variable3 /*g*/,COLOR_compiling_base___MMGlobalClass___color_id))( variable3 /*g*/) /*MMGlobalClass::color_id*/;
1657 variable14 = variable13;
1658 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable14) /*String::append*/;
1659 variable15 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
1660 variable16 = variable15;
1661 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable16) /*String::append*/;
1662 variable17 = ((compiling_base___MMGlobalClass___id_id_t)CALL( variable3 /*g*/,COLOR_compiling_base___MMGlobalClass___id_id))( variable3 /*g*/) /*MMGlobalClass::id_id*/;
1663 variable18 = variable17;
1664 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable18) /*String::append*/;
1665 variable19 = NEW_string___String___with_native(BOX_NativeString(")) { fprintf(stderr, \"Cast failled (%s: %d)\\n\", "), TAG_Int(48)); /*new String*/
1666 variable20 = variable19;
1667 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable20) /*String::append*/;
1668 variable21 = ((compiling_methods___CompilerVisitor___locate_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___locate))( variable0 /*v*/) /*CompilerVisitor::locate*/;
1669 variable22 = variable21;
1670 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable22) /*String::append*/;
1671 variable23 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
1672 variable24 = variable23;
1673 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable24) /*String::append*/;
1674 variable25 = ((parser_prod___PNode___line_number_t)CALL( variable2 /*n*/,COLOR_parser_prod___PNode___line_number))( variable2 /*n*/) /*PNode::line_number*/;
1675 variable26 = variable25;
1676 variable26 = ((string___String___to_s_t)CALL(variable26,COLOR_string___Object___to_s))(variable26) /*String::to_s*/;
1677 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable26) /*String::append*/;
1678 variable27 = NEW_string___String___with_native(BOX_NativeString("); nit_exit(1); } /*cast "), TAG_Int(25)); /*new String*/
1679 variable28 = variable27;
1680 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable28) /*String::append*/;
1681 variable29 = self;
1682 variable29 = ((string___String___to_s_t)CALL(variable29,COLOR_string___Object___to_s))(variable29) /*String::to_s*/;
1683 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable29) /*String::append*/;
1684 variable30 = NEW_string___String___with_native(BOX_NativeString("*/;"), TAG_Int(3)); /*new String*/
1685 variable31 = variable30;
1686 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable31) /*String::append*/;
1687 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable4) /*CompilerVisitor::add_instr*/;
1688 tracehead = trace.prev;
1689 return;
1690 }
1691 val_t compiling_methods___AMethPropdef___do_compile_inside(val_t self, val_t param0, val_t param1, val_t param2) {
1692 struct trace_t trace = {NULL, LOCATE_compiling_methods___AMethPropdef___do_compile_inside, 393};
1693 trace.prev = tracehead; tracehead = &trace;
1694 fprintf(stderr, "Deferred method %s called (%s: %d)\n", "do_compile_inside", LOCATE_compiling_methods___MMType___compile_type_check, 393);
1695 nit_exit(1);
1696 tracehead = trace.prev;
1697 return NIT_NULL;
1698 }
1699 val_t compiling_methods___AConcreteMethPropdef___do_compile_inside(val_t self, val_t param0, val_t param1, val_t param2) {
1700 struct trace_t trace = {NULL, LOCATE_compiling_methods___AConcreteMethPropdef___do_compile_inside, 398};
1701 val_t variable0;
1702 val_t variable1;
1703 val_t variable2;
1704 val_t variable3;
1705 val_t variable4;
1706 val_t variable5;
1707 val_t variable6;
1708 val_t variable7;
1709 val_t variable8;
1710 val_t variable9;
1711 val_t variable10;
1712 val_t variable11;
1713 val_t variable12;
1714 val_t variable13;
1715 val_t variable14;
1716 val_t variable15;
1717 val_t variable16;
1718 val_t variable17;
1719 val_t variable18;
1720 val_t variable19;
1721 val_t variable20;
1722 trace.prev = tracehead; tracehead = &trace;
1723 variable0 = param0;
1724 variable1 = param1;
1725 variable2 = param2;
1726 variable4 = ((abstractmetamodel___MMLocalProperty___global_t)CALL( variable1 /*method*/,COLOR_abstractmetamodel___MMLocalProperty___global))( variable1 /*method*/) /*MMSrcMethod::global*/;
1727 variable4 = ((abstractmetamodel___MMGlobalProperty___intro_t)CALL(variable4,COLOR_abstractmetamodel___MMGlobalProperty___intro))(variable4) /*MMGlobalProperty::intro*/;
1728 variable3 = variable4;
1729 variable5 = ((genericity___MMLocalProperty___signature_t)CALL( variable3 /*orig_meth*/,COLOR_static_type___MMLocalProperty___signature))( variable3 /*orig_meth*/) /*MMLocalProperty::signature*/;
1730 variable6 = ((genericity___MMLocalProperty___signature_t)CALL( variable1 /*method*/,COLOR_static_type___MMLocalProperty___signature))( variable1 /*method*/) /*MMSrcMethod::signature*/;
1731 variable6 = ((static_type___MMSignature___recv_t)CALL(variable6,COLOR_static_type___MMSignature___recv))(variable6) /*MMSignature::recv*/;
1732 variable5 = ((vararg___MMSignature___adaptation_to_t)CALL(variable5,COLOR_genericity___MMSignature___adaptation_to))(variable5, variable6) /*MMSignature::adaptation_to*/;
1733 variable4 = variable5;
1734 variable5 = ((parser_nodes___AMethPropdef___n_signature_t)CALL( self,COLOR_parser_nodes___AMethPropdef___n_signature))( self) /*AConcreteMethPropdef::n_signature*/;
1735 variable5 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable5 == NIT_NULL /*null*/) || ((variable5 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable5,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable5, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable5,COLOR_kernel___Object_____eqeq))(variable5, NIT_NULL /*null*/) /*PSignature::==*/)))))));
1736 if (UNTAG_Bool(variable5)) { /*if*/
1737 variable6 = ((parser_nodes___AMethPropdef___n_signature_t)CALL( self,COLOR_parser_nodes___AMethPropdef___n_signature))( self) /*AConcreteMethPropdef::n_signature*/;
1738 variable5 = variable6;
1739 variable6 = TAG_Bool(( variable5 /*sig*/==NIT_NULL) || VAL_ISA( variable5 /*sig*/, COLOR_ASignature, ID_ASignature)) /*cast ASignature*/;
1740 if (!UNTAG_Bool(variable6)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", "", LOCATE_compiling_methods___AConcreteMethPropdef___do_compile_inside, 404); nit_exit(1);}
1741 variable6 = ((parser_nodes___ASignature___n_params_t)CALL( variable5 /*sig*/,COLOR_parser_nodes___ASignature___n_params))( variable5 /*sig*/) /*ASignature::n_params*/;
1742 variable6 = ((list___List___iterator_t)CALL(variable6,COLOR_abstract_collection___Collection___iterator))(variable6) /*List::iterator*/;
1743 while (true) { /*for*/
1744 variable7 = ((list___ListIterator___is_ok_t)CALL(variable6,COLOR_abstract_collection___Iterator___is_ok))(variable6) /*ListIterator::is_ok*/;
1745 if (!UNTAG_Bool(variable7)) break; /*for*/
1746 variable7 = ((list___ListIterator___item_t)CALL(variable6,COLOR_abstract_collection___Iterator___item))(variable6) /*ListIterator::item*/;
1747 variable9 = ((compiling_methods___CompilerVisitor___get_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___get_var))( variable0 /*v*/) /*CompilerVisitor::get_var*/;
1748 variable8 = variable9;
1749 variable9 = ((compiling_methods___CompilerVisitor___varnames_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___varnames))( variable0 /*v*/) /*CompilerVisitor::varnames*/;
1750 variable10 = ((mmbuilder___PParam___variable_t)CALL( variable7 /*ap*/,COLOR_syntax_base___PParam___variable))( variable7 /*ap*/) /*PParam::variable*/;
1751 ((abstract_collection___Map_____braeq_t)CALL(variable9,COLOR_abstract_collection___Map_____braeq))(variable9, variable10, variable8 /*cname*/) /*Map::[]=*/;
1752 variable10 = ((mmbuilder___PParam___position_t)CALL( variable7 /*ap*/,COLOR_syntax_base___PParam___position))( variable7 /*ap*/) /*PParam::position*/;
1753 variable10 = ((static_type___MMSignature_____bra_t)CALL( variable4 /*orig_sig*/,COLOR_static_type___MMSignature_____bra))( variable4 /*orig_sig*/, variable10) /*MMSignature::[]*/;
1754 variable9 = variable10;
1755 variable10 = ((mmbuilder___PParam___variable_t)CALL( variable7 /*ap*/,COLOR_syntax_base___PParam___variable))( variable7 /*ap*/) /*PParam::variable*/;
1756 variable10 = ((syntax_base___Variable___stype_t)CALL(variable10,COLOR_syntax_base___Variable___stype))(variable10) /*Variable::stype*/;
1757 variable10 = ((static_type___MMType_____l_t)CALL( variable9 /*orig_type*/,COLOR_static_type___MMType_____l))( variable9 /*orig_type*/, variable10) /*MMType::<*/;
1758 if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable10)))) { /*if*/
1759 variable10 = NEW_string___String___init(); /*new String*/
1760 variable11 = NEW_string___String___with_native(BOX_NativeString("/* check if p<"), TAG_Int(14)); /*new String*/
1761 variable12 = variable11;
1762 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable12) /*String::append*/;
1763 variable13 = ((mmbuilder___PParam___variable_t)CALL( variable7 /*ap*/,COLOR_syntax_base___PParam___variable))( variable7 /*ap*/) /*PParam::variable*/;
1764 variable13 = ((syntax_base___Variable___stype_t)CALL(variable13,COLOR_syntax_base___Variable___stype))(variable13) /*Variable::stype*/;
1765 variable14 = variable13;
1766 variable14 = ((string___String___to_s_t)CALL(variable14,COLOR_string___Object___to_s))(variable14) /*String::to_s*/;
1767 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable14) /*String::append*/;
1768 variable15 = NEW_string___String___with_native(BOX_NativeString(" with p:"), TAG_Int(8)); /*new String*/
1769 variable16 = variable15;
1770 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable16) /*String::append*/;
1771 variable17 = variable9 /*orig_type*/;
1772 variable17 = ((string___String___to_s_t)CALL(variable17,COLOR_string___Object___to_s))(variable17) /*String::to_s*/;
1773 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable17) /*String::append*/;
1774 variable18 = NEW_string___String___with_native(BOX_NativeString(" */"), TAG_Int(3)); /*new String*/
1775 variable19 = variable18;
1776 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable19) /*String::append*/;
1777 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable10) /*CompilerVisitor::add_instr*/;
1778 variable10 = ((mmbuilder___PParam___variable_t)CALL( variable7 /*ap*/,COLOR_syntax_base___PParam___variable))( variable7 /*ap*/) /*PParam::variable*/;
1779 variable10 = ((syntax_base___Variable___stype_t)CALL(variable10,COLOR_syntax_base___Variable___stype))(variable10) /*Variable::stype*/;
1780 variable11 = ((mmbuilder___PParam___position_t)CALL( variable7 /*ap*/,COLOR_syntax_base___PParam___position))( variable7 /*ap*/) /*PParam::position*/;
1781 variable11 = TAG_Int(UNTAG_Int(variable11)+UNTAG_Int( TAG_Int(1)));
1782 variable12 = variable11;
1783 variable13 = TAG_Bool(UNTAG_Int( variable12 /*index*/)>=UNTAG_Int( TAG_Int(0)));
1784 variable14 = variable13;
1785 if (UNTAG_Bool(variable14)) { /* and */
1786 variable14 = ATTR_array___AbstractArray____length( variable2 /*params*/) /*Array::_length*/;
1787 variable14 = TAG_Bool(UNTAG_Int( variable12 /*index*/)<UNTAG_Int(variable14));
1788 }
1789 variable13 = variable14;
1790 if (!UNTAG_Bool(variable13)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
1791 variable13 = ATTR_array___Array____items( variable2 /*params*/) /*Array::_items*/;
1792 variable13 = UNBOX_NativeArray(variable13)[UNTAG_Int( variable12 /*index*/)];
1793 goto return_label50;
1794 return_label50: while(false);
1795 variable11 = variable13;
1796 ((compiling_methods___MMType___compile_type_check_t)CALL(variable10,COLOR_compiling_methods___MMType___compile_type_check))(variable10, variable0 /*v*/, variable11, variable7 /*ap*/) /*MMType::compile_type_check*/;
1797 }
1798 variable10 = ((mmbuilder___PParam___position_t)CALL( variable7 /*ap*/,COLOR_syntax_base___PParam___position))( variable7 /*ap*/) /*PParam::position*/;
1799 variable10 = TAG_Int(UNTAG_Int(variable10)+UNTAG_Int( TAG_Int(1)));
1800 variable11 = variable10;
1801 variable12 = TAG_Bool(UNTAG_Int( variable11 /*index*/)>=UNTAG_Int( TAG_Int(0)));
1802 variable13 = variable12;
1803 if (UNTAG_Bool(variable13)) { /* and */
1804 variable13 = ATTR_array___AbstractArray____length( variable2 /*params*/) /*Array::_length*/;
1805 variable13 = TAG_Bool(UNTAG_Int( variable11 /*index*/)<UNTAG_Int(variable13));
1806 }
1807 variable12 = variable13;
1808 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
1809 variable12 = ATTR_array___Array____items( variable2 /*params*/) /*Array::_items*/;
1810 variable12 = UNBOX_NativeArray(variable12)[UNTAG_Int( variable11 /*index*/)];
1811 goto return_label51;
1812 return_label51: while(false);
1813 variable10 = variable12;
1814 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable8 /*cname*/, variable10) /*CompilerVisitor::add_assignment*/;
1815 continue_49: while(0);
1816 ((list___ListIterator___next_t)CALL(variable6,COLOR_abstract_collection___Iterator___next))(variable6) /*ListIterator::next*/;
1817 }
1818 break_49: while(0);
1819 }
1820 variable6 = ((compiling_methods___CompilerVisitor___method_params_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___method_params))( variable0 /*v*/) /*CompilerVisitor::method_params*/;
1821 variable5 = variable6;
1822 variable7 = ((compiling_methods___CompilerVisitor___return_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_label))( variable0 /*v*/) /*CompilerVisitor::return_label*/;
1823 variable6 = variable7;
1824 variable8 = ((compiling_methods___CompilerVisitor___return_value_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_value))( variable0 /*v*/) /*CompilerVisitor::return_value*/;
1825 variable7 = variable8;
1826 variable9 = ((compiling_methods___CompilerVisitor___has_return_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___has_return))( variable0 /*v*/) /*CompilerVisitor::has_return*/;
1827 variable8 = variable9;
1828 variable9 = NIT_NULL /*decl variable itpos*/;
1829 variable10 = TAG_Bool(( self==NIT_NULL) || VAL_ISA( self, COLOR_AConcreteInitPropdef, ID_AConcreteInitPropdef)) /*cast AConcreteInitPropdef*/;
1830 if (UNTAG_Bool(variable10)) { /*if*/
1831 variable10 = NEW_string___String___init(); /*new String*/
1832 variable11 = NEW_string___String___with_native(BOX_NativeString("VAL2OBJ("), TAG_Int(8)); /*new String*/
1833 variable12 = variable11;
1834 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable12) /*String::append*/;
1835 variable13 = TAG_Int(0);
1836 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
1837 variable15 = variable14;
1838 if (UNTAG_Bool(variable15)) { /* and */
1839 variable15 = ATTR_array___AbstractArray____length( variable2 /*params*/) /*Array::_length*/;
1840 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
1841 }
1842 variable14 = variable15;
1843 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
1844 variable14 = ATTR_array___Array____items( variable2 /*params*/) /*Array::_items*/;
1845 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
1846 goto return_label52;
1847 return_label52: while(false);
1848 variable13 = variable14;
1849 variable14 = variable13;
1850 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable14) /*String::append*/;
1851 variable15 = NEW_string___String___with_native(BOX_NativeString(")->vft["), TAG_Int(7)); /*new String*/
1852 variable16 = variable15;
1853 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable16) /*String::append*/;
1854 variable17 = ((abstractmetamodel___MMLocalProperty___local_class_t)CALL( variable1 /*method*/,COLOR_abstractmetamodel___MMLocalProperty___local_class))( variable1 /*method*/) /*MMSrcMethod::local_class*/;
1855 variable17 = ((abstractmetamodel___MMLocalClass___global_t)CALL(variable17,COLOR_abstractmetamodel___MMLocalClass___global))(variable17) /*MMLocalClass::global*/;
1856 variable17 = ((compiling_base___MMGlobalClass___init_table_pos_id_t)CALL(variable17,COLOR_compiling_base___MMGlobalClass___init_table_pos_id))(variable17) /*MMGlobalClass::init_table_pos_id*/;
1857 variable18 = variable17;
1858 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable18) /*String::append*/;
1859 variable19 = NEW_string___String___with_native(BOX_NativeString("].i"), TAG_Int(3)); /*new String*/
1860 variable20 = variable19;
1861 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable20) /*String::append*/;
1862 variable9 = variable10 /*itpos=*/;
1863 variable10 = NEW_string___String___init(); /*new String*/
1864 variable11 = NEW_string___String___with_native(BOX_NativeString("if (init_table["), TAG_Int(15)); /*new String*/
1865 variable12 = variable11;
1866 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable12) /*String::append*/;
1867 variable13 = variable9 /*itpos*/;
1868 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable13) /*String::append*/;
1869 variable14 = NEW_string___String___with_native(BOX_NativeString("]) return;"), TAG_Int(10)); /*new String*/
1870 variable15 = variable14;
1871 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable15) /*String::append*/;
1872 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable10) /*CompilerVisitor::add_instr*/;
1873 }
1874 ((compiling_methods___CompilerVisitor___method_params__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___method_params__eq))( variable0 /*v*/, variable2 /*params*/) /*CompilerVisitor::method_params=*/;
1875 ((compiling_methods___CompilerVisitor___has_return__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___has_return__eq))( variable0 /*v*/, TAG_Bool(false)) /*CompilerVisitor::has_return=*/;
1876 variable10 = NEW_string___String___init(); /*new String*/
1877 variable11 = NEW_string___String___with_native(BOX_NativeString("return_label"), TAG_Int(12)); /*new String*/
1878 variable12 = variable11;
1879 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable12) /*String::append*/;
1880 variable13 = ((compiling_base___CompilerVisitor___new_number_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___new_number))( variable0 /*v*/) /*CompilerVisitor::new_number*/;
1881 variable14 = variable13;
1882 variable14 = ((string___String___to_s_t)CALL(variable14,COLOR_string___Object___to_s))(variable14) /*String::to_s*/;
1883 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable14) /*String::append*/;
1884 variable15 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1885 variable16 = variable15;
1886 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable16) /*String::append*/;
1887 ((compiling_methods___CompilerVisitor___return_label__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_label__eq))( variable0 /*v*/, variable10) /*CompilerVisitor::return_label=*/;
1888 variable10 = ((genericity___MMLocalProperty___signature_t)CALL( variable1 /*method*/,COLOR_static_type___MMLocalProperty___signature))( variable1 /*method*/) /*MMSrcMethod::signature*/;
1889 variable10 = ((static_type___MMSignature___return_type_t)CALL(variable10,COLOR_static_type___MMSignature___return_type))(variable10) /*MMSignature::return_type*/;
1890 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable10 == NIT_NULL /*null*/) || ((variable10 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable10,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable10, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable10,COLOR_kernel___Object_____eqeq))(variable10, NIT_NULL /*null*/) /*MMType::==*/)))))));
1891 if (UNTAG_Bool(variable10)) { /*if*/
1892 variable10 = ((compiling_methods___CompilerVisitor___get_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___get_var))( variable0 /*v*/) /*CompilerVisitor::get_var*/;
1893 ((compiling_methods___CompilerVisitor___return_value__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_value__eq))( variable0 /*v*/, variable10) /*CompilerVisitor::return_value=*/;
1894 variable10 = ((compiling_methods___CompilerVisitor___return_value_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_value))( variable0 /*v*/) /*CompilerVisitor::return_value*/;
1895 ((compiling_methods___CompilerVisitor___free_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___free_var))( variable0 /*v*/, variable10) /*CompilerVisitor::free_var*/;
1896 } else { /*if*/
1897 ((compiling_methods___CompilerVisitor___return_value__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_value__eq))( variable0 /*v*/, NIT_NULL /*null*/) /*CompilerVisitor::return_value=*/;
1898 }
1899 ((compiling_methods___CompilerVisitor___method__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___method__eq))( variable0 /*v*/, variable1 /*method*/) /*CompilerVisitor::method=*/;
1900 variable10 = TAG_Bool(( self==NIT_NULL) || VAL_ISA( self, COLOR_AConcreteInitPropdef, ID_AConcreteInitPropdef)) /*cast AConcreteInitPropdef*/;
1901 if (UNTAG_Bool(variable10)) { /*if*/
1902 ((compiling_methods___CompilerVisitor___invoke_super_init_calls_after_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___invoke_super_init_calls_after))( variable0 /*v*/, NIT_NULL /*null*/) /*CompilerVisitor::invoke_super_init_calls_after*/;
1903 }
1904 variable10 = ((parser_nodes___AConcreteMethPropdef___n_block_t)CALL( self,COLOR_parser_nodes___AConcreteMethPropdef___n_block))( self) /*AConcreteMethPropdef::n_block*/;
1905 variable10 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable10 == NIT_NULL /*null*/) || ((variable10 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable10,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable10, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable10,COLOR_kernel___Object_____eqeq))(variable10, NIT_NULL /*null*/) /*PExpr::==*/)))))));
1906 if (UNTAG_Bool(variable10)) { /*if*/
1907 variable10 = ((parser_nodes___AConcreteMethPropdef___n_block_t)CALL( self,COLOR_parser_nodes___AConcreteMethPropdef___n_block))( self) /*AConcreteMethPropdef::n_block*/;
1908 ((compiling_methods___CompilerVisitor___compile_stmt_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_stmt))( variable0 /*v*/, variable10) /*CompilerVisitor::compile_stmt*/;
1909 }
1910 variable10 = ((compiling_methods___CompilerVisitor___has_return_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___has_return))( variable0 /*v*/) /*CompilerVisitor::has_return*/;
1911 if (UNTAG_Bool(variable10)) { /*if*/
1912 variable10 = NEW_string___String___init(); /*new String*/
1913 variable11 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1914 variable12 = variable11;
1915 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable12) /*String::append*/;
1916 variable13 = ((compiling_methods___CompilerVisitor___return_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_label))( variable0 /*v*/) /*CompilerVisitor::return_label*/;
1917 variable14 = variable13;
1918 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable14) /*String::append*/;
1919 variable15 = NEW_string___String___with_native(BOX_NativeString(": while(false);"), TAG_Int(15)); /*new String*/
1920 variable16 = variable15;
1921 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable16) /*String::append*/;
1922 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable10) /*CompilerVisitor::add_instr*/;
1923 }
1924 variable10 = TAG_Bool(( self==NIT_NULL) || VAL_ISA( self, COLOR_AConcreteInitPropdef, ID_AConcreteInitPropdef)) /*cast AConcreteInitPropdef*/;
1925 if (UNTAG_Bool(variable10)) { /*if*/
1926 variable10 = NEW_string___String___init(); /*new String*/
1927 variable11 = NEW_string___String___with_native(BOX_NativeString("init_table["), TAG_Int(11)); /*new String*/
1928 variable12 = variable11;
1929 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable12) /*String::append*/;
1930 variable13 = variable9 /*itpos*/;
1931 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable13) /*String::append*/;
1932 variable14 = NEW_string___String___with_native(BOX_NativeString("] = 1;"), TAG_Int(6)); /*new String*/
1933 variable15 = variable14;
1934 ((string___String___append_t)CALL(variable10,COLOR_abstract_collection___IndexedCollection___append))(variable10, variable15) /*String::append*/;
1935 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable10) /*CompilerVisitor::add_instr*/;
1936 }
1937 variable11 = ((compiling_methods___CompilerVisitor___return_value_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_value))( variable0 /*v*/) /*CompilerVisitor::return_value*/;
1938 variable10 = variable11;
1939 ((compiling_methods___CompilerVisitor___method_params__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___method_params__eq))( variable0 /*v*/, variable5 /*old_method_params*/) /*CompilerVisitor::method_params=*/;
1940 ((compiling_methods___CompilerVisitor___return_label__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_label__eq))( variable0 /*v*/, variable6 /*old_return_label*/) /*CompilerVisitor::return_label=*/;
1941 ((compiling_methods___CompilerVisitor___return_value__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_value__eq))( variable0 /*v*/, variable7 /*old_return_value*/) /*CompilerVisitor::return_value=*/;
1942 ((compiling_methods___CompilerVisitor___has_return__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___has_return__eq))( variable0 /*v*/, variable8 /*old_has_return*/) /*CompilerVisitor::has_return=*/;
1943 variable3 = variable10 /*ret*/;
1944 goto return_label48;
1945 return_label48: while(false);
1946 tracehead = trace.prev;
1947 return variable3;
1948 }
1949 val_t compiling_methods___ADeferredMethPropdef___do_compile_inside(val_t self, val_t param0, val_t param1, val_t param2) {
1950 struct trace_t trace = {NULL, LOCATE_compiling_methods___ADeferredMethPropdef___do_compile_inside, 462};
1951 val_t variable0;
1952 val_t variable1;
1953 val_t variable2;
1954 val_t variable3;
1955 val_t variable4;
1956 val_t variable5;
1957 val_t variable6;
1958 val_t variable7;
1959 val_t variable8;
1960 val_t variable9;
1961 val_t variable10;
1962 val_t variable11;
1963 val_t variable12;
1964 val_t variable13;
1965 val_t variable14;
1966 val_t variable15;
1967 val_t variable16;
1968 val_t variable17;
1969 trace.prev = tracehead; tracehead = &trace;
1970 variable0 = param0;
1971 variable1 = param1;
1972 variable2 = param2;
1973 variable3 = NEW_string___String___init(); /*new String*/
1974 variable4 = NEW_string___String___with_native(BOX_NativeString("fprintf(stderr, \"Deferred method %s called (%s: %d)\\n\", \""), TAG_Int(57)); /*new String*/
1975 variable5 = variable4;
1976 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
1977 variable6 = ((mmbuilder___AMethPropdef___name_t)CALL( self,COLOR_mmbuilder___AMethPropdef___name))( self) /*ADeferredMethPropdef::name*/;
1978 variable7 = variable6;
1979 variable7 = ((string___String___to_s_t)CALL(variable7,COLOR_string___Object___to_s))(variable7) /*String::to_s*/;
1980 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable7) /*String::append*/;
1981 variable8 = NEW_string___String___with_native(BOX_NativeString("\", "), TAG_Int(3)); /*new String*/
1982 variable9 = variable8;
1983 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
1984 variable10 = ((compiling_methods___CompilerVisitor___locate_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___locate))( variable0 /*v*/) /*CompilerVisitor::locate*/;
1985 variable11 = variable10;
1986 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable11) /*String::append*/;
1987 variable12 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
1988 variable13 = variable12;
1989 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable13) /*String::append*/;
1990 variable14 = ((parser_prod___Prod___line_number_t)CALL( self,COLOR_parser_prod___PNode___line_number))( self) /*ADeferredMethPropdef::line_number*/;
1991 variable15 = variable14;
1992 variable15 = ((string___String___to_s_t)CALL(variable15,COLOR_string___Object___to_s))(variable15) /*String::to_s*/;
1993 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable15) /*String::append*/;
1994 variable16 = NEW_string___String___with_native(BOX_NativeString(");"), TAG_Int(2)); /*new String*/
1995 variable17 = variable16;
1996 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable17) /*String::append*/;
1997 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable3) /*CompilerVisitor::add_instr*/;
1998 variable3 = NEW_string___String___with_native(BOX_NativeString("nit_exit(1);"), TAG_Int(12)); /*new String*/
1999 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable3) /*CompilerVisitor::add_instr*/;
2000 variable3 = ((genericity___MMLocalProperty___signature_t)CALL( variable1 /*method*/,COLOR_static_type___MMLocalProperty___signature))( variable1 /*method*/) /*MMSrcMethod::signature*/;
2001 variable3 = ((static_type___MMSignature___return_type_t)CALL(variable3,COLOR_static_type___MMSignature___return_type))(variable3) /*MMSignature::return_type*/;
2002 variable3 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable3 == NIT_NULL /*null*/) || ((variable3 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable3,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable3, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable3,COLOR_kernel___Object_____eqeq))(variable3, NIT_NULL /*null*/) /*MMType::==*/)))))));
2003 if (UNTAG_Bool(variable3)) { /*if*/
2004 variable3 = NEW_string___String___with_native(BOX_NativeString("NIT_NULL"), TAG_Int(8)); /*new String*/
2005 goto return_label53;
2006 } else { /*if*/
2007 variable3 = NIT_NULL /*null*/;
2008 goto return_label53;
2009 }
2010 return_label53: while(false);
2011 tracehead = trace.prev;
2012 return variable3;
2013 }
2014 val_t compiling_methods___AExternMethPropdef___do_compile_inside(val_t self, val_t param0, val_t param1, val_t param2) {
2015 struct trace_t trace = {NULL, LOCATE_compiling_methods___AExternMethPropdef___do_compile_inside, 475};
2016 val_t variable0;
2017 val_t variable1;
2018 val_t variable2;
2019 val_t variable3;
2020 val_t variable4;
2021 val_t variable5;
2022 val_t variable6;
2023 val_t variable7;
2024 val_t variable8;
2025 val_t variable9;
2026 val_t variable10;
2027 val_t variable11;
2028 val_t variable12;
2029 val_t variable13;
2030 val_t variable14;
2031 val_t variable15;
2032 val_t variable16;
2033 val_t variable17;
2034 val_t variable18;
2035 val_t variable19;
2036 val_t variable20;
2037 val_t variable21;
2038 val_t variable22;
2039 val_t variable23;
2040 val_t variable24;
2041 val_t variable25;
2042 val_t variable26;
2043 trace.prev = tracehead; tracehead = &trace;
2044 variable0 = param0;
2045 variable1 = param1;
2046 variable2 = param2;
2047 variable4 = NEW_string___String___init(); /*new String*/
2048 variable5 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
2049 variable6 = variable5;
2050 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
2051 variable7 = ((abstractmetamodel___MMLocalProperty___module_t)CALL( variable1 /*method*/,COLOR_abstractmetamodel___MMLocalProperty___module))( variable1 /*method*/) /*MMSrcMethod::module*/;
2052 variable7 = ((abstractmetamodel___MMModule___name_t)CALL(variable7,COLOR_abstractmetamodel___MMModule___name))(variable7) /*MMModule::name*/;
2053 variable8 = variable7;
2054 variable8 = ((string___String___to_s_t)CALL(variable8,COLOR_string___Object___to_s))(variable8) /*String::to_s*/;
2055 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable8) /*String::append*/;
2056 variable9 = NEW_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)); /*new String*/
2057 variable10 = variable9;
2058 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable10) /*String::append*/;
2059 variable11 = ((abstractmetamodel___MMLocalProperty___local_class_t)CALL( variable1 /*method*/,COLOR_abstractmetamodel___MMLocalProperty___local_class))( variable1 /*method*/) /*MMSrcMethod::local_class*/;
2060 variable11 = ((abstractmetamodel___MMLocalClass___name_t)CALL(variable11,COLOR_abstractmetamodel___MMLocalClass___name))(variable11) /*MMLocalClass::name*/;
2061 variable12 = variable11;
2062 variable12 = ((string___String___to_s_t)CALL(variable12,COLOR_string___Object___to_s))(variable12) /*String::to_s*/;
2063 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable12) /*String::append*/;
2064 variable13 = NEW_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)); /*new String*/
2065 variable14 = variable13;
2066 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable14) /*String::append*/;
2067 variable15 = ((abstractmetamodel___MMLocalProperty___local_class_t)CALL( variable1 /*method*/,COLOR_abstractmetamodel___MMLocalProperty___local_class))( variable1 /*method*/) /*MMSrcMethod::local_class*/;
2068 variable15 = ((abstractmetamodel___MMLocalClass___name_t)CALL(variable15,COLOR_abstractmetamodel___MMLocalClass___name))(variable15) /*MMLocalClass::name*/;
2069 variable16 = variable15;
2070 variable16 = ((string___String___to_s_t)CALL(variable16,COLOR_string___Object___to_s))(variable16) /*String::to_s*/;
2071 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable16) /*String::append*/;
2072 variable17 = NEW_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)); /*new String*/
2073 variable18 = variable17;
2074 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable18) /*String::append*/;
2075 variable19 = ((abstractmetamodel___MMLocalProperty___name_t)CALL( variable1 /*method*/,COLOR_abstractmetamodel___MMLocalProperty___name))( variable1 /*method*/) /*MMSrcMethod::name*/;
2076 variable20 = variable19;
2077 variable20 = ((string___String___to_s_t)CALL(variable20,COLOR_string___Object___to_s))(variable20) /*String::to_s*/;
2078 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable20) /*String::append*/;
2079 variable21 = NEW_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)); /*new String*/
2080 variable22 = variable21;
2081 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable22) /*String::append*/;
2082 variable23 = ((genericity___MMLocalProperty___signature_t)CALL( variable1 /*method*/,COLOR_static_type___MMLocalProperty___signature))( variable1 /*method*/) /*MMSrcMethod::signature*/;
2083 variable23 = ((static_type___MMSignature___arity_t)CALL(variable23,COLOR_static_type___MMSignature___arity))(variable23) /*MMSignature::arity*/;
2084 variable24 = variable23;
2085 variable24 = ((string___String___to_s_t)CALL(variable24,COLOR_string___Object___to_s))(variable24) /*String::to_s*/;
2086 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable24) /*String::append*/;
2087 variable25 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
2088 variable26 = variable25;
2089 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable26) /*String::append*/;
2090 variable3 = variable4;
2091 variable4 = ((parser_nodes___AExternMethPropdef___n_extern_t)CALL( self,COLOR_parser_nodes___AExternMethPropdef___n_extern))( self) /*AExternMethPropdef::n_extern*/;
2092 variable4 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable4 == NIT_NULL /*null*/) || ((variable4 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable4,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable4, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable4,COLOR_kernel___Object_____eqeq))(variable4, NIT_NULL /*null*/) /*TString::==*/)))))));
2093 if (UNTAG_Bool(variable4)) { /*if*/
2094 variable4 = ((parser_nodes___AExternMethPropdef___n_extern_t)CALL( self,COLOR_parser_nodes___AExternMethPropdef___n_extern))( self) /*AExternMethPropdef::n_extern*/;
2095 variable4 = ((lexer___Token___text_t)CALL(variable4,COLOR_lexer___Token___text))(variable4) /*TString::text*/;
2096 variable3 = variable4 /*ename=*/;
2097 variable4 = ((array___AbstractArray___length_t)CALL( variable3 /*ename*/,COLOR_abstract_collection___Collection___length))( variable3 /*ename*/) /*String::length*/;
2098 variable4 = TAG_Int(UNTAG_Int(variable4)-UNTAG_Int( TAG_Int(2)));
2099 variable4 = ((string___String___substring_t)CALL( variable3 /*ename*/,COLOR_string___String___substring))( variable3 /*ename*/, TAG_Int(1), variable4) /*String::substring*/;
2100 variable3 = variable4 /*ename=*/;
2101 }
2102 variable5 = ((genericity___MMLocalProperty___signature_t)CALL( variable1 /*method*/,COLOR_static_type___MMLocalProperty___signature))( variable1 /*method*/) /*MMSrcMethod::signature*/;
2103 variable4 = variable5;
2104 variable5 = ((array___AbstractArray___length_t)CALL( variable2 /*params*/,COLOR_abstract_collection___Collection___length))( variable2 /*params*/) /*Array::length*/;
2105 variable6 = ((static_type___MMSignature___arity_t)CALL( variable4 /*sig*/,COLOR_static_type___MMSignature___arity))( variable4 /*sig*/) /*MMSignature::arity*/;
2106 variable6 = TAG_Int(UNTAG_Int(variable6)+UNTAG_Int( TAG_Int(1)));
2107 variable5 = TAG_Bool((variable5)!=(variable6));
2108 if (UNTAG_Bool(variable5)) { /*if*/
2109 variable5 = NEW_string___String___init(); /*new String*/
2110 variable6 = NEW_string___String___with_native(BOX_NativeString("par:"), TAG_Int(4)); /*new String*/
2111 variable7 = variable6;
2112 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable7) /*String::append*/;
2113 variable8 = ((array___AbstractArray___length_t)CALL( variable2 /*params*/,COLOR_abstract_collection___Collection___length))( variable2 /*params*/) /*Array::length*/;
2114 variable9 = variable8;
2115 variable9 = ((string___String___to_s_t)CALL(variable9,COLOR_string___Object___to_s))(variable9) /*String::to_s*/;
2116 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable9) /*String::append*/;
2117 variable10 = NEW_string___String___with_native(BOX_NativeString(" sig:"), TAG_Int(5)); /*new String*/
2118 variable11 = variable10;
2119 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable11) /*String::append*/;
2120 variable12 = ((static_type___MMSignature___arity_t)CALL( variable4 /*sig*/,COLOR_static_type___MMSignature___arity))( variable4 /*sig*/) /*MMSignature::arity*/;
2121 variable13 = variable12;
2122 variable13 = ((string___String___to_s_t)CALL(variable13,COLOR_string___Object___to_s))(variable13) /*String::to_s*/;
2123 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable13) /*String::append*/;
2124 variable14 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
2125 variable15 = variable14;
2126 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable15) /*String::append*/;
2127 ((parser_prod___PNode___printl_t)CALL( self,COLOR_parser_prod___PNode___printl))( self, variable5) /*AExternMethPropdef::printl*/;
2128 }
2129 variable6 = NEW_array___Array___init(); /*new Array[String]*/
2130 variable5 = variable6;
2131 variable6 = ((static_type___MMSignature___recv_t)CALL( variable4 /*sig*/,COLOR_static_type___MMSignature___recv))( variable4 /*sig*/) /*MMSignature::recv*/;
2132 variable7 = TAG_Int(0);
2133 variable8 = TAG_Bool(UNTAG_Int( variable7 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2134 variable9 = variable8;
2135 if (UNTAG_Bool(variable9)) { /* and */
2136 variable9 = ATTR_array___AbstractArray____length( variable2 /*params*/) /*Array::_length*/;
2137 variable9 = TAG_Bool(UNTAG_Int( variable7 /*index*/)<UNTAG_Int(variable9));
2138 }
2139 variable8 = variable9;
2140 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2141 variable8 = ATTR_array___Array____items( variable2 /*params*/) /*Array::_items*/;
2142 variable8 = UNBOX_NativeArray(variable8)[UNTAG_Int( variable7 /*index*/)];
2143 goto return_label55;
2144 return_label55: while(false);
2145 variable7 = variable8;
2146 variable6 = ((compiling_base___MMType___unboxtype_t)CALL(variable6,COLOR_compiling_base___MMType___unboxtype))(variable6, variable7) /*MMType::unboxtype*/;
2147 ((array___AbstractArray___add_t)CALL( variable5 /*args*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*args*/, variable6) /*Array::add*/;
2148 variable6 = ((static_type___MMSignature___arity_t)CALL( variable4 /*sig*/,COLOR_static_type___MMSignature___arity))( variable4 /*sig*/) /*MMSignature::arity*/;
2149 variable7 = NEW_range___Range___without_last( TAG_Int(0), variable6); /*new Range[Int]*/
2150 variable6 = variable7;
2151 variable6 = ((range___Range___iterator_t)CALL(variable6,COLOR_abstract_collection___Collection___iterator))(variable6) /*Range::iterator*/;
2152 while (true) { /*for*/
2153 variable7 = ((abstract_collection___Iterator___is_ok_t)CALL(variable6,COLOR_abstract_collection___Iterator___is_ok))(variable6) /*Iterator::is_ok*/;
2154 if (!UNTAG_Bool(variable7)) break; /*for*/
2155 variable7 = ((abstract_collection___Iterator___item_t)CALL(variable6,COLOR_abstract_collection___Iterator___item))(variable6) /*Iterator::item*/;
2156 variable8 = ((static_type___MMSignature_____bra_t)CALL( variable4 /*sig*/,COLOR_static_type___MMSignature_____bra))( variable4 /*sig*/, variable7 /*i*/) /*MMSignature::[]*/;
2157 variable9 = TAG_Int(UNTAG_Int( variable7 /*i*/)+UNTAG_Int( TAG_Int(1)));
2158 variable10 = variable9;
2159 variable11 = TAG_Bool(UNTAG_Int( variable10 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2160 variable12 = variable11;
2161 if (UNTAG_Bool(variable12)) { /* and */
2162 variable12 = ATTR_array___AbstractArray____length( variable2 /*params*/) /*Array::_length*/;
2163 variable12 = TAG_Bool(UNTAG_Int( variable10 /*index*/)<UNTAG_Int(variable12));
2164 }
2165 variable11 = variable12;
2166 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2167 variable11 = ATTR_array___Array____items( variable2 /*params*/) /*Array::_items*/;
2168 variable11 = UNBOX_NativeArray(variable11)[UNTAG_Int( variable10 /*index*/)];
2169 goto return_label57;
2170 return_label57: while(false);
2171 variable9 = variable11;
2172 variable8 = ((compiling_base___MMType___unboxtype_t)CALL(variable8,COLOR_compiling_base___MMType___unboxtype))(variable8, variable9) /*MMType::unboxtype*/;
2173 ((array___AbstractArray___add_t)CALL( variable5 /*args*/,COLOR_abstract_collection___SimpleCollection___add))( variable5 /*args*/, variable8) /*Array::add*/;
2174 continue_56: while(0);
2175 ((abstract_collection___Iterator___next_t)CALL(variable6,COLOR_abstract_collection___Iterator___next))(variable6) /*Iterator::next*/;
2176 }
2177 break_56: while(0);
2178 variable7 = NEW_string___String___init(); /*new String*/
2179 variable8 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
2180 variable9 = variable8;
2181 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable9) /*String::append*/;
2182 variable10 = variable3 /*ename*/;
2183 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable10) /*String::append*/;
2184 variable11 = NEW_string___String___with_native(BOX_NativeString("("), TAG_Int(1)); /*new String*/
2185 variable12 = variable11;
2186 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable12) /*String::append*/;
2187 variable13 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
2188 variable13 = ((string___Collection___join_t)CALL( variable5 /*args*/,COLOR_string___Collection___join))( variable5 /*args*/, variable13) /*Array::join*/;
2189 variable14 = variable13;
2190 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable14) /*String::append*/;
2191 variable15 = NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
2192 variable16 = variable15;
2193 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable16) /*String::append*/;
2194 variable6 = variable7;
2195 variable7 = ((static_type___MMSignature___return_type_t)CALL( variable4 /*sig*/,COLOR_static_type___MMSignature___return_type))( variable4 /*sig*/) /*MMSignature::return_type*/;
2196 variable7 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable7 == NIT_NULL /*null*/) || ((variable7 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable7,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable7, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable7,COLOR_kernel___Object_____eqeq))(variable7, NIT_NULL /*null*/) /*MMType::==*/)))))));
2197 if (UNTAG_Bool(variable7)) { /*if*/
2198 variable7 = ((static_type___MMSignature___return_type_t)CALL( variable4 /*sig*/,COLOR_static_type___MMSignature___return_type))( variable4 /*sig*/) /*MMSignature::return_type*/;
2199 variable7 = ((compiling_base___MMType___boxtype_t)CALL(variable7,COLOR_compiling_base___MMType___boxtype))(variable7, variable6 /*s*/) /*MMType::boxtype*/;
2200 variable3 = variable7;
2201 goto return_label54;
2202 } else { /*if*/
2203 variable7 = NEW_string___String___init(); /*new String*/
2204 variable8 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
2205 variable9 = variable8;
2206 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable9) /*String::append*/;
2207 variable10 = variable6 /*s*/;
2208 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable10) /*String::append*/;
2209 variable11 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
2210 variable12 = variable11;
2211 ((string___String___append_t)CALL(variable7,COLOR_abstract_collection___IndexedCollection___append))(variable7, variable12) /*String::append*/;
2212 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable7) /*CompilerVisitor::add_instr*/;
2213 variable3 = NIT_NULL /*null*/;
2214 goto return_label54;
2215 }
2216 return_label54: while(false);
2217 tracehead = trace.prev;
2218 return variable3;
2219 }
2220 val_t compiling_methods___AInternMethPropdef___do_compile_inside(val_t self, val_t param0, val_t param1, val_t param2) {
2221 struct trace_t trace = {NULL, LOCATE_compiling_methods___AInternMethPropdef___do_compile_inside, 502};
2222 val_t variable0;
2223 val_t variable1;
2224 val_t variable2;
2225 val_t variable3;
2226 val_t variable4;
2227 val_t variable5;
2228 val_t variable6;
2229 static val_t once_value_variable6_59; static int once_bool_variable6_59;
2230 static val_t once_value_variable6_60; static int once_bool_variable6_60;
2231 val_t variable7;
2232 val_t variable8;
2233 val_t variable9;
2234 val_t variable10;
2235 val_t variable11;
2236 val_t variable12;
2237 static val_t once_value_variable6_62; static int once_bool_variable6_62;
2238 static val_t once_value_variable6_64; static int once_bool_variable6_64;
2239 static val_t once_value_variable6_66; static int once_bool_variable6_66;
2240 static val_t once_value_variable6_68; static int once_bool_variable6_68;
2241 static val_t once_value_variable6_70; static int once_bool_variable6_70;
2242 static val_t once_value_variable6_72; static int once_bool_variable6_72;
2243 static val_t once_value_variable6_74; static int once_bool_variable6_74;
2244 val_t variable13;
2245 val_t variable14;
2246 val_t variable15;
2247 val_t variable16;
2248 static val_t once_value_variable6_77; static int once_bool_variable6_77;
2249 static val_t once_value_variable6_80; static int once_bool_variable6_80;
2250 static val_t once_value_variable6_83; static int once_bool_variable6_83;
2251 static val_t once_value_variable6_86; static int once_bool_variable6_86;
2252 static val_t once_value_variable6_89; static int once_bool_variable6_89;
2253 static val_t once_value_variable6_92; static int once_bool_variable6_92;
2254 static val_t once_value_variable6_95; static int once_bool_variable6_95;
2255 static val_t once_value_variable6_98; static int once_bool_variable6_98;
2256 static val_t once_value_variable6_101; static int once_bool_variable6_101;
2257 static val_t once_value_variable6_104; static int once_bool_variable6_104;
2258 static val_t once_value_variable6_107; static int once_bool_variable6_107;
2259 static val_t once_value_variable6_110; static int once_bool_variable6_110;
2260 static val_t once_value_variable6_113; static int once_bool_variable6_113;
2261 static val_t once_value_variable6_114; static int once_bool_variable6_114;
2262 static val_t once_value_variable6_116; static int once_bool_variable6_116;
2263 static val_t once_value_variable6_118; static int once_bool_variable6_118;
2264 static val_t once_value_variable6_120; static int once_bool_variable6_120;
2265 static val_t once_value_variable6_122; static int once_bool_variable6_122;
2266 static val_t once_value_variable6_125; static int once_bool_variable6_125;
2267 static val_t once_value_variable6_128; static int once_bool_variable6_128;
2268 static val_t once_value_variable6_131; static int once_bool_variable6_131;
2269 static val_t once_value_variable6_134; static int once_bool_variable6_134;
2270 static val_t once_value_variable6_137; static int once_bool_variable6_137;
2271 static val_t once_value_variable6_140; static int once_bool_variable6_140;
2272 static val_t once_value_variable6_143; static int once_bool_variable6_143;
2273 static val_t once_value_variable6_146; static int once_bool_variable6_146;
2274 static val_t once_value_variable6_147; static int once_bool_variable6_147;
2275 static val_t once_value_variable6_149; static int once_bool_variable6_149;
2276 static val_t once_value_variable6_151; static int once_bool_variable6_151;
2277 static val_t once_value_variable6_153; static int once_bool_variable6_153;
2278 static val_t once_value_variable6_155; static int once_bool_variable6_155;
2279 static val_t once_value_variable6_157; static int once_bool_variable6_157;
2280 static val_t once_value_variable6_159; static int once_bool_variable6_159;
2281 static val_t once_value_variable6_161; static int once_bool_variable6_161;
2282 static val_t once_value_variable6_164; static int once_bool_variable6_164;
2283 static val_t once_value_variable6_167; static int once_bool_variable6_167;
2284 static val_t once_value_variable6_170; static int once_bool_variable6_170;
2285 static val_t once_value_variable6_173; static int once_bool_variable6_173;
2286 static val_t once_value_variable6_176; static int once_bool_variable6_176;
2287 static val_t once_value_variable6_179; static int once_bool_variable6_179;
2288 static val_t once_value_variable6_182; static int once_bool_variable6_182;
2289 static val_t once_value_variable6_185; static int once_bool_variable6_185;
2290 static val_t once_value_variable6_188; static int once_bool_variable6_188;
2291 static val_t once_value_variable6_191; static int once_bool_variable6_191;
2292 static val_t once_value_variable6_194; static int once_bool_variable6_194;
2293 static val_t once_value_variable6_195; static int once_bool_variable6_195;
2294 static val_t once_value_variable6_197; static int once_bool_variable6_197;
2295 static val_t once_value_variable6_199; static int once_bool_variable6_199;
2296 static val_t once_value_variable6_201; static int once_bool_variable6_201;
2297 static val_t once_value_variable6_203; static int once_bool_variable6_203;
2298 static val_t once_value_variable6_205; static int once_bool_variable6_205;
2299 static val_t once_value_variable6_208; static int once_bool_variable6_208;
2300 static val_t once_value_variable6_211; static int once_bool_variable6_211;
2301 static val_t once_value_variable6_212; static int once_bool_variable6_212;
2302 static val_t once_value_variable6_214; static int once_bool_variable6_214;
2303 static val_t once_value_variable6_217; static int once_bool_variable6_217;
2304 val_t variable17;
2305 val_t variable18;
2306 val_t variable19;
2307 val_t variable20;
2308 static val_t once_value_variable6_221; static int once_bool_variable6_221;
2309 static val_t once_value_variable6_225; static int once_bool_variable6_225;
2310 static val_t once_value_variable6_226; static int once_bool_variable6_226;
2311 static val_t once_value_variable6_228; static int once_bool_variable6_228;
2312 static val_t once_value_variable6_230; static int once_bool_variable6_230;
2313 static val_t once_value_variable6_233; static int once_bool_variable6_233;
2314 static val_t once_value_variable6_237; static int once_bool_variable6_237;
2315 val_t variable21;
2316 val_t variable22;
2317 val_t variable23;
2318 val_t variable24;
2319 val_t variable25;
2320 val_t variable26;
2321 val_t variable27;
2322 val_t variable28;
2323 static val_t once_value_variable6_243; static int once_bool_variable6_243;
2324 static val_t once_value_variable6_245; static int once_bool_variable6_245;
2325 static val_t once_value_variable6_246; static int once_bool_variable6_246;
2326 static val_t once_value_variable6_249; static int once_bool_variable6_249;
2327 static val_t once_value_variable6_251; static int once_bool_variable6_251;
2328 static val_t once_value_variable6_253; static int once_bool_variable6_253;
2329 trace.prev = tracehead; tracehead = &trace;
2330 variable0 = param0;
2331 variable1 = param1;
2332 variable2 = param2;
2333 variable4 = ((abstractmetamodel___MMLocalProperty___local_class_t)CALL( variable1 /*method*/,COLOR_abstractmetamodel___MMLocalProperty___local_class))( variable1 /*method*/) /*MMSrcMethod::local_class*/;
2334 variable4 = ((abstractmetamodel___MMLocalClass___name_t)CALL(variable4,COLOR_abstractmetamodel___MMLocalClass___name))(variable4) /*MMLocalClass::name*/;
2335 variable3 = variable4;
2336 variable5 = ((abstractmetamodel___MMLocalProperty___name_t)CALL( variable1 /*method*/,COLOR_abstractmetamodel___MMLocalProperty___name))( variable1 /*method*/) /*MMSrcMethod::name*/;
2337 variable4 = variable5;
2338 variable5 = NIT_NULL /*decl variable s*/;
2339 if (once_bool_variable6_59) variable6 = once_value_variable6_59;
2340 else {
2341 variable6 = NEW_string___String___with_native(BOX_NativeString("Int"), TAG_Int(3)); /*new String*/
2342 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2343 once_value_variable6_59 = variable6;
2344 once_bool_variable6_59 = true;
2345 }
2346 variable6 = TAG_Bool(( variable3 /*c*/ == variable6) || (( variable3 /*c*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable3 /*c*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))( variable3 /*c*/, variable6) /*Symbol::==*/)))));
2347 if (UNTAG_Bool(variable6)) { /*if*/
2348 if (once_bool_variable6_60) variable6 = once_value_variable6_60;
2349 else {
2350 variable6 = NEW_string___String___with_native(BOX_NativeString("object_id"), TAG_Int(9)); /*new String*/
2351 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2352 once_value_variable6_60 = variable6;
2353 once_bool_variable6_60 = true;
2354 }
2355 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2356 if (UNTAG_Bool(variable6)) { /*if*/
2357 variable6 = NEW_string___String___init(); /*new String*/
2358 variable7 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
2359 variable8 = variable7;
2360 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2361 variable9 = TAG_Int(0);
2362 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2363 variable11 = variable10;
2364 if (UNTAG_Bool(variable11)) { /* and */
2365 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2366 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2367 }
2368 variable10 = variable11;
2369 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2370 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2371 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2372 goto return_label61;
2373 return_label61: while(false);
2374 variable9 = variable10;
2375 variable10 = variable9;
2376 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2377 variable11 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
2378 variable12 = variable11;
2379 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2380 variable5 = variable6 /*s=*/;
2381 } else { /*if*/
2382 if (once_bool_variable6_62) variable6 = once_value_variable6_62;
2383 else {
2384 variable6 = NEW_string___String___with_native(BOX_NativeString("unary -"), TAG_Int(7)); /*new String*/
2385 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2386 once_value_variable6_62 = variable6;
2387 once_bool_variable6_62 = true;
2388 }
2389 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2390 if (UNTAG_Bool(variable6)) { /*if*/
2391 variable6 = NEW_string___String___init(); /*new String*/
2392 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(-UNTAG_Int("), TAG_Int(19)); /*new String*/
2393 variable8 = variable7;
2394 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2395 variable9 = TAG_Int(0);
2396 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2397 variable11 = variable10;
2398 if (UNTAG_Bool(variable11)) { /* and */
2399 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2400 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2401 }
2402 variable10 = variable11;
2403 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2404 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2405 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2406 goto return_label63;
2407 return_label63: while(false);
2408 variable9 = variable10;
2409 variable10 = variable9;
2410 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2411 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
2412 variable12 = variable11;
2413 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2414 variable5 = variable6 /*s=*/;
2415 } else { /*if*/
2416 if (once_bool_variable6_64) variable6 = once_value_variable6_64;
2417 else {
2418 variable6 = NEW_string___String___with_native(BOX_NativeString("output"), TAG_Int(6)); /*new String*/
2419 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2420 once_value_variable6_64 = variable6;
2421 once_bool_variable6_64 = true;
2422 }
2423 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2424 if (UNTAG_Bool(variable6)) { /*if*/
2425 variable6 = NEW_string___String___init(); /*new String*/
2426 variable7 = NEW_string___String___with_native(BOX_NativeString("printf(\"%d\\n\", UNTAG_Int("), TAG_Int(25)); /*new String*/
2427 variable8 = variable7;
2428 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2429 variable9 = TAG_Int(0);
2430 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2431 variable11 = variable10;
2432 if (UNTAG_Bool(variable11)) { /* and */
2433 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2434 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2435 }
2436 variable10 = variable11;
2437 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2438 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2439 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2440 goto return_label65;
2441 return_label65: while(false);
2442 variable9 = variable10;
2443 variable10 = variable9;
2444 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2445 variable11 = NEW_string___String___with_native(BOX_NativeString("));"), TAG_Int(3)); /*new String*/
2446 variable12 = variable11;
2447 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2448 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable6) /*CompilerVisitor::add_instr*/;
2449 } else { /*if*/
2450 if (once_bool_variable6_66) variable6 = once_value_variable6_66;
2451 else {
2452 variable6 = NEW_string___String___with_native(BOX_NativeString("ascii"), TAG_Int(5)); /*new String*/
2453 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2454 once_value_variable6_66 = variable6;
2455 once_bool_variable6_66 = true;
2456 }
2457 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2458 if (UNTAG_Bool(variable6)) { /*if*/
2459 variable6 = NEW_string___String___init(); /*new String*/
2460 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Char(UNTAG_Int("), TAG_Int(19)); /*new String*/
2461 variable8 = variable7;
2462 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2463 variable9 = TAG_Int(0);
2464 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2465 variable11 = variable10;
2466 if (UNTAG_Bool(variable11)) { /* and */
2467 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2468 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2469 }
2470 variable10 = variable11;
2471 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2472 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2473 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2474 goto return_label67;
2475 return_label67: while(false);
2476 variable9 = variable10;
2477 variable10 = variable9;
2478 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2479 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
2480 variable12 = variable11;
2481 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2482 variable5 = variable6 /*s=*/;
2483 } else { /*if*/
2484 if (once_bool_variable6_68) variable6 = once_value_variable6_68;
2485 else {
2486 variable6 = NEW_string___String___with_native(BOX_NativeString("succ"), TAG_Int(4)); /*new String*/
2487 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2488 once_value_variable6_68 = variable6;
2489 once_bool_variable6_68 = true;
2490 }
2491 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2492 if (UNTAG_Bool(variable6)) { /*if*/
2493 variable6 = NEW_string___String___init(); /*new String*/
2494 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)); /*new String*/
2495 variable8 = variable7;
2496 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2497 variable9 = TAG_Int(0);
2498 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2499 variable11 = variable10;
2500 if (UNTAG_Bool(variable11)) { /* and */
2501 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2502 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2503 }
2504 variable10 = variable11;
2505 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2506 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2507 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2508 goto return_label69;
2509 return_label69: while(false);
2510 variable9 = variable10;
2511 variable10 = variable9;
2512 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2513 variable11 = NEW_string___String___with_native(BOX_NativeString(")+1)"), TAG_Int(4)); /*new String*/
2514 variable12 = variable11;
2515 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2516 variable5 = variable6 /*s=*/;
2517 } else { /*if*/
2518 if (once_bool_variable6_70) variable6 = once_value_variable6_70;
2519 else {
2520 variable6 = NEW_string___String___with_native(BOX_NativeString("prec"), TAG_Int(4)); /*new String*/
2521 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2522 once_value_variable6_70 = variable6;
2523 once_bool_variable6_70 = true;
2524 }
2525 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2526 if (UNTAG_Bool(variable6)) { /*if*/
2527 variable6 = NEW_string___String___init(); /*new String*/
2528 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)); /*new String*/
2529 variable8 = variable7;
2530 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2531 variable9 = TAG_Int(0);
2532 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2533 variable11 = variable10;
2534 if (UNTAG_Bool(variable11)) { /* and */
2535 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2536 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2537 }
2538 variable10 = variable11;
2539 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2540 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2541 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2542 goto return_label71;
2543 return_label71: while(false);
2544 variable9 = variable10;
2545 variable10 = variable9;
2546 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2547 variable11 = NEW_string___String___with_native(BOX_NativeString(")-1)"), TAG_Int(4)); /*new String*/
2548 variable12 = variable11;
2549 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2550 variable5 = variable6 /*s=*/;
2551 } else { /*if*/
2552 if (once_bool_variable6_72) variable6 = once_value_variable6_72;
2553 else {
2554 variable6 = NEW_string___String___with_native(BOX_NativeString("to_f"), TAG_Int(4)); /*new String*/
2555 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2556 once_value_variable6_72 = variable6;
2557 once_bool_variable6_72 = true;
2558 }
2559 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2560 if (UNTAG_Bool(variable6)) { /*if*/
2561 variable6 = NEW_string___String___init(); /*new String*/
2562 variable7 = NEW_string___String___with_native(BOX_NativeString("BOX_Float((float)UNTAG_Int("), TAG_Int(27)); /*new String*/
2563 variable8 = variable7;
2564 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2565 variable9 = TAG_Int(0);
2566 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2567 variable11 = variable10;
2568 if (UNTAG_Bool(variable11)) { /* and */
2569 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2570 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2571 }
2572 variable10 = variable11;
2573 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2574 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2575 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2576 goto return_label73;
2577 return_label73: while(false);
2578 variable9 = variable10;
2579 variable10 = variable9;
2580 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2581 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
2582 variable12 = variable11;
2583 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2584 variable5 = variable6 /*s=*/;
2585 } else { /*if*/
2586 if (once_bool_variable6_74) variable6 = once_value_variable6_74;
2587 else {
2588 variable6 = NEW_string___String___with_native(BOX_NativeString("+"), TAG_Int(1)); /*new String*/
2589 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2590 once_value_variable6_74 = variable6;
2591 once_bool_variable6_74 = true;
2592 }
2593 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2594 if (UNTAG_Bool(variable6)) { /*if*/
2595 variable6 = NEW_string___String___init(); /*new String*/
2596 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)); /*new String*/
2597 variable8 = variable7;
2598 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2599 variable9 = TAG_Int(0);
2600 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2601 variable11 = variable10;
2602 if (UNTAG_Bool(variable11)) { /* and */
2603 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2604 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2605 }
2606 variable10 = variable11;
2607 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2608 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2609 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2610 goto return_label75;
2611 return_label75: while(false);
2612 variable9 = variable10;
2613 variable10 = variable9;
2614 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2615 variable11 = NEW_string___String___with_native(BOX_NativeString(")+UNTAG_Int("), TAG_Int(12)); /*new String*/
2616 variable12 = variable11;
2617 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2618 variable13 = TAG_Int(1);
2619 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2620 variable15 = variable14;
2621 if (UNTAG_Bool(variable15)) { /* and */
2622 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2623 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
2624 }
2625 variable14 = variable15;
2626 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2627 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2628 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
2629 goto return_label76;
2630 return_label76: while(false);
2631 variable13 = variable14;
2632 variable14 = variable13;
2633 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
2634 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
2635 variable16 = variable15;
2636 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
2637 variable5 = variable6 /*s=*/;
2638 } else { /*if*/
2639 if (once_bool_variable6_77) variable6 = once_value_variable6_77;
2640 else {
2641 variable6 = NEW_string___String___with_native(BOX_NativeString("-"), TAG_Int(1)); /*new String*/
2642 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2643 once_value_variable6_77 = variable6;
2644 once_bool_variable6_77 = true;
2645 }
2646 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2647 if (UNTAG_Bool(variable6)) { /*if*/
2648 variable6 = NEW_string___String___init(); /*new String*/
2649 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)); /*new String*/
2650 variable8 = variable7;
2651 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2652 variable9 = TAG_Int(0);
2653 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2654 variable11 = variable10;
2655 if (UNTAG_Bool(variable11)) { /* and */
2656 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2657 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2658 }
2659 variable10 = variable11;
2660 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2661 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2662 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2663 goto return_label78;
2664 return_label78: while(false);
2665 variable9 = variable10;
2666 variable10 = variable9;
2667 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2668 variable11 = NEW_string___String___with_native(BOX_NativeString(")-UNTAG_Int("), TAG_Int(12)); /*new String*/
2669 variable12 = variable11;
2670 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2671 variable13 = TAG_Int(1);
2672 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2673 variable15 = variable14;
2674 if (UNTAG_Bool(variable15)) { /* and */
2675 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2676 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
2677 }
2678 variable14 = variable15;
2679 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2680 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2681 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
2682 goto return_label79;
2683 return_label79: while(false);
2684 variable13 = variable14;
2685 variable14 = variable13;
2686 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
2687 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
2688 variable16 = variable15;
2689 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
2690 variable5 = variable6 /*s=*/;
2691 } else { /*if*/
2692 if (once_bool_variable6_80) variable6 = once_value_variable6_80;
2693 else {
2694 variable6 = NEW_string___String___with_native(BOX_NativeString("*"), TAG_Int(1)); /*new String*/
2695 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2696 once_value_variable6_80 = variable6;
2697 once_bool_variable6_80 = true;
2698 }
2699 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2700 if (UNTAG_Bool(variable6)) { /*if*/
2701 variable6 = NEW_string___String___init(); /*new String*/
2702 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)); /*new String*/
2703 variable8 = variable7;
2704 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2705 variable9 = TAG_Int(0);
2706 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2707 variable11 = variable10;
2708 if (UNTAG_Bool(variable11)) { /* and */
2709 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2710 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2711 }
2712 variable10 = variable11;
2713 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2714 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2715 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2716 goto return_label81;
2717 return_label81: while(false);
2718 variable9 = variable10;
2719 variable10 = variable9;
2720 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2721 variable11 = NEW_string___String___with_native(BOX_NativeString(")*UNTAG_Int("), TAG_Int(12)); /*new String*/
2722 variable12 = variable11;
2723 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2724 variable13 = TAG_Int(1);
2725 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2726 variable15 = variable14;
2727 if (UNTAG_Bool(variable15)) { /* and */
2728 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2729 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
2730 }
2731 variable14 = variable15;
2732 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2733 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2734 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
2735 goto return_label82;
2736 return_label82: while(false);
2737 variable13 = variable14;
2738 variable14 = variable13;
2739 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
2740 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
2741 variable16 = variable15;
2742 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
2743 variable5 = variable6 /*s=*/;
2744 } else { /*if*/
2745 if (once_bool_variable6_83) variable6 = once_value_variable6_83;
2746 else {
2747 variable6 = NEW_string___String___with_native(BOX_NativeString("/"), TAG_Int(1)); /*new String*/
2748 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2749 once_value_variable6_83 = variable6;
2750 once_bool_variable6_83 = true;
2751 }
2752 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2753 if (UNTAG_Bool(variable6)) { /*if*/
2754 variable6 = NEW_string___String___init(); /*new String*/
2755 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)); /*new String*/
2756 variable8 = variable7;
2757 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2758 variable9 = TAG_Int(0);
2759 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2760 variable11 = variable10;
2761 if (UNTAG_Bool(variable11)) { /* and */
2762 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2763 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2764 }
2765 variable10 = variable11;
2766 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2767 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2768 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2769 goto return_label84;
2770 return_label84: while(false);
2771 variable9 = variable10;
2772 variable10 = variable9;
2773 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2774 variable11 = NEW_string___String___with_native(BOX_NativeString(")/UNTAG_Int("), TAG_Int(12)); /*new String*/
2775 variable12 = variable11;
2776 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2777 variable13 = TAG_Int(1);
2778 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2779 variable15 = variable14;
2780 if (UNTAG_Bool(variable15)) { /* and */
2781 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2782 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
2783 }
2784 variable14 = variable15;
2785 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2786 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2787 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
2788 goto return_label85;
2789 return_label85: while(false);
2790 variable13 = variable14;
2791 variable14 = variable13;
2792 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
2793 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
2794 variable16 = variable15;
2795 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
2796 variable5 = variable6 /*s=*/;
2797 } else { /*if*/
2798 if (once_bool_variable6_86) variable6 = once_value_variable6_86;
2799 else {
2800 variable6 = NEW_string___String___with_native(BOX_NativeString("%"), TAG_Int(1)); /*new String*/
2801 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2802 once_value_variable6_86 = variable6;
2803 once_bool_variable6_86 = true;
2804 }
2805 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2806 if (UNTAG_Bool(variable6)) { /*if*/
2807 variable6 = NEW_string___String___init(); /*new String*/
2808 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)); /*new String*/
2809 variable8 = variable7;
2810 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2811 variable9 = TAG_Int(0);
2812 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2813 variable11 = variable10;
2814 if (UNTAG_Bool(variable11)) { /* and */
2815 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2816 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2817 }
2818 variable10 = variable11;
2819 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2820 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2821 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2822 goto return_label87;
2823 return_label87: while(false);
2824 variable9 = variable10;
2825 variable10 = variable9;
2826 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2827 variable11 = NEW_string___String___with_native(BOX_NativeString(")%UNTAG_Int("), TAG_Int(12)); /*new String*/
2828 variable12 = variable11;
2829 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2830 variable13 = TAG_Int(1);
2831 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2832 variable15 = variable14;
2833 if (UNTAG_Bool(variable15)) { /* and */
2834 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2835 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
2836 }
2837 variable14 = variable15;
2838 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2839 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2840 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
2841 goto return_label88;
2842 return_label88: while(false);
2843 variable13 = variable14;
2844 variable14 = variable13;
2845 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
2846 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
2847 variable16 = variable15;
2848 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
2849 variable5 = variable6 /*s=*/;
2850 } else { /*if*/
2851 if (once_bool_variable6_89) variable6 = once_value_variable6_89;
2852 else {
2853 variable6 = NEW_string___String___with_native(BOX_NativeString("<"), TAG_Int(1)); /*new String*/
2854 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2855 once_value_variable6_89 = variable6;
2856 once_bool_variable6_89 = true;
2857 }
2858 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2859 if (UNTAG_Bool(variable6)) { /*if*/
2860 variable6 = NEW_string___String___init(); /*new String*/
2861 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Int("), TAG_Int(19)); /*new String*/
2862 variable8 = variable7;
2863 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2864 variable9 = TAG_Int(0);
2865 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2866 variable11 = variable10;
2867 if (UNTAG_Bool(variable11)) { /* and */
2868 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2869 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2870 }
2871 variable10 = variable11;
2872 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2873 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2874 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2875 goto return_label90;
2876 return_label90: while(false);
2877 variable9 = variable10;
2878 variable10 = variable9;
2879 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2880 variable11 = NEW_string___String___with_native(BOX_NativeString(")<UNTAG_Int("), TAG_Int(12)); /*new String*/
2881 variable12 = variable11;
2882 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2883 variable13 = TAG_Int(1);
2884 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2885 variable15 = variable14;
2886 if (UNTAG_Bool(variable15)) { /* and */
2887 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2888 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
2889 }
2890 variable14 = variable15;
2891 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2892 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2893 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
2894 goto return_label91;
2895 return_label91: while(false);
2896 variable13 = variable14;
2897 variable14 = variable13;
2898 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
2899 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
2900 variable16 = variable15;
2901 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
2902 variable5 = variable6 /*s=*/;
2903 } else { /*if*/
2904 if (once_bool_variable6_92) variable6 = once_value_variable6_92;
2905 else {
2906 variable6 = NEW_string___String___with_native(BOX_NativeString(">"), TAG_Int(1)); /*new String*/
2907 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2908 once_value_variable6_92 = variable6;
2909 once_bool_variable6_92 = true;
2910 }
2911 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2912 if (UNTAG_Bool(variable6)) { /*if*/
2913 variable6 = NEW_string___String___init(); /*new String*/
2914 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Int("), TAG_Int(19)); /*new String*/
2915 variable8 = variable7;
2916 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2917 variable9 = TAG_Int(0);
2918 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2919 variable11 = variable10;
2920 if (UNTAG_Bool(variable11)) { /* and */
2921 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2922 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2923 }
2924 variable10 = variable11;
2925 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2926 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2927 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2928 goto return_label93;
2929 return_label93: while(false);
2930 variable9 = variable10;
2931 variable10 = variable9;
2932 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2933 variable11 = NEW_string___String___with_native(BOX_NativeString(")>UNTAG_Int("), TAG_Int(12)); /*new String*/
2934 variable12 = variable11;
2935 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2936 variable13 = TAG_Int(1);
2937 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2938 variable15 = variable14;
2939 if (UNTAG_Bool(variable15)) { /* and */
2940 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2941 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
2942 }
2943 variable14 = variable15;
2944 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2945 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2946 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
2947 goto return_label94;
2948 return_label94: while(false);
2949 variable13 = variable14;
2950 variable14 = variable13;
2951 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
2952 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
2953 variable16 = variable15;
2954 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
2955 variable5 = variable6 /*s=*/;
2956 } else { /*if*/
2957 if (once_bool_variable6_95) variable6 = once_value_variable6_95;
2958 else {
2959 variable6 = NEW_string___String___with_native(BOX_NativeString("<="), TAG_Int(2)); /*new String*/
2960 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
2961 once_value_variable6_95 = variable6;
2962 once_bool_variable6_95 = true;
2963 }
2964 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
2965 if (UNTAG_Bool(variable6)) { /*if*/
2966 variable6 = NEW_string___String___init(); /*new String*/
2967 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Int("), TAG_Int(19)); /*new String*/
2968 variable8 = variable7;
2969 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
2970 variable9 = TAG_Int(0);
2971 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2972 variable11 = variable10;
2973 if (UNTAG_Bool(variable11)) { /* and */
2974 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2975 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
2976 }
2977 variable10 = variable11;
2978 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2979 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2980 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
2981 goto return_label96;
2982 return_label96: while(false);
2983 variable9 = variable10;
2984 variable10 = variable9;
2985 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
2986 variable11 = NEW_string___String___with_native(BOX_NativeString(")<=UNTAG_Int("), TAG_Int(13)); /*new String*/
2987 variable12 = variable11;
2988 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
2989 variable13 = TAG_Int(1);
2990 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
2991 variable15 = variable14;
2992 if (UNTAG_Bool(variable15)) { /* and */
2993 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
2994 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
2995 }
2996 variable14 = variable15;
2997 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
2998 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
2999 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3000 goto return_label97;
3001 return_label97: while(false);
3002 variable13 = variable14;
3003 variable14 = variable13;
3004 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3005 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3006 variable16 = variable15;
3007 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3008 variable5 = variable6 /*s=*/;
3009 } else { /*if*/
3010 if (once_bool_variable6_98) variable6 = once_value_variable6_98;
3011 else {
3012 variable6 = NEW_string___String___with_native(BOX_NativeString(">="), TAG_Int(2)); /*new String*/
3013 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3014 once_value_variable6_98 = variable6;
3015 once_bool_variable6_98 = true;
3016 }
3017 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3018 if (UNTAG_Bool(variable6)) { /*if*/
3019 variable6 = NEW_string___String___init(); /*new String*/
3020 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Int("), TAG_Int(19)); /*new String*/
3021 variable8 = variable7;
3022 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3023 variable9 = TAG_Int(0);
3024 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3025 variable11 = variable10;
3026 if (UNTAG_Bool(variable11)) { /* and */
3027 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3028 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3029 }
3030 variable10 = variable11;
3031 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3032 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3033 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3034 goto return_label99;
3035 return_label99: while(false);
3036 variable9 = variable10;
3037 variable10 = variable9;
3038 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3039 variable11 = NEW_string___String___with_native(BOX_NativeString(")>=UNTAG_Int("), TAG_Int(13)); /*new String*/
3040 variable12 = variable11;
3041 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3042 variable13 = TAG_Int(1);
3043 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3044 variable15 = variable14;
3045 if (UNTAG_Bool(variable15)) { /* and */
3046 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3047 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3048 }
3049 variable14 = variable15;
3050 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3051 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3052 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3053 goto return_label100;
3054 return_label100: while(false);
3055 variable13 = variable14;
3056 variable14 = variable13;
3057 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3058 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3059 variable16 = variable15;
3060 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3061 variable5 = variable6 /*s=*/;
3062 } else { /*if*/
3063 if (once_bool_variable6_101) variable6 = once_value_variable6_101;
3064 else {
3065 variable6 = NEW_string___String___with_native(BOX_NativeString("lshift"), TAG_Int(6)); /*new String*/
3066 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3067 once_value_variable6_101 = variable6;
3068 once_bool_variable6_101 = true;
3069 }
3070 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3071 if (UNTAG_Bool(variable6)) { /*if*/
3072 variable6 = NEW_string___String___init(); /*new String*/
3073 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)); /*new String*/
3074 variable8 = variable7;
3075 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3076 variable9 = TAG_Int(0);
3077 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3078 variable11 = variable10;
3079 if (UNTAG_Bool(variable11)) { /* and */
3080 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3081 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3082 }
3083 variable10 = variable11;
3084 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3085 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3086 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3087 goto return_label102;
3088 return_label102: while(false);
3089 variable9 = variable10;
3090 variable10 = variable9;
3091 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3092 variable11 = NEW_string___String___with_native(BOX_NativeString(")<<UNTAG_Int("), TAG_Int(13)); /*new String*/
3093 variable12 = variable11;
3094 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3095 variable13 = TAG_Int(1);
3096 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3097 variable15 = variable14;
3098 if (UNTAG_Bool(variable15)) { /* and */
3099 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3100 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3101 }
3102 variable14 = variable15;
3103 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3104 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3105 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3106 goto return_label103;
3107 return_label103: while(false);
3108 variable13 = variable14;
3109 variable14 = variable13;
3110 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3111 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3112 variable16 = variable15;
3113 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3114 variable5 = variable6 /*s=*/;
3115 } else { /*if*/
3116 if (once_bool_variable6_104) variable6 = once_value_variable6_104;
3117 else {
3118 variable6 = NEW_string___String___with_native(BOX_NativeString("rshift"), TAG_Int(6)); /*new String*/
3119 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3120 once_value_variable6_104 = variable6;
3121 once_bool_variable6_104 = true;
3122 }
3123 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3124 if (UNTAG_Bool(variable6)) { /*if*/
3125 variable6 = NEW_string___String___init(); /*new String*/
3126 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Int("), TAG_Int(18)); /*new String*/
3127 variable8 = variable7;
3128 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3129 variable9 = TAG_Int(0);
3130 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3131 variable11 = variable10;
3132 if (UNTAG_Bool(variable11)) { /* and */
3133 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3134 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3135 }
3136 variable10 = variable11;
3137 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3138 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3139 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3140 goto return_label105;
3141 return_label105: while(false);
3142 variable9 = variable10;
3143 variable10 = variable9;
3144 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3145 variable11 = NEW_string___String___with_native(BOX_NativeString(")>>UNTAG_Int("), TAG_Int(13)); /*new String*/
3146 variable12 = variable11;
3147 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3148 variable13 = TAG_Int(1);
3149 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3150 variable15 = variable14;
3151 if (UNTAG_Bool(variable15)) { /* and */
3152 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3153 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3154 }
3155 variable14 = variable15;
3156 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3157 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3158 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3159 goto return_label106;
3160 return_label106: while(false);
3161 variable13 = variable14;
3162 variable14 = variable13;
3163 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3164 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3165 variable16 = variable15;
3166 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3167 variable5 = variable6 /*s=*/;
3168 } else { /*if*/
3169 if (once_bool_variable6_107) variable6 = once_value_variable6_107;
3170 else {
3171 variable6 = NEW_string___String___with_native(BOX_NativeString("=="), TAG_Int(2)); /*new String*/
3172 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3173 once_value_variable6_107 = variable6;
3174 once_bool_variable6_107 = true;
3175 }
3176 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3177 if (UNTAG_Bool(variable6)) { /*if*/
3178 variable6 = NEW_string___String___init(); /*new String*/
3179 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(("), TAG_Int(10)); /*new String*/
3180 variable8 = variable7;
3181 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3182 variable9 = TAG_Int(0);
3183 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3184 variable11 = variable10;
3185 if (UNTAG_Bool(variable11)) { /* and */
3186 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3187 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3188 }
3189 variable10 = variable11;
3190 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3191 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3192 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3193 goto return_label108;
3194 return_label108: while(false);
3195 variable9 = variable10;
3196 variable10 = variable9;
3197 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3198 variable11 = NEW_string___String___with_native(BOX_NativeString(")==("), TAG_Int(4)); /*new String*/
3199 variable12 = variable11;
3200 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3201 variable13 = TAG_Int(1);
3202 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3203 variable15 = variable14;
3204 if (UNTAG_Bool(variable15)) { /* and */
3205 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3206 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3207 }
3208 variable14 = variable15;
3209 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3210 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3211 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3212 goto return_label109;
3213 return_label109: while(false);
3214 variable13 = variable14;
3215 variable14 = variable13;
3216 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3217 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3218 variable16 = variable15;
3219 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3220 variable5 = variable6 /*s=*/;
3221 } else { /*if*/
3222 if (once_bool_variable6_110) variable6 = once_value_variable6_110;
3223 else {
3224 variable6 = NEW_string___String___with_native(BOX_NativeString("!="), TAG_Int(2)); /*new String*/
3225 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3226 once_value_variable6_110 = variable6;
3227 once_bool_variable6_110 = true;
3228 }
3229 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3230 if (UNTAG_Bool(variable6)) { /*if*/
3231 variable6 = NEW_string___String___init(); /*new String*/
3232 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(("), TAG_Int(10)); /*new String*/
3233 variable8 = variable7;
3234 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3235 variable9 = TAG_Int(0);
3236 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3237 variable11 = variable10;
3238 if (UNTAG_Bool(variable11)) { /* and */
3239 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3240 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3241 }
3242 variable10 = variable11;
3243 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3244 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3245 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3246 goto return_label111;
3247 return_label111: while(false);
3248 variable9 = variable10;
3249 variable10 = variable9;
3250 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3251 variable11 = NEW_string___String___with_native(BOX_NativeString(")!=("), TAG_Int(4)); /*new String*/
3252 variable12 = variable11;
3253 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3254 variable13 = TAG_Int(1);
3255 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3256 variable15 = variable14;
3257 if (UNTAG_Bool(variable15)) { /* and */
3258 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3259 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3260 }
3261 variable14 = variable15;
3262 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3263 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3264 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3265 goto return_label112;
3266 return_label112: while(false);
3267 variable13 = variable14;
3268 variable14 = variable13;
3269 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3270 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3271 variable16 = variable15;
3272 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3273 variable5 = variable6 /*s=*/;
3274 }
3275 }
3276 }
3277 }
3278 }
3279 }
3280 }
3281 }
3282 }
3283 }
3284 }
3285 }
3286 }
3287 }
3288 }
3289 }
3290 }
3291 }
3292 }
3293 }
3294 } else { /*if*/
3295 if (once_bool_variable6_113) variable6 = once_value_variable6_113;
3296 else {
3297 variable6 = NEW_string___String___with_native(BOX_NativeString("Float"), TAG_Int(5)); /*new String*/
3298 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3299 once_value_variable6_113 = variable6;
3300 once_bool_variable6_113 = true;
3301 }
3302 variable6 = TAG_Bool(( variable3 /*c*/ == variable6) || (( variable3 /*c*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable3 /*c*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))( variable3 /*c*/, variable6) /*Symbol::==*/)))));
3303 if (UNTAG_Bool(variable6)) { /*if*/
3304 if (once_bool_variable6_114) variable6 = once_value_variable6_114;
3305 else {
3306 variable6 = NEW_string___String___with_native(BOX_NativeString("object_id"), TAG_Int(9)); /*new String*/
3307 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3308 once_value_variable6_114 = variable6;
3309 once_bool_variable6_114 = true;
3310 }
3311 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3312 if (UNTAG_Bool(variable6)) { /*if*/
3313 variable6 = NEW_string___String___init(); /*new String*/
3314 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int((int)UNBOX_Float("), TAG_Int(25)); /*new String*/
3315 variable8 = variable7;
3316 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3317 variable9 = TAG_Int(0);
3318 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3319 variable11 = variable10;
3320 if (UNTAG_Bool(variable11)) { /* and */
3321 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3322 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3323 }
3324 variable10 = variable11;
3325 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3326 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3327 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3328 goto return_label115;
3329 return_label115: while(false);
3330 variable9 = variable10;
3331 variable10 = variable9;
3332 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3333 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3334 variable12 = variable11;
3335 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3336 variable5 = variable6 /*s=*/;
3337 } else { /*if*/
3338 if (once_bool_variable6_116) variable6 = once_value_variable6_116;
3339 else {
3340 variable6 = NEW_string___String___with_native(BOX_NativeString("unary -"), TAG_Int(7)); /*new String*/
3341 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3342 once_value_variable6_116 = variable6;
3343 once_bool_variable6_116 = true;
3344 }
3345 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3346 if (UNTAG_Bool(variable6)) { /*if*/
3347 variable6 = NEW_string___String___init(); /*new String*/
3348 variable7 = NEW_string___String___with_native(BOX_NativeString("BOX_Float(-UNBOX_Float("), TAG_Int(23)); /*new String*/
3349 variable8 = variable7;
3350 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3351 variable9 = TAG_Int(0);
3352 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3353 variable11 = variable10;
3354 if (UNTAG_Bool(variable11)) { /* and */
3355 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3356 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3357 }
3358 variable10 = variable11;
3359 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3360 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3361 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3362 goto return_label117;
3363 return_label117: while(false);
3364 variable9 = variable10;
3365 variable10 = variable9;
3366 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3367 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3368 variable12 = variable11;
3369 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3370 variable5 = variable6 /*s=*/;
3371 } else { /*if*/
3372 if (once_bool_variable6_118) variable6 = once_value_variable6_118;
3373 else {
3374 variable6 = NEW_string___String___with_native(BOX_NativeString("output"), TAG_Int(6)); /*new String*/
3375 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3376 once_value_variable6_118 = variable6;
3377 once_bool_variable6_118 = true;
3378 }
3379 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3380 if (UNTAG_Bool(variable6)) { /*if*/
3381 variable6 = NEW_string___String___init(); /*new String*/
3382 variable7 = NEW_string___String___with_native(BOX_NativeString("printf(\"%f\\n\", UNBOX_Float("), TAG_Int(27)); /*new String*/
3383 variable8 = variable7;
3384 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3385 variable9 = TAG_Int(0);
3386 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3387 variable11 = variable10;
3388 if (UNTAG_Bool(variable11)) { /* and */
3389 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3390 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3391 }
3392 variable10 = variable11;
3393 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3394 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3395 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3396 goto return_label119;
3397 return_label119: while(false);
3398 variable9 = variable10;
3399 variable10 = variable9;
3400 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3401 variable11 = NEW_string___String___with_native(BOX_NativeString("));"), TAG_Int(3)); /*new String*/
3402 variable12 = variable11;
3403 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3404 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable6) /*CompilerVisitor::add_instr*/;
3405 } else { /*if*/
3406 if (once_bool_variable6_120) variable6 = once_value_variable6_120;
3407 else {
3408 variable6 = NEW_string___String___with_native(BOX_NativeString("to_i"), TAG_Int(4)); /*new String*/
3409 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3410 once_value_variable6_120 = variable6;
3411 once_bool_variable6_120 = true;
3412 }
3413 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3414 if (UNTAG_Bool(variable6)) { /*if*/
3415 variable6 = NEW_string___String___init(); /*new String*/
3416 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int((int)UNBOX_Float("), TAG_Int(25)); /*new String*/
3417 variable8 = variable7;
3418 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3419 variable9 = TAG_Int(0);
3420 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3421 variable11 = variable10;
3422 if (UNTAG_Bool(variable11)) { /* and */
3423 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3424 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3425 }
3426 variable10 = variable11;
3427 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3428 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3429 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3430 goto return_label121;
3431 return_label121: while(false);
3432 variable9 = variable10;
3433 variable10 = variable9;
3434 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3435 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3436 variable12 = variable11;
3437 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3438 variable5 = variable6 /*s=*/;
3439 } else { /*if*/
3440 if (once_bool_variable6_122) variable6 = once_value_variable6_122;
3441 else {
3442 variable6 = NEW_string___String___with_native(BOX_NativeString("+"), TAG_Int(1)); /*new String*/
3443 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3444 once_value_variable6_122 = variable6;
3445 once_bool_variable6_122 = true;
3446 }
3447 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3448 if (UNTAG_Bool(variable6)) { /*if*/
3449 variable6 = NEW_string___String___init(); /*new String*/
3450 variable7 = NEW_string___String___with_native(BOX_NativeString("BOX_Float(UNBOX_Float("), TAG_Int(22)); /*new String*/
3451 variable8 = variable7;
3452 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3453 variable9 = TAG_Int(0);
3454 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3455 variable11 = variable10;
3456 if (UNTAG_Bool(variable11)) { /* and */
3457 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3458 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3459 }
3460 variable10 = variable11;
3461 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3462 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3463 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3464 goto return_label123;
3465 return_label123: while(false);
3466 variable9 = variable10;
3467 variable10 = variable9;
3468 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3469 variable11 = NEW_string___String___with_native(BOX_NativeString(")+UNBOX_Float("), TAG_Int(14)); /*new String*/
3470 variable12 = variable11;
3471 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3472 variable13 = TAG_Int(1);
3473 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3474 variable15 = variable14;
3475 if (UNTAG_Bool(variable15)) { /* and */
3476 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3477 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3478 }
3479 variable14 = variable15;
3480 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3481 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3482 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3483 goto return_label124;
3484 return_label124: while(false);
3485 variable13 = variable14;
3486 variable14 = variable13;
3487 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3488 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3489 variable16 = variable15;
3490 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3491 variable5 = variable6 /*s=*/;
3492 } else { /*if*/
3493 if (once_bool_variable6_125) variable6 = once_value_variable6_125;
3494 else {
3495 variable6 = NEW_string___String___with_native(BOX_NativeString("-"), TAG_Int(1)); /*new String*/
3496 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3497 once_value_variable6_125 = variable6;
3498 once_bool_variable6_125 = true;
3499 }
3500 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3501 if (UNTAG_Bool(variable6)) { /*if*/
3502 variable6 = NEW_string___String___init(); /*new String*/
3503 variable7 = NEW_string___String___with_native(BOX_NativeString("BOX_Float(UNBOX_Float("), TAG_Int(22)); /*new String*/
3504 variable8 = variable7;
3505 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3506 variable9 = TAG_Int(0);
3507 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3508 variable11 = variable10;
3509 if (UNTAG_Bool(variable11)) { /* and */
3510 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3511 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3512 }
3513 variable10 = variable11;
3514 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3515 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3516 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3517 goto return_label126;
3518 return_label126: while(false);
3519 variable9 = variable10;
3520 variable10 = variable9;
3521 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3522 variable11 = NEW_string___String___with_native(BOX_NativeString(")-UNBOX_Float("), TAG_Int(14)); /*new String*/
3523 variable12 = variable11;
3524 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3525 variable13 = TAG_Int(1);
3526 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3527 variable15 = variable14;
3528 if (UNTAG_Bool(variable15)) { /* and */
3529 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3530 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3531 }
3532 variable14 = variable15;
3533 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3534 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3535 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3536 goto return_label127;
3537 return_label127: while(false);
3538 variable13 = variable14;
3539 variable14 = variable13;
3540 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3541 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3542 variable16 = variable15;
3543 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3544 variable5 = variable6 /*s=*/;
3545 } else { /*if*/
3546 if (once_bool_variable6_128) variable6 = once_value_variable6_128;
3547 else {
3548 variable6 = NEW_string___String___with_native(BOX_NativeString("*"), TAG_Int(1)); /*new String*/
3549 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3550 once_value_variable6_128 = variable6;
3551 once_bool_variable6_128 = true;
3552 }
3553 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3554 if (UNTAG_Bool(variable6)) { /*if*/
3555 variable6 = NEW_string___String___init(); /*new String*/
3556 variable7 = NEW_string___String___with_native(BOX_NativeString("BOX_Float(UNBOX_Float("), TAG_Int(22)); /*new String*/
3557 variable8 = variable7;
3558 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3559 variable9 = TAG_Int(0);
3560 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3561 variable11 = variable10;
3562 if (UNTAG_Bool(variable11)) { /* and */
3563 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3564 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3565 }
3566 variable10 = variable11;
3567 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3568 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3569 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3570 goto return_label129;
3571 return_label129: while(false);
3572 variable9 = variable10;
3573 variable10 = variable9;
3574 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3575 variable11 = NEW_string___String___with_native(BOX_NativeString(")*UNBOX_Float("), TAG_Int(14)); /*new String*/
3576 variable12 = variable11;
3577 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3578 variable13 = TAG_Int(1);
3579 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3580 variable15 = variable14;
3581 if (UNTAG_Bool(variable15)) { /* and */
3582 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3583 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3584 }
3585 variable14 = variable15;
3586 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3587 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3588 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3589 goto return_label130;
3590 return_label130: while(false);
3591 variable13 = variable14;
3592 variable14 = variable13;
3593 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3594 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3595 variable16 = variable15;
3596 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3597 variable5 = variable6 /*s=*/;
3598 } else { /*if*/
3599 if (once_bool_variable6_131) variable6 = once_value_variable6_131;
3600 else {
3601 variable6 = NEW_string___String___with_native(BOX_NativeString("/"), TAG_Int(1)); /*new String*/
3602 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3603 once_value_variable6_131 = variable6;
3604 once_bool_variable6_131 = true;
3605 }
3606 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3607 if (UNTAG_Bool(variable6)) { /*if*/
3608 variable6 = NEW_string___String___init(); /*new String*/
3609 variable7 = NEW_string___String___with_native(BOX_NativeString("BOX_Float(UNBOX_Float("), TAG_Int(22)); /*new String*/
3610 variable8 = variable7;
3611 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3612 variable9 = TAG_Int(0);
3613 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3614 variable11 = variable10;
3615 if (UNTAG_Bool(variable11)) { /* and */
3616 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3617 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3618 }
3619 variable10 = variable11;
3620 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3621 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3622 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3623 goto return_label132;
3624 return_label132: while(false);
3625 variable9 = variable10;
3626 variable10 = variable9;
3627 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3628 variable11 = NEW_string___String___with_native(BOX_NativeString(")/UNBOX_Float("), TAG_Int(14)); /*new String*/
3629 variable12 = variable11;
3630 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3631 variable13 = TAG_Int(1);
3632 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3633 variable15 = variable14;
3634 if (UNTAG_Bool(variable15)) { /* and */
3635 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3636 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3637 }
3638 variable14 = variable15;
3639 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3640 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3641 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3642 goto return_label133;
3643 return_label133: while(false);
3644 variable13 = variable14;
3645 variable14 = variable13;
3646 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3647 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3648 variable16 = variable15;
3649 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3650 variable5 = variable6 /*s=*/;
3651 } else { /*if*/
3652 if (once_bool_variable6_134) variable6 = once_value_variable6_134;
3653 else {
3654 variable6 = NEW_string___String___with_native(BOX_NativeString("<"), TAG_Int(1)); /*new String*/
3655 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3656 once_value_variable6_134 = variable6;
3657 once_bool_variable6_134 = true;
3658 }
3659 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3660 if (UNTAG_Bool(variable6)) { /*if*/
3661 variable6 = NEW_string___String___init(); /*new String*/
3662 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNBOX_Float("), TAG_Int(21)); /*new String*/
3663 variable8 = variable7;
3664 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3665 variable9 = TAG_Int(0);
3666 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3667 variable11 = variable10;
3668 if (UNTAG_Bool(variable11)) { /* and */
3669 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3670 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3671 }
3672 variable10 = variable11;
3673 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3674 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3675 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3676 goto return_label135;
3677 return_label135: while(false);
3678 variable9 = variable10;
3679 variable10 = variable9;
3680 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3681 variable11 = NEW_string___String___with_native(BOX_NativeString(")<UNBOX_Float("), TAG_Int(14)); /*new String*/
3682 variable12 = variable11;
3683 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3684 variable13 = TAG_Int(1);
3685 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3686 variable15 = variable14;
3687 if (UNTAG_Bool(variable15)) { /* and */
3688 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3689 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3690 }
3691 variable14 = variable15;
3692 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3693 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3694 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3695 goto return_label136;
3696 return_label136: while(false);
3697 variable13 = variable14;
3698 variable14 = variable13;
3699 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3700 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3701 variable16 = variable15;
3702 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3703 variable5 = variable6 /*s=*/;
3704 } else { /*if*/
3705 if (once_bool_variable6_137) variable6 = once_value_variable6_137;
3706 else {
3707 variable6 = NEW_string___String___with_native(BOX_NativeString(">"), TAG_Int(1)); /*new String*/
3708 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3709 once_value_variable6_137 = variable6;
3710 once_bool_variable6_137 = true;
3711 }
3712 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3713 if (UNTAG_Bool(variable6)) { /*if*/
3714 variable6 = NEW_string___String___init(); /*new String*/
3715 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNBOX_Float("), TAG_Int(21)); /*new String*/
3716 variable8 = variable7;
3717 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3718 variable9 = TAG_Int(0);
3719 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3720 variable11 = variable10;
3721 if (UNTAG_Bool(variable11)) { /* and */
3722 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3723 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3724 }
3725 variable10 = variable11;
3726 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3727 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3728 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3729 goto return_label138;
3730 return_label138: while(false);
3731 variable9 = variable10;
3732 variable10 = variable9;
3733 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3734 variable11 = NEW_string___String___with_native(BOX_NativeString(")>UNBOX_Float("), TAG_Int(14)); /*new String*/
3735 variable12 = variable11;
3736 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3737 variable13 = TAG_Int(1);
3738 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3739 variable15 = variable14;
3740 if (UNTAG_Bool(variable15)) { /* and */
3741 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3742 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3743 }
3744 variable14 = variable15;
3745 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3746 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3747 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3748 goto return_label139;
3749 return_label139: while(false);
3750 variable13 = variable14;
3751 variable14 = variable13;
3752 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3753 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3754 variable16 = variable15;
3755 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3756 variable5 = variable6 /*s=*/;
3757 } else { /*if*/
3758 if (once_bool_variable6_140) variable6 = once_value_variable6_140;
3759 else {
3760 variable6 = NEW_string___String___with_native(BOX_NativeString("<="), TAG_Int(2)); /*new String*/
3761 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3762 once_value_variable6_140 = variable6;
3763 once_bool_variable6_140 = true;
3764 }
3765 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3766 if (UNTAG_Bool(variable6)) { /*if*/
3767 variable6 = NEW_string___String___init(); /*new String*/
3768 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNBOX_Float("), TAG_Int(21)); /*new String*/
3769 variable8 = variable7;
3770 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3771 variable9 = TAG_Int(0);
3772 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3773 variable11 = variable10;
3774 if (UNTAG_Bool(variable11)) { /* and */
3775 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3776 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3777 }
3778 variable10 = variable11;
3779 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3780 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3781 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3782 goto return_label141;
3783 return_label141: while(false);
3784 variable9 = variable10;
3785 variable10 = variable9;
3786 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3787 variable11 = NEW_string___String___with_native(BOX_NativeString(")<=UNBOX_Float("), TAG_Int(15)); /*new String*/
3788 variable12 = variable11;
3789 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3790 variable13 = TAG_Int(1);
3791 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3792 variable15 = variable14;
3793 if (UNTAG_Bool(variable15)) { /* and */
3794 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3795 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3796 }
3797 variable14 = variable15;
3798 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3799 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3800 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3801 goto return_label142;
3802 return_label142: while(false);
3803 variable13 = variable14;
3804 variable14 = variable13;
3805 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3806 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3807 variable16 = variable15;
3808 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3809 variable5 = variable6 /*s=*/;
3810 } else { /*if*/
3811 if (once_bool_variable6_143) variable6 = once_value_variable6_143;
3812 else {
3813 variable6 = NEW_string___String___with_native(BOX_NativeString(">="), TAG_Int(2)); /*new String*/
3814 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3815 once_value_variable6_143 = variable6;
3816 once_bool_variable6_143 = true;
3817 }
3818 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3819 if (UNTAG_Bool(variable6)) { /*if*/
3820 variable6 = NEW_string___String___init(); /*new String*/
3821 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNBOX_Float("), TAG_Int(21)); /*new String*/
3822 variable8 = variable7;
3823 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3824 variable9 = TAG_Int(0);
3825 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3826 variable11 = variable10;
3827 if (UNTAG_Bool(variable11)) { /* and */
3828 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3829 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3830 }
3831 variable10 = variable11;
3832 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3833 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3834 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3835 goto return_label144;
3836 return_label144: while(false);
3837 variable9 = variable10;
3838 variable10 = variable9;
3839 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3840 variable11 = NEW_string___String___with_native(BOX_NativeString(")>=UNBOX_Float("), TAG_Int(15)); /*new String*/
3841 variable12 = variable11;
3842 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3843 variable13 = TAG_Int(1);
3844 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3845 variable15 = variable14;
3846 if (UNTAG_Bool(variable15)) { /* and */
3847 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3848 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
3849 }
3850 variable14 = variable15;
3851 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3852 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3853 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
3854 goto return_label145;
3855 return_label145: while(false);
3856 variable13 = variable14;
3857 variable14 = variable13;
3858 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
3859 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3860 variable16 = variable15;
3861 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
3862 variable5 = variable6 /*s=*/;
3863 }
3864 }
3865 }
3866 }
3867 }
3868 }
3869 }
3870 }
3871 }
3872 }
3873 }
3874 }
3875 } else { /*if*/
3876 if (once_bool_variable6_146) variable6 = once_value_variable6_146;
3877 else {
3878 variable6 = NEW_string___String___with_native(BOX_NativeString("Char"), TAG_Int(4)); /*new String*/
3879 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3880 once_value_variable6_146 = variable6;
3881 once_bool_variable6_146 = true;
3882 }
3883 variable6 = TAG_Bool(( variable3 /*c*/ == variable6) || (( variable3 /*c*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable3 /*c*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))( variable3 /*c*/, variable6) /*Symbol::==*/)))));
3884 if (UNTAG_Bool(variable6)) { /*if*/
3885 if (once_bool_variable6_147) variable6 = once_value_variable6_147;
3886 else {
3887 variable6 = NEW_string___String___with_native(BOX_NativeString("object_id"), TAG_Int(9)); /*new String*/
3888 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3889 once_value_variable6_147 = variable6;
3890 once_bool_variable6_147 = true;
3891 }
3892 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3893 if (UNTAG_Bool(variable6)) { /*if*/
3894 variable6 = NEW_string___String___init(); /*new String*/
3895 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Char("), TAG_Int(19)); /*new String*/
3896 variable8 = variable7;
3897 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3898 variable9 = TAG_Int(0);
3899 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3900 variable11 = variable10;
3901 if (UNTAG_Bool(variable11)) { /* and */
3902 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3903 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3904 }
3905 variable10 = variable11;
3906 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3907 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3908 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3909 goto return_label148;
3910 return_label148: while(false);
3911 variable9 = variable10;
3912 variable10 = variable9;
3913 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3914 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3915 variable12 = variable11;
3916 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3917 variable5 = variable6 /*s=*/;
3918 } else { /*if*/
3919 if (once_bool_variable6_149) variable6 = once_value_variable6_149;
3920 else {
3921 variable6 = NEW_string___String___with_native(BOX_NativeString("unary -"), TAG_Int(7)); /*new String*/
3922 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3923 once_value_variable6_149 = variable6;
3924 once_bool_variable6_149 = true;
3925 }
3926 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3927 if (UNTAG_Bool(variable6)) { /*if*/
3928 variable6 = NEW_string___String___init(); /*new String*/
3929 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Char(-UNTAG_Char("), TAG_Int(21)); /*new String*/
3930 variable8 = variable7;
3931 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3932 variable9 = TAG_Int(0);
3933 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3934 variable11 = variable10;
3935 if (UNTAG_Bool(variable11)) { /* and */
3936 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3937 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3938 }
3939 variable10 = variable11;
3940 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3941 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3942 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3943 goto return_label150;
3944 return_label150: while(false);
3945 variable9 = variable10;
3946 variable10 = variable9;
3947 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3948 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
3949 variable12 = variable11;
3950 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3951 variable5 = variable6 /*s=*/;
3952 } else { /*if*/
3953 if (once_bool_variable6_151) variable6 = once_value_variable6_151;
3954 else {
3955 variable6 = NEW_string___String___with_native(BOX_NativeString("output"), TAG_Int(6)); /*new String*/
3956 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3957 once_value_variable6_151 = variable6;
3958 once_bool_variable6_151 = true;
3959 }
3960 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3961 if (UNTAG_Bool(variable6)) { /*if*/
3962 variable6 = NEW_string___String___init(); /*new String*/
3963 variable7 = NEW_string___String___with_native(BOX_NativeString("printf(\"%c\", (unsigned char)UNTAG_Char("), TAG_Int(39)); /*new String*/
3964 variable8 = variable7;
3965 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
3966 variable9 = TAG_Int(0);
3967 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
3968 variable11 = variable10;
3969 if (UNTAG_Bool(variable11)) { /* and */
3970 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
3971 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
3972 }
3973 variable10 = variable11;
3974 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
3975 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
3976 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
3977 goto return_label152;
3978 return_label152: while(false);
3979 variable9 = variable10;
3980 variable10 = variable9;
3981 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
3982 variable11 = NEW_string___String___with_native(BOX_NativeString("));"), TAG_Int(3)); /*new String*/
3983 variable12 = variable11;
3984 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
3985 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable6) /*CompilerVisitor::add_instr*/;
3986 } else { /*if*/
3987 if (once_bool_variable6_153) variable6 = once_value_variable6_153;
3988 else {
3989 variable6 = NEW_string___String___with_native(BOX_NativeString("ascii"), TAG_Int(5)); /*new String*/
3990 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
3991 once_value_variable6_153 = variable6;
3992 once_bool_variable6_153 = true;
3993 }
3994 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
3995 if (UNTAG_Bool(variable6)) { /*if*/
3996 variable6 = NEW_string___String___init(); /*new String*/
3997 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int((unsigned char)UNTAG_Char("), TAG_Int(34)); /*new String*/
3998 variable8 = variable7;
3999 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4000 variable9 = TAG_Int(0);
4001 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4002 variable11 = variable10;
4003 if (UNTAG_Bool(variable11)) { /* and */
4004 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4005 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4006 }
4007 variable10 = variable11;
4008 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4009 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4010 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4011 goto return_label154;
4012 return_label154: while(false);
4013 variable9 = variable10;
4014 variable10 = variable9;
4015 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4016 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4017 variable12 = variable11;
4018 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4019 variable5 = variable6 /*s=*/;
4020 } else { /*if*/
4021 if (once_bool_variable6_155) variable6 = once_value_variable6_155;
4022 else {
4023 variable6 = NEW_string___String___with_native(BOX_NativeString("succ"), TAG_Int(4)); /*new String*/
4024 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4025 once_value_variable6_155 = variable6;
4026 once_bool_variable6_155 = true;
4027 }
4028 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4029 if (UNTAG_Bool(variable6)) { /*if*/
4030 variable6 = NEW_string___String___init(); /*new String*/
4031 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Char(UNTAG_Char("), TAG_Int(20)); /*new String*/
4032 variable8 = variable7;
4033 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4034 variable9 = TAG_Int(0);
4035 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4036 variable11 = variable10;
4037 if (UNTAG_Bool(variable11)) { /* and */
4038 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4039 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4040 }
4041 variable10 = variable11;
4042 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4043 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4044 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4045 goto return_label156;
4046 return_label156: while(false);
4047 variable9 = variable10;
4048 variable10 = variable9;
4049 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4050 variable11 = NEW_string___String___with_native(BOX_NativeString(")+1)"), TAG_Int(4)); /*new String*/
4051 variable12 = variable11;
4052 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4053 variable5 = variable6 /*s=*/;
4054 } else { /*if*/
4055 if (once_bool_variable6_157) variable6 = once_value_variable6_157;
4056 else {
4057 variable6 = NEW_string___String___with_native(BOX_NativeString("prec"), TAG_Int(4)); /*new String*/
4058 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4059 once_value_variable6_157 = variable6;
4060 once_bool_variable6_157 = true;
4061 }
4062 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4063 if (UNTAG_Bool(variable6)) { /*if*/
4064 variable6 = NEW_string___String___init(); /*new String*/
4065 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Char(UNTAG_Char("), TAG_Int(20)); /*new String*/
4066 variable8 = variable7;
4067 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4068 variable9 = TAG_Int(0);
4069 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4070 variable11 = variable10;
4071 if (UNTAG_Bool(variable11)) { /* and */
4072 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4073 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4074 }
4075 variable10 = variable11;
4076 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4077 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4078 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4079 goto return_label158;
4080 return_label158: while(false);
4081 variable9 = variable10;
4082 variable10 = variable9;
4083 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4084 variable11 = NEW_string___String___with_native(BOX_NativeString(")-1)"), TAG_Int(4)); /*new String*/
4085 variable12 = variable11;
4086 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4087 variable5 = variable6 /*s=*/;
4088 } else { /*if*/
4089 if (once_bool_variable6_159) variable6 = once_value_variable6_159;
4090 else {
4091 variable6 = NEW_string___String___with_native(BOX_NativeString("to_i"), TAG_Int(4)); /*new String*/
4092 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4093 once_value_variable6_159 = variable6;
4094 once_bool_variable6_159 = true;
4095 }
4096 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4097 if (UNTAG_Bool(variable6)) { /*if*/
4098 variable6 = NEW_string___String___init(); /*new String*/
4099 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Char("), TAG_Int(19)); /*new String*/
4100 variable8 = variable7;
4101 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4102 variable9 = TAG_Int(0);
4103 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4104 variable11 = variable10;
4105 if (UNTAG_Bool(variable11)) { /* and */
4106 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4107 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4108 }
4109 variable10 = variable11;
4110 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4111 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4112 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4113 goto return_label160;
4114 return_label160: while(false);
4115 variable9 = variable10;
4116 variable10 = variable9;
4117 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4118 variable11 = NEW_string___String___with_native(BOX_NativeString(")-'0')"), TAG_Int(6)); /*new String*/
4119 variable12 = variable11;
4120 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4121 variable5 = variable6 /*s=*/;
4122 } else { /*if*/
4123 if (once_bool_variable6_161) variable6 = once_value_variable6_161;
4124 else {
4125 variable6 = NEW_string___String___with_native(BOX_NativeString("+"), TAG_Int(1)); /*new String*/
4126 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4127 once_value_variable6_161 = variable6;
4128 once_bool_variable6_161 = true;
4129 }
4130 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4131 if (UNTAG_Bool(variable6)) { /*if*/
4132 variable6 = NEW_string___String___init(); /*new String*/
4133 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Char(UNTAG_Char("), TAG_Int(20)); /*new String*/
4134 variable8 = variable7;
4135 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4136 variable9 = TAG_Int(0);
4137 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4138 variable11 = variable10;
4139 if (UNTAG_Bool(variable11)) { /* and */
4140 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4141 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4142 }
4143 variable10 = variable11;
4144 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4145 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4146 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4147 goto return_label162;
4148 return_label162: while(false);
4149 variable9 = variable10;
4150 variable10 = variable9;
4151 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4152 variable11 = NEW_string___String___with_native(BOX_NativeString(")+UNTAG_Char("), TAG_Int(13)); /*new String*/
4153 variable12 = variable11;
4154 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4155 variable13 = TAG_Int(1);
4156 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4157 variable15 = variable14;
4158 if (UNTAG_Bool(variable15)) { /* and */
4159 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4160 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4161 }
4162 variable14 = variable15;
4163 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4164 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4165 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4166 goto return_label163;
4167 return_label163: while(false);
4168 variable13 = variable14;
4169 variable14 = variable13;
4170 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4171 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4172 variable16 = variable15;
4173 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4174 variable5 = variable6 /*s=*/;
4175 } else { /*if*/
4176 if (once_bool_variable6_164) variable6 = once_value_variable6_164;
4177 else {
4178 variable6 = NEW_string___String___with_native(BOX_NativeString("-"), TAG_Int(1)); /*new String*/
4179 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4180 once_value_variable6_164 = variable6;
4181 once_bool_variable6_164 = true;
4182 }
4183 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4184 if (UNTAG_Bool(variable6)) { /*if*/
4185 variable6 = NEW_string___String___init(); /*new String*/
4186 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Char(UNTAG_Char("), TAG_Int(20)); /*new String*/
4187 variable8 = variable7;
4188 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4189 variable9 = TAG_Int(0);
4190 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4191 variable11 = variable10;
4192 if (UNTAG_Bool(variable11)) { /* and */
4193 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4194 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4195 }
4196 variable10 = variable11;
4197 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4198 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4199 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4200 goto return_label165;
4201 return_label165: while(false);
4202 variable9 = variable10;
4203 variable10 = variable9;
4204 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4205 variable11 = NEW_string___String___with_native(BOX_NativeString(")-UNTAG_Char("), TAG_Int(13)); /*new String*/
4206 variable12 = variable11;
4207 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4208 variable13 = TAG_Int(1);
4209 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4210 variable15 = variable14;
4211 if (UNTAG_Bool(variable15)) { /* and */
4212 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4213 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4214 }
4215 variable14 = variable15;
4216 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4217 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4218 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4219 goto return_label166;
4220 return_label166: while(false);
4221 variable13 = variable14;
4222 variable14 = variable13;
4223 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4224 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4225 variable16 = variable15;
4226 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4227 variable5 = variable6 /*s=*/;
4228 } else { /*if*/
4229 if (once_bool_variable6_167) variable6 = once_value_variable6_167;
4230 else {
4231 variable6 = NEW_string___String___with_native(BOX_NativeString("*"), TAG_Int(1)); /*new String*/
4232 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4233 once_value_variable6_167 = variable6;
4234 once_bool_variable6_167 = true;
4235 }
4236 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4237 if (UNTAG_Bool(variable6)) { /*if*/
4238 variable6 = NEW_string___String___init(); /*new String*/
4239 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Char(UNTAG_Char("), TAG_Int(20)); /*new String*/
4240 variable8 = variable7;
4241 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4242 variable9 = TAG_Int(0);
4243 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4244 variable11 = variable10;
4245 if (UNTAG_Bool(variable11)) { /* and */
4246 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4247 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4248 }
4249 variable10 = variable11;
4250 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4251 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4252 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4253 goto return_label168;
4254 return_label168: while(false);
4255 variable9 = variable10;
4256 variable10 = variable9;
4257 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4258 variable11 = NEW_string___String___with_native(BOX_NativeString(")*UNTAG_Char("), TAG_Int(13)); /*new String*/
4259 variable12 = variable11;
4260 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4261 variable13 = TAG_Int(1);
4262 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4263 variable15 = variable14;
4264 if (UNTAG_Bool(variable15)) { /* and */
4265 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4266 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4267 }
4268 variable14 = variable15;
4269 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4270 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4271 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4272 goto return_label169;
4273 return_label169: while(false);
4274 variable13 = variable14;
4275 variable14 = variable13;
4276 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4277 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4278 variable16 = variable15;
4279 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4280 variable5 = variable6 /*s=*/;
4281 } else { /*if*/
4282 if (once_bool_variable6_170) variable6 = once_value_variable6_170;
4283 else {
4284 variable6 = NEW_string___String___with_native(BOX_NativeString("/"), TAG_Int(1)); /*new String*/
4285 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4286 once_value_variable6_170 = variable6;
4287 once_bool_variable6_170 = true;
4288 }
4289 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4290 if (UNTAG_Bool(variable6)) { /*if*/
4291 variable6 = NEW_string___String___init(); /*new String*/
4292 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Char(UNTAG_Char("), TAG_Int(20)); /*new String*/
4293 variable8 = variable7;
4294 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4295 variable9 = TAG_Int(0);
4296 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4297 variable11 = variable10;
4298 if (UNTAG_Bool(variable11)) { /* and */
4299 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4300 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4301 }
4302 variable10 = variable11;
4303 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4304 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4305 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4306 goto return_label171;
4307 return_label171: while(false);
4308 variable9 = variable10;
4309 variable10 = variable9;
4310 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4311 variable11 = NEW_string___String___with_native(BOX_NativeString(")/UNTAG_Char("), TAG_Int(13)); /*new String*/
4312 variable12 = variable11;
4313 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4314 variable13 = TAG_Int(1);
4315 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4316 variable15 = variable14;
4317 if (UNTAG_Bool(variable15)) { /* and */
4318 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4319 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4320 }
4321 variable14 = variable15;
4322 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4323 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4324 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4325 goto return_label172;
4326 return_label172: while(false);
4327 variable13 = variable14;
4328 variable14 = variable13;
4329 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4330 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4331 variable16 = variable15;
4332 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4333 variable5 = variable6 /*s=*/;
4334 } else { /*if*/
4335 if (once_bool_variable6_173) variable6 = once_value_variable6_173;
4336 else {
4337 variable6 = NEW_string___String___with_native(BOX_NativeString("%"), TAG_Int(1)); /*new String*/
4338 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4339 once_value_variable6_173 = variable6;
4340 once_bool_variable6_173 = true;
4341 }
4342 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4343 if (UNTAG_Bool(variable6)) { /*if*/
4344 variable6 = NEW_string___String___init(); /*new String*/
4345 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Char(UNTAG_Char("), TAG_Int(20)); /*new String*/
4346 variable8 = variable7;
4347 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4348 variable9 = TAG_Int(0);
4349 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4350 variable11 = variable10;
4351 if (UNTAG_Bool(variable11)) { /* and */
4352 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4353 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4354 }
4355 variable10 = variable11;
4356 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4357 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4358 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4359 goto return_label174;
4360 return_label174: while(false);
4361 variable9 = variable10;
4362 variable10 = variable9;
4363 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4364 variable11 = NEW_string___String___with_native(BOX_NativeString(")%UNTAG_Char("), TAG_Int(13)); /*new String*/
4365 variable12 = variable11;
4366 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4367 variable13 = TAG_Int(1);
4368 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4369 variable15 = variable14;
4370 if (UNTAG_Bool(variable15)) { /* and */
4371 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4372 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4373 }
4374 variable14 = variable15;
4375 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4376 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4377 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4378 goto return_label175;
4379 return_label175: while(false);
4380 variable13 = variable14;
4381 variable14 = variable13;
4382 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4383 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4384 variable16 = variable15;
4385 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4386 variable5 = variable6 /*s=*/;
4387 } else { /*if*/
4388 if (once_bool_variable6_176) variable6 = once_value_variable6_176;
4389 else {
4390 variable6 = NEW_string___String___with_native(BOX_NativeString("<"), TAG_Int(1)); /*new String*/
4391 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4392 once_value_variable6_176 = variable6;
4393 once_bool_variable6_176 = true;
4394 }
4395 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4396 if (UNTAG_Bool(variable6)) { /*if*/
4397 variable6 = NEW_string___String___init(); /*new String*/
4398 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Char("), TAG_Int(20)); /*new String*/
4399 variable8 = variable7;
4400 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4401 variable9 = TAG_Int(0);
4402 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4403 variable11 = variable10;
4404 if (UNTAG_Bool(variable11)) { /* and */
4405 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4406 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4407 }
4408 variable10 = variable11;
4409 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4410 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4411 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4412 goto return_label177;
4413 return_label177: while(false);
4414 variable9 = variable10;
4415 variable10 = variable9;
4416 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4417 variable11 = NEW_string___String___with_native(BOX_NativeString(")<UNTAG_Char("), TAG_Int(13)); /*new String*/
4418 variable12 = variable11;
4419 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4420 variable13 = TAG_Int(1);
4421 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4422 variable15 = variable14;
4423 if (UNTAG_Bool(variable15)) { /* and */
4424 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4425 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4426 }
4427 variable14 = variable15;
4428 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4429 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4430 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4431 goto return_label178;
4432 return_label178: while(false);
4433 variable13 = variable14;
4434 variable14 = variable13;
4435 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4436 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4437 variable16 = variable15;
4438 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4439 variable5 = variable6 /*s=*/;
4440 } else { /*if*/
4441 if (once_bool_variable6_179) variable6 = once_value_variable6_179;
4442 else {
4443 variable6 = NEW_string___String___with_native(BOX_NativeString(">"), TAG_Int(1)); /*new String*/
4444 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4445 once_value_variable6_179 = variable6;
4446 once_bool_variable6_179 = true;
4447 }
4448 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4449 if (UNTAG_Bool(variable6)) { /*if*/
4450 variable6 = NEW_string___String___init(); /*new String*/
4451 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Char("), TAG_Int(20)); /*new String*/
4452 variable8 = variable7;
4453 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4454 variable9 = TAG_Int(0);
4455 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4456 variable11 = variable10;
4457 if (UNTAG_Bool(variable11)) { /* and */
4458 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4459 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4460 }
4461 variable10 = variable11;
4462 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4463 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4464 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4465 goto return_label180;
4466 return_label180: while(false);
4467 variable9 = variable10;
4468 variable10 = variable9;
4469 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4470 variable11 = NEW_string___String___with_native(BOX_NativeString(")>UNTAG_Char("), TAG_Int(13)); /*new String*/
4471 variable12 = variable11;
4472 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4473 variable13 = TAG_Int(1);
4474 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4475 variable15 = variable14;
4476 if (UNTAG_Bool(variable15)) { /* and */
4477 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4478 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4479 }
4480 variable14 = variable15;
4481 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4482 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4483 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4484 goto return_label181;
4485 return_label181: while(false);
4486 variable13 = variable14;
4487 variable14 = variable13;
4488 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4489 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4490 variable16 = variable15;
4491 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4492 variable5 = variable6 /*s=*/;
4493 } else { /*if*/
4494 if (once_bool_variable6_182) variable6 = once_value_variable6_182;
4495 else {
4496 variable6 = NEW_string___String___with_native(BOX_NativeString("<="), TAG_Int(2)); /*new String*/
4497 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4498 once_value_variable6_182 = variable6;
4499 once_bool_variable6_182 = true;
4500 }
4501 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4502 if (UNTAG_Bool(variable6)) { /*if*/
4503 variable6 = NEW_string___String___init(); /*new String*/
4504 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Char("), TAG_Int(20)); /*new String*/
4505 variable8 = variable7;
4506 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4507 variable9 = TAG_Int(0);
4508 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4509 variable11 = variable10;
4510 if (UNTAG_Bool(variable11)) { /* and */
4511 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4512 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4513 }
4514 variable10 = variable11;
4515 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4516 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4517 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4518 goto return_label183;
4519 return_label183: while(false);
4520 variable9 = variable10;
4521 variable10 = variable9;
4522 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4523 variable11 = NEW_string___String___with_native(BOX_NativeString(")<=UNTAG_Char("), TAG_Int(14)); /*new String*/
4524 variable12 = variable11;
4525 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4526 variable13 = TAG_Int(1);
4527 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4528 variable15 = variable14;
4529 if (UNTAG_Bool(variable15)) { /* and */
4530 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4531 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4532 }
4533 variable14 = variable15;
4534 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4535 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4536 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4537 goto return_label184;
4538 return_label184: while(false);
4539 variable13 = variable14;
4540 variable14 = variable13;
4541 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4542 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4543 variable16 = variable15;
4544 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4545 variable5 = variable6 /*s=*/;
4546 } else { /*if*/
4547 if (once_bool_variable6_185) variable6 = once_value_variable6_185;
4548 else {
4549 variable6 = NEW_string___String___with_native(BOX_NativeString(">="), TAG_Int(2)); /*new String*/
4550 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4551 once_value_variable6_185 = variable6;
4552 once_bool_variable6_185 = true;
4553 }
4554 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4555 if (UNTAG_Bool(variable6)) { /*if*/
4556 variable6 = NEW_string___String___init(); /*new String*/
4557 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Char("), TAG_Int(20)); /*new String*/
4558 variable8 = variable7;
4559 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4560 variable9 = TAG_Int(0);
4561 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4562 variable11 = variable10;
4563 if (UNTAG_Bool(variable11)) { /* and */
4564 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4565 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4566 }
4567 variable10 = variable11;
4568 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4569 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4570 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4571 goto return_label186;
4572 return_label186: while(false);
4573 variable9 = variable10;
4574 variable10 = variable9;
4575 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4576 variable11 = NEW_string___String___with_native(BOX_NativeString(")>=UNTAG_Char("), TAG_Int(14)); /*new String*/
4577 variable12 = variable11;
4578 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4579 variable13 = TAG_Int(1);
4580 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4581 variable15 = variable14;
4582 if (UNTAG_Bool(variable15)) { /* and */
4583 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4584 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4585 }
4586 variable14 = variable15;
4587 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4588 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4589 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4590 goto return_label187;
4591 return_label187: while(false);
4592 variable13 = variable14;
4593 variable14 = variable13;
4594 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4595 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4596 variable16 = variable15;
4597 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4598 variable5 = variable6 /*s=*/;
4599 } else { /*if*/
4600 if (once_bool_variable6_188) variable6 = once_value_variable6_188;
4601 else {
4602 variable6 = NEW_string___String___with_native(BOX_NativeString("=="), TAG_Int(2)); /*new String*/
4603 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4604 once_value_variable6_188 = variable6;
4605 once_bool_variable6_188 = true;
4606 }
4607 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4608 if (UNTAG_Bool(variable6)) { /*if*/
4609 variable6 = NEW_string___String___init(); /*new String*/
4610 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(("), TAG_Int(10)); /*new String*/
4611 variable8 = variable7;
4612 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4613 variable9 = TAG_Int(0);
4614 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4615 variable11 = variable10;
4616 if (UNTAG_Bool(variable11)) { /* and */
4617 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4618 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4619 }
4620 variable10 = variable11;
4621 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4622 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4623 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4624 goto return_label189;
4625 return_label189: while(false);
4626 variable9 = variable10;
4627 variable10 = variable9;
4628 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4629 variable11 = NEW_string___String___with_native(BOX_NativeString(")==("), TAG_Int(4)); /*new String*/
4630 variable12 = variable11;
4631 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4632 variable13 = TAG_Int(1);
4633 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4634 variable15 = variable14;
4635 if (UNTAG_Bool(variable15)) { /* and */
4636 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4637 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4638 }
4639 variable14 = variable15;
4640 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4641 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4642 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4643 goto return_label190;
4644 return_label190: while(false);
4645 variable13 = variable14;
4646 variable14 = variable13;
4647 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4648 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4649 variable16 = variable15;
4650 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4651 variable5 = variable6 /*s=*/;
4652 } else { /*if*/
4653 if (once_bool_variable6_191) variable6 = once_value_variable6_191;
4654 else {
4655 variable6 = NEW_string___String___with_native(BOX_NativeString("!="), TAG_Int(2)); /*new String*/
4656 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4657 once_value_variable6_191 = variable6;
4658 once_bool_variable6_191 = true;
4659 }
4660 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4661 if (UNTAG_Bool(variable6)) { /*if*/
4662 variable6 = NEW_string___String___init(); /*new String*/
4663 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(("), TAG_Int(10)); /*new String*/
4664 variable8 = variable7;
4665 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4666 variable9 = TAG_Int(0);
4667 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4668 variable11 = variable10;
4669 if (UNTAG_Bool(variable11)) { /* and */
4670 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4671 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4672 }
4673 variable10 = variable11;
4674 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4675 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4676 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4677 goto return_label192;
4678 return_label192: while(false);
4679 variable9 = variable10;
4680 variable10 = variable9;
4681 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4682 variable11 = NEW_string___String___with_native(BOX_NativeString(")!=("), TAG_Int(4)); /*new String*/
4683 variable12 = variable11;
4684 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4685 variable13 = TAG_Int(1);
4686 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4687 variable15 = variable14;
4688 if (UNTAG_Bool(variable15)) { /* and */
4689 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4690 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4691 }
4692 variable14 = variable15;
4693 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4694 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4695 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4696 goto return_label193;
4697 return_label193: while(false);
4698 variable13 = variable14;
4699 variable14 = variable13;
4700 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4701 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4702 variable16 = variable15;
4703 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4704 variable5 = variable6 /*s=*/;
4705 }
4706 }
4707 }
4708 }
4709 }
4710 }
4711 }
4712 }
4713 }
4714 }
4715 }
4716 }
4717 }
4718 }
4719 }
4720 }
4721 }
4722 }
4723 } else { /*if*/
4724 if (once_bool_variable6_194) variable6 = once_value_variable6_194;
4725 else {
4726 variable6 = NEW_string___String___with_native(BOX_NativeString("Bool"), TAG_Int(4)); /*new String*/
4727 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4728 once_value_variable6_194 = variable6;
4729 once_bool_variable6_194 = true;
4730 }
4731 variable6 = TAG_Bool(( variable3 /*c*/ == variable6) || (( variable3 /*c*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable3 /*c*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))( variable3 /*c*/, variable6) /*Symbol::==*/)))));
4732 if (UNTAG_Bool(variable6)) { /*if*/
4733 if (once_bool_variable6_195) variable6 = once_value_variable6_195;
4734 else {
4735 variable6 = NEW_string___String___with_native(BOX_NativeString("object_id"), TAG_Int(9)); /*new String*/
4736 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4737 once_value_variable6_195 = variable6;
4738 once_bool_variable6_195 = true;
4739 }
4740 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4741 if (UNTAG_Bool(variable6)) { /*if*/
4742 variable6 = NEW_string___String___init(); /*new String*/
4743 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Bool("), TAG_Int(19)); /*new String*/
4744 variable8 = variable7;
4745 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4746 variable9 = TAG_Int(0);
4747 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4748 variable11 = variable10;
4749 if (UNTAG_Bool(variable11)) { /* and */
4750 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4751 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4752 }
4753 variable10 = variable11;
4754 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4755 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4756 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4757 goto return_label196;
4758 return_label196: while(false);
4759 variable9 = variable10;
4760 variable10 = variable9;
4761 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4762 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4763 variable12 = variable11;
4764 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4765 variable5 = variable6 /*s=*/;
4766 } else { /*if*/
4767 if (once_bool_variable6_197) variable6 = once_value_variable6_197;
4768 else {
4769 variable6 = NEW_string___String___with_native(BOX_NativeString("unary -"), TAG_Int(7)); /*new String*/
4770 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4771 once_value_variable6_197 = variable6;
4772 once_bool_variable6_197 = true;
4773 }
4774 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4775 if (UNTAG_Bool(variable6)) { /*if*/
4776 variable6 = NEW_string___String___init(); /*new String*/
4777 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(-UNTAG_Bool("), TAG_Int(21)); /*new String*/
4778 variable8 = variable7;
4779 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4780 variable9 = TAG_Int(0);
4781 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4782 variable11 = variable10;
4783 if (UNTAG_Bool(variable11)) { /* and */
4784 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4785 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4786 }
4787 variable10 = variable11;
4788 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4789 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4790 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4791 goto return_label198;
4792 return_label198: while(false);
4793 variable9 = variable10;
4794 variable10 = variable9;
4795 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4796 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4797 variable12 = variable11;
4798 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4799 variable5 = variable6 /*s=*/;
4800 } else { /*if*/
4801 if (once_bool_variable6_199) variable6 = once_value_variable6_199;
4802 else {
4803 variable6 = NEW_string___String___with_native(BOX_NativeString("output"), TAG_Int(6)); /*new String*/
4804 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4805 once_value_variable6_199 = variable6;
4806 once_bool_variable6_199 = true;
4807 }
4808 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4809 if (UNTAG_Bool(variable6)) { /*if*/
4810 variable6 = NEW_string___String___init(); /*new String*/
4811 variable7 = NEW_string___String___with_native(BOX_NativeString("(void)printf(UNTAG_Bool("), TAG_Int(24)); /*new String*/
4812 variable8 = variable7;
4813 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4814 variable9 = TAG_Int(0);
4815 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4816 variable11 = variable10;
4817 if (UNTAG_Bool(variable11)) { /* and */
4818 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4819 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4820 }
4821 variable10 = variable11;
4822 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4823 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4824 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4825 goto return_label200;
4826 return_label200: while(false);
4827 variable9 = variable10;
4828 variable10 = variable9;
4829 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4830 variable11 = NEW_string___String___with_native(BOX_NativeString(")?\"true\\n\":\"false\\n\");"), TAG_Int(22)); /*new String*/
4831 variable12 = variable11;
4832 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4833 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable6) /*CompilerVisitor::add_instr*/;
4834 } else { /*if*/
4835 if (once_bool_variable6_201) variable6 = once_value_variable6_201;
4836 else {
4837 variable6 = NEW_string___String___with_native(BOX_NativeString("ascii"), TAG_Int(5)); /*new String*/
4838 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4839 once_value_variable6_201 = variable6;
4840 once_bool_variable6_201 = true;
4841 }
4842 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4843 if (UNTAG_Bool(variable6)) { /*if*/
4844 variable6 = NEW_string___String___init(); /*new String*/
4845 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(UNTAG_Bool("), TAG_Int(20)); /*new String*/
4846 variable8 = variable7;
4847 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4848 variable9 = TAG_Int(0);
4849 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4850 variable11 = variable10;
4851 if (UNTAG_Bool(variable11)) { /* and */
4852 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4853 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4854 }
4855 variable10 = variable11;
4856 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4857 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4858 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4859 goto return_label202;
4860 return_label202: while(false);
4861 variable9 = variable10;
4862 variable10 = variable9;
4863 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4864 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4865 variable12 = variable11;
4866 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4867 variable5 = variable6 /*s=*/;
4868 } else { /*if*/
4869 if (once_bool_variable6_203) variable6 = once_value_variable6_203;
4870 else {
4871 variable6 = NEW_string___String___with_native(BOX_NativeString("to_i"), TAG_Int(4)); /*new String*/
4872 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4873 once_value_variable6_203 = variable6;
4874 once_bool_variable6_203 = true;
4875 }
4876 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4877 if (UNTAG_Bool(variable6)) { /*if*/
4878 variable6 = NEW_string___String___init(); /*new String*/
4879 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNTAG_Bool("), TAG_Int(19)); /*new String*/
4880 variable8 = variable7;
4881 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4882 variable9 = TAG_Int(0);
4883 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4884 variable11 = variable10;
4885 if (UNTAG_Bool(variable11)) { /* and */
4886 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4887 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4888 }
4889 variable10 = variable11;
4890 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4891 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4892 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4893 goto return_label204;
4894 return_label204: while(false);
4895 variable9 = variable10;
4896 variable10 = variable9;
4897 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4898 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4899 variable12 = variable11;
4900 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4901 variable5 = variable6 /*s=*/;
4902 } else { /*if*/
4903 if (once_bool_variable6_205) variable6 = once_value_variable6_205;
4904 else {
4905 variable6 = NEW_string___String___with_native(BOX_NativeString("=="), TAG_Int(2)); /*new String*/
4906 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4907 once_value_variable6_205 = variable6;
4908 once_bool_variable6_205 = true;
4909 }
4910 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4911 if (UNTAG_Bool(variable6)) { /*if*/
4912 variable6 = NEW_string___String___init(); /*new String*/
4913 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(("), TAG_Int(10)); /*new String*/
4914 variable8 = variable7;
4915 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4916 variable9 = TAG_Int(0);
4917 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4918 variable11 = variable10;
4919 if (UNTAG_Bool(variable11)) { /* and */
4920 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4921 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4922 }
4923 variable10 = variable11;
4924 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4925 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4926 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4927 goto return_label206;
4928 return_label206: while(false);
4929 variable9 = variable10;
4930 variable10 = variable9;
4931 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4932 variable11 = NEW_string___String___with_native(BOX_NativeString(")==("), TAG_Int(4)); /*new String*/
4933 variable12 = variable11;
4934 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4935 variable13 = TAG_Int(1);
4936 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4937 variable15 = variable14;
4938 if (UNTAG_Bool(variable15)) { /* and */
4939 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4940 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4941 }
4942 variable14 = variable15;
4943 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4944 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4945 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4946 goto return_label207;
4947 return_label207: while(false);
4948 variable13 = variable14;
4949 variable14 = variable13;
4950 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
4951 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
4952 variable16 = variable15;
4953 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
4954 variable5 = variable6 /*s=*/;
4955 } else { /*if*/
4956 if (once_bool_variable6_208) variable6 = once_value_variable6_208;
4957 else {
4958 variable6 = NEW_string___String___with_native(BOX_NativeString("!="), TAG_Int(2)); /*new String*/
4959 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
4960 once_value_variable6_208 = variable6;
4961 once_bool_variable6_208 = true;
4962 }
4963 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
4964 if (UNTAG_Bool(variable6)) { /*if*/
4965 variable6 = NEW_string___String___init(); /*new String*/
4966 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(("), TAG_Int(10)); /*new String*/
4967 variable8 = variable7;
4968 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
4969 variable9 = TAG_Int(0);
4970 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4971 variable11 = variable10;
4972 if (UNTAG_Bool(variable11)) { /* and */
4973 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4974 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
4975 }
4976 variable10 = variable11;
4977 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4978 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4979 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
4980 goto return_label209;
4981 return_label209: while(false);
4982 variable9 = variable10;
4983 variable10 = variable9;
4984 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
4985 variable11 = NEW_string___String___with_native(BOX_NativeString(")!=("), TAG_Int(4)); /*new String*/
4986 variable12 = variable11;
4987 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
4988 variable13 = TAG_Int(1);
4989 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
4990 variable15 = variable14;
4991 if (UNTAG_Bool(variable15)) { /* and */
4992 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
4993 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
4994 }
4995 variable14 = variable15;
4996 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
4997 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
4998 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
4999 goto return_label210;
5000 return_label210: while(false);
5001 variable13 = variable14;
5002 variable14 = variable13;
5003 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
5004 variable15 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
5005 variable16 = variable15;
5006 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
5007 variable5 = variable6 /*s=*/;
5008 }
5009 }
5010 }
5011 }
5012 }
5013 }
5014 }
5015 } else { /*if*/
5016 if (once_bool_variable6_211) variable6 = once_value_variable6_211;
5017 else {
5018 variable6 = NEW_string___String___with_native(BOX_NativeString("NativeArray"), TAG_Int(11)); /*new String*/
5019 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5020 once_value_variable6_211 = variable6;
5021 once_bool_variable6_211 = true;
5022 }
5023 variable6 = TAG_Bool(( variable3 /*c*/ == variable6) || (( variable3 /*c*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable3 /*c*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))( variable3 /*c*/, variable6) /*Symbol::==*/)))));
5024 if (UNTAG_Bool(variable6)) { /*if*/
5025 if (once_bool_variable6_212) variable6 = once_value_variable6_212;
5026 else {
5027 variable6 = NEW_string___String___with_native(BOX_NativeString("object_id"), TAG_Int(9)); /*new String*/
5028 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5029 once_value_variable6_212 = variable6;
5030 once_bool_variable6_212 = true;
5031 }
5032 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5033 if (UNTAG_Bool(variable6)) { /*if*/
5034 variable6 = NEW_string___String___init(); /*new String*/
5035 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNBOX_NativeArray("), TAG_Int(26)); /*new String*/
5036 variable8 = variable7;
5037 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5038 variable9 = TAG_Int(0);
5039 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5040 variable11 = variable10;
5041 if (UNTAG_Bool(variable11)) { /* and */
5042 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5043 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5044 }
5045 variable10 = variable11;
5046 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5047 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5048 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5049 goto return_label213;
5050 return_label213: while(false);
5051 variable9 = variable10;
5052 variable10 = variable9;
5053 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5054 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
5055 variable12 = variable11;
5056 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5057 variable5 = variable6 /*s=*/;
5058 } else { /*if*/
5059 if (once_bool_variable6_214) variable6 = once_value_variable6_214;
5060 else {
5061 variable6 = NEW_string___String___with_native(BOX_NativeString("[]"), TAG_Int(2)); /*new String*/
5062 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5063 once_value_variable6_214 = variable6;
5064 once_bool_variable6_214 = true;
5065 }
5066 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5067 if (UNTAG_Bool(variable6)) { /*if*/
5068 variable6 = NEW_string___String___init(); /*new String*/
5069 variable7 = NEW_string___String___with_native(BOX_NativeString("UNBOX_NativeArray("), TAG_Int(18)); /*new String*/
5070 variable8 = variable7;
5071 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5072 variable9 = TAG_Int(0);
5073 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5074 variable11 = variable10;
5075 if (UNTAG_Bool(variable11)) { /* and */
5076 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5077 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5078 }
5079 variable10 = variable11;
5080 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5081 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5082 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5083 goto return_label215;
5084 return_label215: while(false);
5085 variable9 = variable10;
5086 variable10 = variable9;
5087 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5088 variable11 = NEW_string___String___with_native(BOX_NativeString(")[UNTAG_Int("), TAG_Int(12)); /*new String*/
5089 variable12 = variable11;
5090 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5091 variable13 = TAG_Int(1);
5092 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5093 variable15 = variable14;
5094 if (UNTAG_Bool(variable15)) { /* and */
5095 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5096 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
5097 }
5098 variable14 = variable15;
5099 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5100 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5101 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
5102 goto return_label216;
5103 return_label216: while(false);
5104 variable13 = variable14;
5105 variable14 = variable13;
5106 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
5107 variable15 = NEW_string___String___with_native(BOX_NativeString(")]"), TAG_Int(2)); /*new String*/
5108 variable16 = variable15;
5109 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
5110 variable5 = variable6 /*s=*/;
5111 } else { /*if*/
5112 if (once_bool_variable6_217) variable6 = once_value_variable6_217;
5113 else {
5114 variable6 = NEW_string___String___with_native(BOX_NativeString("[]="), TAG_Int(3)); /*new String*/
5115 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5116 once_value_variable6_217 = variable6;
5117 once_bool_variable6_217 = true;
5118 }
5119 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5120 if (UNTAG_Bool(variable6)) { /*if*/
5121 variable6 = NEW_string___String___init(); /*new String*/
5122 variable7 = NEW_string___String___with_native(BOX_NativeString("UNBOX_NativeArray("), TAG_Int(18)); /*new String*/
5123 variable8 = variable7;
5124 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5125 variable9 = TAG_Int(0);
5126 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5127 variable11 = variable10;
5128 if (UNTAG_Bool(variable11)) { /* and */
5129 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5130 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5131 }
5132 variable10 = variable11;
5133 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5134 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5135 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5136 goto return_label218;
5137 return_label218: while(false);
5138 variable9 = variable10;
5139 variable10 = variable9;
5140 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5141 variable11 = NEW_string___String___with_native(BOX_NativeString(")[UNTAG_Int("), TAG_Int(12)); /*new String*/
5142 variable12 = variable11;
5143 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5144 variable13 = TAG_Int(1);
5145 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5146 variable15 = variable14;
5147 if (UNTAG_Bool(variable15)) { /* and */
5148 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5149 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
5150 }
5151 variable14 = variable15;
5152 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5153 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5154 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
5155 goto return_label219;
5156 return_label219: while(false);
5157 variable13 = variable14;
5158 variable14 = variable13;
5159 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
5160 variable15 = NEW_string___String___with_native(BOX_NativeString(")]="), TAG_Int(3)); /*new String*/
5161 variable16 = variable15;
5162 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
5163 variable17 = TAG_Int(2);
5164 variable18 = TAG_Bool(UNTAG_Int( variable17 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5165 variable19 = variable18;
5166 if (UNTAG_Bool(variable19)) { /* and */
5167 variable19 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5168 variable19 = TAG_Bool(UNTAG_Int( variable17 /*index*/)<UNTAG_Int(variable19));
5169 }
5170 variable18 = variable19;
5171 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5172 variable18 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5173 variable18 = UNBOX_NativeArray(variable18)[UNTAG_Int( variable17 /*index*/)];
5174 goto return_label220;
5175 return_label220: while(false);
5176 variable17 = variable18;
5177 variable18 = variable17;
5178 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable18) /*String::append*/;
5179 variable19 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
5180 variable20 = variable19;
5181 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable20) /*String::append*/;
5182 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable6) /*CompilerVisitor::add_instr*/;
5183 } else { /*if*/
5184 if (once_bool_variable6_221) variable6 = once_value_variable6_221;
5185 else {
5186 variable6 = NEW_string___String___with_native(BOX_NativeString("copy_to"), TAG_Int(7)); /*new String*/
5187 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5188 once_value_variable6_221 = variable6;
5189 once_bool_variable6_221 = true;
5190 }
5191 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5192 if (UNTAG_Bool(variable6)) { /*if*/
5193 variable6 = NEW_string___String___init(); /*new String*/
5194 variable7 = NEW_string___String___with_native(BOX_NativeString("(void)memcpy(UNBOX_NativeArray("), TAG_Int(31)); /*new String*/
5195 variable8 = variable7;
5196 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5197 variable9 = TAG_Int(1);
5198 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5199 variable11 = variable10;
5200 if (UNTAG_Bool(variable11)) { /* and */
5201 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5202 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5203 }
5204 variable10 = variable11;
5205 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5206 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5207 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5208 goto return_label222;
5209 return_label222: while(false);
5210 variable9 = variable10;
5211 variable10 = variable9;
5212 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5213 variable11 = NEW_string___String___with_native(BOX_NativeString("), UNBOX_NativeArray("), TAG_Int(21)); /*new String*/
5214 variable12 = variable11;
5215 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5216 variable13 = TAG_Int(0);
5217 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5218 variable15 = variable14;
5219 if (UNTAG_Bool(variable15)) { /* and */
5220 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5221 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
5222 }
5223 variable14 = variable15;
5224 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5225 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5226 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
5227 goto return_label223;
5228 return_label223: while(false);
5229 variable13 = variable14;
5230 variable14 = variable13;
5231 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
5232 variable15 = NEW_string___String___with_native(BOX_NativeString("), UNTAG_Int("), TAG_Int(13)); /*new String*/
5233 variable16 = variable15;
5234 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
5235 variable17 = TAG_Int(2);
5236 variable18 = TAG_Bool(UNTAG_Int( variable17 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5237 variable19 = variable18;
5238 if (UNTAG_Bool(variable19)) { /* and */
5239 variable19 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5240 variable19 = TAG_Bool(UNTAG_Int( variable17 /*index*/)<UNTAG_Int(variable19));
5241 }
5242 variable18 = variable19;
5243 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5244 variable18 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5245 variable18 = UNBOX_NativeArray(variable18)[UNTAG_Int( variable17 /*index*/)];
5246 goto return_label224;
5247 return_label224: while(false);
5248 variable17 = variable18;
5249 variable18 = variable17;
5250 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable18) /*String::append*/;
5251 variable19 = NEW_string___String___with_native(BOX_NativeString(")*sizeof(val_t));"), TAG_Int(17)); /*new String*/
5252 variable20 = variable19;
5253 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable20) /*String::append*/;
5254 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable6) /*CompilerVisitor::add_instr*/;
5255 }
5256 }
5257 }
5258 }
5259 } else { /*if*/
5260 if (once_bool_variable6_225) variable6 = once_value_variable6_225;
5261 else {
5262 variable6 = NEW_string___String___with_native(BOX_NativeString("NativeString"), TAG_Int(12)); /*new String*/
5263 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5264 once_value_variable6_225 = variable6;
5265 once_bool_variable6_225 = true;
5266 }
5267 variable6 = TAG_Bool(( variable3 /*c*/ == variable6) || (( variable3 /*c*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable3 /*c*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable3 /*c*/,COLOR_kernel___Object_____eqeq))( variable3 /*c*/, variable6) /*Symbol::==*/)))));
5268 if (UNTAG_Bool(variable6)) { /*if*/
5269 if (once_bool_variable6_226) variable6 = once_value_variable6_226;
5270 else {
5271 variable6 = NEW_string___String___with_native(BOX_NativeString("object_id"), TAG_Int(9)); /*new String*/
5272 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5273 once_value_variable6_226 = variable6;
5274 once_bool_variable6_226 = true;
5275 }
5276 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5277 if (UNTAG_Bool(variable6)) { /*if*/
5278 variable6 = NEW_string___String___init(); /*new String*/
5279 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(UNBOX_NativeString("), TAG_Int(27)); /*new String*/
5280 variable8 = variable7;
5281 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5282 variable9 = TAG_Int(0);
5283 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5284 variable11 = variable10;
5285 if (UNTAG_Bool(variable11)) { /* and */
5286 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5287 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5288 }
5289 variable10 = variable11;
5290 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5291 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5292 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5293 goto return_label227;
5294 return_label227: while(false);
5295 variable9 = variable10;
5296 variable10 = variable9;
5297 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5298 variable11 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
5299 variable12 = variable11;
5300 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5301 variable5 = variable6 /*s=*/;
5302 } else { /*if*/
5303 if (once_bool_variable6_228) variable6 = once_value_variable6_228;
5304 else {
5305 variable6 = NEW_string___String___with_native(BOX_NativeString("atoi"), TAG_Int(4)); /*new String*/
5306 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5307 once_value_variable6_228 = variable6;
5308 once_bool_variable6_228 = true;
5309 }
5310 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5311 if (UNTAG_Bool(variable6)) { /*if*/
5312 variable6 = NEW_string___String___init(); /*new String*/
5313 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int(atoi(UNBOX_NativeString("), TAG_Int(32)); /*new String*/
5314 variable8 = variable7;
5315 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5316 variable9 = TAG_Int(0);
5317 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5318 variable11 = variable10;
5319 if (UNTAG_Bool(variable11)) { /* and */
5320 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5321 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5322 }
5323 variable10 = variable11;
5324 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5325 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5326 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5327 goto return_label229;
5328 return_label229: while(false);
5329 variable9 = variable10;
5330 variable10 = variable9;
5331 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5332 variable11 = NEW_string___String___with_native(BOX_NativeString(")))"), TAG_Int(3)); /*new String*/
5333 variable12 = variable11;
5334 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5335 variable5 = variable6 /*s=*/;
5336 } else { /*if*/
5337 if (once_bool_variable6_230) variable6 = once_value_variable6_230;
5338 else {
5339 variable6 = NEW_string___String___with_native(BOX_NativeString("[]"), TAG_Int(2)); /*new String*/
5340 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5341 once_value_variable6_230 = variable6;
5342 once_bool_variable6_230 = true;
5343 }
5344 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5345 if (UNTAG_Bool(variable6)) { /*if*/
5346 variable6 = NEW_string___String___init(); /*new String*/
5347 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Char(UNBOX_NativeString("), TAG_Int(28)); /*new String*/
5348 variable8 = variable7;
5349 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5350 variable9 = TAG_Int(0);
5351 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5352 variable11 = variable10;
5353 if (UNTAG_Bool(variable11)) { /* and */
5354 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5355 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5356 }
5357 variable10 = variable11;
5358 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5359 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5360 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5361 goto return_label231;
5362 return_label231: while(false);
5363 variable9 = variable10;
5364 variable10 = variable9;
5365 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5366 variable11 = NEW_string___String___with_native(BOX_NativeString(")[UNTAG_Int("), TAG_Int(12)); /*new String*/
5367 variable12 = variable11;
5368 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5369 variable13 = TAG_Int(1);
5370 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5371 variable15 = variable14;
5372 if (UNTAG_Bool(variable15)) { /* and */
5373 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5374 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
5375 }
5376 variable14 = variable15;
5377 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5378 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5379 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
5380 goto return_label232;
5381 return_label232: while(false);
5382 variable13 = variable14;
5383 variable14 = variable13;
5384 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
5385 variable15 = NEW_string___String___with_native(BOX_NativeString(")])"), TAG_Int(3)); /*new String*/
5386 variable16 = variable15;
5387 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
5388 variable5 = variable6 /*s=*/;
5389 } else { /*if*/
5390 if (once_bool_variable6_233) variable6 = once_value_variable6_233;
5391 else {
5392 variable6 = NEW_string___String___with_native(BOX_NativeString("[]="), TAG_Int(3)); /*new String*/
5393 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5394 once_value_variable6_233 = variable6;
5395 once_bool_variable6_233 = true;
5396 }
5397 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5398 if (UNTAG_Bool(variable6)) { /*if*/
5399 variable6 = NEW_string___String___init(); /*new String*/
5400 variable7 = NEW_string___String___with_native(BOX_NativeString("UNBOX_NativeString("), TAG_Int(19)); /*new String*/
5401 variable8 = variable7;
5402 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5403 variable9 = TAG_Int(0);
5404 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5405 variable11 = variable10;
5406 if (UNTAG_Bool(variable11)) { /* and */
5407 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5408 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5409 }
5410 variable10 = variable11;
5411 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5412 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5413 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5414 goto return_label234;
5415 return_label234: while(false);
5416 variable9 = variable10;
5417 variable10 = variable9;
5418 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5419 variable11 = NEW_string___String___with_native(BOX_NativeString(")[UNTAG_Int("), TAG_Int(12)); /*new String*/
5420 variable12 = variable11;
5421 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5422 variable13 = TAG_Int(1);
5423 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5424 variable15 = variable14;
5425 if (UNTAG_Bool(variable15)) { /* and */
5426 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5427 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
5428 }
5429 variable14 = variable15;
5430 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5431 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5432 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
5433 goto return_label235;
5434 return_label235: while(false);
5435 variable13 = variable14;
5436 variable14 = variable13;
5437 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
5438 variable15 = NEW_string___String___with_native(BOX_NativeString(")]=UNTAG_Char("), TAG_Int(14)); /*new String*/
5439 variable16 = variable15;
5440 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
5441 variable17 = TAG_Int(2);
5442 variable18 = TAG_Bool(UNTAG_Int( variable17 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5443 variable19 = variable18;
5444 if (UNTAG_Bool(variable19)) { /* and */
5445 variable19 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5446 variable19 = TAG_Bool(UNTAG_Int( variable17 /*index*/)<UNTAG_Int(variable19));
5447 }
5448 variable18 = variable19;
5449 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5450 variable18 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5451 variable18 = UNBOX_NativeArray(variable18)[UNTAG_Int( variable17 /*index*/)];
5452 goto return_label236;
5453 return_label236: while(false);
5454 variable17 = variable18;
5455 variable18 = variable17;
5456 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable18) /*String::append*/;
5457 variable19 = NEW_string___String___with_native(BOX_NativeString(");"), TAG_Int(2)); /*new String*/
5458 variable20 = variable19;
5459 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable20) /*String::append*/;
5460 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable6) /*CompilerVisitor::add_instr*/;
5461 } else { /*if*/
5462 if (once_bool_variable6_237) variable6 = once_value_variable6_237;
5463 else {
5464 variable6 = NEW_string___String___with_native(BOX_NativeString("copy_to"), TAG_Int(7)); /*new String*/
5465 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5466 once_value_variable6_237 = variable6;
5467 once_bool_variable6_237 = true;
5468 }
5469 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5470 if (UNTAG_Bool(variable6)) { /*if*/
5471 variable6 = NEW_string___String___init(); /*new String*/
5472 variable7 = NEW_string___String___with_native(BOX_NativeString("(void)memcpy(UNBOX_NativeString("), TAG_Int(32)); /*new String*/
5473 variable8 = variable7;
5474 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5475 variable9 = TAG_Int(1);
5476 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5477 variable11 = variable10;
5478 if (UNTAG_Bool(variable11)) { /* and */
5479 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5480 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5481 }
5482 variable10 = variable11;
5483 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5484 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5485 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5486 goto return_label238;
5487 return_label238: while(false);
5488 variable9 = variable10;
5489 variable10 = variable9;
5490 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5491 variable11 = NEW_string___String___with_native(BOX_NativeString(")+UNTAG_Int("), TAG_Int(12)); /*new String*/
5492 variable12 = variable11;
5493 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5494 variable13 = TAG_Int(4);
5495 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5496 variable15 = variable14;
5497 if (UNTAG_Bool(variable15)) { /* and */
5498 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5499 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
5500 }
5501 variable14 = variable15;
5502 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5503 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5504 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
5505 goto return_label239;
5506 return_label239: while(false);
5507 variable13 = variable14;
5508 variable14 = variable13;
5509 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
5510 variable15 = NEW_string___String___with_native(BOX_NativeString("), UNBOX_NativeString("), TAG_Int(22)); /*new String*/
5511 variable16 = variable15;
5512 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
5513 variable17 = TAG_Int(0);
5514 variable18 = TAG_Bool(UNTAG_Int( variable17 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5515 variable19 = variable18;
5516 if (UNTAG_Bool(variable19)) { /* and */
5517 variable19 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5518 variable19 = TAG_Bool(UNTAG_Int( variable17 /*index*/)<UNTAG_Int(variable19));
5519 }
5520 variable18 = variable19;
5521 if (!UNTAG_Bool(variable18)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5522 variable18 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5523 variable18 = UNBOX_NativeArray(variable18)[UNTAG_Int( variable17 /*index*/)];
5524 goto return_label240;
5525 return_label240: while(false);
5526 variable17 = variable18;
5527 variable18 = variable17;
5528 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable18) /*String::append*/;
5529 variable19 = NEW_string___String___with_native(BOX_NativeString(")+UNTAG_Int("), TAG_Int(12)); /*new String*/
5530 variable20 = variable19;
5531 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable20) /*String::append*/;
5532 variable21 = TAG_Int(3);
5533 variable22 = TAG_Bool(UNTAG_Int( variable21 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5534 variable23 = variable22;
5535 if (UNTAG_Bool(variable23)) { /* and */
5536 variable23 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5537 variable23 = TAG_Bool(UNTAG_Int( variable21 /*index*/)<UNTAG_Int(variable23));
5538 }
5539 variable22 = variable23;
5540 if (!UNTAG_Bool(variable22)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5541 variable22 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5542 variable22 = UNBOX_NativeArray(variable22)[UNTAG_Int( variable21 /*index*/)];
5543 goto return_label241;
5544 return_label241: while(false);
5545 variable21 = variable22;
5546 variable22 = variable21;
5547 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable22) /*String::append*/;
5548 variable23 = NEW_string___String___with_native(BOX_NativeString("), UNTAG_Int("), TAG_Int(13)); /*new String*/
5549 variable24 = variable23;
5550 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable24) /*String::append*/;
5551 variable25 = TAG_Int(2);
5552 variable26 = TAG_Bool(UNTAG_Int( variable25 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5553 variable27 = variable26;
5554 if (UNTAG_Bool(variable27)) { /* and */
5555 variable27 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5556 variable27 = TAG_Bool(UNTAG_Int( variable25 /*index*/)<UNTAG_Int(variable27));
5557 }
5558 variable26 = variable27;
5559 if (!UNTAG_Bool(variable26)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5560 variable26 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5561 variable26 = UNBOX_NativeArray(variable26)[UNTAG_Int( variable25 /*index*/)];
5562 goto return_label242;
5563 return_label242: while(false);
5564 variable25 = variable26;
5565 variable26 = variable25;
5566 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable26) /*String::append*/;
5567 variable27 = NEW_string___String___with_native(BOX_NativeString("));"), TAG_Int(3)); /*new String*/
5568 variable28 = variable27;
5569 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable28) /*String::append*/;
5570 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable6) /*CompilerVisitor::add_instr*/;
5571 }
5572 }
5573 }
5574 }
5575 }
5576 } else { /*if*/
5577 if (once_bool_variable6_243) variable6 = once_value_variable6_243;
5578 else {
5579 variable6 = NEW_string___String___with_native(BOX_NativeString("object_id"), TAG_Int(9)); /*new String*/
5580 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5581 once_value_variable6_243 = variable6;
5582 once_bool_variable6_243 = true;
5583 }
5584 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5585 if (UNTAG_Bool(variable6)) { /*if*/
5586 variable6 = NEW_string___String___init(); /*new String*/
5587 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Int((int)"), TAG_Int(13)); /*new String*/
5588 variable8 = variable7;
5589 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5590 variable9 = TAG_Int(0);
5591 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5592 variable11 = variable10;
5593 if (UNTAG_Bool(variable11)) { /* and */
5594 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5595 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5596 }
5597 variable10 = variable11;
5598 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5599 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5600 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5601 goto return_label244;
5602 return_label244: while(false);
5603 variable9 = variable10;
5604 variable10 = variable9;
5605 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5606 variable11 = NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
5607 variable12 = variable11;
5608 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5609 variable5 = variable6 /*s=*/;
5610 } else { /*if*/
5611 if (once_bool_variable6_245) variable6 = once_value_variable6_245;
5612 else {
5613 variable6 = NEW_string___String___with_native(BOX_NativeString("sys"), TAG_Int(3)); /*new String*/
5614 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5615 once_value_variable6_245 = variable6;
5616 once_bool_variable6_245 = true;
5617 }
5618 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5619 if (UNTAG_Bool(variable6)) { /*if*/
5620 variable6 = NEW_string___String___with_native(BOX_NativeString("(G_sys)"), TAG_Int(7)); /*new String*/
5621 variable5 = variable6 /*s=*/;
5622 } else { /*if*/
5623 if (once_bool_variable6_246) variable6 = once_value_variable6_246;
5624 else {
5625 variable6 = NEW_string___String___with_native(BOX_NativeString("is_same_type"), TAG_Int(12)); /*new String*/
5626 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5627 once_value_variable6_246 = variable6;
5628 once_bool_variable6_246 = true;
5629 }
5630 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5631 if (UNTAG_Bool(variable6)) { /*if*/
5632 variable6 = NEW_string___String___init(); /*new String*/
5633 variable7 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool((VAL2VFT("), TAG_Int(18)); /*new String*/
5634 variable8 = variable7;
5635 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5636 variable9 = TAG_Int(0);
5637 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5638 variable11 = variable10;
5639 if (UNTAG_Bool(variable11)) { /* and */
5640 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5641 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5642 }
5643 variable10 = variable11;
5644 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5645 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5646 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5647 goto return_label247;
5648 return_label247: while(false);
5649 variable9 = variable10;
5650 variable10 = variable9;
5651 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5652 variable11 = NEW_string___String___with_native(BOX_NativeString(")==VAL2VFT("), TAG_Int(11)); /*new String*/
5653 variable12 = variable11;
5654 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5655 variable13 = TAG_Int(1);
5656 variable14 = TAG_Bool(UNTAG_Int( variable13 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5657 variable15 = variable14;
5658 if (UNTAG_Bool(variable15)) { /* and */
5659 variable15 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5660 variable15 = TAG_Bool(UNTAG_Int( variable13 /*index*/)<UNTAG_Int(variable15));
5661 }
5662 variable14 = variable15;
5663 if (!UNTAG_Bool(variable14)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5664 variable14 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5665 variable14 = UNBOX_NativeArray(variable14)[UNTAG_Int( variable13 /*index*/)];
5666 goto return_label248;
5667 return_label248: while(false);
5668 variable13 = variable14;
5669 variable14 = variable13;
5670 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable14) /*String::append*/;
5671 variable15 = NEW_string___String___with_native(BOX_NativeString(")))"), TAG_Int(3)); /*new String*/
5672 variable16 = variable15;
5673 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable16) /*String::append*/;
5674 variable5 = variable6 /*s=*/;
5675 } else { /*if*/
5676 if (once_bool_variable6_249) variable6 = once_value_variable6_249;
5677 else {
5678 variable6 = NEW_string___String___with_native(BOX_NativeString("exit"), TAG_Int(4)); /*new String*/
5679 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5680 once_value_variable6_249 = variable6;
5681 once_bool_variable6_249 = true;
5682 }
5683 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5684 if (UNTAG_Bool(variable6)) { /*if*/
5685 variable6 = NEW_string___String___init(); /*new String*/
5686 variable7 = NEW_string___String___with_native(BOX_NativeString("exit(UNTAG_Int("), TAG_Int(15)); /*new String*/
5687 variable8 = variable7;
5688 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5689 variable9 = TAG_Int(1);
5690 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5691 variable11 = variable10;
5692 if (UNTAG_Bool(variable11)) { /* and */
5693 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5694 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5695 }
5696 variable10 = variable11;
5697 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5698 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5699 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5700 goto return_label250;
5701 return_label250: while(false);
5702 variable9 = variable10;
5703 variable10 = variable9;
5704 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5705 variable11 = NEW_string___String___with_native(BOX_NativeString("));"), TAG_Int(3)); /*new String*/
5706 variable12 = variable11;
5707 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5708 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable6) /*CompilerVisitor::add_instr*/;
5709 } else { /*if*/
5710 if (once_bool_variable6_251) variable6 = once_value_variable6_251;
5711 else {
5712 variable6 = NEW_string___String___with_native(BOX_NativeString("calloc_array"), TAG_Int(12)); /*new String*/
5713 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5714 once_value_variable6_251 = variable6;
5715 once_bool_variable6_251 = true;
5716 }
5717 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5718 if (UNTAG_Bool(variable6)) { /*if*/
5719 variable6 = NEW_string___String___init(); /*new String*/
5720 variable7 = NEW_string___String___with_native(BOX_NativeString("BOX_NativeArray((val_t*)malloc((UNTAG_Int("), TAG_Int(42)); /*new String*/
5721 variable8 = variable7;
5722 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5723 variable9 = TAG_Int(1);
5724 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5725 variable11 = variable10;
5726 if (UNTAG_Bool(variable11)) { /* and */
5727 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5728 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5729 }
5730 variable10 = variable11;
5731 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5732 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5733 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5734 goto return_label252;
5735 return_label252: while(false);
5736 variable9 = variable10;
5737 variable10 = variable9;
5738 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5739 variable11 = NEW_string___String___with_native(BOX_NativeString(") * sizeof(val_t))))"), TAG_Int(20)); /*new String*/
5740 variable12 = variable11;
5741 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5742 variable5 = variable6 /*s=*/;
5743 } else { /*if*/
5744 if (once_bool_variable6_253) variable6 = once_value_variable6_253;
5745 else {
5746 variable6 = NEW_string___String___with_native(BOX_NativeString("calloc_string"), TAG_Int(13)); /*new String*/
5747 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
5748 once_value_variable6_253 = variable6;
5749 once_bool_variable6_253 = true;
5750 }
5751 variable6 = TAG_Bool(( variable4 /*n*/ == variable6) || (( variable4 /*n*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable4 /*n*/,variable6)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable4 /*n*/,COLOR_kernel___Object_____eqeq))( variable4 /*n*/, variable6) /*Symbol::==*/)))));
5752 if (UNTAG_Bool(variable6)) { /*if*/
5753 variable6 = NEW_string___String___init(); /*new String*/
5754 variable7 = NEW_string___String___with_native(BOX_NativeString("BOX_NativeString((char*)malloc((UNTAG_Int("), TAG_Int(42)); /*new String*/
5755 variable8 = variable7;
5756 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5757 variable9 = TAG_Int(1);
5758 variable10 = TAG_Bool(UNTAG_Int( variable9 /*index*/)>=UNTAG_Int( TAG_Int(0)));
5759 variable11 = variable10;
5760 if (UNTAG_Bool(variable11)) { /* and */
5761 variable11 = ATTR_array___AbstractArray____length( variable2 /*p*/) /*Array::_length*/;
5762 variable11 = TAG_Bool(UNTAG_Int( variable9 /*index*/)<UNTAG_Int(variable11));
5763 }
5764 variable10 = variable11;
5765 if (!UNTAG_Bool(variable10)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
5766 variable10 = ATTR_array___Array____items( variable2 /*p*/) /*Array::_items*/;
5767 variable10 = UNBOX_NativeArray(variable10)[UNTAG_Int( variable9 /*index*/)];
5768 goto return_label254;
5769 return_label254: while(false);
5770 variable9 = variable10;
5771 variable10 = variable9;
5772 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable10) /*String::append*/;
5773 variable11 = NEW_string___String___with_native(BOX_NativeString(") * sizeof(char))))"), TAG_Int(19)); /*new String*/
5774 variable12 = variable11;
5775 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable12) /*String::append*/;
5776 variable5 = variable6 /*s=*/;
5777 } else { /*if*/
5778 variable6 = NEW_string___String___init(); /*new String*/
5779 variable7 = NEW_string___String___with_native(BOX_NativeString("fprintf(stderr, \"Intern "), TAG_Int(24)); /*new String*/
5780 variable8 = variable7;
5781 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable8) /*String::append*/;
5782 variable9 = variable4 /*n*/;
5783 variable9 = ((string___String___to_s_t)CALL(variable9,COLOR_string___Object___to_s))(variable9) /*String::to_s*/;
5784 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable9) /*String::append*/;
5785 variable10 = NEW_string___String___with_native(BOX_NativeString("\\n\"); nit_exit(1);"), TAG_Int(18)); /*new String*/
5786 variable11 = variable10;
5787 ((string___String___append_t)CALL(variable6,COLOR_abstract_collection___IndexedCollection___append))(variable6, variable11) /*String::append*/;
5788 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable6) /*CompilerVisitor::add_instr*/;
5789 }
5790 }
5791 }
5792 }
5793 }
5794 }
5795 }
5796 }
5797 }
5798 }
5799 }
5800 }
5801 variable6 = ((genericity___MMLocalProperty___signature_t)CALL( variable1 /*method*/,COLOR_static_type___MMLocalProperty___signature))( variable1 /*method*/) /*MMSrcMethod::signature*/;
5802 variable6 = ((static_type___MMSignature___return_type_t)CALL(variable6,COLOR_static_type___MMSignature___return_type))(variable6) /*MMSignature::return_type*/;
5803 variable6 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable6 == NIT_NULL /*null*/) || ((variable6 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable6,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable6, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable6,COLOR_kernel___Object_____eqeq))(variable6, NIT_NULL /*null*/) /*MMType::==*/)))))));
5804 variable7 = variable6;
5805 if (UNTAG_Bool(variable7)) { /* and */
5806 variable7 = TAG_Bool(( variable5 /*s*/ == NIT_NULL /*null*/) || (( variable5 /*s*/ != NIT_NULL) && UNTAG_Bool(((string___String_____eqeq_t)CALL( variable5 /*s*/,COLOR_kernel___Object_____eqeq))( variable5 /*s*/, NIT_NULL /*null*/) /*String::==*/)));
5807 }
5808 variable6 = variable7;
5809 if (UNTAG_Bool(variable6)) { /*if*/
5810 variable6 = NEW_string___String___with_native(BOX_NativeString("NIT_NULL /*stub*/"), TAG_Int(17)); /*new String*/
5811 variable5 = variable6 /*s=*/;
5812 }
5813 variable3 = variable5 /*s*/;
5814 goto return_label58;
5815 return_label58: while(false);
5816 tracehead = trace.prev;
5817 return variable3;
5818 }
5819 val_t compiling_methods___PExpr___compile_expr(val_t self, val_t param0) {
5820 struct trace_t trace = {NULL, LOCATE_compiling_methods___PExpr___compile_expr, 677};
5821 trace.prev = tracehead; tracehead = &trace;
5822 fprintf(stderr, "Deferred method %s called (%s: %d)\n", "compile_expr", LOCATE_array___Array_____bra, 677);
5823 nit_exit(1);
5824 tracehead = trace.prev;
5825 return NIT_NULL;
5826 }
5827 void compiling_methods___PExpr___prepare_compile_stmt(val_t self, val_t param0) {
5828 struct trace_t trace = {NULL, LOCATE_compiling_methods___PExpr___prepare_compile_stmt, 681};
5829 val_t variable0;
5830 trace.prev = tracehead; tracehead = &trace;
5831 variable0 = param0;
5832 tracehead = trace.prev;
5833 return;
5834 }
5835 void compiling_methods___PExpr___compile_stmt(val_t self, val_t param0) {
5836 struct trace_t trace = {NULL, LOCATE_compiling_methods___PExpr___compile_stmt, 686};
5837 val_t variable0;
5838 val_t variable1;
5839 trace.prev = tracehead; tracehead = &trace;
5840 variable0 = param0;
5841 variable1 = NEW_string___String___with_native(BOX_NativeString("Error!"), TAG_Int(6)); /*new String*/
5842 ((parser_prod___PNode___printl_t)CALL( self,COLOR_parser_prod___PNode___printl))( self, variable1) /*PExpr::printl*/;
5843 tracehead = trace.prev;
5844 return;
5845 }
5846 void compiling_methods___ABlockExpr___compile_stmt(val_t self, val_t param0) {
5847 struct trace_t trace = {NULL, LOCATE_compiling_methods___ABlockExpr___compile_stmt, 692};
5848 val_t variable0;
5849 val_t variable1;
5850 val_t variable2;
5851 trace.prev = tracehead; tracehead = &trace;
5852 variable0 = param0;
5853 variable1 = ((parser_nodes___ABlockExpr___n_expr_t)CALL( self,COLOR_parser_nodes___ABlockExpr___n_expr))( self) /*ABlockExpr::n_expr*/;
5854 variable1 = ((list___List___iterator_t)CALL(variable1,COLOR_abstract_collection___Collection___iterator))(variable1) /*List::iterator*/;
5855 while (true) { /*for*/
5856 variable2 = ((list___ListIterator___is_ok_t)CALL(variable1,COLOR_abstract_collection___Iterator___is_ok))(variable1) /*ListIterator::is_ok*/;
5857 if (!UNTAG_Bool(variable2)) break; /*for*/
5858 variable2 = ((list___ListIterator___item_t)CALL(variable1,COLOR_abstract_collection___Iterator___item))(variable1) /*ListIterator::item*/;
5859 ((compiling_methods___CompilerVisitor___compile_stmt_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_stmt))( variable0 /*v*/, variable2 /*n*/) /*CompilerVisitor::compile_stmt*/;
5860 continue_258: while(0);
5861 ((list___ListIterator___next_t)CALL(variable1,COLOR_abstract_collection___Iterator___next))(variable1) /*ListIterator::next*/;
5862 }
5863 break_258: while(0);
5864 tracehead = trace.prev;
5865 return;
5866 }
5867 void compiling_methods___AVardeclExpr___prepare_compile_stmt(val_t self, val_t param0) {
5868 struct trace_t trace = {NULL, LOCATE_compiling_methods___AVardeclExpr___prepare_compile_stmt, 701};
5869 val_t variable0;
5870 val_t variable1;
5871 val_t variable2;
5872 val_t variable3;
5873 trace.prev = tracehead; tracehead = &trace;
5874 variable0 = param0;
5875 variable2 = ((compiling_methods___CompilerVisitor___get_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___get_var))( variable0 /*v*/) /*CompilerVisitor::get_var*/;
5876 variable1 = variable2;
5877 variable2 = ((compiling_methods___CompilerVisitor___varnames_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___varnames))( variable0 /*v*/) /*CompilerVisitor::varnames*/;
5878 variable3 = ((typing___AVardeclExpr___variable_t)CALL( self,COLOR_typing___AVardeclExpr___variable))( self) /*AVardeclExpr::variable*/;
5879 ((abstract_collection___Map_____braeq_t)CALL(variable2,COLOR_abstract_collection___Map_____braeq))(variable2, variable3, variable1 /*cname*/) /*Map::[]=*/;
5880 tracehead = trace.prev;
5881 return;
5882 }
5883 void compiling_methods___AVardeclExpr___compile_stmt(val_t self, val_t param0) {
5884 struct trace_t trace = {NULL, LOCATE_compiling_methods___AVardeclExpr___compile_stmt, 707};
5885 val_t variable0;
5886 val_t variable1;
5887 val_t variable2;
5888 val_t variable3;
5889 val_t variable4;
5890 val_t variable5;
5891 val_t variable6;
5892 val_t variable7;
5893 val_t variable8;
5894 val_t variable9;
5895 val_t variable10;
5896 val_t variable11;
5897 val_t variable12;
5898 val_t variable13;
5899 trace.prev = tracehead; tracehead = &trace;
5900 variable0 = param0;
5901 variable2 = ((compiling_methods___CompilerVisitor___varnames_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___varnames))( variable0 /*v*/) /*CompilerVisitor::varnames*/;
5902 variable3 = ((typing___AVardeclExpr___variable_t)CALL( self,COLOR_typing___AVardeclExpr___variable))( self) /*AVardeclExpr::variable*/;
5903 variable2 = ((abstract_collection___Map_____bra_t)CALL(variable2,COLOR_abstract_collection___Map_____bra))(variable2, variable3) /*Map::[]*/;
5904 variable1 = variable2;
5905 variable2 = ((parser_nodes___AVardeclExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AVardeclExpr___n_expr))( self) /*AVardeclExpr::n_expr*/;
5906 variable2 = TAG_Bool((variable2 == NIT_NULL /*null*/) || ((variable2 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable2, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))(variable2, NIT_NULL /*null*/) /*PExpr::==*/)))));
5907 if (UNTAG_Bool(variable2)) { /*if*/
5908 variable3 = ((typing___AVardeclExpr___variable_t)CALL( self,COLOR_typing___AVardeclExpr___variable))( self) /*AVardeclExpr::variable*/;
5909 variable3 = ((syntax_base___Variable___stype_t)CALL(variable3,COLOR_syntax_base___Variable___stype))(variable3) /*Variable::stype*/;
5910 variable2 = variable3;
5911 variable3 = NEW_string___String___init(); /*new String*/
5912 variable4 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
5913 variable5 = variable4;
5914 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
5915 variable6 = ((compiling_base___MMType___default_cvalue_t)CALL( variable2 /*t*/,COLOR_compiling_base___MMType___default_cvalue))( variable2 /*t*/) /*MMType::default_cvalue*/;
5916 variable7 = variable6;
5917 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable7) /*String::append*/;
5918 variable8 = NEW_string___String___with_native(BOX_NativeString(" /*decl variable "), TAG_Int(17)); /*new String*/
5919 variable9 = variable8;
5920 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
5921 variable10 = ((typing___AVardeclExpr___variable_t)CALL( self,COLOR_typing___AVardeclExpr___variable))( self) /*AVardeclExpr::variable*/;
5922 variable10 = ((syntax_base___Variable___name_t)CALL(variable10,COLOR_syntax_base___Variable___name))(variable10) /*Variable::name*/;
5923 variable11 = variable10;
5924 variable11 = ((string___String___to_s_t)CALL(variable11,COLOR_string___Object___to_s))(variable11) /*String::to_s*/;
5925 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable11) /*String::append*/;
5926 variable12 = NEW_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)); /*new String*/
5927 variable13 = variable12;
5928 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable13) /*String::append*/;
5929 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable1 /*cname*/, variable3) /*CompilerVisitor::add_assignment*/;
5930 } else { /*if*/
5931 variable3 = ((parser_nodes___AVardeclExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AVardeclExpr___n_expr))( self) /*AVardeclExpr::n_expr*/;
5932 variable3 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable3) /*CompilerVisitor::compile_expr*/;
5933 variable2 = variable3;
5934 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable1 /*cname*/, variable2 /*e*/) /*CompilerVisitor::add_assignment*/;
5935 }
5936 tracehead = trace.prev;
5937 return;
5938 }
5939 void compiling_methods___AReturnExpr___compile_stmt(val_t self, val_t param0) {
5940 struct trace_t trace = {NULL, LOCATE_compiling_methods___AReturnExpr___compile_stmt, 721};
5941 val_t variable0;
5942 val_t variable1;
5943 val_t variable2;
5944 val_t variable3;
5945 val_t variable4;
5946 val_t variable5;
5947 val_t variable6;
5948 val_t variable7;
5949 trace.prev = tracehead; tracehead = &trace;
5950 variable0 = param0;
5951 ((compiling_methods___CompilerVisitor___has_return__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___has_return__eq))( variable0 /*v*/, TAG_Bool(true)) /*CompilerVisitor::has_return=*/;
5952 variable1 = ((parser_nodes___AReturnExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AReturnExpr___n_expr))( self) /*AReturnExpr::n_expr*/;
5953 variable1 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1 == NIT_NULL /*null*/) || ((variable1 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable1, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))(variable1, NIT_NULL /*null*/) /*PExpr::==*/)))))));
5954 if (UNTAG_Bool(variable1)) { /*if*/
5955 variable2 = ((parser_nodes___AReturnExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AReturnExpr___n_expr))( self) /*AReturnExpr::n_expr*/;
5956 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
5957 variable1 = variable2;
5958 variable2 = ((compiling_methods___CompilerVisitor___return_value_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_value))( variable0 /*v*/) /*CompilerVisitor::return_value*/;
5959 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable2, variable1 /*e*/) /*CompilerVisitor::add_assignment*/;
5960 }
5961 variable1 = NEW_string___String___init(); /*new String*/
5962 variable2 = NEW_string___String___with_native(BOX_NativeString("goto "), TAG_Int(5)); /*new String*/
5963 variable3 = variable2;
5964 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
5965 variable4 = ((compiling_methods___CompilerVisitor___return_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___return_label))( variable0 /*v*/) /*CompilerVisitor::return_label*/;
5966 variable5 = variable4;
5967 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable5) /*String::append*/;
5968 variable6 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
5969 variable7 = variable6;
5970 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable7) /*String::append*/;
5971 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable1) /*CompilerVisitor::add_instr*/;
5972 tracehead = trace.prev;
5973 return;
5974 }
5975 void compiling_methods___ABreakExpr___compile_stmt(val_t self, val_t param0) {
5976 struct trace_t trace = {NULL, LOCATE_compiling_methods___ABreakExpr___compile_stmt, 733};
5977 val_t variable0;
5978 val_t variable1;
5979 val_t variable2;
5980 val_t variable3;
5981 val_t variable4;
5982 val_t variable5;
5983 val_t variable6;
5984 val_t variable7;
5985 trace.prev = tracehead; tracehead = &trace;
5986 variable0 = param0;
5987 variable1 = NEW_string___String___init(); /*new String*/
5988 variable2 = NEW_string___String___with_native(BOX_NativeString("goto "), TAG_Int(5)); /*new String*/
5989 variable3 = variable2;
5990 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
5991 variable4 = ((compiling_methods___CompilerVisitor___break_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___break_label))( variable0 /*v*/) /*CompilerVisitor::break_label*/;
5992 variable5 = variable4;
5993 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable5) /*String::append*/;
5994 variable6 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
5995 variable7 = variable6;
5996 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable7) /*String::append*/;
5997 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable1) /*CompilerVisitor::add_instr*/;
5998 tracehead = trace.prev;
5999 return;
6000 }
6001 void compiling_methods___AContinueExpr___compile_stmt(val_t self, val_t param0) {
6002 struct trace_t trace = {NULL, LOCATE_compiling_methods___AContinueExpr___compile_stmt, 740};
6003 val_t variable0;
6004 val_t variable1;
6005 val_t variable2;
6006 val_t variable3;
6007 val_t variable4;
6008 val_t variable5;
6009 val_t variable6;
6010 val_t variable7;
6011 trace.prev = tracehead; tracehead = &trace;
6012 variable0 = param0;
6013 variable1 = NEW_string___String___init(); /*new String*/
6014 variable2 = NEW_string___String___with_native(BOX_NativeString("goto "), TAG_Int(5)); /*new String*/
6015 variable3 = variable2;
6016 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
6017 variable4 = ((compiling_methods___CompilerVisitor___continue_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___continue_label))( variable0 /*v*/) /*CompilerVisitor::continue_label*/;
6018 variable5 = variable4;
6019 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable5) /*String::append*/;
6020 variable6 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
6021 variable7 = variable6;
6022 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable7) /*String::append*/;
6023 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable1) /*CompilerVisitor::add_instr*/;
6024 tracehead = trace.prev;
6025 return;
6026 }
6027 void compiling_methods___AAbortExpr___compile_stmt(val_t self, val_t param0) {
6028 struct trace_t trace = {NULL, LOCATE_compiling_methods___AAbortExpr___compile_stmt, 747};
6029 val_t variable0;
6030 val_t variable1;
6031 val_t variable2;
6032 val_t variable3;
6033 val_t variable4;
6034 val_t variable5;
6035 val_t variable6;
6036 val_t variable7;
6037 val_t variable8;
6038 val_t variable9;
6039 val_t variable10;
6040 val_t variable11;
6041 trace.prev = tracehead; tracehead = &trace;
6042 variable0 = param0;
6043 variable1 = NEW_string___String___init(); /*new String*/
6044 variable2 = NEW_string___String___with_native(BOX_NativeString("fprintf(stderr, \"Aborted (%s: %d)\\n\", "), TAG_Int(38)); /*new String*/
6045 variable3 = variable2;
6046 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
6047 variable4 = ((compiling_methods___CompilerVisitor___locate_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___locate))( variable0 /*v*/) /*CompilerVisitor::locate*/;
6048 variable5 = variable4;
6049 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable5) /*String::append*/;
6050 variable6 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
6051 variable7 = variable6;
6052 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable7) /*String::append*/;
6053 variable8 = ((parser_prod___Prod___line_number_t)CALL( self,COLOR_parser_prod___PNode___line_number))( self) /*AAbortExpr::line_number*/;
6054 variable9 = variable8;
6055 variable9 = ((string___String___to_s_t)CALL(variable9,COLOR_string___Object___to_s))(variable9) /*String::to_s*/;
6056 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable9) /*String::append*/;
6057 variable10 = NEW_string___String___with_native(BOX_NativeString("); nit_exit(1);"), TAG_Int(15)); /*new String*/
6058 variable11 = variable10;
6059 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable11) /*String::append*/;
6060 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable1) /*CompilerVisitor::add_instr*/;
6061 tracehead = trace.prev;
6062 return;
6063 }
6064 void compiling_methods___ADoExpr___compile_stmt(val_t self, val_t param0) {
6065 struct trace_t trace = {NULL, LOCATE_compiling_methods___ADoExpr___compile_stmt, 754};
6066 val_t variable0;
6067 val_t variable1;
6068 trace.prev = tracehead; tracehead = &trace;
6069 variable0 = param0;
6070 variable1 = ((parser_nodes___ADoExpr___n_block_t)CALL( self,COLOR_parser_nodes___ADoExpr___n_block))( self) /*ADoExpr::n_block*/;
6071 variable1 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1 == NIT_NULL /*null*/) || ((variable1 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable1, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable1,COLOR_kernel___Object_____eqeq))(variable1, NIT_NULL /*null*/) /*PExpr::==*/)))))));
6072 if (UNTAG_Bool(variable1)) { /*if*/
6073 variable1 = ((parser_nodes___ADoExpr___n_block_t)CALL( self,COLOR_parser_nodes___ADoExpr___n_block))( self) /*ADoExpr::n_block*/;
6074 ((compiling_methods___CompilerVisitor___compile_stmt_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_stmt))( variable0 /*v*/, variable1) /*CompilerVisitor::compile_stmt*/;
6075 }
6076 tracehead = trace.prev;
6077 return;
6078 }
6079 void compiling_methods___AIfExpr___compile_stmt(val_t self, val_t param0) {
6080 struct trace_t trace = {NULL, LOCATE_compiling_methods___AIfExpr___compile_stmt, 763};
6081 val_t variable0;
6082 val_t variable1;
6083 val_t variable2;
6084 val_t variable3;
6085 val_t variable4;
6086 val_t variable5;
6087 val_t variable6;
6088 val_t variable7;
6089 trace.prev = tracehead; tracehead = &trace;
6090 variable0 = param0;
6091 variable2 = ((parser_nodes___AIfExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AIfExpr___n_expr))( self) /*AIfExpr::n_expr*/;
6092 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
6093 variable1 = variable2;
6094 variable2 = NEW_string___String___init(); /*new String*/
6095 variable3 = NEW_string___String___with_native(BOX_NativeString("if (UNTAG_Bool("), TAG_Int(15)); /*new String*/
6096 variable4 = variable3;
6097 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable4) /*String::append*/;
6098 variable5 = variable1 /*e*/;
6099 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable5) /*String::append*/;
6100 variable6 = NEW_string___String___with_native(BOX_NativeString(")) { /*if*/"), TAG_Int(11)); /*new String*/
6101 variable7 = variable6;
6102 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable7) /*String::append*/;
6103 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
6104 ((compiling_methods___CompilerVisitor___free_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___free_var))( variable0 /*v*/, variable1 /*e*/) /*CompilerVisitor::free_var*/;
6105 variable2 = ((parser_nodes___AIfExpr___n_then_t)CALL( self,COLOR_parser_nodes___AIfExpr___n_then))( self) /*AIfExpr::n_then*/;
6106 variable2 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2 == NIT_NULL /*null*/) || ((variable2 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable2, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))(variable2, NIT_NULL /*null*/) /*PExpr::==*/)))))));
6107 if (UNTAG_Bool(variable2)) { /*if*/
6108 ((compiling_base___CompilerVisitor___indent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___indent))( variable0 /*v*/) /*CompilerVisitor::indent*/;
6109 variable2 = ((parser_nodes___AIfExpr___n_then_t)CALL( self,COLOR_parser_nodes___AIfExpr___n_then))( self) /*AIfExpr::n_then*/;
6110 ((compiling_methods___CompilerVisitor___compile_stmt_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_stmt))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_stmt*/;
6111 ((compiling_base___CompilerVisitor___unindent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___unindent))( variable0 /*v*/) /*CompilerVisitor::unindent*/;
6112 }
6113 variable2 = ((parser_nodes___AIfExpr___n_else_t)CALL( self,COLOR_parser_nodes___AIfExpr___n_else))( self) /*AIfExpr::n_else*/;
6114 variable2 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2 == NIT_NULL /*null*/) || ((variable2 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable2, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))(variable2, NIT_NULL /*null*/) /*PExpr::==*/)))))));
6115 if (UNTAG_Bool(variable2)) { /*if*/
6116 variable2 = NEW_string___String___with_native(BOX_NativeString("} else { /*if*/"), TAG_Int(15)); /*new String*/
6117 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
6118 ((compiling_base___CompilerVisitor___indent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___indent))( variable0 /*v*/) /*CompilerVisitor::indent*/;
6119 variable2 = ((parser_nodes___AIfExpr___n_else_t)CALL( self,COLOR_parser_nodes___AIfExpr___n_else))( self) /*AIfExpr::n_else*/;
6120 ((compiling_methods___CompilerVisitor___compile_stmt_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_stmt))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_stmt*/;
6121 ((compiling_base___CompilerVisitor___unindent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___unindent))( variable0 /*v*/) /*CompilerVisitor::unindent*/;
6122 }
6123 variable2 = NEW_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)); /*new String*/
6124 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
6125 tracehead = trace.prev;
6126 return;
6127 }
6128 val_t compiling_methods___AIfexprExpr___compile_expr(val_t self, val_t param0) {
6129 struct trace_t trace = {NULL, LOCATE_compiling_methods___AIfexprExpr___compile_expr, 784};
6130 val_t variable0;
6131 val_t variable1;
6132 val_t variable2;
6133 val_t variable3;
6134 val_t variable4;
6135 val_t variable5;
6136 val_t variable6;
6137 val_t variable7;
6138 trace.prev = tracehead; tracehead = &trace;
6139 variable0 = param0;
6140 variable2 = ((parser_nodes___AIfexprExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AIfexprExpr___n_expr))( self) /*AIfexprExpr::n_expr*/;
6141 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
6142 variable1 = variable2;
6143 variable2 = NEW_string___String___init(); /*new String*/
6144 variable3 = NEW_string___String___with_native(BOX_NativeString("if (UNTAG_Bool("), TAG_Int(15)); /*new String*/
6145 variable4 = variable3;
6146 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable4) /*String::append*/;
6147 variable5 = variable1 /*e*/;
6148 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable5) /*String::append*/;
6149 variable6 = NEW_string___String___with_native(BOX_NativeString(")) { /*if*/"), TAG_Int(11)); /*new String*/
6150 variable7 = variable6;
6151 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable7) /*String::append*/;
6152 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
6153 ((compiling_methods___CompilerVisitor___free_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___free_var))( variable0 /*v*/, variable1 /*e*/) /*CompilerVisitor::free_var*/;
6154 ((compiling_base___CompilerVisitor___indent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___indent))( variable0 /*v*/) /*CompilerVisitor::indent*/;
6155 variable3 = ((parser_nodes___AIfexprExpr___n_then_t)CALL( self,COLOR_parser_nodes___AIfexprExpr___n_then))( self) /*AIfexprExpr::n_then*/;
6156 variable3 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable3) /*CompilerVisitor::compile_expr*/;
6157 variable3 = ((compiling_methods___CompilerVisitor___ensure_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___ensure_var))( variable0 /*v*/, variable3) /*CompilerVisitor::ensure_var*/;
6158 variable2 = variable3;
6159 ((compiling_base___CompilerVisitor___unindent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___unindent))( variable0 /*v*/) /*CompilerVisitor::unindent*/;
6160 variable3 = NEW_string___String___with_native(BOX_NativeString("} else { /*if*/"), TAG_Int(15)); /*new String*/
6161 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable3) /*CompilerVisitor::add_instr*/;
6162 ((compiling_methods___CompilerVisitor___free_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___free_var))( variable0 /*v*/, variable2 /*e*/) /*CompilerVisitor::free_var*/;
6163 ((compiling_base___CompilerVisitor___indent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___indent))( variable0 /*v*/) /*CompilerVisitor::indent*/;
6164 variable4 = ((parser_nodes___AIfexprExpr___n_else_t)CALL( self,COLOR_parser_nodes___AIfexprExpr___n_else))( self) /*AIfexprExpr::n_else*/;
6165 variable4 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable4) /*CompilerVisitor::compile_expr*/;
6166 variable4 = ((compiling_methods___CompilerVisitor___ensure_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___ensure_var))( variable0 /*v*/, variable4) /*CompilerVisitor::ensure_var*/;
6167 variable3 = variable4;
6168 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable2 /*e*/, variable3 /*e2*/) /*CompilerVisitor::add_assignment*/;
6169 ((compiling_base___CompilerVisitor___unindent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___unindent))( variable0 /*v*/) /*CompilerVisitor::unindent*/;
6170 variable4 = NEW_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)); /*new String*/
6171 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable4) /*CompilerVisitor::add_instr*/;
6172 variable1 = variable2 /*e*/;
6173 goto return_label267;
6174 return_label267: while(false);
6175 tracehead = trace.prev;
6176 return variable1;
6177 }
6178 void compiling_methods___AControlableBlock___compile_inside_block(val_t self, val_t param0) {
6179 struct trace_t trace = {NULL, LOCATE_compiling_methods___AControlableBlock___compile_inside_block, 804};
6180 trace.prev = tracehead; tracehead = &trace;
6181 fprintf(stderr, "Deferred method %s called (%s: %d)\n", "compile_inside_block", LOCATE_compiling_methods___AIfexprExpr___compile_expr, 804);
6182 nit_exit(1);
6183 tracehead = trace.prev;
6184 return;
6185 }
6186 void compiling_methods___AControlableBlock___compile_stmt(val_t self, val_t param0) {
6187 struct trace_t trace = {NULL, LOCATE_compiling_methods___AControlableBlock___compile_stmt, 805};
6188 val_t variable0;
6189 val_t variable1;
6190 val_t variable2;
6191 val_t variable3;
6192 val_t variable4;
6193 val_t variable5;
6194 val_t variable6;
6195 val_t variable7;
6196 val_t variable8;
6197 val_t variable9;
6198 trace.prev = tracehead; tracehead = &trace;
6199 variable0 = param0;
6200 variable2 = ((compiling_methods___CompilerVisitor___break_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___break_label))( variable0 /*v*/) /*CompilerVisitor::break_label*/;
6201 variable1 = variable2;
6202 variable3 = ((compiling_methods___CompilerVisitor___continue_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___continue_label))( variable0 /*v*/) /*CompilerVisitor::continue_label*/;
6203 variable2 = variable3;
6204 variable4 = ((compiling_base___CompilerVisitor___new_number_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___new_number))( variable0 /*v*/) /*CompilerVisitor::new_number*/;
6205 variable3 = variable4;
6206 variable4 = NEW_string___String___init(); /*new String*/
6207 variable5 = NEW_string___String___with_native(BOX_NativeString("break_"), TAG_Int(6)); /*new String*/
6208 variable6 = variable5;
6209 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
6210 variable7 = variable3 /*id*/;
6211 variable7 = ((string___String___to_s_t)CALL(variable7,COLOR_string___Object___to_s))(variable7) /*String::to_s*/;
6212 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable7) /*String::append*/;
6213 variable8 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
6214 variable9 = variable8;
6215 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable9) /*String::append*/;
6216 ((compiling_methods___CompilerVisitor___break_label__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___break_label__eq))( variable0 /*v*/, variable4) /*CompilerVisitor::break_label=*/;
6217 variable4 = NEW_string___String___init(); /*new String*/
6218 variable5 = NEW_string___String___with_native(BOX_NativeString("continue_"), TAG_Int(9)); /*new String*/
6219 variable6 = variable5;
6220 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
6221 variable7 = variable3 /*id*/;
6222 variable7 = ((string___String___to_s_t)CALL(variable7,COLOR_string___Object___to_s))(variable7) /*String::to_s*/;
6223 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable7) /*String::append*/;
6224 variable8 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
6225 variable9 = variable8;
6226 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable9) /*String::append*/;
6227 ((compiling_methods___CompilerVisitor___continue_label__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___continue_label__eq))( variable0 /*v*/, variable4) /*CompilerVisitor::continue_label=*/;
6228 ((compiling_methods___AControlableBlock___compile_inside_block_t)CALL( self,COLOR_compiling_methods___AControlableBlock___compile_inside_block))( self, variable0 /*v*/) /*AControlableBlock::compile_inside_block*/;
6229 ((compiling_methods___CompilerVisitor___break_label__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___break_label__eq))( variable0 /*v*/, variable1 /*old_break_label*/) /*CompilerVisitor::break_label=*/;
6230 ((compiling_methods___CompilerVisitor___continue_label__eq_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___continue_label__eq))( variable0 /*v*/, variable2 /*old_continue_label*/) /*CompilerVisitor::continue_label=*/;
6231 tracehead = trace.prev;
6232 return;
6233 }
6234 void compiling_methods___AWhileExpr___compile_inside_block(val_t self, val_t param0) {
6235 struct trace_t trace = {NULL, LOCATE_compiling_methods___AWhileExpr___compile_inside_block, 822};
6236 val_t variable0;
6237 val_t variable1;
6238 val_t variable2;
6239 val_t variable3;
6240 val_t variable4;
6241 val_t variable5;
6242 val_t variable6;
6243 val_t variable7;
6244 val_t variable8;
6245 trace.prev = tracehead; tracehead = &trace;
6246 variable0 = param0;
6247 variable1 = NEW_string___String___with_native(BOX_NativeString("while (true) { /*while*/"), TAG_Int(24)); /*new String*/
6248 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable1) /*CompilerVisitor::add_instr*/;
6249 ((compiling_base___CompilerVisitor___indent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___indent))( variable0 /*v*/) /*CompilerVisitor::indent*/;
6250 variable2 = ((parser_nodes___AWhileExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AWhileExpr___n_expr))( self) /*AWhileExpr::n_expr*/;
6251 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
6252 variable1 = variable2;
6253 variable2 = NEW_string___String___init(); /*new String*/
6254 variable3 = NEW_string___String___with_native(BOX_NativeString("if (!UNTAG_Bool("), TAG_Int(16)); /*new String*/
6255 variable4 = variable3;
6256 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable4) /*String::append*/;
6257 variable5 = variable1 /*e*/;
6258 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable5) /*String::append*/;
6259 variable6 = NEW_string___String___with_native(BOX_NativeString(")) break; /* while*/"), TAG_Int(20)); /*new String*/
6260 variable7 = variable6;
6261 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable7) /*String::append*/;
6262 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
6263 ((compiling_methods___CompilerVisitor___free_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___free_var))( variable0 /*v*/, variable1 /*e*/) /*CompilerVisitor::free_var*/;
6264 variable2 = ((parser_nodes___AWhileExpr___n_block_t)CALL( self,COLOR_parser_nodes___AWhileExpr___n_block))( self) /*AWhileExpr::n_block*/;
6265 variable2 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2 == NIT_NULL /*null*/) || ((variable2 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable2, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))(variable2, NIT_NULL /*null*/) /*PExpr::==*/)))))));
6266 if (UNTAG_Bool(variable2)) { /*if*/
6267 variable2 = ((parser_nodes___AWhileExpr___n_block_t)CALL( self,COLOR_parser_nodes___AWhileExpr___n_block))( self) /*AWhileExpr::n_block*/;
6268 ((compiling_methods___CompilerVisitor___compile_stmt_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_stmt))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_stmt*/;
6269 }
6270 variable2 = NEW_string___String___init(); /*new String*/
6271 variable3 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
6272 variable4 = variable3;
6273 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable4) /*String::append*/;
6274 variable5 = ((compiling_methods___CompilerVisitor___continue_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___continue_label))( variable0 /*v*/) /*CompilerVisitor::continue_label*/;
6275 variable6 = variable5;
6276 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable6) /*String::append*/;
6277 variable7 = NEW_string___String___with_native(BOX_NativeString(": while(0);"), TAG_Int(11)); /*new String*/
6278 variable8 = variable7;
6279 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable8) /*String::append*/;
6280 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
6281 ((compiling_base___CompilerVisitor___unindent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___unindent))( variable0 /*v*/) /*CompilerVisitor::unindent*/;
6282 variable2 = NEW_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)); /*new String*/
6283 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
6284 variable2 = NEW_string___String___init(); /*new String*/
6285 variable3 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
6286 variable4 = variable3;
6287 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable4) /*String::append*/;
6288 variable5 = ((compiling_methods___CompilerVisitor___break_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___break_label))( variable0 /*v*/) /*CompilerVisitor::break_label*/;
6289 variable6 = variable5;
6290 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable6) /*String::append*/;
6291 variable7 = NEW_string___String___with_native(BOX_NativeString(": while(0);"), TAG_Int(11)); /*new String*/
6292 variable8 = variable7;
6293 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable8) /*String::append*/;
6294 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
6295 tracehead = trace.prev;
6296 return;
6297 }
6298 void compiling_methods___AForExpr___compile_inside_block(val_t self, val_t param0) {
6299 struct trace_t trace = {NULL, LOCATE_compiling_methods___AForExpr___compile_inside_block, 840};
6300 val_t variable0;
6301 val_t variable1;
6302 trace.prev = tracehead; tracehead = &trace;
6303 variable0 = param0;
6304 variable1 = ((parser_nodes___AForExpr___n_vardecl_t)CALL( self,COLOR_parser_nodes___AForExpr___n_vardecl))( self) /*AForExpr::n_vardecl*/;
6305 ((compiling_methods___CompilerVisitor___compile_stmt_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_stmt))( variable0 /*v*/, variable1) /*CompilerVisitor::compile_stmt*/;
6306 tracehead = trace.prev;
6307 return;
6308 }
6309 void compiling_methods___AForVardeclExpr___compile_stmt(val_t self, val_t param0) {
6310 struct trace_t trace = {NULL, LOCATE_compiling_methods___AForVardeclExpr___compile_stmt, 847};
6311 val_t variable0;
6312 val_t variable1;
6313 val_t variable2;
6314 val_t variable3;
6315 val_t variable4;
6316 static val_t once_value_variable4_272; static int once_bool_variable4_272;
6317 val_t variable5;
6318 val_t variable6;
6319 static val_t once_value_variable6_273; static int once_bool_variable6_273;
6320 val_t variable7;
6321 static val_t once_value_variable7_274; static int once_bool_variable7_274;
6322 val_t variable8;
6323 static val_t once_value_variable8_275; static int once_bool_variable8_275;
6324 val_t variable9;
6325 val_t variable10;
6326 val_t variable11;
6327 val_t variable12;
6328 val_t variable13;
6329 val_t variable14;
6330 val_t variable15;
6331 val_t variable16;
6332 val_t variable17;
6333 val_t variable18;
6334 trace.prev = tracehead; tracehead = &trace;
6335 variable0 = param0;
6336 variable2 = ((parser_nodes___AForVardeclExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AForVardeclExpr___n_expr))( self) /*AForVardeclExpr::n_expr*/;
6337 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
6338 variable1 = variable2;
6339 variable3 = ((parser_nodes___AForVardeclExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AForVardeclExpr___n_expr))( self) /*AForVardeclExpr::n_expr*/;
6340 variable3 = ((typing___PExpr___stype_t)CALL(variable3,COLOR_syntax_base___PExpr___stype))(variable3) /*PExpr::stype*/;
6341 if (once_bool_variable4_272) variable4 = once_value_variable4_272;
6342 else {
6343 variable4 = NEW_string___String___with_native(BOX_NativeString("iterator"), TAG_Int(8)); /*new String*/
6344 variable4 = ((symbol___String___to_symbol_t)CALL(variable4,COLOR_symbol___String___to_symbol))(variable4) /*String::to_symbol*/;
6345 once_value_variable4_272 = variable4;
6346 once_bool_variable4_272 = true;
6347 }
6348 variable3 = ((static_type___MMType___select_method_t)CALL(variable3,COLOR_static_type___MMType___select_method))(variable3, variable4) /*MMType::select_method*/;
6349 variable2 = variable3;
6350 variable3 = TAG_Bool(( variable2 /*prop*/ == NIT_NULL /*null*/) || (( variable2 /*prop*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable2 /*prop*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable2 /*prop*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable2 /*prop*/,COLOR_kernel___Object_____eqeq))( variable2 /*prop*/, NIT_NULL /*null*/) /*MMMethod::==*/)))));
6351 if (UNTAG_Bool(variable3)) { /*if*/
6352 variable3 = NEW_string___String___with_native(BOX_NativeString("No iterator"), TAG_Int(11)); /*new String*/
6353 ((parser_prod___PNode___printl_t)CALL( self,COLOR_parser_prod___PNode___printl))( self, variable3) /*AForVardeclExpr::printl*/;
6354 goto return_label271;
6355 }
6356 variable4 = ((genericity___MMLocalProperty___signature_t)CALL( variable2 /*prop*/,COLOR_static_type___MMLocalProperty___signature))( variable2 /*prop*/) /*MMMethod::signature*/;
6357 variable4 = ((static_type___MMSignature___return_type_t)CALL(variable4,COLOR_static_type___MMSignature___return_type))(variable4) /*MMSignature::return_type*/;
6358 variable3 = variable4;
6359 ((compiling_methods___CompilerVisitor___free_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___free_var))( variable0 /*v*/, variable1 /*e*/) /*CompilerVisitor::free_var*/;
6360 variable5 = ((compiling_methods___CompilerVisitor___get_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___get_var))( variable0 /*v*/) /*CompilerVisitor::get_var*/;
6361 variable4 = variable5;
6362 variable5 = NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[String]*/
6363 ((array___AbstractArray___add_t)CALL(variable5,COLOR_abstract_collection___SimpleCollection___add))(variable5, variable1 /*e*/) /*Array::add*/;
6364 variable5 = ((compiling_methods___MMMethod___compile_call_t)CALL( variable2 /*prop*/,COLOR_compiling_methods___MMMethod___compile_call))( variable2 /*prop*/, variable0 /*v*/, variable5) /*MMMethod::compile_call*/;
6365 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable4 /*iter*/, variable5) /*CompilerVisitor::add_assignment*/;
6366 if (once_bool_variable6_273) variable6 = once_value_variable6_273;
6367 else {
6368 variable6 = NEW_string___String___with_native(BOX_NativeString("is_ok"), TAG_Int(5)); /*new String*/
6369 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
6370 once_value_variable6_273 = variable6;
6371 once_bool_variable6_273 = true;
6372 }
6373 variable6 = ((static_type___MMType___select_method_t)CALL( variable3 /*ittype*/,COLOR_static_type___MMType___select_method))( variable3 /*ittype*/, variable6) /*MMType::select_method*/;
6374 variable5 = variable6;
6375 variable6 = TAG_Bool(( variable5 /*prop2*/ == NIT_NULL /*null*/) || (( variable5 /*prop2*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable5 /*prop2*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable5 /*prop2*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable5 /*prop2*/,COLOR_kernel___Object_____eqeq))( variable5 /*prop2*/, NIT_NULL /*null*/) /*MMMethod::==*/)))));
6376 if (UNTAG_Bool(variable6)) { /*if*/
6377 variable6 = NEW_string___String___with_native(BOX_NativeString("No is_ok"), TAG_Int(8)); /*new String*/
6378 ((parser_prod___PNode___printl_t)CALL( self,COLOR_parser_prod___PNode___printl))( self, variable6) /*AForVardeclExpr::printl*/;
6379 goto return_label271;
6380 }
6381 if (once_bool_variable7_274) variable7 = once_value_variable7_274;
6382 else {
6383 variable7 = NEW_string___String___with_native(BOX_NativeString("item"), TAG_Int(4)); /*new String*/
6384 variable7 = ((symbol___String___to_symbol_t)CALL(variable7,COLOR_symbol___String___to_symbol))(variable7) /*String::to_symbol*/;
6385 once_value_variable7_274 = variable7;
6386 once_bool_variable7_274 = true;
6387 }
6388 variable7 = ((static_type___MMType___select_method_t)CALL( variable3 /*ittype*/,COLOR_static_type___MMType___select_method))( variable3 /*ittype*/, variable7) /*MMType::select_method*/;
6389 variable6 = variable7;
6390 variable7 = TAG_Bool(( variable6 /*prop3*/ == NIT_NULL /*null*/) || (( variable6 /*prop3*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable6 /*prop3*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable6 /*prop3*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable6 /*prop3*/,COLOR_kernel___Object_____eqeq))( variable6 /*prop3*/, NIT_NULL /*null*/) /*MMMethod::==*/)))));
6391 if (UNTAG_Bool(variable7)) { /*if*/
6392 variable7 = NEW_string___String___with_native(BOX_NativeString("No item"), TAG_Int(7)); /*new String*/
6393 ((parser_prod___PNode___printl_t)CALL( self,COLOR_parser_prod___PNode___printl))( self, variable7) /*AForVardeclExpr::printl*/;
6394 goto return_label271;
6395 }
6396 if (once_bool_variable8_275) variable8 = once_value_variable8_275;
6397 else {
6398 variable8 = NEW_string___String___with_native(BOX_NativeString("next"), TAG_Int(4)); /*new String*/
6399 variable8 = ((symbol___String___to_symbol_t)CALL(variable8,COLOR_symbol___String___to_symbol))(variable8) /*String::to_symbol*/;
6400 once_value_variable8_275 = variable8;
6401 once_bool_variable8_275 = true;
6402 }
6403 variable8 = ((static_type___MMType___select_method_t)CALL( variable3 /*ittype*/,COLOR_static_type___MMType___select_method))( variable3 /*ittype*/, variable8) /*MMType::select_method*/;
6404 variable7 = variable8;
6405 variable8 = TAG_Bool(( variable7 /*prop4*/ == NIT_NULL /*null*/) || (( variable7 /*prop4*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable7 /*prop4*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable7 /*prop4*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable7 /*prop4*/,COLOR_kernel___Object_____eqeq))( variable7 /*prop4*/, NIT_NULL /*null*/) /*MMMethod::==*/)))));
6406 if (UNTAG_Bool(variable8)) { /*if*/
6407 variable8 = NEW_string___String___with_native(BOX_NativeString("No next"), TAG_Int(7)); /*new String*/
6408 ((parser_prod___PNode___printl_t)CALL( self,COLOR_parser_prod___PNode___printl))( self, variable8) /*AForVardeclExpr::printl*/;
6409 goto return_label271;
6410 }
6411 variable8 = NEW_string___String___with_native(BOX_NativeString("while (true) { /*for*/"), TAG_Int(22)); /*new String*/
6412 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable8) /*CompilerVisitor::add_instr*/;
6413 ((compiling_base___CompilerVisitor___indent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___indent))( variable0 /*v*/) /*CompilerVisitor::indent*/;
6414 variable9 = ((compiling_methods___CompilerVisitor___get_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___get_var))( variable0 /*v*/) /*CompilerVisitor::get_var*/;
6415 variable8 = variable9;
6416 variable9 = NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[String]*/
6417 ((array___AbstractArray___add_t)CALL(variable9,COLOR_abstract_collection___SimpleCollection___add))(variable9, variable4 /*iter*/) /*Array::add*/;
6418 variable9 = ((compiling_methods___MMMethod___compile_call_t)CALL( variable5 /*prop2*/,COLOR_compiling_methods___MMMethod___compile_call))( variable5 /*prop2*/, variable0 /*v*/, variable9) /*MMMethod::compile_call*/;
6419 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable8 /*ok*/, variable9) /*CompilerVisitor::add_assignment*/;
6420 variable9 = NEW_string___String___init(); /*new String*/
6421 variable10 = NEW_string___String___with_native(BOX_NativeString("if (!UNTAG_Bool("), TAG_Int(16)); /*new String*/
6422 variable11 = variable10;
6423 ((string___String___append_t)CALL(variable9,COLOR_abstract_collection___IndexedCollection___append))(variable9, variable11) /*String::append*/;
6424 variable12 = variable8 /*ok*/;
6425 ((string___String___append_t)CALL(variable9,COLOR_abstract_collection___IndexedCollection___append))(variable9, variable12) /*String::append*/;
6426 variable13 = NEW_string___String___with_native(BOX_NativeString(")) break; /*for*/"), TAG_Int(17)); /*new String*/
6427 variable14 = variable13;
6428 ((string___String___append_t)CALL(variable9,COLOR_abstract_collection___IndexedCollection___append))(variable9, variable14) /*String::append*/;
6429 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable9) /*CompilerVisitor::add_instr*/;
6430 ((compiling_methods___CompilerVisitor___free_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___free_var))( variable0 /*v*/, variable8 /*ok*/) /*CompilerVisitor::free_var*/;
6431 variable10 = NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[String]*/
6432 ((array___AbstractArray___add_t)CALL(variable10,COLOR_abstract_collection___SimpleCollection___add))(variable10, variable4 /*iter*/) /*Array::add*/;
6433 variable10 = ((compiling_methods___MMMethod___compile_call_t)CALL( variable6 /*prop3*/,COLOR_compiling_methods___MMMethod___compile_call))( variable6 /*prop3*/, variable0 /*v*/, variable10) /*MMMethod::compile_call*/;
6434 variable9 = variable10;
6435 variable10 = ((compiling_methods___CompilerVisitor___ensure_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___ensure_var))( variable0 /*v*/, variable9 /*e*/) /*CompilerVisitor::ensure_var*/;
6436 variable9 = variable10 /*e=*/;
6437 variable10 = ((compiling_methods___CompilerVisitor___varnames_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___varnames))( variable0 /*v*/) /*CompilerVisitor::varnames*/;
6438 variable11 = ((typing___AForVardeclExpr___variable_t)CALL( self,COLOR_typing___AForVardeclExpr___variable))( self) /*AForVardeclExpr::variable*/;
6439 ((abstract_collection___Map_____braeq_t)CALL(variable10,COLOR_abstract_collection___Map_____braeq))(variable10, variable11, variable9 /*e*/) /*Map::[]=*/;
6440 variable11 = ((parser_prod___PNode___parent_t)CALL( self,COLOR_parser_prod___PNode___parent))( self) /*AForVardeclExpr::parent*/;
6441 variable10 = variable11;
6442 variable11 = TAG_Bool(( variable10 /*par*/==NIT_NULL) || VAL_ISA( variable10 /*par*/, COLOR_AForExpr, ID_AForExpr)) /*cast AForExpr*/;
6443 if (!UNTAG_Bool(variable11)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", "", LOCATE_compiling_methods___AForVardeclExpr___compile_stmt, 884); nit_exit(1);}
6444 variable12 = ((parser_nodes___AForExpr___n_block_t)CALL( variable10 /*par*/,COLOR_parser_nodes___AForExpr___n_block))( variable10 /*par*/) /*AForExpr::n_block*/;
6445 variable11 = variable12;
6446 variable12 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11 /*n_block*/ == NIT_NULL /*null*/) || (( variable11 /*n_block*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable11 /*n_block*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable11 /*n_block*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable11 /*n_block*/,COLOR_kernel___Object_____eqeq))( variable11 /*n_block*/, NIT_NULL /*null*/) /*PExpr::==*/)))))));
6447 if (UNTAG_Bool(variable12)) { /*if*/
6448 ((compiling_methods___CompilerVisitor___compile_stmt_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_stmt))( variable0 /*v*/, variable11 /*n_block*/) /*CompilerVisitor::compile_stmt*/;
6449 }
6450 variable12 = NEW_string___String___init(); /*new String*/
6451 variable13 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
6452 variable14 = variable13;
6453 ((string___String___append_t)CALL(variable12,COLOR_abstract_collection___IndexedCollection___append))(variable12, variable14) /*String::append*/;
6454 variable15 = ((compiling_methods___CompilerVisitor___continue_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___continue_label))( variable0 /*v*/) /*CompilerVisitor::continue_label*/;
6455 variable16 = variable15;
6456 ((string___String___append_t)CALL(variable12,COLOR_abstract_collection___IndexedCollection___append))(variable12, variable16) /*String::append*/;
6457 variable17 = NEW_string___String___with_native(BOX_NativeString(": while(0);"), TAG_Int(11)); /*new String*/
6458 variable18 = variable17;
6459 ((string___String___append_t)CALL(variable12,COLOR_abstract_collection___IndexedCollection___append))(variable12, variable18) /*String::append*/;
6460 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable12) /*CompilerVisitor::add_instr*/;
6461 variable12 = NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[String]*/
6462 ((array___AbstractArray___add_t)CALL(variable12,COLOR_abstract_collection___SimpleCollection___add))(variable12, variable4 /*iter*/) /*Array::add*/;
6463 variable12 = ((compiling_methods___MMMethod___compile_call_t)CALL( variable7 /*prop4*/,COLOR_compiling_methods___MMMethod___compile_call))( variable7 /*prop4*/, variable0 /*v*/, variable12) /*MMMethod::compile_call*/;
6464 variable9 = variable12 /*e=*/;
6465 variable12 = TAG_Bool(( variable9 /*e*/ == NIT_NULL /*null*/) || (( variable9 /*e*/ != NIT_NULL) && UNTAG_Bool(((string___String_____eqeq_t)CALL( variable9 /*e*/,COLOR_kernel___Object_____eqeq))( variable9 /*e*/, NIT_NULL /*null*/) /*String::==*/)));
6466 if (!UNTAG_Bool(variable12)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", "", LOCATE_compiling_methods___AForVardeclExpr___compile_stmt, 891); nit_exit(1);}
6467 ((compiling_base___CompilerVisitor___unindent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___unindent))( variable0 /*v*/) /*CompilerVisitor::unindent*/;
6468 variable12 = NEW_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)); /*new String*/
6469 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable12) /*CompilerVisitor::add_instr*/;
6470 variable12 = NEW_string___String___init(); /*new String*/
6471 variable13 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
6472 variable14 = variable13;
6473 ((string___String___append_t)CALL(variable12,COLOR_abstract_collection___IndexedCollection___append))(variable12, variable14) /*String::append*/;
6474 variable15 = ((compiling_methods___CompilerVisitor___break_label_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___break_label))( variable0 /*v*/) /*CompilerVisitor::break_label*/;
6475 variable16 = variable15;
6476 ((string___String___append_t)CALL(variable12,COLOR_abstract_collection___IndexedCollection___append))(variable12, variable16) /*String::append*/;
6477 variable17 = NEW_string___String___with_native(BOX_NativeString(": while(0);"), TAG_Int(11)); /*new String*/
6478 variable18 = variable17;
6479 ((string___String___append_t)CALL(variable12,COLOR_abstract_collection___IndexedCollection___append))(variable12, variable18) /*String::append*/;
6480 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable12) /*CompilerVisitor::add_instr*/;
6481 return_label271: while(false);
6482 tracehead = trace.prev;
6483 return;
6484 }
6485 void compiling_methods___AAssertExpr___compile_stmt(val_t self, val_t param0) {
6486 struct trace_t trace = {NULL, LOCATE_compiling_methods___AAssertExpr___compile_stmt, 899};
6487 val_t variable0;
6488 val_t variable1;
6489 val_t variable2;
6490 val_t variable3;
6491 val_t variable4;
6492 val_t variable5;
6493 val_t variable6;
6494 val_t variable7;
6495 val_t variable8;
6496 val_t variable9;
6497 val_t variable10;
6498 val_t variable11;
6499 val_t variable12;
6500 val_t variable13;
6501 val_t variable14;
6502 val_t variable15;
6503 val_t variable16;
6504 val_t variable17;
6505 val_t variable18;
6506 val_t variable19;
6507 trace.prev = tracehead; tracehead = &trace;
6508 variable0 = param0;
6509 variable2 = ((parser_nodes___AAssertExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AAssertExpr___n_expr))( self) /*AAssertExpr::n_expr*/;
6510 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
6511 variable1 = variable2;
6512 variable3 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
6513 variable2 = variable3;
6514 variable3 = ((parser_nodes___AAssertExpr___n_id_t)CALL( self,COLOR_parser_nodes___AAssertExpr___n_id))( self) /*AAssertExpr::n_id*/;
6515 variable3 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable3 == NIT_NULL /*null*/) || ((variable3 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable3,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable3, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable3,COLOR_kernel___Object_____eqeq))(variable3, NIT_NULL /*null*/) /*TId::==*/)))))));
6516 if (UNTAG_Bool(variable3)) { /*if*/
6517 variable3 = NEW_string___String___init(); /*new String*/
6518 variable4 = NEW_string___String___with_native(BOX_NativeString(" '"), TAG_Int(2)); /*new String*/
6519 variable5 = variable4;
6520 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
6521 variable6 = ((parser_nodes___AAssertExpr___n_id_t)CALL( self,COLOR_parser_nodes___AAssertExpr___n_id))( self) /*AAssertExpr::n_id*/;
6522 variable6 = ((lexer___Token___text_t)CALL(variable6,COLOR_lexer___Token___text))(variable6) /*TId::text*/;
6523 variable7 = variable6;
6524 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable7) /*String::append*/;
6525 variable8 = NEW_string___String___with_native(BOX_NativeString("' "), TAG_Int(2)); /*new String*/
6526 variable9 = variable8;
6527 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
6528 variable2 = variable3 /*s=*/;
6529 }
6530 variable3 = NEW_string___String___init(); /*new String*/
6531 variable4 = NEW_string___String___with_native(BOX_NativeString("if (!UNTAG_Bool("), TAG_Int(16)); /*new String*/
6532 variable5 = variable4;
6533 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
6534 variable6 = variable1 /*e*/;
6535 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable6) /*String::append*/;
6536 variable7 = NEW_string___String___with_native(BOX_NativeString(")) { fprintf(stderr, \"Assert%s failed (%s: %d)\\n\", \""), TAG_Int(52)); /*new String*/
6537 variable8 = variable7;
6538 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable8) /*String::append*/;
6539 variable9 = variable2 /*s*/;
6540 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
6541 variable10 = NEW_string___String___with_native(BOX_NativeString("\", "), TAG_Int(3)); /*new String*/
6542 variable11 = variable10;
6543 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable11) /*String::append*/;
6544 variable12 = ((compiling_methods___CompilerVisitor___locate_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___locate))( variable0 /*v*/) /*CompilerVisitor::locate*/;
6545 variable13 = variable12;
6546 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable13) /*String::append*/;
6547 variable14 = NEW_string___String___with_native(BOX_NativeString(", "), TAG_Int(2)); /*new String*/
6548 variable15 = variable14;
6549 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable15) /*String::append*/;
6550 variable16 = ((parser_prod___Prod___line_number_t)CALL( self,COLOR_parser_prod___PNode___line_number))( self) /*AAssertExpr::line_number*/;
6551 variable17 = variable16;
6552 variable17 = ((string___String___to_s_t)CALL(variable17,COLOR_string___Object___to_s))(variable17) /*String::to_s*/;
6553 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable17) /*String::append*/;
6554 variable18 = NEW_string___String___with_native(BOX_NativeString("); nit_exit(1);}"), TAG_Int(16)); /*new String*/
6555 variable19 = variable18;
6556 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable19) /*String::append*/;
6557 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable3) /*CompilerVisitor::add_instr*/;
6558 tracehead = trace.prev;
6559 return;
6560 }
6561 val_t compiling_methods___AVarExpr___compile_expr(val_t self, val_t param0) {
6562 struct trace_t trace = {NULL, LOCATE_compiling_methods___AVarExpr___compile_expr, 911};
6563 val_t variable0;
6564 val_t variable1;
6565 val_t variable2;
6566 val_t variable3;
6567 val_t variable4;
6568 val_t variable5;
6569 val_t variable6;
6570 val_t variable7;
6571 val_t variable8;
6572 val_t variable9;
6573 val_t variable10;
6574 val_t variable11;
6575 trace.prev = tracehead; tracehead = &trace;
6576 variable0 = param0;
6577 variable1 = NEW_string___String___init(); /*new String*/
6578 variable2 = NEW_string___String___with_native(BOX_NativeString(" "), TAG_Int(1)); /*new String*/
6579 variable3 = variable2;
6580 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
6581 variable4 = ((compiling_methods___CompilerVisitor___varnames_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___varnames))( variable0 /*v*/) /*CompilerVisitor::varnames*/;
6582 variable5 = ((typing___AVarFormExpr___variable_t)CALL( self,COLOR_typing___AVarFormExpr___variable))( self) /*AVarExpr::variable*/;
6583 variable4 = ((abstract_collection___Map_____bra_t)CALL(variable4,COLOR_abstract_collection___Map_____bra))(variable4, variable5) /*Map::[]*/;
6584 variable5 = variable4;
6585 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable5) /*String::append*/;
6586 variable6 = NEW_string___String___with_native(BOX_NativeString(" /*"), TAG_Int(3)); /*new String*/
6587 variable7 = variable6;
6588 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable7) /*String::append*/;
6589 variable8 = ((typing___AVarFormExpr___variable_t)CALL( self,COLOR_typing___AVarFormExpr___variable))( self) /*AVarExpr::variable*/;
6590 variable8 = ((syntax_base___Variable___name_t)CALL(variable8,COLOR_syntax_base___Variable___name))(variable8) /*Variable::name*/;
6591 variable9 = variable8;
6592 variable9 = ((string___String___to_s_t)CALL(variable9,COLOR_string___Object___to_s))(variable9) /*String::to_s*/;
6593 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable9) /*String::append*/;
6594 variable10 = NEW_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)); /*new String*/
6595 variable11 = variable10;
6596 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable11) /*String::append*/;
6597 goto return_label277;
6598 return_label277: while(false);
6599 tracehead = trace.prev;
6600 return variable1;
6601 }
6602 void compiling_methods___AVarAssignExpr___compile_stmt(val_t self, val_t param0) {
6603 struct trace_t trace = {NULL, LOCATE_compiling_methods___AVarAssignExpr___compile_stmt, 918};
6604 val_t variable0;
6605 val_t variable1;
6606 val_t variable2;
6607 val_t variable3;
6608 val_t variable4;
6609 val_t variable5;
6610 val_t variable6;
6611 val_t variable7;
6612 val_t variable8;
6613 val_t variable9;
6614 val_t variable10;
6615 val_t variable11;
6616 val_t variable12;
6617 trace.prev = tracehead; tracehead = &trace;
6618 variable0 = param0;
6619 variable2 = ((parser_nodes___AAssignFormExpr___n_value_t)CALL( self,COLOR_parser_nodes___AAssignFormExpr___n_value))( self) /*AVarAssignExpr::n_value*/;
6620 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
6621 variable1 = variable2;
6622 variable2 = ((compiling_methods___CompilerVisitor___varnames_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___varnames))( variable0 /*v*/) /*CompilerVisitor::varnames*/;
6623 variable3 = ((typing___AVarFormExpr___variable_t)CALL( self,COLOR_typing___AVarFormExpr___variable))( self) /*AVarAssignExpr::variable*/;
6624 variable2 = ((abstract_collection___Map_____bra_t)CALL(variable2,COLOR_abstract_collection___Map_____bra))(variable2, variable3) /*Map::[]*/;
6625 variable3 = NEW_string___String___init(); /*new String*/
6626 variable4 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
6627 variable5 = variable4;
6628 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
6629 variable6 = variable1 /*e*/;
6630 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable6) /*String::append*/;
6631 variable7 = NEW_string___String___with_native(BOX_NativeString(" /*"), TAG_Int(3)); /*new String*/
6632 variable8 = variable7;
6633 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable8) /*String::append*/;
6634 variable9 = ((typing___AVarFormExpr___variable_t)CALL( self,COLOR_typing___AVarFormExpr___variable))( self) /*AVarAssignExpr::variable*/;
6635 variable9 = ((syntax_base___Variable___name_t)CALL(variable9,COLOR_syntax_base___Variable___name))(variable9) /*Variable::name*/;
6636 variable10 = variable9;
6637 variable10 = ((string___String___to_s_t)CALL(variable10,COLOR_string___Object___to_s))(variable10) /*String::to_s*/;
6638 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable10) /*String::append*/;
6639 variable11 = NEW_string___String___with_native(BOX_NativeString("=*/"), TAG_Int(3)); /*new String*/
6640 variable12 = variable11;
6641 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable12) /*String::append*/;
6642 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable2, variable3) /*CompilerVisitor::add_assignment*/;
6643 tracehead = trace.prev;
6644 return;
6645 }
6646 void compiling_methods___AVarReassignExpr___compile_stmt(val_t self, val_t param0) {
6647 struct trace_t trace = {NULL, LOCATE_compiling_methods___AVarReassignExpr___compile_stmt, 926};
6648 val_t variable0;
6649 val_t variable1;
6650 val_t variable2;
6651 val_t variable3;
6652 val_t variable4;
6653 val_t variable5;
6654 val_t variable6;
6655 val_t variable7;
6656 val_t variable8;
6657 val_t variable9;
6658 val_t variable10;
6659 val_t variable11;
6660 val_t variable12;
6661 val_t variable13;
6662 val_t variable14;
6663 trace.prev = tracehead; tracehead = &trace;
6664 variable0 = param0;
6665 variable2 = ((compiling_methods___CompilerVisitor___varnames_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___varnames))( variable0 /*v*/) /*CompilerVisitor::varnames*/;
6666 variable3 = ((typing___AVarFormExpr___variable_t)CALL( self,COLOR_typing___AVarFormExpr___variable))( self) /*AVarReassignExpr::variable*/;
6667 variable2 = ((abstract_collection___Map_____bra_t)CALL(variable2,COLOR_abstract_collection___Map_____bra))(variable2, variable3) /*Map::[]*/;
6668 variable1 = variable2;
6669 variable3 = ((parser_nodes___AReassignFormExpr___n_value_t)CALL( self,COLOR_parser_nodes___AReassignFormExpr___n_value))( self) /*AVarReassignExpr::n_value*/;
6670 variable3 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable3) /*CompilerVisitor::compile_expr*/;
6671 variable2 = variable3;
6672 variable4 = ((typing___AReassignFormExpr___assign_method_t)CALL( self,COLOR_typing___AReassignFormExpr___assign_method))( self) /*AVarReassignExpr::assign_method*/;
6673 variable5 = NEW_array___Array___with_capacity(TAG_Int(2)); /*new Array[String]*/
6674 ((array___AbstractArray___add_t)CALL(variable5,COLOR_abstract_collection___SimpleCollection___add))(variable5, variable1 /*e1*/) /*Array::add*/;
6675 ((array___AbstractArray___add_t)CALL(variable5,COLOR_abstract_collection___SimpleCollection___add))(variable5, variable2 /*e2*/) /*Array::add*/;
6676 variable4 = ((compiling_methods___MMMethod___compile_call_t)CALL(variable4,COLOR_compiling_methods___MMMethod___compile_call))(variable4, variable0 /*v*/, variable5) /*MMMethod::compile_call*/;
6677 variable3 = variable4;
6678 variable4 = ((compiling_methods___CompilerVisitor___varnames_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___varnames))( variable0 /*v*/) /*CompilerVisitor::varnames*/;
6679 variable5 = ((typing___AVarFormExpr___variable_t)CALL( self,COLOR_typing___AVarFormExpr___variable))( self) /*AVarReassignExpr::variable*/;
6680 variable4 = ((abstract_collection___Map_____bra_t)CALL(variable4,COLOR_abstract_collection___Map_____bra))(variable4, variable5) /*Map::[]*/;
6681 variable5 = NEW_string___String___init(); /*new String*/
6682 variable6 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
6683 variable7 = variable6;
6684 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable7) /*String::append*/;
6685 variable8 = variable3 /*e3*/;
6686 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable8) /*String::append*/;
6687 variable9 = NEW_string___String___with_native(BOX_NativeString(" /*"), TAG_Int(3)); /*new String*/
6688 variable10 = variable9;
6689 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable10) /*String::append*/;
6690 variable11 = ((typing___AVarFormExpr___variable_t)CALL( self,COLOR_typing___AVarFormExpr___variable))( self) /*AVarReassignExpr::variable*/;
6691 variable11 = ((syntax_base___Variable___name_t)CALL(variable11,COLOR_syntax_base___Variable___name))(variable11) /*Variable::name*/;
6692 variable12 = variable11;
6693 variable12 = ((string___String___to_s_t)CALL(variable12,COLOR_string___Object___to_s))(variable12) /*String::to_s*/;
6694 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable12) /*String::append*/;
6695 variable13 = NEW_string___String___with_native(BOX_NativeString("*/"), TAG_Int(2)); /*new String*/
6696 variable14 = variable13;
6697 ((string___String___append_t)CALL(variable5,COLOR_abstract_collection___IndexedCollection___append))(variable5, variable14) /*String::append*/;
6698 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable4, variable5) /*CompilerVisitor::add_assignment*/;
6699 tracehead = trace.prev;
6700 return;
6701 }
6702 val_t compiling_methods___ASelfExpr___compile_expr(val_t self, val_t param0) {
6703 struct trace_t trace = {NULL, LOCATE_compiling_methods___ASelfExpr___compile_expr, 936};
6704 val_t variable0;
6705 val_t variable1;
6706 val_t variable2;
6707 val_t variable3;
6708 val_t variable4;
6709 trace.prev = tracehead; tracehead = &trace;
6710 variable0 = param0;
6711 variable1 = ((compiling_methods___CompilerVisitor___method_params_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___method_params))( variable0 /*v*/) /*CompilerVisitor::method_params*/;
6712 variable2 = TAG_Int(0);
6713 variable3 = TAG_Bool(UNTAG_Int( variable2 /*index*/)>=UNTAG_Int( TAG_Int(0)));
6714 variable4 = variable3;
6715 if (UNTAG_Bool(variable4)) { /* and */
6716 variable4 = variable1;
6717 variable4 = ATTR_array___AbstractArray____length(variable4) /*Array::_length*/;
6718 variable4 = TAG_Bool(UNTAG_Int( variable2 /*index*/)<UNTAG_Int(variable4));
6719 }
6720 variable3 = variable4;
6721 if (!UNTAG_Bool(variable3)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
6722 variable3 = variable1;
6723 variable3 = ATTR_array___Array____items(variable3) /*Array::_items*/;
6724 variable3 = UNBOX_NativeArray(variable3)[UNTAG_Int( variable2 /*index*/)];
6725 goto return_label281;
6726 return_label281: while(false);
6727 variable1 = variable3;
6728 goto return_label280;
6729 return_label280: while(false);
6730 tracehead = trace.prev;
6731 return variable1;
6732 }
6733 val_t compiling_methods___AOrExpr___compile_expr(val_t self, val_t param0) {
6734 struct trace_t trace = {NULL, LOCATE_compiling_methods___AOrExpr___compile_expr, 943};
6735 val_t variable0;
6736 val_t variable1;
6737 val_t variable2;
6738 val_t variable3;
6739 val_t variable4;
6740 val_t variable5;
6741 val_t variable6;
6742 val_t variable7;
6743 trace.prev = tracehead; tracehead = &trace;
6744 variable0 = param0;
6745 variable2 = ((parser_nodes___AOrExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AOrExpr___n_expr))( self) /*AOrExpr::n_expr*/;
6746 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
6747 variable2 = ((compiling_methods___CompilerVisitor___ensure_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___ensure_var))( variable0 /*v*/, variable2) /*CompilerVisitor::ensure_var*/;
6748 variable1 = variable2;
6749 variable2 = NEW_string___String___init(); /*new String*/
6750 variable3 = NEW_string___String___with_native(BOX_NativeString("if (!UNTAG_Bool("), TAG_Int(16)); /*new String*/
6751 variable4 = variable3;
6752 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable4) /*String::append*/;
6753 variable5 = variable1 /*e*/;
6754 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable5) /*String::append*/;
6755 variable6 = NEW_string___String___with_native(BOX_NativeString(")) { /* or */"), TAG_Int(13)); /*new String*/
6756 variable7 = variable6;
6757 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable7) /*String::append*/;
6758 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
6759 ((compiling_methods___CompilerVisitor___free_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___free_var))( variable0 /*v*/, variable1 /*e*/) /*CompilerVisitor::free_var*/;
6760 ((compiling_base___CompilerVisitor___indent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___indent))( variable0 /*v*/) /*CompilerVisitor::indent*/;
6761 variable3 = ((parser_nodes___AOrExpr___n_expr2_t)CALL( self,COLOR_parser_nodes___AOrExpr___n_expr2))( self) /*AOrExpr::n_expr2*/;
6762 variable3 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable3) /*CompilerVisitor::compile_expr*/;
6763 variable2 = variable3;
6764 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable1 /*e*/, variable2 /*e2*/) /*CompilerVisitor::add_assignment*/;
6765 ((compiling_base___CompilerVisitor___unindent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___unindent))( variable0 /*v*/) /*CompilerVisitor::unindent*/;
6766 variable3 = NEW_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)); /*new String*/
6767 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable3) /*CompilerVisitor::add_instr*/;
6768 variable1 = variable1 /*e*/;
6769 goto return_label282;
6770 return_label282: while(false);
6771 tracehead = trace.prev;
6772 return variable1;
6773 }
6774 val_t compiling_methods___AAndExpr___compile_expr(val_t self, val_t param0) {
6775 struct trace_t trace = {NULL, LOCATE_compiling_methods___AAndExpr___compile_expr, 958};
6776 val_t variable0;
6777 val_t variable1;
6778 val_t variable2;
6779 val_t variable3;
6780 val_t variable4;
6781 val_t variable5;
6782 val_t variable6;
6783 val_t variable7;
6784 trace.prev = tracehead; tracehead = &trace;
6785 variable0 = param0;
6786 variable2 = ((parser_nodes___AAndExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AAndExpr___n_expr))( self) /*AAndExpr::n_expr*/;
6787 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
6788 variable2 = ((compiling_methods___CompilerVisitor___ensure_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___ensure_var))( variable0 /*v*/, variable2) /*CompilerVisitor::ensure_var*/;
6789 variable1 = variable2;
6790 variable2 = NEW_string___String___init(); /*new String*/
6791 variable3 = NEW_string___String___with_native(BOX_NativeString("if (UNTAG_Bool("), TAG_Int(15)); /*new String*/
6792 variable4 = variable3;
6793 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable4) /*String::append*/;
6794 variable5 = variable1 /*e*/;
6795 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable5) /*String::append*/;
6796 variable6 = NEW_string___String___with_native(BOX_NativeString(")) { /* and */"), TAG_Int(14)); /*new String*/
6797 variable7 = variable6;
6798 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable7) /*String::append*/;
6799 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
6800 ((compiling_methods___CompilerVisitor___free_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___free_var))( variable0 /*v*/, variable1 /*e*/) /*CompilerVisitor::free_var*/;
6801 ((compiling_base___CompilerVisitor___indent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___indent))( variable0 /*v*/) /*CompilerVisitor::indent*/;
6802 variable3 = ((parser_nodes___AAndExpr___n_expr2_t)CALL( self,COLOR_parser_nodes___AAndExpr___n_expr2))( self) /*AAndExpr::n_expr2*/;
6803 variable3 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable3) /*CompilerVisitor::compile_expr*/;
6804 variable2 = variable3;
6805 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable1 /*e*/, variable2 /*e2*/) /*CompilerVisitor::add_assignment*/;
6806 ((compiling_base___CompilerVisitor___unindent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___unindent))( variable0 /*v*/) /*CompilerVisitor::unindent*/;
6807 variable3 = NEW_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)); /*new String*/
6808 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable3) /*CompilerVisitor::add_instr*/;
6809 variable1 = variable1 /*e*/;
6810 goto return_label283;
6811 return_label283: while(false);
6812 tracehead = trace.prev;
6813 return variable1;
6814 }
6815 val_t compiling_methods___ANotExpr___compile_expr(val_t self, val_t param0) {
6816 struct trace_t trace = {NULL, LOCATE_compiling_methods___ANotExpr___compile_expr, 973};
6817 val_t variable0;
6818 val_t variable1;
6819 val_t variable2;
6820 val_t variable3;
6821 val_t variable4;
6822 val_t variable5;
6823 val_t variable6;
6824 val_t variable7;
6825 trace.prev = tracehead; tracehead = &trace;
6826 variable0 = param0;
6827 variable1 = NEW_string___String___init(); /*new String*/
6828 variable2 = NEW_string___String___with_native(BOX_NativeString(" TAG_Bool(!UNTAG_Bool("), TAG_Int(22)); /*new String*/
6829 variable3 = variable2;
6830 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
6831 variable4 = ((parser_nodes___ANotExpr___n_expr_t)CALL( self,COLOR_parser_nodes___ANotExpr___n_expr))( self) /*ANotExpr::n_expr*/;
6832 variable4 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable4) /*CompilerVisitor::compile_expr*/;
6833 variable5 = variable4;
6834 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable5) /*String::append*/;
6835 variable6 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
6836 variable7 = variable6;
6837 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable7) /*String::append*/;
6838 goto return_label284;
6839 return_label284: while(false);
6840 tracehead = trace.prev;
6841 return variable1;
6842 }
6843 val_t compiling_methods___AEeExpr___compile_expr(val_t self, val_t param0) {
6844 struct trace_t trace = {NULL, LOCATE_compiling_methods___AEeExpr___compile_expr, 980};
6845 val_t variable0;
6846 val_t variable1;
6847 val_t variable2;
6848 val_t variable3;
6849 val_t variable4;
6850 val_t variable5;
6851 val_t variable6;
6852 val_t variable7;
6853 val_t variable8;
6854 val_t variable9;
6855 val_t variable10;
6856 val_t variable11;
6857 trace.prev = tracehead; tracehead = &trace;
6858 variable0 = param0;
6859 variable2 = ((parser_nodes___AEeExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AEeExpr___n_expr))( self) /*AEeExpr::n_expr*/;
6860 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
6861 variable1 = variable2;
6862 variable3 = ((parser_nodes___AEeExpr___n_expr2_t)CALL( self,COLOR_parser_nodes___AEeExpr___n_expr2))( self) /*AEeExpr::n_expr2*/;
6863 variable3 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable3) /*CompilerVisitor::compile_expr*/;
6864 variable2 = variable3;
6865 variable3 = NEW_string___String___init(); /*new String*/
6866 variable4 = NEW_string___String___with_native(BOX_NativeString("TAG_Bool(IS_EQUAL_NN("), TAG_Int(21)); /*new String*/
6867 variable5 = variable4;
6868 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
6869 variable6 = variable1 /*e*/;
6870 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable6) /*String::append*/;
6871 variable7 = NEW_string___String___with_native(BOX_NativeString(","), TAG_Int(1)); /*new String*/
6872 variable8 = variable7;
6873 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable8) /*String::append*/;
6874 variable9 = variable2 /*e2*/;
6875 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
6876 variable10 = NEW_string___String___with_native(BOX_NativeString("))"), TAG_Int(2)); /*new String*/
6877 variable11 = variable10;
6878 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable11) /*String::append*/;
6879 variable1 = variable3;
6880 goto return_label285;
6881 return_label285: while(false);
6882 tracehead = trace.prev;
6883 return variable1;
6884 }
6885 val_t compiling_methods___AIsaExpr___compile_expr(val_t self, val_t param0) {
6886 struct trace_t trace = {NULL, LOCATE_compiling_methods___AIsaExpr___compile_expr, 989};
6887 val_t variable0;
6888 val_t variable1;
6889 val_t variable2;
6890 trace.prev = tracehead; tracehead = &trace;
6891 variable0 = param0;
6892 variable2 = ((parser_nodes___AIsaExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AIsaExpr___n_expr))( self) /*AIsaExpr::n_expr*/;
6893 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
6894 variable1 = variable2;
6895 variable2 = ((parser_nodes___AIsaExpr___n_type_t)CALL( self,COLOR_parser_nodes___AIsaExpr___n_type))( self) /*AIsaExpr::n_type*/;
6896 variable2 = ((typing___PType___stype_t)CALL(variable2,COLOR_typing___PType___stype))(variable2) /*PType::stype*/;
6897 variable2 = ((compiling_methods___MMType___compile_cast_t)CALL(variable2,COLOR_compiling_methods___MMType___compile_cast))(variable2, variable0 /*v*/, variable1 /*e*/) /*MMType::compile_cast*/;
6898 variable1 = variable2;
6899 goto return_label286;
6900 return_label286: while(false);
6901 tracehead = trace.prev;
6902 return variable1;
6903 }
6904 val_t compiling_methods___ATrueExpr___compile_expr(val_t self, val_t param0) {
6905 struct trace_t trace = {NULL, LOCATE_compiling_methods___ATrueExpr___compile_expr, 997};
6906 val_t variable0;
6907 val_t variable1;
6908 trace.prev = tracehead; tracehead = &trace;
6909 variable0 = param0;
6910 variable1 = NEW_string___String___with_native(BOX_NativeString(" TAG_Bool(true)"), TAG_Int(15)); /*new String*/
6911 goto return_label287;
6912 return_label287: while(false);
6913 tracehead = trace.prev;
6914 return variable1;
6915 }
6916 val_t compiling_methods___AFalseExpr___compile_expr(val_t self, val_t param0) {
6917 struct trace_t trace = {NULL, LOCATE_compiling_methods___AFalseExpr___compile_expr, 1004};
6918 val_t variable0;
6919 val_t variable1;
6920 trace.prev = tracehead; tracehead = &trace;
6921 variable0 = param0;
6922 variable1 = NEW_string___String___with_native(BOX_NativeString(" TAG_Bool(false)"), TAG_Int(16)); /*new String*/
6923 goto return_label288;
6924 return_label288: while(false);
6925 tracehead = trace.prev;
6926 return variable1;
6927 }
6928 val_t compiling_methods___AIntExpr___compile_expr(val_t self, val_t param0) {
6929 struct trace_t trace = {NULL, LOCATE_compiling_methods___AIntExpr___compile_expr, 1011};
6930 val_t variable0;
6931 val_t variable1;
6932 val_t variable2;
6933 val_t variable3;
6934 val_t variable4;
6935 val_t variable5;
6936 val_t variable6;
6937 val_t variable7;
6938 trace.prev = tracehead; tracehead = &trace;
6939 variable0 = param0;
6940 variable1 = NEW_string___String___init(); /*new String*/
6941 variable2 = NEW_string___String___with_native(BOX_NativeString(" TAG_Int("), TAG_Int(9)); /*new String*/
6942 variable3 = variable2;
6943 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
6944 variable4 = ((parser_nodes___AIntExpr___n_number_t)CALL( self,COLOR_parser_nodes___AIntExpr___n_number))( self) /*AIntExpr::n_number*/;
6945 variable4 = ((lexer___Token___text_t)CALL(variable4,COLOR_lexer___Token___text))(variable4) /*TNumber::text*/;
6946 variable5 = variable4;
6947 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable5) /*String::append*/;
6948 variable6 = NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
6949 variable7 = variable6;
6950 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable7) /*String::append*/;
6951 goto return_label289;
6952 return_label289: while(false);
6953 tracehead = trace.prev;
6954 return variable1;
6955 }
6956 val_t compiling_methods___AFloatExpr___compile_expr(val_t self, val_t param0) {
6957 struct trace_t trace = {NULL, LOCATE_compiling_methods___AFloatExpr___compile_expr, 1018};
6958 val_t variable0;
6959 val_t variable1;
6960 val_t variable2;
6961 val_t variable3;
6962 val_t variable4;
6963 val_t variable5;
6964 val_t variable6;
6965 val_t variable7;
6966 trace.prev = tracehead; tracehead = &trace;
6967 variable0 = param0;
6968 variable1 = NEW_string___String___init(); /*new String*/
6969 variable2 = NEW_string___String___with_native(BOX_NativeString("BOX_Float("), TAG_Int(10)); /*new String*/
6970 variable3 = variable2;
6971 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
6972 variable4 = ((parser_nodes___AFloatExpr___n_float_t)CALL( self,COLOR_parser_nodes___AFloatExpr___n_float))( self) /*AFloatExpr::n_float*/;
6973 variable4 = ((lexer___Token___text_t)CALL(variable4,COLOR_lexer___Token___text))(variable4) /*TFloat::text*/;
6974 variable5 = variable4;
6975 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable5) /*String::append*/;
6976 variable6 = NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
6977 variable7 = variable6;
6978 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable7) /*String::append*/;
6979 goto return_label290;
6980 return_label290: while(false);
6981 tracehead = trace.prev;
6982 return variable1;
6983 }
6984 val_t compiling_methods___ACharExpr___compile_expr(val_t self, val_t param0) {
6985 struct trace_t trace = {NULL, LOCATE_compiling_methods___ACharExpr___compile_expr, 1025};
6986 val_t variable0;
6987 val_t variable1;
6988 val_t variable2;
6989 val_t variable3;
6990 val_t variable4;
6991 val_t variable5;
6992 val_t variable6;
6993 val_t variable7;
6994 trace.prev = tracehead; tracehead = &trace;
6995 variable0 = param0;
6996 variable1 = NEW_string___String___init(); /*new String*/
6997 variable2 = NEW_string___String___with_native(BOX_NativeString(" TAG_Char("), TAG_Int(10)); /*new String*/
6998 variable3 = variable2;
6999 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable3) /*String::append*/;
7000 variable4 = ((parser_nodes___ACharExpr___n_char_t)CALL( self,COLOR_parser_nodes___ACharExpr___n_char))( self) /*ACharExpr::n_char*/;
7001 variable4 = ((lexer___Token___text_t)CALL(variable4,COLOR_lexer___Token___text))(variable4) /*TChar::text*/;
7002 variable5 = variable4;
7003 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable5) /*String::append*/;
7004 variable6 = NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
7005 variable7 = variable6;
7006 ((string___String___append_t)CALL(variable1,COLOR_abstract_collection___IndexedCollection___append))(variable1, variable7) /*String::append*/;
7007 goto return_label291;
7008 return_label291: while(false);
7009 tracehead = trace.prev;
7010 return variable1;
7011 }
7012 val_t compiling_methods___AStringFormExpr___compile_expr(val_t self, val_t param0) {
7013 struct trace_t trace = {NULL, LOCATE_compiling_methods___AStringFormExpr___compile_expr, 1032};
7014 val_t variable0;
7015 val_t variable1;
7016 val_t variable2;
7017 val_t variable3;
7018 static val_t once_value_variable3_293; static int once_bool_variable3_293;
7019 val_t variable4;
7020 val_t variable5;
7021 val_t variable6;
7022 val_t variable7;
7023 val_t variable8;
7024 val_t variable9;
7025 val_t variable10;
7026 trace.prev = tracehead; tracehead = &trace;
7027 variable0 = param0;
7028 variable2 = ((typing___PExpr___stype_t)CALL( self,COLOR_syntax_base___PExpr___stype))( self) /*AStringFormExpr::stype*/;
7029 if (once_bool_variable3_293) variable3 = once_value_variable3_293;
7030 else {
7031 variable3 = NEW_string___String___with_native(BOX_NativeString("with_native"), TAG_Int(11)); /*new String*/
7032 variable3 = ((symbol___String___to_symbol_t)CALL(variable3,COLOR_symbol___String___to_symbol))(variable3) /*String::to_symbol*/;
7033 once_value_variable3_293 = variable3;
7034 once_bool_variable3_293 = true;
7035 }
7036 variable2 = ((static_type___MMType___select_method_t)CALL(variable2,COLOR_static_type___MMType___select_method))(variable2, variable3) /*MMType::select_method*/;
7037 variable1 = variable2;
7038 ((compiling_methods___AStringFormExpr___compute_string_info_t)CALL( self,COLOR_compiling_methods___AStringFormExpr___compute_string_info))( self) /*AStringFormExpr::compute_string_info*/;
7039 variable2 = NEW_array___Array___with_capacity(TAG_Int(2)); /*new Array[String]*/
7040 variable3 = NEW_string___String___init(); /*new String*/
7041 variable4 = NEW_string___String___with_native(BOX_NativeString("BOX_NativeString(\""), TAG_Int(18)); /*new String*/
7042 variable5 = variable4;
7043 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
7044 variable6 = ATTR_compiling_methods___AStringFormExpr____cstring( self) /*AStringFormExpr::_cstring*/;
7045 variable7 = variable6;
7046 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable7) /*String::append*/;
7047 variable8 = NEW_string___String___with_native(BOX_NativeString("\")"), TAG_Int(2)); /*new String*/
7048 variable9 = variable8;
7049 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
7050 ((array___AbstractArray___add_t)CALL(variable2,COLOR_abstract_collection___SimpleCollection___add))(variable2, variable3) /*Array::add*/;
7051 variable4 = NEW_string___String___init(); /*new String*/
7052 variable5 = NEW_string___String___with_native(BOX_NativeString("TAG_Int("), TAG_Int(8)); /*new String*/
7053 variable6 = variable5;
7054 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
7055 variable7 = ATTR_compiling_methods___AStringFormExpr____cstring_length( self) /*AStringFormExpr::_cstring_length*/;
7056 variable8 = variable7;
7057 variable8 = ((string___String___to_s_t)CALL(variable8,COLOR_string___Object___to_s))(variable8) /*String::to_s*/;
7058 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable8) /*String::append*/;
7059 variable9 = NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
7060 variable10 = variable9;
7061 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable10) /*String::append*/;
7062 ((array___AbstractArray___add_t)CALL(variable2,COLOR_abstract_collection___SimpleCollection___add))(variable2, variable4) /*Array::add*/;
7063 variable2 = ((compiling_methods___MMMethod___compile_constructor_call_t)CALL( variable1 /*prop*/,COLOR_compiling_methods___MMMethod___compile_constructor_call))( variable1 /*prop*/, variable0 /*v*/, variable2) /*MMMethod::compile_constructor_call*/;
7064 variable1 = variable2;
7065 goto return_label292;
7066 return_label292: while(false);
7067 tracehead = trace.prev;
7068 return variable1;
7069 }
7070 val_t compiling_methods___AStringFormExpr___string_text(val_t self) {
7071 struct trace_t trace = {NULL, LOCATE_compiling_methods___AStringFormExpr___string_text, 1039};
7072 trace.prev = tracehead; tracehead = &trace;
7073 fprintf(stderr, "Deferred method %s called (%s: %d)\n", "string_text", LOCATE_compiling_methods___AStringFormExpr___compile_expr, 1039);
7074 nit_exit(1);
7075 tracehead = trace.prev;
7076 return NIT_NULL;
7077 }
7078 void compiling_methods___AStringFormExpr___compute_string_info(val_t self) {
7079 struct trace_t trace = {NULL, LOCATE_compiling_methods___AStringFormExpr___compute_string_info, 1048};
7080 val_t variable0;
7081 val_t variable1;
7082 val_t variable2;
7083 val_t variable3;
7084 val_t variable4;
7085 val_t variable5;
7086 val_t variable6;
7087 val_t variable7;
7088 trace.prev = tracehead; tracehead = &trace;
7089 variable0 = TAG_Int(0);
7090 variable2 = ((compiling_methods___AStringFormExpr___string_text_t)CALL( self,COLOR_compiling_methods___AStringFormExpr___string_text))( self) /*AStringFormExpr::string_text*/;
7091 variable1 = variable2;
7092 variable3 = NEW_string___String___init(); /*new String*/
7093 variable2 = variable3;
7094 variable3 = TAG_Int(0);
7095 while (true) { /*while*/
7096 variable4 = ((array___AbstractArray___length_t)CALL( variable1 /*str*/,COLOR_abstract_collection___Collection___length))( variable1 /*str*/) /*String::length*/;
7097 variable4 = TAG_Bool(UNTAG_Int( variable3 /*i*/)<UNTAG_Int(variable4));
7098 if (!UNTAG_Bool(variable4)) break; /* while*/
7099 variable5 = ((string___String_____bra_t)CALL( variable1 /*str*/,COLOR_abstract_collection___Map_____bra))( variable1 /*str*/, variable3 /*i*/) /*String::[]*/;
7100 variable4 = variable5;
7101 variable5 = TAG_Bool(( variable4 /*c*/)==( TAG_Char('\\')));
7102 if (UNTAG_Bool(variable5)) { /*if*/
7103 variable5 = TAG_Int(UNTAG_Int( variable3 /*i*/)+UNTAG_Int( TAG_Int(1)));
7104 variable3 = variable5 /*i=*/;
7105 variable6 = ((string___String_____bra_t)CALL( variable1 /*str*/,COLOR_abstract_collection___Map_____bra))( variable1 /*str*/, variable3 /*i*/) /*String::[]*/;
7106 variable5 = variable6;
7107 variable6 = TAG_Bool(( variable5 /*c2*/)!=( TAG_Char('{')));
7108 variable7 = variable6;
7109 if (UNTAG_Bool(variable7)) { /* and */
7110 variable7 = TAG_Bool(( variable5 /*c2*/)!=( TAG_Char('}')));
7111 }
7112 variable6 = variable7;
7113 if (UNTAG_Bool(variable6)) { /*if*/
7114 ((string___String___add_t)CALL( variable2 /*res*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*res*/, variable4 /*c*/) /*String::add*/;
7115 }
7116 variable4 = variable5 /*c2*/ /*c=*/;
7117 }
7118 variable5 = TAG_Int(UNTAG_Int( variable0 /*len*/)+UNTAG_Int( TAG_Int(1)));
7119 variable0 = variable5 /*len=*/;
7120 ((string___String___add_t)CALL( variable2 /*res*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*res*/, variable4 /*c*/) /*String::add*/;
7121 variable5 = TAG_Int(UNTAG_Int( variable3 /*i*/)+UNTAG_Int( TAG_Int(1)));
7122 variable3 = variable5 /*i=*/;
7123 continue_295: while(0);
7124 }
7125 break_295: while(0);
7126 ATTR_compiling_methods___AStringFormExpr____cstring( self) /*AStringFormExpr::_cstring*/ = variable2 /*res*/;
7127 ATTR_compiling_methods___AStringFormExpr____cstring_length( self) /*AStringFormExpr::_cstring_length*/ = variable0 /*len*/;
7128 tracehead = trace.prev;
7129 return;
7130 }
7131 val_t compiling_methods___AStringExpr___string_text(val_t self) {
7132 struct trace_t trace = {NULL, LOCATE_compiling_methods___AStringExpr___string_text, 1075};
7133 val_t variable0;
7134 val_t variable1;
7135 trace.prev = tracehead; tracehead = &trace;
7136 variable0 = ((parser_nodes___AStringExpr___n_string_t)CALL( self,COLOR_parser_nodes___AStringExpr___n_string))( self) /*AStringExpr::n_string*/;
7137 variable0 = ((lexer___Token___text_t)CALL(variable0,COLOR_lexer___Token___text))(variable0) /*TString::text*/;
7138 variable1 = ((parser_nodes___AStringExpr___n_string_t)CALL( self,COLOR_parser_nodes___AStringExpr___n_string))( self) /*AStringExpr::n_string*/;
7139 variable1 = ((lexer___Token___text_t)CALL(variable1,COLOR_lexer___Token___text))(variable1) /*TString::text*/;
7140 variable1 = ((array___AbstractArray___length_t)CALL(variable1,COLOR_abstract_collection___Collection___length))(variable1) /*String::length*/;
7141 variable1 = TAG_Int(UNTAG_Int(variable1)-UNTAG_Int( TAG_Int(2)));
7142 variable0 = ((string___String___substring_t)CALL(variable0,COLOR_string___String___substring))(variable0, TAG_Int(1), variable1) /*String::substring*/;
7143 goto return_label296;
7144 return_label296: while(false);
7145 tracehead = trace.prev;
7146 return variable0;
7147 }
7148 val_t compiling_methods___AStartStringExpr___string_text(val_t self) {
7149 struct trace_t trace = {NULL, LOCATE_compiling_methods___AStartStringExpr___string_text, 1078};
7150 val_t variable0;
7151 val_t variable1;
7152 trace.prev = tracehead; tracehead = &trace;
7153 variable0 = ((parser_nodes___AStartStringExpr___n_string_t)CALL( self,COLOR_parser_nodes___AStartStringExpr___n_string))( self) /*AStartStringExpr::n_string*/;
7154 variable0 = ((lexer___Token___text_t)CALL(variable0,COLOR_lexer___Token___text))(variable0) /*TStartString::text*/;
7155 variable1 = ((parser_nodes___AStartStringExpr___n_string_t)CALL( self,COLOR_parser_nodes___AStartStringExpr___n_string))( self) /*AStartStringExpr::n_string*/;
7156 variable1 = ((lexer___Token___text_t)CALL(variable1,COLOR_lexer___Token___text))(variable1) /*TStartString::text*/;
7157 variable1 = ((array___AbstractArray___length_t)CALL(variable1,COLOR_abstract_collection___Collection___length))(variable1) /*String::length*/;
7158 variable1 = TAG_Int(UNTAG_Int(variable1)-UNTAG_Int( TAG_Int(2)));
7159 variable0 = ((string___String___substring_t)CALL(variable0,COLOR_string___String___substring))(variable0, TAG_Int(1), variable1) /*String::substring*/;
7160 goto return_label297;
7161 return_label297: while(false);
7162 tracehead = trace.prev;
7163 return variable0;
7164 }
7165 val_t compiling_methods___AMidStringExpr___string_text(val_t self) {
7166 struct trace_t trace = {NULL, LOCATE_compiling_methods___AMidStringExpr___string_text, 1081};
7167 val_t variable0;
7168 val_t variable1;
7169 trace.prev = tracehead; tracehead = &trace;
7170 variable0 = ((parser_nodes___AMidStringExpr___n_string_t)CALL( self,COLOR_parser_nodes___AMidStringExpr___n_string))( self) /*AMidStringExpr::n_string*/;
7171 variable0 = ((lexer___Token___text_t)CALL(variable0,COLOR_lexer___Token___text))(variable0) /*TMidString::text*/;
7172 variable1 = ((parser_nodes___AMidStringExpr___n_string_t)CALL( self,COLOR_parser_nodes___AMidStringExpr___n_string))( self) /*AMidStringExpr::n_string*/;
7173 variable1 = ((lexer___Token___text_t)CALL(variable1,COLOR_lexer___Token___text))(variable1) /*TMidString::text*/;
7174 variable1 = ((array___AbstractArray___length_t)CALL(variable1,COLOR_abstract_collection___Collection___length))(variable1) /*String::length*/;
7175 variable1 = TAG_Int(UNTAG_Int(variable1)-UNTAG_Int( TAG_Int(2)));
7176 variable0 = ((string___String___substring_t)CALL(variable0,COLOR_string___String___substring))(variable0, TAG_Int(1), variable1) /*String::substring*/;
7177 goto return_label298;
7178 return_label298: while(false);
7179 tracehead = trace.prev;
7180 return variable0;
7181 }
7182 val_t compiling_methods___AEndStringExpr___string_text(val_t self) {
7183 struct trace_t trace = {NULL, LOCATE_compiling_methods___AEndStringExpr___string_text, 1084};
7184 val_t variable0;
7185 val_t variable1;
7186 trace.prev = tracehead; tracehead = &trace;
7187 variable0 = ((parser_nodes___AEndStringExpr___n_string_t)CALL( self,COLOR_parser_nodes___AEndStringExpr___n_string))( self) /*AEndStringExpr::n_string*/;
7188 variable0 = ((lexer___Token___text_t)CALL(variable0,COLOR_lexer___Token___text))(variable0) /*TEndString::text*/;
7189 variable1 = ((parser_nodes___AEndStringExpr___n_string_t)CALL( self,COLOR_parser_nodes___AEndStringExpr___n_string))( self) /*AEndStringExpr::n_string*/;
7190 variable1 = ((lexer___Token___text_t)CALL(variable1,COLOR_lexer___Token___text))(variable1) /*TEndString::text*/;
7191 variable1 = ((array___AbstractArray___length_t)CALL(variable1,COLOR_abstract_collection___Collection___length))(variable1) /*String::length*/;
7192 variable1 = TAG_Int(UNTAG_Int(variable1)-UNTAG_Int( TAG_Int(2)));
7193 variable0 = ((string___String___substring_t)CALL(variable0,COLOR_string___String___substring))(variable0, TAG_Int(1), variable1) /*String::substring*/;
7194 goto return_label299;
7195 return_label299: while(false);
7196 tracehead = trace.prev;
7197 return variable0;
7198 }
7199 val_t compiling_methods___ASuperstringExpr___compile_expr(val_t self, val_t param0) {
7200 struct trace_t trace = {NULL, LOCATE_compiling_methods___ASuperstringExpr___compile_expr, 1088};
7201 val_t variable0;
7202 val_t variable1;
7203 val_t variable2;
7204 val_t variable3;
7205 static val_t once_value_variable3_301; static int once_bool_variable3_301;
7206 val_t variable4;
7207 val_t variable5;
7208 static val_t once_value_variable5_302; static int once_bool_variable5_302;
7209 val_t variable6;
7210 static val_t once_value_variable6_303; static int once_bool_variable6_303;
7211 val_t variable7;
7212 val_t variable8;
7213 val_t variable9;
7214 trace.prev = tracehead; tracehead = &trace;
7215 variable0 = param0;
7216 variable2 = ((typing___PExpr___stype_t)CALL( self,COLOR_syntax_base___PExpr___stype))( self) /*ASuperstringExpr::stype*/;
7217 if (once_bool_variable3_301) variable3 = once_value_variable3_301;
7218 else {
7219 variable3 = NEW_string___String___with_native(BOX_NativeString("init"), TAG_Int(4)); /*new String*/
7220 variable3 = ((symbol___String___to_symbol_t)CALL(variable3,COLOR_symbol___String___to_symbol))(variable3) /*String::to_symbol*/;
7221 once_value_variable3_301 = variable3;
7222 once_bool_variable3_301 = true;
7223 }
7224 variable2 = ((static_type___MMType___select_method_t)CALL(variable2,COLOR_static_type___MMType___select_method))(variable2, variable3) /*MMType::select_method*/;
7225 variable1 = variable2;
7226 variable3 = NEW_array___Array___init(); /*new Array[String]*/
7227 variable3 = ((compiling_methods___MMMethod___compile_constructor_call_t)CALL( variable1 /*prop*/,COLOR_compiling_methods___MMMethod___compile_constructor_call))( variable1 /*prop*/, variable0 /*v*/, variable3) /*MMMethod::compile_constructor_call*/;
7228 variable2 = variable3;
7229 variable4 = ((typing___PExpr___stype_t)CALL( self,COLOR_syntax_base___PExpr___stype))( self) /*ASuperstringExpr::stype*/;
7230 if (once_bool_variable5_302) variable5 = once_value_variable5_302;
7231 else {
7232 variable5 = NEW_string___String___with_native(BOX_NativeString("append"), TAG_Int(6)); /*new String*/
7233 variable5 = ((symbol___String___to_symbol_t)CALL(variable5,COLOR_symbol___String___to_symbol))(variable5) /*String::to_symbol*/;
7234 once_value_variable5_302 = variable5;
7235 once_bool_variable5_302 = true;
7236 }
7237 variable4 = ((static_type___MMType___select_method_t)CALL(variable4,COLOR_static_type___MMType___select_method))(variable4, variable5) /*MMType::select_method*/;
7238 variable3 = variable4;
7239 variable5 = ((typing___PExpr___stype_t)CALL( self,COLOR_syntax_base___PExpr___stype))( self) /*ASuperstringExpr::stype*/;
7240 if (once_bool_variable6_303) variable6 = once_value_variable6_303;
7241 else {
7242 variable6 = NEW_string___String___with_native(BOX_NativeString("to_s"), TAG_Int(4)); /*new String*/
7243 variable6 = ((symbol___String___to_symbol_t)CALL(variable6,COLOR_symbol___String___to_symbol))(variable6) /*String::to_symbol*/;
7244 once_value_variable6_303 = variable6;
7245 once_bool_variable6_303 = true;
7246 }
7247 variable5 = ((static_type___MMType___select_method_t)CALL(variable5,COLOR_static_type___MMType___select_method))(variable5, variable6) /*MMType::select_method*/;
7248 variable4 = variable5;
7249 variable5 = ((parser_nodes___ASuperstringExpr___n_exprs_t)CALL( self,COLOR_parser_nodes___ASuperstringExpr___n_exprs))( self) /*ASuperstringExpr::n_exprs*/;
7250 variable5 = ((list___List___iterator_t)CALL(variable5,COLOR_abstract_collection___Collection___iterator))(variable5) /*List::iterator*/;
7251 while (true) { /*for*/
7252 variable6 = ((list___ListIterator___is_ok_t)CALL(variable5,COLOR_abstract_collection___Iterator___is_ok))(variable5) /*ListIterator::is_ok*/;
7253 if (!UNTAG_Bool(variable6)) break; /*for*/
7254 variable6 = ((list___ListIterator___item_t)CALL(variable5,COLOR_abstract_collection___Iterator___item))(variable5) /*ListIterator::item*/;
7255 variable8 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable6 /*ne*/) /*CompilerVisitor::compile_expr*/;
7256 variable8 = ((compiling_methods___CompilerVisitor___ensure_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___ensure_var))( variable0 /*v*/, variable8) /*CompilerVisitor::ensure_var*/;
7257 variable7 = variable8;
7258 variable8 = ((typing___PExpr___stype_t)CALL( variable6 /*ne*/,COLOR_syntax_base___PExpr___stype))( variable6 /*ne*/) /*PExpr::stype*/;
7259 variable9 = ((typing___PExpr___stype_t)CALL( self,COLOR_syntax_base___PExpr___stype))( self) /*ASuperstringExpr::stype*/;
7260 variable8 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable8 == variable9) || ((variable8 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable8,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable8,variable9)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable8,COLOR_kernel___Object_____eqeq))(variable8, variable9) /*MMType::==*/)))))));
7261 if (UNTAG_Bool(variable8)) { /*if*/
7262 variable8 = NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[String]*/
7263 ((array___AbstractArray___add_t)CALL(variable8,COLOR_abstract_collection___SimpleCollection___add))(variable8, variable7 /*e*/) /*Array::add*/;
7264 variable8 = ((compiling_methods___MMMethod___compile_call_t)CALL( variable4 /*prop3*/,COLOR_compiling_methods___MMMethod___compile_call))( variable4 /*prop3*/, variable0 /*v*/, variable8) /*MMMethod::compile_call*/;
7265 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable7 /*e*/, variable8) /*CompilerVisitor::add_assignment*/;
7266 }
7267 variable8 = NEW_array___Array___with_capacity(TAG_Int(2)); /*new Array[String]*/
7268 ((array___AbstractArray___add_t)CALL(variable8,COLOR_abstract_collection___SimpleCollection___add))(variable8, variable2 /*recv*/) /*Array::add*/;
7269 ((array___AbstractArray___add_t)CALL(variable8,COLOR_abstract_collection___SimpleCollection___add))(variable8, variable7 /*e*/) /*Array::add*/;
7270 ((compiling_methods___MMMethod___compile_call_t)CALL( variable3 /*prop2*/,COLOR_compiling_methods___MMMethod___compile_call))( variable3 /*prop2*/, variable0 /*v*/, variable8) /*MMMethod::compile_call*/;
7271 continue_304: while(0);
7272 ((list___ListIterator___next_t)CALL(variable5,COLOR_abstract_collection___Iterator___next))(variable5) /*ListIterator::next*/;
7273 }
7274 break_304: while(0);
7275 variable1 = variable2 /*recv*/;
7276 goto return_label300;
7277 return_label300: while(false);
7278 tracehead = trace.prev;
7279 return variable1;
7280 }
7281 val_t compiling_methods___ANullExpr___compile_expr(val_t self, val_t param0) {
7282 struct trace_t trace = {NULL, LOCATE_compiling_methods___ANullExpr___compile_expr, 1109};
7283 val_t variable0;
7284 val_t variable1;
7285 trace.prev = tracehead; tracehead = &trace;
7286 variable0 = param0;
7287 variable1 = NEW_string___String___with_native(BOX_NativeString(" NIT_NULL /*null*/"), TAG_Int(18)); /*new String*/
7288 goto return_label305;
7289 return_label305: while(false);
7290 tracehead = trace.prev;
7291 return variable1;
7292 }
7293 val_t compiling_methods___AArrayExpr___compile_expr(val_t self, val_t param0) {
7294 struct trace_t trace = {NULL, LOCATE_compiling_methods___AArrayExpr___compile_expr, 1116};
7295 val_t variable0;
7296 val_t variable1;
7297 val_t variable2;
7298 val_t variable3;
7299 static val_t once_value_variable3_307; static int once_bool_variable3_307;
7300 val_t variable4;
7301 val_t variable5;
7302 val_t variable6;
7303 val_t variable7;
7304 val_t variable8;
7305 val_t variable9;
7306 val_t variable10;
7307 static val_t once_value_variable5_308; static int once_bool_variable5_308;
7308 trace.prev = tracehead; tracehead = &trace;
7309 variable0 = param0;
7310 variable2 = ((typing___PExpr___stype_t)CALL( self,COLOR_syntax_base___PExpr___stype))( self) /*AArrayExpr::stype*/;
7311 if (once_bool_variable3_307) variable3 = once_value_variable3_307;
7312 else {
7313 variable3 = NEW_string___String___with_native(BOX_NativeString("with_capacity"), TAG_Int(13)); /*new String*/
7314 variable3 = ((symbol___String___to_symbol_t)CALL(variable3,COLOR_symbol___String___to_symbol))(variable3) /*String::to_symbol*/;
7315 once_value_variable3_307 = variable3;
7316 once_bool_variable3_307 = true;
7317 }
7318 variable2 = ((static_type___MMType___select_method_t)CALL(variable2,COLOR_static_type___MMType___select_method))(variable2, variable3) /*MMType::select_method*/;
7319 variable1 = variable2;
7320 variable3 = NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[String]*/
7321 variable4 = NEW_string___String___init(); /*new String*/
7322 variable5 = NEW_string___String___with_native(BOX_NativeString("TAG_Int("), TAG_Int(8)); /*new String*/
7323 variable6 = variable5;
7324 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
7325 variable7 = ((parser_nodes___AArrayExpr___n_exprs_t)CALL( self,COLOR_parser_nodes___AArrayExpr___n_exprs))( self) /*AArrayExpr::n_exprs*/;
7326 variable7 = ((list___List___length_t)CALL(variable7,COLOR_abstract_collection___Collection___length))(variable7) /*List::length*/;
7327 variable8 = variable7;
7328 variable8 = ((string___String___to_s_t)CALL(variable8,COLOR_string___Object___to_s))(variable8) /*String::to_s*/;
7329 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable8) /*String::append*/;
7330 variable9 = NEW_string___String___with_native(BOX_NativeString(")"), TAG_Int(1)); /*new String*/
7331 variable10 = variable9;
7332 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable10) /*String::append*/;
7333 ((array___AbstractArray___add_t)CALL(variable3,COLOR_abstract_collection___SimpleCollection___add))(variable3, variable4) /*Array::add*/;
7334 variable3 = ((compiling_methods___MMMethod___compile_constructor_call_t)CALL( variable1 /*prop*/,COLOR_compiling_methods___MMMethod___compile_constructor_call))( variable1 /*prop*/, variable0 /*v*/, variable3) /*MMMethod::compile_constructor_call*/;
7335 variable2 = variable3;
7336 variable4 = ((typing___PExpr___stype_t)CALL( self,COLOR_syntax_base___PExpr___stype))( self) /*AArrayExpr::stype*/;
7337 if (once_bool_variable5_308) variable5 = once_value_variable5_308;
7338 else {
7339 variable5 = NEW_string___String___with_native(BOX_NativeString("add"), TAG_Int(3)); /*new String*/
7340 variable5 = ((symbol___String___to_symbol_t)CALL(variable5,COLOR_symbol___String___to_symbol))(variable5) /*String::to_symbol*/;
7341 once_value_variable5_308 = variable5;
7342 once_bool_variable5_308 = true;
7343 }
7344 variable4 = ((static_type___MMType___select_method_t)CALL(variable4,COLOR_static_type___MMType___select_method))(variable4, variable5) /*MMType::select_method*/;
7345 variable3 = variable4;
7346 variable4 = ((parser_nodes___AArrayExpr___n_exprs_t)CALL( self,COLOR_parser_nodes___AArrayExpr___n_exprs))( self) /*AArrayExpr::n_exprs*/;
7347 variable4 = ((list___List___iterator_t)CALL(variable4,COLOR_abstract_collection___Collection___iterator))(variable4) /*List::iterator*/;
7348 while (true) { /*for*/
7349 variable5 = ((list___ListIterator___is_ok_t)CALL(variable4,COLOR_abstract_collection___Iterator___is_ok))(variable4) /*ListIterator::is_ok*/;
7350 if (!UNTAG_Bool(variable5)) break; /*for*/
7351 variable5 = ((list___ListIterator___item_t)CALL(variable4,COLOR_abstract_collection___Iterator___item))(variable4) /*ListIterator::item*/;
7352 variable7 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable5 /*ne*/) /*CompilerVisitor::compile_expr*/;
7353 variable6 = variable7;
7354 variable7 = NEW_array___Array___with_capacity(TAG_Int(2)); /*new Array[String]*/
7355 ((array___AbstractArray___add_t)CALL(variable7,COLOR_abstract_collection___SimpleCollection___add))(variable7, variable2 /*recv*/) /*Array::add*/;
7356 ((array___AbstractArray___add_t)CALL(variable7,COLOR_abstract_collection___SimpleCollection___add))(variable7, variable6 /*e*/) /*Array::add*/;
7357 ((compiling_methods___MMMethod___compile_call_t)CALL( variable3 /*prop2*/,COLOR_compiling_methods___MMMethod___compile_call))( variable3 /*prop2*/, variable0 /*v*/, variable7) /*MMMethod::compile_call*/;
7358 continue_309: while(0);
7359 ((list___ListIterator___next_t)CALL(variable4,COLOR_abstract_collection___Iterator___next))(variable4) /*ListIterator::next*/;
7360 }
7361 break_309: while(0);
7362 variable1 = variable2 /*recv*/;
7363 goto return_label306;
7364 return_label306: while(false);
7365 tracehead = trace.prev;
7366 return variable1;
7367 }
7368 val_t compiling_methods___ARangeExpr___compile_expr(val_t self, val_t param0) {
7369 struct trace_t trace = {NULL, LOCATE_compiling_methods___ARangeExpr___compile_expr, 1131};
7370 val_t variable0;
7371 val_t variable1;
7372 val_t variable2;
7373 val_t variable3;
7374 val_t variable4;
7375 trace.prev = tracehead; tracehead = &trace;
7376 variable0 = param0;
7377 variable2 = ((typing___PExpr___stype_t)CALL( self,COLOR_syntax_base___PExpr___stype))( self) /*ARangeExpr::stype*/;
7378 variable3 = ((compiling_methods___ARangeExpr___propname_t)CALL( self,COLOR_compiling_methods___ARangeExpr___propname))( self) /*ARangeExpr::propname*/;
7379 variable2 = ((static_type___MMType___select_method_t)CALL(variable2,COLOR_static_type___MMType___select_method))(variable2, variable3) /*MMType::select_method*/;
7380 variable1 = variable2;
7381 variable3 = ((parser_nodes___ARangeExpr___n_expr_t)CALL( self,COLOR_parser_nodes___ARangeExpr___n_expr))( self) /*ARangeExpr::n_expr*/;
7382 variable3 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable3) /*CompilerVisitor::compile_expr*/;
7383 variable2 = variable3;
7384 variable4 = ((parser_nodes___ARangeExpr___n_expr2_t)CALL( self,COLOR_parser_nodes___ARangeExpr___n_expr2))( self) /*ARangeExpr::n_expr2*/;
7385 variable4 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable4) /*CompilerVisitor::compile_expr*/;
7386 variable3 = variable4;
7387 variable4 = NEW_array___Array___with_capacity(TAG_Int(2)); /*new Array[String]*/
7388 ((array___AbstractArray___add_t)CALL(variable4,COLOR_abstract_collection___SimpleCollection___add))(variable4, variable2 /*e*/) /*Array::add*/;
7389 ((array___AbstractArray___add_t)CALL(variable4,COLOR_abstract_collection___SimpleCollection___add))(variable4, variable3 /*e2*/) /*Array::add*/;
7390 variable4 = ((compiling_methods___MMMethod___compile_constructor_call_t)CALL( variable1 /*prop*/,COLOR_compiling_methods___MMMethod___compile_constructor_call))( variable1 /*prop*/, variable0 /*v*/, variable4) /*MMMethod::compile_constructor_call*/;
7391 variable1 = variable4;
7392 goto return_label310;
7393 return_label310: while(false);
7394 tracehead = trace.prev;
7395 return variable1;
7396 }
7397 val_t compiling_methods___ARangeExpr___propname(val_t self) {
7398 struct trace_t trace = {NULL, LOCATE_compiling_methods___ARangeExpr___propname, 1138};
7399 trace.prev = tracehead; tracehead = &trace;
7400 fprintf(stderr, "Deferred method %s called (%s: %d)\n", "propname", LOCATE_compiling_methods___ARangeExpr___compile_expr, 1138);
7401 nit_exit(1);
7402 tracehead = trace.prev;
7403 return NIT_NULL;
7404 }
7405 val_t compiling_methods___ACrangeExpr___propname(val_t self) {
7406 struct trace_t trace = {NULL, LOCATE_compiling_methods___ACrangeExpr___propname, 1143};
7407 val_t variable0;
7408 static val_t once_value_variable0_312; static int once_bool_variable0_312;
7409 trace.prev = tracehead; tracehead = &trace;
7410 if (once_bool_variable0_312) variable0 = once_value_variable0_312;
7411 else {
7412 variable0 = NEW_string___String___with_native(BOX_NativeString("init"), TAG_Int(4)); /*new String*/
7413 variable0 = ((symbol___String___to_symbol_t)CALL(variable0,COLOR_symbol___String___to_symbol))(variable0) /*String::to_symbol*/;
7414 once_value_variable0_312 = variable0;
7415 once_bool_variable0_312 = true;
7416 }
7417 goto return_label311;
7418 return_label311: while(false);
7419 tracehead = trace.prev;
7420 return variable0;
7421 }
7422 val_t compiling_methods___AOrangeExpr___propname(val_t self) {
7423 struct trace_t trace = {NULL, LOCATE_compiling_methods___AOrangeExpr___propname, 1146};
7424 val_t variable0;
7425 static val_t once_value_variable0_314; static int once_bool_variable0_314;
7426 trace.prev = tracehead; tracehead = &trace;
7427 if (once_bool_variable0_314) variable0 = once_value_variable0_314;
7428 else {
7429 variable0 = NEW_string___String___with_native(BOX_NativeString("without_last"), TAG_Int(12)); /*new String*/
7430 variable0 = ((symbol___String___to_symbol_t)CALL(variable0,COLOR_symbol___String___to_symbol))(variable0) /*String::to_symbol*/;
7431 once_value_variable0_314 = variable0;
7432 once_bool_variable0_314 = true;
7433 }
7434 goto return_label313;
7435 return_label313: while(false);
7436 tracehead = trace.prev;
7437 return variable0;
7438 }
7439 void compiling_methods___ASuperExpr___compile_stmt(val_t self, val_t param0) {
7440 struct trace_t trace = {NULL, LOCATE_compiling_methods___ASuperExpr___compile_stmt, 1150};
7441 val_t variable0;
7442 val_t variable1;
7443 val_t variable2;
7444 val_t variable3;
7445 val_t variable4;
7446 val_t variable5;
7447 val_t variable6;
7448 val_t variable7;
7449 trace.prev = tracehead; tracehead = &trace;
7450 variable0 = param0;
7451 variable2 = ((compiling_methods___ASuperExpr___compile_expr_t)CALL( self,COLOR_compiling_methods___PExpr___compile_expr))( self, variable0 /*v*/) /*ASuperExpr::compile_expr*/;
7452 variable1 = variable2;
7453 variable2 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable1 /*e*/ == NIT_NULL /*null*/) || (( variable1 /*e*/ != NIT_NULL) && UNTAG_Bool(((string___String_____eqeq_t)CALL( variable1 /*e*/,COLOR_kernel___Object_____eqeq))( variable1 /*e*/, NIT_NULL /*null*/) /*String::==*/)))));
7454 if (UNTAG_Bool(variable2)) { /*if*/
7455 variable2 = NEW_string___String___init(); /*new String*/
7456 variable3 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
7457 variable4 = variable3;
7458 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable4) /*String::append*/;
7459 variable5 = variable1 /*e*/;
7460 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable5) /*String::append*/;
7461 variable6 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
7462 variable7 = variable6;
7463 ((string___String___append_t)CALL(variable2,COLOR_abstract_collection___IndexedCollection___append))(variable2, variable7) /*String::append*/;
7464 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
7465 }
7466 tracehead = trace.prev;
7467 return;
7468 }
7469 val_t compiling_methods___ASuperExpr___compile_expr(val_t self, val_t param0) {
7470 struct trace_t trace = {NULL, LOCATE_compiling_methods___ASuperExpr___compile_expr, 1156};
7471 val_t variable0;
7472 val_t variable1;
7473 val_t variable2;
7474 val_t variable3;
7475 val_t variable4;
7476 val_t variable5;
7477 val_t variable6;
7478 val_t variable7;
7479 val_t variable8;
7480 val_t variable9;
7481 trace.prev = tracehead; tracehead = &trace;
7482 variable0 = param0;
7483 variable2 = ((compiling_methods___CompilerVisitor___method_params_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___method_params))( variable0 /*v*/) /*CompilerVisitor::method_params*/;
7484 variable2 = ((array___AbstractArray___length_t)CALL(variable2,COLOR_abstract_collection___Collection___length))(variable2) /*Array::length*/;
7485 variable2 = TAG_Int(UNTAG_Int(variable2)-UNTAG_Int( TAG_Int(1)));
7486 variable1 = variable2;
7487 variable2 = ((typing___ASuperExpr___init_in_superclass_t)CALL( self,COLOR_typing___ASuperExpr___init_in_superclass))( self) /*ASuperExpr::init_in_superclass*/;
7488 variable2 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2 == NIT_NULL /*null*/) || ((variable2 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable2, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable2,COLOR_kernel___Object_____eqeq))(variable2, NIT_NULL /*null*/) /*MMMethod::==*/)))))));
7489 if (UNTAG_Bool(variable2)) { /*if*/
7490 variable2 = ((typing___ASuperExpr___init_in_superclass_t)CALL( self,COLOR_typing___ASuperExpr___init_in_superclass))( self) /*ASuperExpr::init_in_superclass*/;
7491 variable2 = ((genericity___MMLocalProperty___signature_t)CALL(variable2,COLOR_static_type___MMLocalProperty___signature))(variable2) /*MMMethod::signature*/;
7492 variable2 = ((static_type___MMSignature___arity_t)CALL(variable2,COLOR_static_type___MMSignature___arity))(variable2) /*MMSignature::arity*/;
7493 variable1 = variable2 /*arity=*/;
7494 }
7495 variable3 = TAG_Int(UNTAG_Int( variable1 /*arity*/)+UNTAG_Int( TAG_Int(1)));
7496 variable4 = NEW_array___Array___with_capacity(variable3); /*new Array[String]*/
7497 variable3 = variable4;
7498 variable2 = variable3;
7499 variable3 = ((compiling_methods___CompilerVisitor___method_params_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___method_params))( variable0 /*v*/) /*CompilerVisitor::method_params*/;
7500 variable4 = TAG_Int(0);
7501 variable5 = TAG_Bool(UNTAG_Int( variable4 /*index*/)>=UNTAG_Int( TAG_Int(0)));
7502 variable6 = variable5;
7503 if (UNTAG_Bool(variable6)) { /* and */
7504 variable6 = variable3;
7505 variable6 = ATTR_array___AbstractArray____length(variable6) /*Array::_length*/;
7506 variable6 = TAG_Bool(UNTAG_Int( variable4 /*index*/)<UNTAG_Int(variable6));
7507 }
7508 variable5 = variable6;
7509 if (!UNTAG_Bool(variable5)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
7510 variable5 = variable3;
7511 variable5 = ATTR_array___Array____items(variable5) /*Array::_items*/;
7512 variable5 = UNBOX_NativeArray(variable5)[UNTAG_Int( variable4 /*index*/)];
7513 goto return_label317;
7514 return_label317: while(false);
7515 variable3 = variable5;
7516 ((array___AbstractArray___add_t)CALL( variable2 /*args*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*args*/, variable3) /*Array::add*/;
7517 variable3 = ((parser_nodes___ASuperExpr___n_args_t)CALL( self,COLOR_parser_nodes___ASuperExpr___n_args))( self) /*ASuperExpr::n_args*/;
7518 variable3 = ((list___List___length_t)CALL(variable3,COLOR_abstract_collection___Collection___length))(variable3) /*List::length*/;
7519 variable3 = TAG_Bool((variable3)!=( variable1 /*arity*/));
7520 if (UNTAG_Bool(variable3)) { /*if*/
7521 variable3 = NEW_range___Range___without_last( TAG_Int(0), variable1 /*arity*/); /*new Range[Int]*/
7522 variable3 = ((range___Range___iterator_t)CALL(variable3,COLOR_abstract_collection___Collection___iterator))(variable3) /*Range::iterator*/;
7523 while (true) { /*for*/
7524 variable4 = ((abstract_collection___Iterator___is_ok_t)CALL(variable3,COLOR_abstract_collection___Iterator___is_ok))(variable3) /*Iterator::is_ok*/;
7525 if (!UNTAG_Bool(variable4)) break; /*for*/
7526 variable4 = ((abstract_collection___Iterator___item_t)CALL(variable3,COLOR_abstract_collection___Iterator___item))(variable3) /*Iterator::item*/;
7527 variable5 = ((compiling_methods___CompilerVisitor___method_params_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___method_params))( variable0 /*v*/) /*CompilerVisitor::method_params*/;
7528 variable6 = TAG_Int(UNTAG_Int( variable4 /*i*/)+UNTAG_Int( TAG_Int(1)));
7529 variable7 = variable6;
7530 variable8 = TAG_Bool(UNTAG_Int( variable7 /*index*/)>=UNTAG_Int( TAG_Int(0)));
7531 variable9 = variable8;
7532 if (UNTAG_Bool(variable9)) { /* and */
7533 variable9 = variable5;
7534 variable9 = ATTR_array___AbstractArray____length(variable9) /*Array::_length*/;
7535 variable9 = TAG_Bool(UNTAG_Int( variable7 /*index*/)<UNTAG_Int(variable9));
7536 }
7537 variable8 = variable9;
7538 if (!UNTAG_Bool(variable8)) { fprintf(stderr, "Assert%s failed (%s: %d)\n", " 'index' ", LOCATE_array___Array_____bra, 229); nit_exit(1);}
7539 variable8 = variable5;
7540 variable8 = ATTR_array___Array____items(variable8) /*Array::_items*/;
7541 variable8 = UNBOX_NativeArray(variable8)[UNTAG_Int( variable7 /*index*/)];
7542 goto return_label319;
7543 return_label319: while(false);
7544 variable5 = variable8;
7545 ((array___AbstractArray___add_t)CALL( variable2 /*args*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*args*/, variable5) /*Array::add*/;
7546 continue_318: while(0);
7547 ((abstract_collection___Iterator___next_t)CALL(variable3,COLOR_abstract_collection___Iterator___next))(variable3) /*Iterator::next*/;
7548 }
7549 break_318: while(0);
7550 } else { /*if*/
7551 variable3 = ((parser_nodes___ASuperExpr___n_args_t)CALL( self,COLOR_parser_nodes___ASuperExpr___n_args))( self) /*ASuperExpr::n_args*/;
7552 variable3 = ((list___List___iterator_t)CALL(variable3,COLOR_abstract_collection___Collection___iterator))(variable3) /*List::iterator*/;
7553 while (true) { /*for*/
7554 variable4 = ((list___ListIterator___is_ok_t)CALL(variable3,COLOR_abstract_collection___Iterator___is_ok))(variable3) /*ListIterator::is_ok*/;
7555 if (!UNTAG_Bool(variable4)) break; /*for*/
7556 variable4 = ((list___ListIterator___item_t)CALL(variable3,COLOR_abstract_collection___Iterator___item))(variable3) /*ListIterator::item*/;
7557 variable5 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable4 /*na*/) /*CompilerVisitor::compile_expr*/;
7558 ((array___AbstractArray___add_t)CALL( variable2 /*args*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*args*/, variable5) /*Array::add*/;
7559 continue_320: while(0);
7560 ((list___ListIterator___next_t)CALL(variable3,COLOR_abstract_collection___Iterator___next))(variable3) /*ListIterator::next*/;
7561 }
7562 break_320: while(0);
7563 }
7564 variable3 = ((typing___ASuperExpr___init_in_superclass_t)CALL( self,COLOR_typing___ASuperExpr___init_in_superclass))( self) /*ASuperExpr::init_in_superclass*/;
7565 variable3 = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable3 == NIT_NULL /*null*/) || ((variable3 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable3,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable3, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable3,COLOR_kernel___Object_____eqeq))(variable3, NIT_NULL /*null*/) /*MMMethod::==*/)))))));
7566 if (UNTAG_Bool(variable3)) { /*if*/
7567 variable3 = ((typing___ASuperExpr___init_in_superclass_t)CALL( self,COLOR_typing___ASuperExpr___init_in_superclass))( self) /*ASuperExpr::init_in_superclass*/;
7568 variable3 = ((compiling_methods___MMMethod___compile_call_t)CALL(variable3,COLOR_compiling_methods___MMMethod___compile_call))(variable3, variable0 /*v*/, variable2 /*args*/) /*MMMethod::compile_call*/;
7569 variable1 = variable3;
7570 goto return_label316;
7571 } else { /*if*/
7572 variable3 = ((typing___AAbsSendExpr___prop_t)CALL( self,COLOR_typing___AAbsSendExpr___prop))( self) /*ASuperExpr::prop*/;
7573 variable3 = ((abstractmetamodel___MMLocalProperty___global_t)CALL(variable3,COLOR_abstractmetamodel___MMLocalProperty___global))(variable3) /*MMMethod::global*/;
7574 variable3 = ((abstractmetamodel___MMGlobalProperty___is_init_t)CALL(variable3,COLOR_abstractmetamodel___MMGlobalProperty___is_init))(variable3) /*MMGlobalProperty::is_init*/;
7575 if (UNTAG_Bool(variable3)) { /*if*/
7576 variable3 = NEW_string___String___with_native(BOX_NativeString("init_table"), TAG_Int(10)); /*new String*/
7577 ((array___AbstractArray___add_t)CALL( variable2 /*args*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*args*/, variable3) /*Array::add*/;
7578 }
7579 variable3 = ((typing___AAbsSendExpr___prop_t)CALL( self,COLOR_typing___AAbsSendExpr___prop))( self) /*ASuperExpr::prop*/;
7580 variable3 = ((compiling_methods___MMMethod___compile_super_call_t)CALL(variable3,COLOR_compiling_methods___MMMethod___compile_super_call))(variable3, variable0 /*v*/, variable2 /*args*/) /*MMMethod::compile_super_call*/;
7581 variable1 = variable3;
7582 goto return_label316;
7583 }
7584 return_label316: while(false);
7585 tracehead = trace.prev;
7586 return variable1;
7587 }
7588 val_t compiling_methods___AAttrExpr___compile_expr(val_t self, val_t param0) {
7589 struct trace_t trace = {NULL, LOCATE_compiling_methods___AAttrExpr___compile_expr, 1184};
7590 val_t variable0;
7591 val_t variable1;
7592 val_t variable2;
7593 trace.prev = tracehead; tracehead = &trace;
7594 variable0 = param0;
7595 variable2 = ((parser_nodes___AAttrFormExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AAttrFormExpr___n_expr))( self) /*AAttrExpr::n_expr*/;
7596 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
7597 variable1 = variable2;
7598 variable2 = ((typing___AAttrFormExpr___prop_t)CALL( self,COLOR_typing___AAttrFormExpr___prop))( self) /*AAttrExpr::prop*/;
7599 variable2 = ((compiling_methods___MMAttribute___compile_access_t)CALL(variable2,COLOR_compiling_methods___MMAttribute___compile_access))(variable2, variable0 /*v*/, variable1 /*e*/) /*MMAttribute::compile_access*/;
7600 variable1 = variable2;
7601 goto return_label321;
7602 return_label321: while(false);
7603 tracehead = trace.prev;
7604 return variable1;
7605 }
7606 void compiling_methods___AAttrAssignExpr___compile_stmt(val_t self, val_t param0) {
7607 struct trace_t trace = {NULL, LOCATE_compiling_methods___AAttrAssignExpr___compile_stmt, 1192};
7608 val_t variable0;
7609 val_t variable1;
7610 val_t variable2;
7611 val_t variable3;
7612 trace.prev = tracehead; tracehead = &trace;
7613 variable0 = param0;
7614 variable2 = ((parser_nodes___AAttrFormExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AAttrFormExpr___n_expr))( self) /*AAttrAssignExpr::n_expr*/;
7615 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
7616 variable1 = variable2;
7617 variable3 = ((parser_nodes___AAssignFormExpr___n_value_t)CALL( self,COLOR_parser_nodes___AAssignFormExpr___n_value))( self) /*AAttrAssignExpr::n_value*/;
7618 variable3 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable3) /*CompilerVisitor::compile_expr*/;
7619 variable2 = variable3;
7620 variable3 = ((typing___AAttrFormExpr___prop_t)CALL( self,COLOR_typing___AAttrFormExpr___prop))( self) /*AAttrAssignExpr::prop*/;
7621 variable3 = ((compiling_methods___MMAttribute___compile_access_t)CALL(variable3,COLOR_compiling_methods___MMAttribute___compile_access))(variable3, variable0 /*v*/, variable1 /*e*/) /*MMAttribute::compile_access*/;
7622 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable3, variable2 /*e2*/) /*CompilerVisitor::add_assignment*/;
7623 tracehead = trace.prev;
7624 return;
7625 }
7626 void compiling_methods___AAttrReassignExpr___compile_stmt(val_t self, val_t param0) {
7627 struct trace_t trace = {NULL, LOCATE_compiling_methods___AAttrReassignExpr___compile_stmt, 1200};
7628 val_t variable0;
7629 val_t variable1;
7630 val_t variable2;
7631 val_t variable3;
7632 val_t variable4;
7633 val_t variable5;
7634 val_t variable6;
7635 trace.prev = tracehead; tracehead = &trace;
7636 variable0 = param0;
7637 variable2 = ((parser_nodes___AAttrFormExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AAttrFormExpr___n_expr))( self) /*AAttrReassignExpr::n_expr*/;
7638 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
7639 variable1 = variable2;
7640 variable3 = ((typing___AAttrFormExpr___prop_t)CALL( self,COLOR_typing___AAttrFormExpr___prop))( self) /*AAttrReassignExpr::prop*/;
7641 variable3 = ((compiling_methods___MMAttribute___compile_access_t)CALL(variable3,COLOR_compiling_methods___MMAttribute___compile_access))(variable3, variable0 /*v*/, variable1 /*e1*/) /*MMAttribute::compile_access*/;
7642 variable2 = variable3;
7643 variable4 = ((parser_nodes___AReassignFormExpr___n_value_t)CALL( self,COLOR_parser_nodes___AReassignFormExpr___n_value))( self) /*AAttrReassignExpr::n_value*/;
7644 variable4 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable4) /*CompilerVisitor::compile_expr*/;
7645 variable3 = variable4;
7646 variable5 = ((typing___AReassignFormExpr___assign_method_t)CALL( self,COLOR_typing___AReassignFormExpr___assign_method))( self) /*AAttrReassignExpr::assign_method*/;
7647 variable6 = NEW_array___Array___with_capacity(TAG_Int(2)); /*new Array[String]*/
7648 ((array___AbstractArray___add_t)CALL(variable6,COLOR_abstract_collection___SimpleCollection___add))(variable6, variable2 /*e2*/) /*Array::add*/;
7649 ((array___AbstractArray___add_t)CALL(variable6,COLOR_abstract_collection___SimpleCollection___add))(variable6, variable3 /*e3*/) /*Array::add*/;
7650 variable5 = ((compiling_methods___MMMethod___compile_call_t)CALL(variable5,COLOR_compiling_methods___MMMethod___compile_call))(variable5, variable0 /*v*/, variable6) /*MMMethod::compile_call*/;
7651 variable4 = variable5;
7652 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable2 /*e2*/, variable4 /*e4*/) /*CompilerVisitor::add_assignment*/;
7653 tracehead = trace.prev;
7654 return;
7655 }
7656 val_t compiling_methods___ASendExpr___compile_expr(val_t self, val_t param0) {
7657 struct trace_t trace = {NULL, LOCATE_compiling_methods___ASendExpr___compile_expr, 1211};
7658 val_t variable0;
7659 val_t variable1;
7660 val_t variable2;
7661 val_t variable3;
7662 val_t variable4;
7663 val_t variable5;
7664 trace.prev = tracehead; tracehead = &trace;
7665 variable0 = param0;
7666 variable2 = ((parser_nodes___ASendExpr___n_expr_t)CALL( self,COLOR_parser_nodes___ASendExpr___n_expr))( self) /*ASendExpr::n_expr*/;
7667 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
7668 variable1 = variable2;
7669 variable3 = NEW_array___Array___init(); /*new Array[String]*/
7670 variable2 = variable3;
7671 ((array___AbstractArray___add_t)CALL( variable2 /*cargs*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*cargs*/, variable1 /*recv*/) /*Array::add*/;
7672 variable3 = ((typing___AAbsSendExpr___arguments_t)CALL( self,COLOR_typing___AAbsSendExpr___arguments))( self) /*ASendExpr::arguments*/;
7673 variable3 = ((array___AbstractArray___iterator_t)CALL(variable3,COLOR_abstract_collection___Collection___iterator))(variable3) /*Array::iterator*/;
7674 while (true) { /*for*/
7675 variable4 = ((array___ArrayIterator___is_ok_t)CALL(variable3,COLOR_abstract_collection___Iterator___is_ok))(variable3) /*ArrayIterator::is_ok*/;
7676 if (!UNTAG_Bool(variable4)) break; /*for*/
7677 variable4 = ((array___ArrayIterator___item_t)CALL(variable3,COLOR_abstract_collection___Iterator___item))(variable3) /*ArrayIterator::item*/;
7678 variable5 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable4 /*a*/) /*CompilerVisitor::compile_expr*/;
7679 ((array___AbstractArray___add_t)CALL( variable2 /*cargs*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*cargs*/, variable5) /*Array::add*/;
7680 continue_325: while(0);
7681 ((array___ArrayIterator___next_t)CALL(variable3,COLOR_abstract_collection___Iterator___next))(variable3) /*ArrayIterator::next*/;
7682 }
7683 break_325: while(0);
7684 variable4 = ((typing___AAbsSendExpr___prop_t)CALL( self,COLOR_typing___AAbsSendExpr___prop))( self) /*ASendExpr::prop*/;
7685 variable4 = ((compiling_methods___MMMethod___compile_call_t)CALL(variable4,COLOR_compiling_methods___MMMethod___compile_call))(variable4, variable0 /*v*/, variable2 /*cargs*/) /*MMMethod::compile_call*/;
7686 variable3 = variable4;
7687 variable4 = ((typing___AAbsSendExpr___prop_t)CALL( self,COLOR_typing___AAbsSendExpr___prop))( self) /*ASendExpr::prop*/;
7688 variable4 = ((abstractmetamodel___MMLocalProperty___global_t)CALL(variable4,COLOR_abstractmetamodel___MMLocalProperty___global))(variable4) /*MMMethod::global*/;
7689 variable4 = ((abstractmetamodel___MMGlobalProperty___is_init_t)CALL(variable4,COLOR_abstractmetamodel___MMGlobalProperty___is_init))(variable4) /*MMGlobalProperty::is_init*/;
7690 if (UNTAG_Bool(variable4)) { /*if*/
7691 variable4 = ((typing___AAbsSendExpr___prop_t)CALL( self,COLOR_typing___AAbsSendExpr___prop))( self) /*ASendExpr::prop*/;
7692 ((compiling_methods___CompilerVisitor___invoke_super_init_calls_after_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___invoke_super_init_calls_after))( variable0 /*v*/, variable4) /*CompilerVisitor::invoke_super_init_calls_after*/;
7693 }
7694 variable1 = variable3 /*e*/;
7695 goto return_label324;
7696 return_label324: while(false);
7697 tracehead = trace.prev;
7698 return variable1;
7699 }
7700 void compiling_methods___ASendExpr___compile_stmt(val_t self, val_t param0) {
7701 struct trace_t trace = {NULL, LOCATE_compiling_methods___ASendExpr___compile_stmt, 1227};
7702 val_t variable0;
7703 val_t variable1;
7704 val_t variable2;
7705 trace.prev = tracehead; tracehead = &trace;
7706 variable0 = param0;
7707 variable2 = ((compiling_methods___ASendExpr___compile_expr_t)CALL( self,COLOR_compiling_methods___PExpr___compile_expr))( self, variable0 /*v*/) /*ASendExpr::compile_expr*/;
7708 variable1 = variable2;
7709 variable2 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable1 /*e*/ == NIT_NULL /*null*/) || (( variable1 /*e*/ != NIT_NULL) && UNTAG_Bool(((string___String_____eqeq_t)CALL( variable1 /*e*/,COLOR_kernel___Object_____eqeq))( variable1 /*e*/, NIT_NULL /*null*/) /*String::==*/)))));
7710 if (UNTAG_Bool(variable2)) { /*if*/
7711 variable2 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
7712 variable2 = ((string___String_____plus_t)CALL( variable1 /*e*/,COLOR_string___String_____plus))( variable1 /*e*/, variable2) /*String::+*/;
7713 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable2) /*CompilerVisitor::add_instr*/;
7714 }
7715 tracehead = trace.prev;
7716 return;
7717 }
7718 val_t compiling_methods___ASendReassignExpr___compile_expr(val_t self, val_t param0) {
7719 struct trace_t trace = {NULL, LOCATE_compiling_methods___ASendReassignExpr___compile_expr, 1237};
7720 val_t variable0;
7721 val_t variable1;
7722 val_t variable2;
7723 val_t variable3;
7724 val_t variable4;
7725 val_t variable5;
7726 val_t variable6;
7727 val_t variable7;
7728 trace.prev = tracehead; tracehead = &trace;
7729 variable0 = param0;
7730 variable2 = ((parser_nodes___ASendExpr___n_expr_t)CALL( self,COLOR_parser_nodes___ASendExpr___n_expr))( self) /*ASendReassignExpr::n_expr*/;
7731 variable2 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable2) /*CompilerVisitor::compile_expr*/;
7732 variable1 = variable2;
7733 variable3 = NEW_array___Array___init(); /*new Array[String]*/
7734 variable2 = variable3;
7735 ((array___AbstractArray___add_t)CALL( variable2 /*cargs*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*cargs*/, variable1 /*recv*/) /*Array::add*/;
7736 variable3 = ((typing___AAbsSendExpr___arguments_t)CALL( self,COLOR_typing___AAbsSendExpr___arguments))( self) /*ASendReassignExpr::arguments*/;
7737 variable3 = ((array___AbstractArray___iterator_t)CALL(variable3,COLOR_abstract_collection___Collection___iterator))(variable3) /*Array::iterator*/;
7738 while (true) { /*for*/
7739 variable4 = ((array___ArrayIterator___is_ok_t)CALL(variable3,COLOR_abstract_collection___Iterator___is_ok))(variable3) /*ArrayIterator::is_ok*/;
7740 if (!UNTAG_Bool(variable4)) break; /*for*/
7741 variable4 = ((array___ArrayIterator___item_t)CALL(variable3,COLOR_abstract_collection___Iterator___item))(variable3) /*ArrayIterator::item*/;
7742 variable5 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable4 /*a*/) /*CompilerVisitor::compile_expr*/;
7743 ((array___AbstractArray___add_t)CALL( variable2 /*cargs*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*cargs*/, variable5) /*Array::add*/;
7744 continue_328: while(0);
7745 ((array___ArrayIterator___next_t)CALL(variable3,COLOR_abstract_collection___Iterator___next))(variable3) /*ArrayIterator::next*/;
7746 }
7747 break_328: while(0);
7748 variable4 = ((typing___ASendReassignExpr___read_prop_t)CALL( self,COLOR_typing___ASendReassignExpr___read_prop))( self) /*ASendReassignExpr::read_prop*/;
7749 variable4 = ((compiling_methods___MMMethod___compile_call_t)CALL(variable4,COLOR_compiling_methods___MMMethod___compile_call))(variable4, variable0 /*v*/, variable2 /*cargs*/) /*MMMethod::compile_call*/;
7750 variable3 = variable4;
7751 variable5 = ((parser_nodes___AReassignFormExpr___n_value_t)CALL( self,COLOR_parser_nodes___AReassignFormExpr___n_value))( self) /*ASendReassignExpr::n_value*/;
7752 variable5 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable5) /*CompilerVisitor::compile_expr*/;
7753 variable4 = variable5;
7754 variable6 = ((typing___AReassignFormExpr___assign_method_t)CALL( self,COLOR_typing___AReassignFormExpr___assign_method))( self) /*ASendReassignExpr::assign_method*/;
7755 variable7 = NEW_array___Array___with_capacity(TAG_Int(2)); /*new Array[String]*/
7756 ((array___AbstractArray___add_t)CALL(variable7,COLOR_abstract_collection___SimpleCollection___add))(variable7, variable3 /*e2*/) /*Array::add*/;
7757 ((array___AbstractArray___add_t)CALL(variable7,COLOR_abstract_collection___SimpleCollection___add))(variable7, variable4 /*e3*/) /*Array::add*/;
7758 variable6 = ((compiling_methods___MMMethod___compile_call_t)CALL(variable6,COLOR_compiling_methods___MMMethod___compile_call))(variable6, variable0 /*v*/, variable7) /*MMMethod::compile_call*/;
7759 variable5 = variable6;
7760 ((array___AbstractArray___add_t)CALL( variable2 /*cargs*/,COLOR_abstract_collection___SimpleCollection___add))( variable2 /*cargs*/, variable5 /*e4*/) /*Array::add*/;
7761 variable6 = ((typing___AAbsSendExpr___prop_t)CALL( self,COLOR_typing___AAbsSendExpr___prop))( self) /*ASendReassignExpr::prop*/;
7762 variable6 = ((compiling_methods___MMMethod___compile_call_t)CALL(variable6,COLOR_compiling_methods___MMMethod___compile_call))(variable6, variable0 /*v*/, variable2 /*cargs*/) /*MMMethod::compile_call*/;
7763 variable1 = variable6;
7764 goto return_label327;
7765 return_label327: while(false);
7766 tracehead = trace.prev;
7767 return variable1;
7768 }
7769 val_t compiling_methods___ANewExpr___compile_expr(val_t self, val_t param0) {
7770 struct trace_t trace = {NULL, LOCATE_compiling_methods___ANewExpr___compile_expr, 1255};
7771 val_t variable0;
7772 val_t variable1;
7773 val_t variable2;
7774 val_t variable3;
7775 val_t variable4;
7776 trace.prev = tracehead; tracehead = &trace;
7777 variable0 = param0;
7778 variable2 = NEW_array___Array___init(); /*new Array[String]*/
7779 variable1 = variable2;
7780 variable2 = ((typing___AAbsSendExpr___arguments_t)CALL( self,COLOR_typing___AAbsSendExpr___arguments))( self) /*ANewExpr::arguments*/;
7781 variable2 = ((array___AbstractArray___iterator_t)CALL(variable2,COLOR_abstract_collection___Collection___iterator))(variable2) /*Array::iterator*/;
7782 while (true) { /*for*/
7783 variable3 = ((array___ArrayIterator___is_ok_t)CALL(variable2,COLOR_abstract_collection___Iterator___is_ok))(variable2) /*ArrayIterator::is_ok*/;
7784 if (!UNTAG_Bool(variable3)) break; /*for*/
7785 variable3 = ((array___ArrayIterator___item_t)CALL(variable2,COLOR_abstract_collection___Iterator___item))(variable2) /*ArrayIterator::item*/;
7786 variable4 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable3 /*a*/) /*CompilerVisitor::compile_expr*/;
7787 ((array___AbstractArray___add_t)CALL( variable1 /*cargs*/,COLOR_abstract_collection___SimpleCollection___add))( variable1 /*cargs*/, variable4) /*Array::add*/;
7788 continue_330: while(0);
7789 ((array___ArrayIterator___next_t)CALL(variable2,COLOR_abstract_collection___Iterator___next))(variable2) /*ArrayIterator::next*/;
7790 }
7791 break_330: while(0);
7792 variable2 = ((typing___AAbsSendExpr___prop_t)CALL( self,COLOR_typing___AAbsSendExpr___prop))( self) /*ANewExpr::prop*/;
7793 variable2 = ((compiling_methods___MMMethod___compile_constructor_call_t)CALL(variable2,COLOR_compiling_methods___MMMethod___compile_constructor_call))(variable2, variable0 /*v*/, variable1 /*cargs*/) /*MMMethod::compile_constructor_call*/;
7794 variable1 = variable2;
7795 goto return_label329;
7796 return_label329: while(false);
7797 tracehead = trace.prev;
7798 return variable1;
7799 }
7800 val_t compiling_methods___AProxyExpr___compile_expr(val_t self, val_t param0) {
7801 struct trace_t trace = {NULL, LOCATE_compiling_methods___AProxyExpr___compile_expr, 1266};
7802 val_t variable0;
7803 val_t variable1;
7804 trace.prev = tracehead; tracehead = &trace;
7805 variable0 = param0;
7806 variable1 = ((parser_nodes___AProxyExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AProxyExpr___n_expr))( self) /*AProxyExpr::n_expr*/;
7807 variable1 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable1) /*CompilerVisitor::compile_expr*/;
7808 goto return_label331;
7809 return_label331: while(false);
7810 tracehead = trace.prev;
7811 return variable1;
7812 }
7813 val_t compiling_methods___AOnceExpr___compile_expr(val_t self, val_t param0) {
7814 struct trace_t trace = {NULL, LOCATE_compiling_methods___AOnceExpr___compile_expr, 1273};
7815 val_t variable0;
7816 val_t variable1;
7817 val_t variable2;
7818 val_t variable3;
7819 val_t variable4;
7820 val_t variable5;
7821 val_t variable6;
7822 val_t variable7;
7823 val_t variable8;
7824 val_t variable9;
7825 val_t variable10;
7826 val_t variable11;
7827 val_t variable12;
7828 val_t variable13;
7829 val_t variable14;
7830 val_t variable15;
7831 val_t variable16;
7832 val_t variable17;
7833 val_t variable18;
7834 val_t variable19;
7835 val_t variable20;
7836 trace.prev = tracehead; tracehead = &trace;
7837 variable0 = param0;
7838 variable2 = ((compiling_base___CompilerVisitor___new_number_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___new_number))( variable0 /*v*/) /*CompilerVisitor::new_number*/;
7839 variable1 = variable2;
7840 variable3 = ((compiling_methods___CompilerVisitor___get_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___get_var))( variable0 /*v*/) /*CompilerVisitor::get_var*/;
7841 variable2 = variable3;
7842 variable3 = NEW_string___String___init(); /*new String*/
7843 variable4 = NEW_string___String___with_native(BOX_NativeString("static val_t once_value_"), TAG_Int(24)); /*new String*/
7844 variable5 = variable4;
7845 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
7846 variable6 = variable2 /*cvar*/;
7847 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable6) /*String::append*/;
7848 variable7 = NEW_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)); /*new String*/
7849 variable8 = variable7;
7850 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable8) /*String::append*/;
7851 variable9 = variable1 /*i*/;
7852 variable9 = ((string___String___to_s_t)CALL(variable9,COLOR_string___Object___to_s))(variable9) /*String::to_s*/;
7853 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
7854 variable10 = NEW_string___String___with_native(BOX_NativeString("; static int once_bool_"), TAG_Int(23)); /*new String*/
7855 variable11 = variable10;
7856 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable11) /*String::append*/;
7857 variable12 = variable2 /*cvar*/;
7858 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable12) /*String::append*/;
7859 variable13 = NEW_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)); /*new String*/
7860 variable14 = variable13;
7861 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable14) /*String::append*/;
7862 variable15 = variable1 /*i*/;
7863 variable15 = ((string___String___to_s_t)CALL(variable15,COLOR_string___Object___to_s))(variable15) /*String::to_s*/;
7864 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable15) /*String::append*/;
7865 variable16 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
7866 variable17 = variable16;
7867 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable17) /*String::append*/;
7868 ((compiling_base___CompilerVisitor___add_decl_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_decl))( variable0 /*v*/, variable3) /*CompilerVisitor::add_decl*/;
7869 variable3 = NEW_string___String___init(); /*new String*/
7870 variable4 = NEW_string___String___with_native(BOX_NativeString("if (once_bool_"), TAG_Int(14)); /*new String*/
7871 variable5 = variable4;
7872 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable5) /*String::append*/;
7873 variable6 = variable2 /*cvar*/;
7874 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable6) /*String::append*/;
7875 variable7 = NEW_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)); /*new String*/
7876 variable8 = variable7;
7877 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable8) /*String::append*/;
7878 variable9 = variable1 /*i*/;
7879 variable9 = ((string___String___to_s_t)CALL(variable9,COLOR_string___Object___to_s))(variable9) /*String::to_s*/;
7880 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable9) /*String::append*/;
7881 variable10 = NEW_string___String___with_native(BOX_NativeString(") "), TAG_Int(2)); /*new String*/
7882 variable11 = variable10;
7883 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable11) /*String::append*/;
7884 variable12 = variable2 /*cvar*/;
7885 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable12) /*String::append*/;
7886 variable13 = NEW_string___String___with_native(BOX_NativeString(" = once_value_"), TAG_Int(14)); /*new String*/
7887 variable14 = variable13;
7888 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable14) /*String::append*/;
7889 variable15 = variable2 /*cvar*/;
7890 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable15) /*String::append*/;
7891 variable16 = NEW_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)); /*new String*/
7892 variable17 = variable16;
7893 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable17) /*String::append*/;
7894 variable18 = variable1 /*i*/;
7895 variable18 = ((string___String___to_s_t)CALL(variable18,COLOR_string___Object___to_s))(variable18) /*String::to_s*/;
7896 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable18) /*String::append*/;
7897 variable19 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
7898 variable20 = variable19;
7899 ((string___String___append_t)CALL(variable3,COLOR_abstract_collection___IndexedCollection___append))(variable3, variable20) /*String::append*/;
7900 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable3) /*CompilerVisitor::add_instr*/;
7901 variable3 = NEW_string___String___with_native(BOX_NativeString("else {"), TAG_Int(6)); /*new String*/
7902 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable3) /*CompilerVisitor::add_instr*/;
7903 ((compiling_base___CompilerVisitor___indent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___indent))( variable0 /*v*/) /*CompilerVisitor::indent*/;
7904 ((compiling_methods___CompilerVisitor___free_var_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___free_var))( variable0 /*v*/, variable2 /*cvar*/) /*CompilerVisitor::free_var*/;
7905 variable4 = ((parser_nodes___AProxyExpr___n_expr_t)CALL( self,COLOR_parser_nodes___AProxyExpr___n_expr))( self) /*AOnceExpr::n_expr*/;
7906 variable4 = ((compiling_methods___CompilerVisitor___compile_expr_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___compile_expr))( variable0 /*v*/, variable4) /*CompilerVisitor::compile_expr*/;
7907 variable3 = variable4;
7908 ((compiling_methods___CompilerVisitor___add_assignment_t)CALL( variable0 /*v*/,COLOR_compiling_methods___CompilerVisitor___add_assignment))( variable0 /*v*/, variable2 /*cvar*/, variable3 /*e*/) /*CompilerVisitor::add_assignment*/;
7909 variable4 = NEW_string___String___init(); /*new String*/
7910 variable5 = NEW_string___String___with_native(BOX_NativeString("once_value_"), TAG_Int(11)); /*new String*/
7911 variable6 = variable5;
7912 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
7913 variable7 = variable2 /*cvar*/;
7914 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable7) /*String::append*/;
7915 variable8 = NEW_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)); /*new String*/
7916 variable9 = variable8;
7917 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable9) /*String::append*/;
7918 variable10 = variable1 /*i*/;
7919 variable10 = ((string___String___to_s_t)CALL(variable10,COLOR_string___Object___to_s))(variable10) /*String::to_s*/;
7920 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable10) /*String::append*/;
7921 variable11 = NEW_string___String___with_native(BOX_NativeString(" = "), TAG_Int(3)); /*new String*/
7922 variable12 = variable11;
7923 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable12) /*String::append*/;
7924 variable13 = variable2 /*cvar*/;
7925 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable13) /*String::append*/;
7926 variable14 = NEW_string___String___with_native(BOX_NativeString(";"), TAG_Int(1)); /*new String*/
7927 variable15 = variable14;
7928 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable15) /*String::append*/;
7929 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable4) /*CompilerVisitor::add_instr*/;
7930 variable4 = NEW_string___String___init(); /*new String*/
7931 variable5 = NEW_string___String___with_native(BOX_NativeString("once_bool_"), TAG_Int(10)); /*new String*/
7932 variable6 = variable5;
7933 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable6) /*String::append*/;
7934 variable7 = variable2 /*cvar*/;
7935 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable7) /*String::append*/;
7936 variable8 = NEW_string___String___with_native(BOX_NativeString("_"), TAG_Int(1)); /*new String*/
7937 variable9 = variable8;
7938 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable9) /*String::append*/;
7939 variable10 = variable1 /*i*/;
7940 variable10 = ((string___String___to_s_t)CALL(variable10,COLOR_string___Object___to_s))(variable10) /*String::to_s*/;
7941 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable10) /*String::append*/;
7942 variable11 = NEW_string___String___with_native(BOX_NativeString(" = true;"), TAG_Int(8)); /*new String*/
7943 variable12 = variable11;
7944 ((string___String___append_t)CALL(variable4,COLOR_abstract_collection___IndexedCollection___append))(variable4, variable12) /*String::append*/;
7945 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable4) /*CompilerVisitor::add_instr*/;
7946 ((compiling_base___CompilerVisitor___unindent_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___unindent))( variable0 /*v*/) /*CompilerVisitor::unindent*/;
7947 variable4 = NEW_string___String___with_native(BOX_NativeString("}"), TAG_Int(1)); /*new String*/
7948 ((compiling_base___CompilerVisitor___add_instr_t)CALL( variable0 /*v*/,COLOR_compiling_base___CompilerVisitor___add_instr))( variable0 /*v*/, variable4) /*CompilerVisitor::add_instr*/;
7949 variable1 = variable2 /*cvar*/;
7950 goto return_label332;
7951 return_label332: while(false);
7952 tracehead = trace.prev;
7953 return variable1;
7954 }