tests: add base_attr_boxing.nit
[nit.git] / c_src / location._sep.c
1 /* This C file is generated by NIT to compile module location. */
2 #include "location._sep.h"
3 val_t location___SourceFile___filename(val_t p0){
4 struct {struct stack_frame_t me;} fra;
5 val_t REGB0;
6 val_t tmp;
7 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
8 fra.me.file = LOCATE_location;
9 fra.me.line = 22;
10 fra.me.meth = LOCATE_location___SourceFile___filename;
11 fra.me.has_broke = 0;
12 fra.me.REG_size = 1;
13 fra.me.nitni_local_ref_head = NULL;
14 fra.me.REG[0] = NIT_NULL;
15 fra.me.REG[0] = p0;
16 /* location.nit:22 */
17 REGB0 = TAG_Bool(ATTR_location___SourceFile_____atfilename(fra.me.REG[0])!=NIT_NULL);
18 if (UNTAG_Bool(REGB0)) {
19 } else {
20 nit_abort("Uninitialized attribute %s", "@filename", LOCATE_location, 22);
21 }
22 fra.me.REG[0] = ATTR_location___SourceFile_____atfilename(fra.me.REG[0]);
23 stack_frame_head = fra.me.prev;
24 return fra.me.REG[0];
25 }
26 void location___SourceFile___filename__eq(val_t p0, val_t p1){
27 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
28 val_t tmp;
29 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
30 fra.me.file = LOCATE_location;
31 fra.me.line = 22;
32 fra.me.meth = LOCATE_location___SourceFile___filename__eq;
33 fra.me.has_broke = 0;
34 fra.me.REG_size = 2;
35 fra.me.nitni_local_ref_head = NULL;
36 fra.me.REG[0] = NIT_NULL;
37 fra.me.REG[1] = NIT_NULL;
38 fra.me.REG[0] = p0;
39 fra.me.REG[1] = p1;
40 /* location.nit:22 */
41 ATTR_location___SourceFile_____atfilename(fra.me.REG[0]) = fra.me.REG[1];
42 stack_frame_head = fra.me.prev;
43 return;
44 }
45 val_t location___SourceFile___string(val_t p0){
46 struct {struct stack_frame_t me;} fra;
47 val_t REGB0;
48 val_t tmp;
49 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
50 fra.me.file = LOCATE_location;
51 fra.me.line = 25;
52 fra.me.meth = LOCATE_location___SourceFile___string;
53 fra.me.has_broke = 0;
54 fra.me.REG_size = 1;
55 fra.me.nitni_local_ref_head = NULL;
56 fra.me.REG[0] = NIT_NULL;
57 fra.me.REG[0] = p0;
58 /* location.nit:25 */
59 REGB0 = TAG_Bool(ATTR_location___SourceFile_____atstring(fra.me.REG[0])!=NIT_NULL);
60 if (UNTAG_Bool(REGB0)) {
61 } else {
62 nit_abort("Uninitialized attribute %s", "@string", LOCATE_location, 25);
63 }
64 fra.me.REG[0] = ATTR_location___SourceFile_____atstring(fra.me.REG[0]);
65 stack_frame_head = fra.me.prev;
66 return fra.me.REG[0];
67 }
68 void location___SourceFile___string__eq(val_t p0, val_t p1){
69 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
70 val_t tmp;
71 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
72 fra.me.file = LOCATE_location;
73 fra.me.line = 25;
74 fra.me.meth = LOCATE_location___SourceFile___string__eq;
75 fra.me.has_broke = 0;
76 fra.me.REG_size = 2;
77 fra.me.nitni_local_ref_head = NULL;
78 fra.me.REG[0] = NIT_NULL;
79 fra.me.REG[1] = NIT_NULL;
80 fra.me.REG[0] = p0;
81 fra.me.REG[1] = p1;
82 /* location.nit:25 */
83 ATTR_location___SourceFile_____atstring(fra.me.REG[0]) = fra.me.REG[1];
84 stack_frame_head = fra.me.prev;
85 return;
86 }
87 void location___SourceFile___init(val_t p0, val_t p1, val_t p2, int* init_table){
88 int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_location___SourceFile].i;
89 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
90 val_t REGB0;
91 val_t REGB1;
92 val_t tmp;
93 if (init_table[itpos0]) return;
94 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
95 fra.me.file = LOCATE_location;
96 fra.me.line = 28;
97 fra.me.meth = LOCATE_location___SourceFile___init;
98 fra.me.has_broke = 0;
99 fra.me.REG_size = 3;
100 fra.me.nitni_local_ref_head = NULL;
101 fra.me.REG[0] = NIT_NULL;
102 fra.me.REG[1] = NIT_NULL;
103 fra.me.REG[2] = NIT_NULL;
104 fra.me.REG[0] = p0;
105 fra.me.REG[1] = p1;
106 fra.me.REG[2] = p2;
107 /* location.nit:31 */
108 CALL_location___SourceFile___filename__eq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
109 /* location.nit:32 */
110 fra.me.REG[2] = CALL_standard___stream___IStream___read_all(fra.me.REG[2])(fra.me.REG[2]);
111 CALL_location___SourceFile___string__eq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
112 /* location.nit:33 */
113 fra.me.REG[0] = CALL_location___SourceFile___line_starts(fra.me.REG[0])(fra.me.REG[0]);
114 REGB0 = TAG_Int(0);
115 REGB1 = TAG_Int(0);
116 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra.me.REG[0])(fra.me.REG[0], REGB0, REGB1);
117 stack_frame_head = fra.me.prev;
118 init_table[itpos0] = 1;
119 return;
120 }
121 val_t location___SourceFile___line_starts(val_t p0){
122 struct {struct stack_frame_t me;} fra;
123 val_t REGB0;
124 val_t tmp;
125 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
126 fra.me.file = LOCATE_location;
127 fra.me.line = 36;
128 fra.me.meth = LOCATE_location___SourceFile___line_starts;
129 fra.me.has_broke = 0;
130 fra.me.REG_size = 1;
131 fra.me.nitni_local_ref_head = NULL;
132 fra.me.REG[0] = NIT_NULL;
133 fra.me.REG[0] = p0;
134 /* location.nit:36 */
135 REGB0 = TAG_Bool(ATTR_location___SourceFile_____atline_starts(fra.me.REG[0])!=NIT_NULL);
136 if (UNTAG_Bool(REGB0)) {
137 } else {
138 nit_abort("Uninitialized attribute %s", "@line_starts", LOCATE_location, 36);
139 }
140 fra.me.REG[0] = ATTR_location___SourceFile_____atline_starts(fra.me.REG[0]);
141 stack_frame_head = fra.me.prev;
142 return fra.me.REG[0];
143 }
144 void location___SourceFile___line_starts__eq(val_t p0, val_t p1){
145 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
146 val_t tmp;
147 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
148 fra.me.file = LOCATE_location;
149 fra.me.line = 36;
150 fra.me.meth = LOCATE_location___SourceFile___line_starts__eq;
151 fra.me.has_broke = 0;
152 fra.me.REG_size = 2;
153 fra.me.nitni_local_ref_head = NULL;
154 fra.me.REG[0] = NIT_NULL;
155 fra.me.REG[1] = NIT_NULL;
156 fra.me.REG[0] = p0;
157 fra.me.REG[1] = p1;
158 /* location.nit:36 */
159 ATTR_location___SourceFile_____atline_starts(fra.me.REG[0]) = fra.me.REG[1];
160 stack_frame_head = fra.me.prev;
161 return;
162 }
163 val_t location___Location___file(val_t p0){
164 struct {struct stack_frame_t me;} fra;
165 val_t tmp;
166 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
167 fra.me.file = LOCATE_location;
168 fra.me.line = 45;
169 fra.me.meth = LOCATE_location___Location___file;
170 fra.me.has_broke = 0;
171 fra.me.REG_size = 1;
172 fra.me.nitni_local_ref_head = NULL;
173 fra.me.REG[0] = NIT_NULL;
174 fra.me.REG[0] = p0;
175 /* location.nit:45 */
176 fra.me.REG[0] = ATTR_location___Location____file(fra.me.REG[0]);
177 stack_frame_head = fra.me.prev;
178 return fra.me.REG[0];
179 }
180 val_t location___Location___line_start(val_t p0){
181 struct {struct stack_frame_t me;} fra;
182 val_t REGB0;
183 val_t tmp;
184 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
185 fra.me.file = LOCATE_location;
186 fra.me.line = 46;
187 fra.me.meth = LOCATE_location___Location___line_start;
188 fra.me.has_broke = 0;
189 fra.me.REG_size = 1;
190 fra.me.nitni_local_ref_head = NULL;
191 fra.me.REG[0] = NIT_NULL;
192 fra.me.REG[0] = p0;
193 /* location.nit:46 */
194 REGB0 = TAG_Bool(ATTR_location___Location____line_start(fra.me.REG[0])!=NIT_NULL);
195 if (UNTAG_Bool(REGB0)) {
196 } else {
197 nit_abort("Uninitialized attribute %s", "_line_start", LOCATE_location, 46);
198 }
199 REGB0 = ATTR_location___Location____line_start(fra.me.REG[0]);
200 stack_frame_head = fra.me.prev;
201 return REGB0;
202 }
203 val_t location___Location___line_end(val_t p0){
204 struct {struct stack_frame_t me;} fra;
205 val_t REGB0;
206 val_t tmp;
207 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
208 fra.me.file = LOCATE_location;
209 fra.me.line = 47;
210 fra.me.meth = LOCATE_location___Location___line_end;
211 fra.me.has_broke = 0;
212 fra.me.REG_size = 1;
213 fra.me.nitni_local_ref_head = NULL;
214 fra.me.REG[0] = NIT_NULL;
215 fra.me.REG[0] = p0;
216 /* location.nit:47 */
217 REGB0 = TAG_Bool(ATTR_location___Location____line_end(fra.me.REG[0])!=NIT_NULL);
218 if (UNTAG_Bool(REGB0)) {
219 } else {
220 nit_abort("Uninitialized attribute %s", "_line_end", LOCATE_location, 47);
221 }
222 REGB0 = ATTR_location___Location____line_end(fra.me.REG[0]);
223 stack_frame_head = fra.me.prev;
224 return REGB0;
225 }
226 val_t location___Location___column_start(val_t p0){
227 struct {struct stack_frame_t me;} fra;
228 val_t REGB0;
229 val_t tmp;
230 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
231 fra.me.file = LOCATE_location;
232 fra.me.line = 48;
233 fra.me.meth = LOCATE_location___Location___column_start;
234 fra.me.has_broke = 0;
235 fra.me.REG_size = 1;
236 fra.me.nitni_local_ref_head = NULL;
237 fra.me.REG[0] = NIT_NULL;
238 fra.me.REG[0] = p0;
239 /* location.nit:48 */
240 REGB0 = TAG_Bool(ATTR_location___Location____column_start(fra.me.REG[0])!=NIT_NULL);
241 if (UNTAG_Bool(REGB0)) {
242 } else {
243 nit_abort("Uninitialized attribute %s", "_column_start", LOCATE_location, 48);
244 }
245 REGB0 = ATTR_location___Location____column_start(fra.me.REG[0]);
246 stack_frame_head = fra.me.prev;
247 return REGB0;
248 }
249 val_t location___Location___column_end(val_t p0){
250 struct {struct stack_frame_t me;} fra;
251 val_t REGB0;
252 val_t tmp;
253 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
254 fra.me.file = LOCATE_location;
255 fra.me.line = 49;
256 fra.me.meth = LOCATE_location___Location___column_end;
257 fra.me.has_broke = 0;
258 fra.me.REG_size = 1;
259 fra.me.nitni_local_ref_head = NULL;
260 fra.me.REG[0] = NIT_NULL;
261 fra.me.REG[0] = p0;
262 /* location.nit:49 */
263 REGB0 = TAG_Bool(ATTR_location___Location____column_end(fra.me.REG[0])!=NIT_NULL);
264 if (UNTAG_Bool(REGB0)) {
265 } else {
266 nit_abort("Uninitialized attribute %s", "_column_end", LOCATE_location, 49);
267 }
268 REGB0 = ATTR_location___Location____column_end(fra.me.REG[0]);
269 stack_frame_head = fra.me.prev;
270 return REGB0;
271 }
272 void location___Location___init(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
273 int itpos1 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_location___Location].i;
274 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
275 val_t REGB0;
276 val_t REGB1;
277 val_t REGB2;
278 val_t REGB3;
279 val_t tmp;
280 if (init_table[itpos1]) return;
281 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
282 fra.me.file = LOCATE_location;
283 fra.me.line = 51;
284 fra.me.meth = LOCATE_location___Location___init;
285 fra.me.has_broke = 0;
286 fra.me.REG_size = 2;
287 fra.me.nitni_local_ref_head = NULL;
288 fra.me.REG[0] = NIT_NULL;
289 fra.me.REG[1] = NIT_NULL;
290 fra.me.REG[0] = p0;
291 fra.me.REG[1] = p1;
292 REGB0 = p2;
293 REGB1 = p3;
294 REGB2 = p4;
295 REGB3 = p5;
296 /* location.nit:52 */
297 ATTR_location___Location____file(fra.me.REG[0]) = fra.me.REG[1];
298 /* location.nit:53 */
299 ATTR_location___Location____line_start(fra.me.REG[0]) = REGB0;
300 /* location.nit:54 */
301 ATTR_location___Location____line_end(fra.me.REG[0]) = REGB1;
302 /* location.nit:55 */
303 ATTR_location___Location____column_start(fra.me.REG[0]) = REGB2;
304 /* location.nit:56 */
305 ATTR_location___Location____column_end(fra.me.REG[0]) = REGB3;
306 stack_frame_head = fra.me.prev;
307 init_table[itpos1] = 1;
308 return;
309 }
310 void location___Location___with_file(val_t p0, val_t p1, int* init_table){
311 int itpos2 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_location___Location].i;
312 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
313 val_t REGB0;
314 val_t REGB1;
315 val_t REGB2;
316 val_t REGB3;
317 val_t tmp;
318 if (init_table[itpos2]) return;
319 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
320 fra.me.file = LOCATE_location;
321 fra.me.line = 59;
322 fra.me.meth = LOCATE_location___Location___with_file;
323 fra.me.has_broke = 0;
324 fra.me.REG_size = 2;
325 fra.me.nitni_local_ref_head = NULL;
326 fra.me.REG[0] = NIT_NULL;
327 fra.me.REG[1] = NIT_NULL;
328 fra.me.REG[0] = p0;
329 fra.me.REG[1] = p1;
330 /* location.nit:59 */
331 REGB0 = TAG_Int(0);
332 REGB1 = TAG_Int(0);
333 REGB2 = TAG_Int(0);
334 REGB3 = TAG_Int(0);
335 CALL_location___Location___init(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], REGB0, REGB1, REGB2, REGB3, init_table);
336 stack_frame_head = fra.me.prev;
337 init_table[itpos2] = 1;
338 return;
339 }
340 val_t location___Location_____eqeq(val_t p0, val_t p1){
341 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
342 val_t REGB0;
343 val_t REGB1;
344 val_t REGB2;
345 val_t REGB3;
346 val_t tmp;
347 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
348 fra.me.file = LOCATE_location;
349 fra.me.line = 61;
350 fra.me.meth = LOCATE_location___Location_____eqeq;
351 fra.me.has_broke = 0;
352 fra.me.REG_size = 4;
353 fra.me.nitni_local_ref_head = NULL;
354 fra.me.REG[0] = NIT_NULL;
355 fra.me.REG[1] = NIT_NULL;
356 fra.me.REG[2] = NIT_NULL;
357 fra.me.REG[3] = NIT_NULL;
358 fra.me.REG[0] = p0;
359 fra.me.REG[1] = p1;
360 /* location.nit:62 */
361 REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
362 if (UNTAG_Bool(REGB0)) {
363 } else {
364 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
365 if (UNTAG_Bool(REGB1)) {
366 REGB1 = TAG_Bool(false);
367 REGB0 = REGB1;
368 } else {
369 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
370 REGB0 = REGB1;
371 }
372 }
373 if (UNTAG_Bool(REGB0)) {
374 REGB0 = TAG_Bool(false);
375 goto label1;
376 }
377 /* location.nit:63 */
378 REGB1 = TAG_Bool((fra.me.REG[1]!=NIT_NULL) && VAL_ISA(fra.me.REG[1], COLOR_location___Location, ID_location___Location)) /*cast Location*/;
379 REGB1 = TAG_Bool(!UNTAG_Bool(REGB1));
380 if (UNTAG_Bool(REGB1)) {
381 REGB1 = TAG_Bool(false);
382 REGB0 = REGB1;
383 goto label1;
384 }
385 /* location.nit:65 */
386 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
387 if (UNTAG_Bool(REGB1)) {
388 nit_abort("Reciever is null", NULL, LOCATE_location, 65);
389 }
390 fra.me.REG[2] = CALL_location___Location___file(fra.me.REG[1])(fra.me.REG[1]);
391 fra.me.REG[3] = CALL_location___Location___file(fra.me.REG[0])(fra.me.REG[0]);
392 REGB1 = TAG_Bool(IS_EQUAL_NN(fra.me.REG[2],fra.me.REG[3]));
393 if (UNTAG_Bool(REGB1)) {
394 } else {
395 REGB2 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
396 if (UNTAG_Bool(REGB2)) {
397 REGB2 = TAG_Bool(false);
398 REGB1 = REGB2;
399 } else {
400 REGB2 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
401 REGB1 = REGB2;
402 }
403 }
404 REGB1 = TAG_Bool(!UNTAG_Bool(REGB1));
405 if (UNTAG_Bool(REGB1)) {
406 REGB1 = TAG_Bool(false);
407 REGB0 = REGB1;
408 goto label1;
409 }
410 /* location.nit:66 */
411 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
412 if (UNTAG_Bool(REGB1)) {
413 nit_abort("Reciever is null", NULL, LOCATE_location, 66);
414 }
415 REGB1 = CALL_location___Location___line_start(fra.me.REG[1])(fra.me.REG[1]);
416 REGB2 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
417 REGB3 = TAG_Bool(IS_EQUAL_OO(REGB1,REGB2));
418 if (UNTAG_Bool(REGB3)) {
419 } else {
420 /* ../lib/standard/kernel.nit:227 */
421 REGB2 = TAG_Bool((REGB1)==(REGB2));
422 /* location.nit:66 */
423 REGB3 = REGB2;
424 }
425 REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
426 if (UNTAG_Bool(REGB3)) {
427 REGB3 = TAG_Bool(false);
428 REGB0 = REGB3;
429 goto label1;
430 }
431 /* location.nit:67 */
432 REGB3 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
433 if (UNTAG_Bool(REGB3)) {
434 nit_abort("Reciever is null", NULL, LOCATE_location, 67);
435 }
436 REGB3 = CALL_location___Location___line_end(fra.me.REG[1])(fra.me.REG[1]);
437 REGB2 = CALL_location___Location___line_end(fra.me.REG[0])(fra.me.REG[0]);
438 REGB1 = TAG_Bool(IS_EQUAL_OO(REGB3,REGB2));
439 if (UNTAG_Bool(REGB1)) {
440 } else {
441 /* ../lib/standard/kernel.nit:227 */
442 REGB2 = TAG_Bool((REGB3)==(REGB2));
443 /* location.nit:67 */
444 REGB1 = REGB2;
445 }
446 REGB1 = TAG_Bool(!UNTAG_Bool(REGB1));
447 if (UNTAG_Bool(REGB1)) {
448 REGB1 = TAG_Bool(false);
449 REGB0 = REGB1;
450 goto label1;
451 }
452 /* location.nit:68 */
453 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
454 if (UNTAG_Bool(REGB1)) {
455 nit_abort("Reciever is null", NULL, LOCATE_location, 68);
456 }
457 REGB1 = CALL_location___Location___column_start(fra.me.REG[1])(fra.me.REG[1]);
458 REGB2 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
459 REGB3 = TAG_Bool(IS_EQUAL_OO(REGB1,REGB2));
460 if (UNTAG_Bool(REGB3)) {
461 } else {
462 /* ../lib/standard/kernel.nit:227 */
463 REGB2 = TAG_Bool((REGB1)==(REGB2));
464 /* location.nit:68 */
465 REGB3 = REGB2;
466 }
467 REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
468 if (UNTAG_Bool(REGB3)) {
469 REGB3 = TAG_Bool(false);
470 REGB0 = REGB3;
471 goto label1;
472 }
473 /* location.nit:69 */
474 REGB3 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
475 if (UNTAG_Bool(REGB3)) {
476 nit_abort("Reciever is null", NULL, LOCATE_location, 69);
477 }
478 REGB3 = CALL_location___Location___column_end(fra.me.REG[1])(fra.me.REG[1]);
479 REGB2 = CALL_location___Location___column_end(fra.me.REG[0])(fra.me.REG[0]);
480 REGB1 = TAG_Bool(IS_EQUAL_OO(REGB3,REGB2));
481 if (UNTAG_Bool(REGB1)) {
482 } else {
483 /* ../lib/standard/kernel.nit:227 */
484 REGB2 = TAG_Bool((REGB3)==(REGB2));
485 /* location.nit:69 */
486 REGB1 = REGB2;
487 }
488 REGB1 = TAG_Bool(!UNTAG_Bool(REGB1));
489 if (UNTAG_Bool(REGB1)) {
490 REGB1 = TAG_Bool(false);
491 REGB0 = REGB1;
492 goto label1;
493 }
494 /* location.nit:71 */
495 REGB1 = TAG_Bool(true);
496 REGB0 = REGB1;
497 goto label1;
498 label1: while(0);
499 stack_frame_head = fra.me.prev;
500 return REGB0;
501 }
502 val_t location___Location___located_in(val_t p0, val_t p1){
503 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
504 val_t REGB0;
505 val_t REGB1;
506 val_t REGB2;
507 val_t REGB3;
508 val_t tmp;
509 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
510 fra.me.file = LOCATE_location;
511 fra.me.line = 74;
512 fra.me.meth = LOCATE_location___Location___located_in;
513 fra.me.has_broke = 0;
514 fra.me.REG_size = 2;
515 fra.me.nitni_local_ref_head = NULL;
516 fra.me.REG[0] = NIT_NULL;
517 fra.me.REG[1] = NIT_NULL;
518 fra.me.REG[0] = p0;
519 fra.me.REG[1] = p1;
520 /* location.nit:75 */
521 REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
522 if (UNTAG_Bool(REGB0)) {
523 } else {
524 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
525 if (UNTAG_Bool(REGB1)) {
526 REGB1 = TAG_Bool(false);
527 REGB0 = REGB1;
528 } else {
529 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
530 REGB0 = REGB1;
531 }
532 }
533 if (UNTAG_Bool(REGB0)) {
534 REGB0 = TAG_Bool(false);
535 goto label1;
536 }
537 /* location.nit:77 */
538 REGB1 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
539 REGB2 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
540 if (UNTAG_Bool(REGB2)) {
541 nit_abort("Reciever is null", NULL, LOCATE_location, 77);
542 }
543 REGB2 = CALL_location___Location___line_start(fra.me.REG[1])(fra.me.REG[1]);
544 REGB3 = TAG_Bool(VAL_ISA(REGB2, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
545 if (UNTAG_Bool(REGB3)) {
546 } else {
547 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
548 }
549 /* ../lib/standard/kernel.nit:232 */
550 REGB2 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB2));
551 /* location.nit:77 */
552 if (UNTAG_Bool(REGB2)) {
553 REGB2 = TAG_Bool(false);
554 REGB0 = REGB2;
555 goto label1;
556 }
557 /* location.nit:78 */
558 REGB2 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
559 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
560 if (UNTAG_Bool(REGB1)) {
561 nit_abort("Reciever is null", NULL, LOCATE_location, 78);
562 }
563 REGB1 = CALL_location___Location___line_end(fra.me.REG[1])(fra.me.REG[1]);
564 REGB3 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2), VTID_standard___kernel___Comparable___OTHER(REGB2))) /*cast OTHER*/;
565 if (UNTAG_Bool(REGB3)) {
566 } else {
567 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
568 }
569 /* ../lib/standard/kernel.nit:234 */
570 REGB1 = TAG_Bool(UNTAG_Int(REGB2)>UNTAG_Int(REGB1));
571 /* location.nit:78 */
572 if (UNTAG_Bool(REGB1)) {
573 REGB1 = TAG_Bool(false);
574 REGB0 = REGB1;
575 goto label1;
576 }
577 /* location.nit:80 */
578 REGB1 = CALL_location___Location___line_end(fra.me.REG[0])(fra.me.REG[0]);
579 REGB2 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
580 if (UNTAG_Bool(REGB2)) {
581 nit_abort("Reciever is null", NULL, LOCATE_location, 80);
582 }
583 REGB2 = CALL_location___Location___line_end(fra.me.REG[1])(fra.me.REG[1]);
584 REGB3 = TAG_Bool(VAL_ISA(REGB2, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
585 if (UNTAG_Bool(REGB3)) {
586 } else {
587 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
588 }
589 /* ../lib/standard/kernel.nit:234 */
590 REGB2 = TAG_Bool(UNTAG_Int(REGB1)>UNTAG_Int(REGB2));
591 /* location.nit:80 */
592 if (UNTAG_Bool(REGB2)) {
593 REGB2 = TAG_Bool(false);
594 REGB0 = REGB2;
595 goto label1;
596 }
597 /* location.nit:82 */
598 REGB2 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
599 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
600 if (UNTAG_Bool(REGB1)) {
601 nit_abort("Reciever is null", NULL, LOCATE_location, 82);
602 }
603 REGB1 = CALL_location___Location___line_start(fra.me.REG[1])(fra.me.REG[1]);
604 REGB3 = TAG_Bool(IS_EQUAL_OO(REGB2,REGB1));
605 if (UNTAG_Bool(REGB3)) {
606 } else {
607 /* ../lib/standard/kernel.nit:227 */
608 REGB1 = TAG_Bool((REGB2)==(REGB1));
609 /* location.nit:82 */
610 REGB3 = REGB1;
611 }
612 if (UNTAG_Bool(REGB3)) {
613 /* location.nit:83 */
614 REGB3 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
615 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
616 if (UNTAG_Bool(REGB1)) {
617 nit_abort("Reciever is null", NULL, LOCATE_location, 83);
618 }
619 REGB1 = CALL_location___Location___column_start(fra.me.REG[1])(fra.me.REG[1]);
620 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3), VTID_standard___kernel___Comparable___OTHER(REGB3))) /*cast OTHER*/;
621 if (UNTAG_Bool(REGB2)) {
622 } else {
623 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
624 }
625 /* ../lib/standard/kernel.nit:232 */
626 REGB1 = TAG_Bool(UNTAG_Int(REGB3)<UNTAG_Int(REGB1));
627 /* location.nit:83 */
628 if (UNTAG_Bool(REGB1)) {
629 REGB1 = TAG_Bool(false);
630 REGB0 = REGB1;
631 goto label1;
632 }
633 /* location.nit:84 */
634 REGB1 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
635 REGB3 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
636 if (UNTAG_Bool(REGB3)) {
637 nit_abort("Reciever is null", NULL, LOCATE_location, 84);
638 }
639 REGB3 = CALL_location___Location___column_end(fra.me.REG[1])(fra.me.REG[1]);
640 REGB2 = TAG_Bool(VAL_ISA(REGB3, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
641 if (UNTAG_Bool(REGB2)) {
642 } else {
643 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
644 }
645 /* ../lib/standard/kernel.nit:234 */
646 REGB3 = TAG_Bool(UNTAG_Int(REGB1)>UNTAG_Int(REGB3));
647 /* location.nit:84 */
648 if (UNTAG_Bool(REGB3)) {
649 REGB3 = TAG_Bool(false);
650 REGB0 = REGB3;
651 goto label1;
652 }
653 }
654 /* location.nit:87 */
655 REGB3 = CALL_location___Location___line_end(fra.me.REG[0])(fra.me.REG[0]);
656 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
657 if (UNTAG_Bool(REGB1)) {
658 nit_abort("Reciever is null", NULL, LOCATE_location, 87);
659 }
660 REGB1 = CALL_location___Location___line_end(fra.me.REG[1])(fra.me.REG[1]);
661 REGB2 = TAG_Bool(IS_EQUAL_OO(REGB3,REGB1));
662 if (UNTAG_Bool(REGB2)) {
663 } else {
664 /* ../lib/standard/kernel.nit:227 */
665 REGB1 = TAG_Bool((REGB3)==(REGB1));
666 /* location.nit:87 */
667 REGB2 = REGB1;
668 }
669 if (UNTAG_Bool(REGB2)) {
670 REGB2 = CALL_location___Location___column_end(fra.me.REG[0])(fra.me.REG[0]);
671 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
672 if (UNTAG_Bool(REGB1)) {
673 nit_abort("Reciever is null", NULL, LOCATE_location, 87);
674 }
675 REGB1 = CALL_location___Location___column_end(fra.me.REG[1])(fra.me.REG[1]);
676 REGB3 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2), VTID_standard___kernel___Comparable___OTHER(REGB2))) /*cast OTHER*/;
677 if (UNTAG_Bool(REGB3)) {
678 } else {
679 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
680 }
681 /* ../lib/standard/kernel.nit:234 */
682 REGB1 = TAG_Bool(UNTAG_Int(REGB2)>UNTAG_Int(REGB1));
683 } else {
684 /* location.nit:87 */
685 REGB2 = TAG_Bool(false);
686 REGB1 = REGB2;
687 }
688 if (UNTAG_Bool(REGB1)) {
689 REGB1 = TAG_Bool(false);
690 REGB0 = REGB1;
691 goto label1;
692 }
693 /* location.nit:89 */
694 REGB1 = TAG_Bool(true);
695 REGB0 = REGB1;
696 goto label1;
697 label1: while(0);
698 stack_frame_head = fra.me.prev;
699 return REGB0;
700 }
701 val_t location___Location___to_s(val_t p0){
702 struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
703 val_t REGB0;
704 val_t REGB1;
705 val_t REGB2;
706 val_t tmp;
707 static val_t once_value_1; /* Once value */
708 static val_t once_value_2; /* Once value */
709 static val_t once_value_3; /* Once value */
710 static val_t once_value_4; /* Once value */
711 static val_t once_value_5; /* Once value */
712 static val_t once_value_6; /* Once value */
713 static val_t once_value_8; /* Once value */
714 static val_t once_value_9; /* Once value */
715 static val_t once_value_10; /* Once value */
716 static val_t once_value_11; /* Once value */
717 static val_t once_value_12; /* Once value */
718 static val_t once_value_13; /* Once value */
719 static val_t once_value_14; /* Once value */
720 static val_t once_value_15; /* Once value */
721 static val_t once_value_16; /* Once value */
722 static val_t once_value_17; /* Once value */
723 static val_t once_value_18; /* Once value */
724 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
725 fra.me.file = LOCATE_location;
726 fra.me.line = 92;
727 fra.me.meth = LOCATE_location___Location___to_s;
728 fra.me.has_broke = 0;
729 fra.me.REG_size = 5;
730 fra.me.nitni_local_ref_head = NULL;
731 fra.me.REG[0] = NIT_NULL;
732 fra.me.REG[1] = NIT_NULL;
733 fra.me.REG[2] = NIT_NULL;
734 fra.me.REG[3] = NIT_NULL;
735 fra.me.REG[4] = NIT_NULL;
736 fra.me.REG[0] = p0;
737 /* location.nit:93 */
738 if (!once_value_1) {
739 fra.me.REG[1] = BOX_NativeString("");
740 REGB0 = TAG_Int(0);
741 fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB0);
742 once_value_1 = fra.me.REG[1];
743 register_static_object(&once_value_1);
744 } else fra.me.REG[1] = once_value_1;
745 fra.me.REG[1] = fra.me.REG[1];
746 /* location.nit:94 */
747 fra.me.REG[2] = CALL_location___Location___file(fra.me.REG[0])(fra.me.REG[0]);
748 REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
749 if (UNTAG_Bool(REGB0)) {
750 } else {
751 REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
752 if (UNTAG_Bool(REGB1)) {
753 REGB1 = TAG_Bool(false);
754 REGB0 = REGB1;
755 } else {
756 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
757 REGB0 = REGB1;
758 }
759 }
760 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
761 if (UNTAG_Bool(REGB0)) {
762 /* location.nit:95 */
763 fra.me.REG[2] = CALL_location___Location___file(fra.me.REG[0])(fra.me.REG[0]);
764 REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
765 if (UNTAG_Bool(REGB0)) {
766 nit_abort("Reciever is null", NULL, LOCATE_location, 95);
767 }
768 fra.me.REG[2] = CALL_location___SourceFile___filename(fra.me.REG[2])(fra.me.REG[2]);
769 fra.me.REG[1] = fra.me.REG[2];
770 /* location.nit:96 */
771 fra.me.REG[2] = CALL_location___Location___file(fra.me.REG[0])(fra.me.REG[0]);
772 REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
773 if (UNTAG_Bool(REGB0)) {
774 nit_abort("Reciever is null", NULL, LOCATE_location, 96);
775 }
776 fra.me.REG[2] = CALL_location___SourceFile___filename(fra.me.REG[2])(fra.me.REG[2]);
777 /* ../lib/standard/collection/array.nit:24 */
778 REGB0 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
779 if (UNTAG_Bool(REGB0)) {
780 } else {
781 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 24);
782 }
783 REGB0 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[2]);
784 /* location.nit:96 */
785 REGB1 = TAG_Int(0);
786 REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
787 if (UNTAG_Bool(REGB2)) {
788 } else {
789 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
790 }
791 /* ../lib/standard/kernel.nit:234 */
792 REGB1 = TAG_Bool(UNTAG_Int(REGB0)>UNTAG_Int(REGB1));
793 /* location.nit:96 */
794 if (UNTAG_Bool(REGB1)) {
795 if (!once_value_2) {
796 fra.me.REG[2] = BOX_NativeString(":");
797 REGB1 = TAG_Int(1);
798 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB1);
799 once_value_2 = fra.me.REG[2];
800 register_static_object(&once_value_2);
801 } else fra.me.REG[2] = once_value_2;
802 fra.me.REG[2] = fra.me.REG[2];
803 fra.me.REG[2] = CALL_standard___string___String_____plus(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
804 fra.me.REG[1] = fra.me.REG[2];
805 }
806 }
807 /* location.nit:99 */
808 REGB1 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
809 REGB0 = CALL_location___Location___line_end(fra.me.REG[0])(fra.me.REG[0]);
810 REGB2 = TAG_Bool(IS_EQUAL_OO(REGB1,REGB0));
811 if (UNTAG_Bool(REGB2)) {
812 } else {
813 /* ../lib/standard/kernel.nit:227 */
814 REGB0 = TAG_Bool((REGB1)==(REGB0));
815 /* location.nit:99 */
816 REGB2 = REGB0;
817 }
818 if (UNTAG_Bool(REGB2)) {
819 /* location.nit:100 */
820 REGB2 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
821 REGB0 = CALL_location___Location___column_end(fra.me.REG[0])(fra.me.REG[0]);
822 REGB1 = TAG_Bool(IS_EQUAL_OO(REGB2,REGB0));
823 if (UNTAG_Bool(REGB1)) {
824 } else {
825 /* ../lib/standard/kernel.nit:227 */
826 REGB0 = TAG_Bool((REGB2)==(REGB0));
827 /* location.nit:100 */
828 REGB1 = REGB0;
829 }
830 if (UNTAG_Bool(REGB1)) {
831 /* location.nit:101 */
832 REGB1 = TAG_Int(7);
833 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
834 if (!once_value_3) {
835 fra.me.REG[3] = BOX_NativeString("");
836 REGB1 = TAG_Int(0);
837 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
838 once_value_3 = fra.me.REG[3];
839 register_static_object(&once_value_3);
840 } else fra.me.REG[3] = once_value_3;
841 fra.me.REG[3] = fra.me.REG[3];
842 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
843 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
844 if (!once_value_4) {
845 fra.me.REG[3] = BOX_NativeString("");
846 REGB1 = TAG_Int(0);
847 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
848 once_value_4 = fra.me.REG[3];
849 register_static_object(&once_value_4);
850 } else fra.me.REG[3] = once_value_4;
851 fra.me.REG[3] = fra.me.REG[3];
852 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
853 REGB1 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
854 fra.me.REG[3] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
855 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
856 if (!once_value_5) {
857 fra.me.REG[3] = BOX_NativeString(",");
858 REGB1 = TAG_Int(1);
859 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
860 once_value_5 = fra.me.REG[3];
861 register_static_object(&once_value_5);
862 } else fra.me.REG[3] = once_value_5;
863 fra.me.REG[3] = fra.me.REG[3];
864 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
865 REGB1 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
866 fra.me.REG[3] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
867 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
868 if (!once_value_6) {
869 fra.me.REG[3] = BOX_NativeString("");
870 REGB1 = TAG_Int(0);
871 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
872 once_value_6 = fra.me.REG[3];
873 register_static_object(&once_value_6);
874 } else fra.me.REG[3] = once_value_6;
875 fra.me.REG[3] = fra.me.REG[3];
876 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
877 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
878 goto label7;
879 } else {
880 /* location.nit:103 */
881 REGB1 = TAG_Int(9);
882 fra.me.REG[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
883 if (!once_value_8) {
884 fra.me.REG[4] = BOX_NativeString("");
885 REGB1 = TAG_Int(0);
886 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
887 once_value_8 = fra.me.REG[4];
888 register_static_object(&once_value_8);
889 } else fra.me.REG[4] = once_value_8;
890 fra.me.REG[4] = fra.me.REG[4];
891 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
892 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
893 if (!once_value_9) {
894 fra.me.REG[4] = BOX_NativeString("");
895 REGB1 = TAG_Int(0);
896 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
897 once_value_9 = fra.me.REG[4];
898 register_static_object(&once_value_9);
899 } else fra.me.REG[4] = once_value_9;
900 fra.me.REG[4] = fra.me.REG[4];
901 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
902 REGB1 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
903 fra.me.REG[4] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
904 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
905 if (!once_value_10) {
906 fra.me.REG[4] = BOX_NativeString(",");
907 REGB1 = TAG_Int(1);
908 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
909 once_value_10 = fra.me.REG[4];
910 register_static_object(&once_value_10);
911 } else fra.me.REG[4] = once_value_10;
912 fra.me.REG[4] = fra.me.REG[4];
913 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
914 REGB1 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
915 fra.me.REG[4] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
916 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
917 if (!once_value_11) {
918 fra.me.REG[4] = BOX_NativeString("--");
919 REGB1 = TAG_Int(2);
920 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
921 once_value_11 = fra.me.REG[4];
922 register_static_object(&once_value_11);
923 } else fra.me.REG[4] = once_value_11;
924 fra.me.REG[4] = fra.me.REG[4];
925 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
926 REGB1 = CALL_location___Location___column_end(fra.me.REG[0])(fra.me.REG[0]);
927 fra.me.REG[4] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
928 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
929 if (!once_value_12) {
930 fra.me.REG[4] = BOX_NativeString("");
931 REGB1 = TAG_Int(0);
932 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
933 once_value_12 = fra.me.REG[4];
934 register_static_object(&once_value_12);
935 } else fra.me.REG[4] = once_value_12;
936 fra.me.REG[4] = fra.me.REG[4];
937 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
938 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
939 fra.me.REG[2] = fra.me.REG[3];
940 goto label7;
941 }
942 } else {
943 /* location.nit:106 */
944 REGB1 = TAG_Int(11);
945 fra.me.REG[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
946 if (!once_value_13) {
947 fra.me.REG[4] = BOX_NativeString("");
948 REGB1 = TAG_Int(0);
949 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
950 once_value_13 = fra.me.REG[4];
951 register_static_object(&once_value_13);
952 } else fra.me.REG[4] = once_value_13;
953 fra.me.REG[4] = fra.me.REG[4];
954 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
955 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
956 if (!once_value_14) {
957 fra.me.REG[1] = BOX_NativeString("");
958 REGB1 = TAG_Int(0);
959 fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB1);
960 once_value_14 = fra.me.REG[1];
961 register_static_object(&once_value_14);
962 } else fra.me.REG[1] = once_value_14;
963 fra.me.REG[1] = fra.me.REG[1];
964 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
965 REGB1 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
966 fra.me.REG[1] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
967 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
968 if (!once_value_15) {
969 fra.me.REG[1] = BOX_NativeString(",");
970 REGB1 = TAG_Int(1);
971 fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB1);
972 once_value_15 = fra.me.REG[1];
973 register_static_object(&once_value_15);
974 } else fra.me.REG[1] = once_value_15;
975 fra.me.REG[1] = fra.me.REG[1];
976 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
977 REGB1 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
978 fra.me.REG[1] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
979 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
980 if (!once_value_16) {
981 fra.me.REG[1] = BOX_NativeString("--");
982 REGB1 = TAG_Int(2);
983 fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB1);
984 once_value_16 = fra.me.REG[1];
985 register_static_object(&once_value_16);
986 } else fra.me.REG[1] = once_value_16;
987 fra.me.REG[1] = fra.me.REG[1];
988 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
989 REGB1 = CALL_location___Location___line_end(fra.me.REG[0])(fra.me.REG[0]);
990 fra.me.REG[1] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
991 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
992 if (!once_value_17) {
993 fra.me.REG[1] = BOX_NativeString(",");
994 REGB1 = TAG_Int(1);
995 fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB1);
996 once_value_17 = fra.me.REG[1];
997 register_static_object(&once_value_17);
998 } else fra.me.REG[1] = once_value_17;
999 fra.me.REG[1] = fra.me.REG[1];
1000 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
1001 REGB1 = CALL_location___Location___column_end(fra.me.REG[0])(fra.me.REG[0]);
1002 fra.me.REG[0] = CALL_standard___string___Object___to_s(REGB1)(REGB1);
1003 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
1004 if (!once_value_18) {
1005 fra.me.REG[0] = BOX_NativeString("");
1006 REGB1 = TAG_Int(0);
1007 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB1);
1008 once_value_18 = fra.me.REG[0];
1009 register_static_object(&once_value_18);
1010 } else fra.me.REG[0] = once_value_18;
1011 fra.me.REG[0] = fra.me.REG[0];
1012 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
1013 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
1014 fra.me.REG[2] = fra.me.REG[3];
1015 goto label7;
1016 }
1017 label7: while(0);
1018 stack_frame_head = fra.me.prev;
1019 return fra.me.REG[2];
1020 }
1021 val_t location___Location___relative_to(val_t p0, val_t p1){
1022 struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
1023 val_t REGB0;
1024 val_t REGB1;
1025 val_t REGB2;
1026 val_t REGB3;
1027 val_t tmp;
1028 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1029 fra.me.file = LOCATE_location;
1030 fra.me.line = 110;
1031 fra.me.meth = LOCATE_location___Location___relative_to;
1032 fra.me.has_broke = 0;
1033 fra.me.REG_size = 3;
1034 fra.me.nitni_local_ref_head = NULL;
1035 fra.me.REG[0] = NIT_NULL;
1036 fra.me.REG[1] = NIT_NULL;
1037 fra.me.REG[2] = NIT_NULL;
1038 fra.me.REG[0] = p0;
1039 fra.me.REG[1] = p1;
1040 /* location.nit:112 */
1041 REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
1042 if (UNTAG_Bool(REGB0)) {
1043 } else {
1044 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
1045 if (UNTAG_Bool(REGB1)) {
1046 REGB1 = TAG_Bool(false);
1047 REGB0 = REGB1;
1048 } else {
1049 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
1050 REGB0 = REGB1;
1051 }
1052 }
1053 REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
1054 if (UNTAG_Bool(REGB0)) {
1055 REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
1056 if (UNTAG_Bool(REGB0)) {
1057 nit_abort("Reciever is null", NULL, LOCATE_location, 112);
1058 }
1059 fra.me.REG[1] = CALL_location___Location___file(fra.me.REG[1])(fra.me.REG[1]);
1060 fra.me.REG[2] = CALL_location___Location___file(fra.me.REG[0])(fra.me.REG[0]);
1061 REGB0 = TAG_Bool(IS_EQUAL_NN(fra.me.REG[1],fra.me.REG[2]));
1062 if (UNTAG_Bool(REGB0)) {
1063 } else {
1064 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
1065 if (UNTAG_Bool(REGB1)) {
1066 REGB1 = TAG_Bool(false);
1067 REGB0 = REGB1;
1068 } else {
1069 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1070 REGB0 = REGB1;
1071 }
1072 }
1073 } else {
1074 REGB1 = TAG_Bool(false);
1075 REGB0 = REGB1;
1076 }
1077 if (UNTAG_Bool(REGB0)) {
1078 /* location.nit:113 */
1079 REGB0 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
1080 REGB1 = CALL_location___Location___line_end(fra.me.REG[0])(fra.me.REG[0]);
1081 REGB2 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
1082 REGB3 = CALL_location___Location___column_end(fra.me.REG[0])(fra.me.REG[0]);
1083 fra.me.REG[2] = NEW_Location_location___Location___init(NIT_NULL, REGB0, REGB1, REGB2, REGB3);
1084 } else {
1085 /* location.nit:115 */
1086 fra.me.REG[1] = CALL_location___Location___file(fra.me.REG[0])(fra.me.REG[0]);
1087 REGB3 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
1088 REGB2 = CALL_location___Location___line_end(fra.me.REG[0])(fra.me.REG[0]);
1089 REGB1 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
1090 REGB0 = CALL_location___Location___column_end(fra.me.REG[0])(fra.me.REG[0]);
1091 fra.me.REG[1] = NEW_Location_location___Location___init(fra.me.REG[1], REGB3, REGB2, REGB1, REGB0);
1092 fra.me.REG[2] = fra.me.REG[1];
1093 }
1094 /* location.nit:117 */
1095 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
1096 goto label1;
1097 label1: while(0);
1098 stack_frame_head = fra.me.prev;
1099 return fra.me.REG[2];
1100 }
1101 val_t location___Location_____l(val_t p0, val_t p1){
1102 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
1103 val_t REGB0;
1104 val_t REGB1;
1105 val_t REGB2;
1106 val_t REGB3;
1107 val_t tmp;
1108 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1109 fra.me.file = LOCATE_location;
1110 fra.me.line = 120;
1111 fra.me.meth = LOCATE_location___Location_____l;
1112 fra.me.has_broke = 0;
1113 fra.me.REG_size = 2;
1114 fra.me.nitni_local_ref_head = NULL;
1115 fra.me.REG[0] = NIT_NULL;
1116 fra.me.REG[1] = NIT_NULL;
1117 fra.me.REG[0] = p0;
1118 fra.me.REG[1] = p1;
1119 REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], VTCOLOR_standard___kernel___Comparable___OTHER(fra.me.REG[0]), VTID_standard___kernel___Comparable___OTHER(fra.me.REG[0]))) /*cast OTHER*/;
1120 if (UNTAG_Bool(REGB0)) {
1121 } else {
1122 nit_abort("Cast failed", NULL, LOCATE_location, 0);
1123 }
1124 /* location.nit:121 */
1125 REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[0],fra.me.REG[1]));
1126 if (UNTAG_Bool(REGB0)) {
1127 } else {
1128 REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
1129 REGB0 = REGB1;
1130 }
1131 if (UNTAG_Bool(REGB0)) {
1132 REGB0 = TAG_Bool(false);
1133 goto label1;
1134 }
1135 /* location.nit:122 */
1136 REGB1 = CALL_location___Location___located_in(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
1137 if (UNTAG_Bool(REGB1)) {
1138 REGB1 = TAG_Bool(true);
1139 REGB0 = REGB1;
1140 goto label1;
1141 }
1142 /* location.nit:123 */
1143 REGB1 = CALL_location___Location___located_in(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
1144 if (UNTAG_Bool(REGB1)) {
1145 REGB1 = TAG_Bool(false);
1146 REGB0 = REGB1;
1147 goto label1;
1148 }
1149 /* location.nit:125 */
1150 REGB1 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
1151 REGB2 = CALL_location___Location___line_start(fra.me.REG[1])(fra.me.REG[1]);
1152 REGB3 = TAG_Bool(IS_EQUAL_OO(REGB1,REGB2));
1153 if (UNTAG_Bool(REGB3)) {
1154 } else {
1155 /* ../lib/standard/kernel.nit:227 */
1156 REGB2 = TAG_Bool((REGB1)==(REGB2));
1157 /* location.nit:125 */
1158 REGB3 = REGB2;
1159 }
1160 REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
1161 if (UNTAG_Bool(REGB3)) {
1162 REGB3 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
1163 REGB2 = CALL_location___Location___line_start(fra.me.REG[1])(fra.me.REG[1]);
1164 REGB1 = TAG_Bool(VAL_ISA(REGB2, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3), VTID_standard___kernel___Comparable___OTHER(REGB3))) /*cast OTHER*/;
1165 if (UNTAG_Bool(REGB1)) {
1166 } else {
1167 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1168 }
1169 /* ../lib/standard/kernel.nit:232 */
1170 REGB2 = TAG_Bool(UNTAG_Int(REGB3)<UNTAG_Int(REGB2));
1171 /* location.nit:125 */
1172 REGB0 = REGB2;
1173 goto label1;
1174 }
1175 /* location.nit:126 */
1176 REGB2 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
1177 REGB3 = CALL_location___Location___column_start(fra.me.REG[1])(fra.me.REG[1]);
1178 REGB1 = TAG_Bool(IS_EQUAL_OO(REGB2,REGB3));
1179 if (UNTAG_Bool(REGB1)) {
1180 } else {
1181 /* ../lib/standard/kernel.nit:227 */
1182 REGB3 = TAG_Bool((REGB2)==(REGB3));
1183 /* location.nit:126 */
1184 REGB1 = REGB3;
1185 }
1186 REGB1 = TAG_Bool(!UNTAG_Bool(REGB1));
1187 if (UNTAG_Bool(REGB1)) {
1188 REGB1 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
1189 REGB3 = CALL_location___Location___column_start(fra.me.REG[1])(fra.me.REG[1]);
1190 REGB2 = TAG_Bool(VAL_ISA(REGB3, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
1191 if (UNTAG_Bool(REGB2)) {
1192 } else {
1193 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1194 }
1195 /* ../lib/standard/kernel.nit:232 */
1196 REGB3 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB3));
1197 /* location.nit:126 */
1198 REGB0 = REGB3;
1199 goto label1;
1200 }
1201 /* location.nit:127 */
1202 REGB3 = CALL_location___Location___line_end(fra.me.REG[0])(fra.me.REG[0]);
1203 REGB1 = CALL_location___Location___line_end(fra.me.REG[1])(fra.me.REG[1]);
1204 REGB2 = TAG_Bool(IS_EQUAL_OO(REGB3,REGB1));
1205 if (UNTAG_Bool(REGB2)) {
1206 } else {
1207 /* ../lib/standard/kernel.nit:227 */
1208 REGB1 = TAG_Bool((REGB3)==(REGB1));
1209 /* location.nit:127 */
1210 REGB2 = REGB1;
1211 }
1212 REGB2 = TAG_Bool(!UNTAG_Bool(REGB2));
1213 if (UNTAG_Bool(REGB2)) {
1214 REGB2 = CALL_location___Location___line_end(fra.me.REG[0])(fra.me.REG[0]);
1215 REGB1 = CALL_location___Location___line_end(fra.me.REG[1])(fra.me.REG[1]);
1216 REGB3 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2), VTID_standard___kernel___Comparable___OTHER(REGB2))) /*cast OTHER*/;
1217 if (UNTAG_Bool(REGB3)) {
1218 } else {
1219 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1220 }
1221 /* ../lib/standard/kernel.nit:232 */
1222 REGB1 = TAG_Bool(UNTAG_Int(REGB2)<UNTAG_Int(REGB1));
1223 /* location.nit:127 */
1224 REGB0 = REGB1;
1225 goto label1;
1226 }
1227 /* location.nit:129 */
1228 REGB1 = CALL_location___Location___column_end(fra.me.REG[0])(fra.me.REG[0]);
1229 REGB2 = CALL_location___Location___column_end(fra.me.REG[1])(fra.me.REG[1]);
1230 REGB3 = TAG_Bool(VAL_ISA(REGB2, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
1231 if (UNTAG_Bool(REGB3)) {
1232 } else {
1233 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1234 }
1235 /* ../lib/standard/kernel.nit:232 */
1236 REGB2 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB2));
1237 /* location.nit:129 */
1238 REGB0 = REGB2;
1239 goto label1;
1240 label1: while(0);
1241 stack_frame_head = fra.me.prev;
1242 return REGB0;
1243 }
1244 val_t location___Location___colored_line(val_t p0, val_t p1){
1245 struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
1246 val_t REGB0;
1247 val_t REGB1;
1248 val_t REGB2;
1249 val_t REGB3;
1250 val_t REGB4;
1251 val_t REGB5;
1252 val_t tmp;
1253 static val_t once_value_1; /* Once value */
1254 static val_t once_value_2; /* Once value */
1255 static val_t once_value_3; /* Once value */
1256 static val_t once_value_4; /* Once value */
1257 static val_t once_value_5; /* Once value */
1258 static val_t once_value_8; /* Once value */
1259 static val_t once_value_9; /* Once value */
1260 static val_t once_value_11; /* Once value */
1261 static val_t once_value_12; /* Once value */
1262 static val_t once_value_13; /* Once value */
1263 static val_t once_value_14; /* Once value */
1264 static val_t once_value_15; /* Once value */
1265 static val_t once_value_16; /* Once value */
1266 static val_t once_value_17; /* Once value */
1267 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
1268 fra.me.file = LOCATE_location;
1269 fra.me.line = 132;
1270 fra.me.meth = LOCATE_location___Location___colored_line;
1271 fra.me.has_broke = 0;
1272 fra.me.REG_size = 8;
1273 fra.me.nitni_local_ref_head = NULL;
1274 fra.me.REG[0] = NIT_NULL;
1275 fra.me.REG[1] = NIT_NULL;
1276 fra.me.REG[2] = NIT_NULL;
1277 fra.me.REG[3] = NIT_NULL;
1278 fra.me.REG[4] = NIT_NULL;
1279 fra.me.REG[5] = NIT_NULL;
1280 fra.me.REG[6] = NIT_NULL;
1281 fra.me.REG[7] = NIT_NULL;
1282 fra.me.REG[0] = p0;
1283 fra.me.REG[1] = p1;
1284 /* location.nit:139 */
1285 REGB0 = TAG_Int(27);
1286 /* ../lib/standard/kernel.nit:297 */
1287 REGB0 = TAG_Char(UNTAG_Int(REGB0));
1288 /* location.nit:140 */
1289 REGB1 = TAG_Int(3);
1290 fra.me.REG[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
1291 if (!once_value_1) {
1292 fra.me.REG[3] = BOX_NativeString("");
1293 REGB1 = TAG_Int(0);
1294 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
1295 once_value_1 = fra.me.REG[3];
1296 register_static_object(&once_value_1);
1297 } else fra.me.REG[3] = once_value_1;
1298 fra.me.REG[3] = fra.me.REG[3];
1299 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
1300 fra.me.REG[3] = CALL_standard___string___Object___to_s(REGB0)(REGB0);
1301 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
1302 if (!once_value_2) {
1303 fra.me.REG[3] = BOX_NativeString("[0m");
1304 REGB1 = TAG_Int(3);
1305 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
1306 once_value_2 = fra.me.REG[3];
1307 register_static_object(&once_value_2);
1308 } else fra.me.REG[3] = once_value_2;
1309 fra.me.REG[3] = fra.me.REG[3];
1310 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
1311 fra.me.REG[2] = CALL_standard___string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
1312 /* location.nit:141 */
1313 REGB1 = TAG_Int(5);
1314 fra.me.REG[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
1315 if (!once_value_3) {
1316 fra.me.REG[4] = BOX_NativeString("");
1317 REGB1 = TAG_Int(0);
1318 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
1319 once_value_3 = fra.me.REG[4];
1320 register_static_object(&once_value_3);
1321 } else fra.me.REG[4] = once_value_3;
1322 fra.me.REG[4] = fra.me.REG[4];
1323 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
1324 fra.me.REG[4] = CALL_standard___string___Object___to_s(REGB0)(REGB0);
1325 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
1326 if (!once_value_4) {
1327 fra.me.REG[4] = BOX_NativeString("[");
1328 REGB0 = TAG_Int(1);
1329 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
1330 once_value_4 = fra.me.REG[4];
1331 register_static_object(&once_value_4);
1332 } else fra.me.REG[4] = once_value_4;
1333 fra.me.REG[4] = fra.me.REG[4];
1334 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
1335 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
1336 if (!once_value_5) {
1337 fra.me.REG[1] = BOX_NativeString("m");
1338 REGB0 = TAG_Int(1);
1339 fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB0);
1340 once_value_5 = fra.me.REG[1];
1341 register_static_object(&once_value_5);
1342 } else fra.me.REG[1] = once_value_5;
1343 fra.me.REG[1] = fra.me.REG[1];
1344 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
1345 fra.me.REG[3] = CALL_standard___string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
1346 /* location.nit:144 */
1347 REGB0 = CALL_location___Location___line_start(fra.me.REG[0])(fra.me.REG[0]);
1348 /* location.nit:145 */
1349 fra.me.REG[1] = CALL_location___Location___file(fra.me.REG[0])(fra.me.REG[0]);
1350 REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
1351 if (UNTAG_Bool(REGB1)) {
1352 nit_abort("Reciever is null", NULL, LOCATE_location, 145);
1353 }
1354 fra.me.REG[1] = CALL_location___SourceFile___line_starts(fra.me.REG[1])(fra.me.REG[1]);
1355 REGB1 = TAG_Int(1);
1356 /* ../lib/standard/kernel.nit:237 */
1357 REGB1 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB1));
1358 /* ../lib/standard/collection/array.nit:280 */
1359 REGB2 = TAG_Int(0);
1360 REGB3 = TAG_Bool(VAL_ISA(REGB2, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
1361 if (UNTAG_Bool(REGB3)) {
1362 } else {
1363 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1364 }
1365 /* ../lib/standard/kernel.nit:233 */
1366 REGB2 = TAG_Bool(UNTAG_Int(REGB1)>=UNTAG_Int(REGB2));
1367 /* ../lib/standard/collection/array.nit:280 */
1368 if (UNTAG_Bool(REGB2)) {
1369 REGB2 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1])!=NIT_NULL);
1370 if (UNTAG_Bool(REGB2)) {
1371 } else {
1372 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 280);
1373 }
1374 REGB2 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1]);
1375 REGB3 = TAG_Bool(VAL_ISA(REGB2, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
1376 if (UNTAG_Bool(REGB3)) {
1377 } else {
1378 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1379 }
1380 /* ../lib/standard/kernel.nit:232 */
1381 REGB2 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB2));
1382 } else {
1383 /* ../lib/standard/collection/array.nit:280 */
1384 REGB3 = TAG_Bool(false);
1385 REGB2 = REGB3;
1386 }
1387 if (UNTAG_Bool(REGB2)) {
1388 } else {
1389 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array, 280);
1390 }
1391 /* ../lib/standard/collection/array.nit:281 */
1392 fra.me.REG[1] = ATTR_standard___collection___array___Array____items(fra.me.REG[1]);
1393 REGB2 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
1394 if (UNTAG_Bool(REGB2)) {
1395 nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 281);
1396 }
1397 /* ../lib/standard/collection/array.nit:718 */
1398 fra.me.REG[1] = ((Nit_NativeArray)fra.me.REG[1])->val[UNTAG_Int(REGB1)];
1399 /* ../lib/standard/collection/array.nit:281 */
1400 goto label6;
1401 label6: while(0);
1402 /* location.nit:145 */
1403 REGB1 = fra.me.REG[1];
1404 /* location.nit:146 */
1405 REGB2 = REGB1;
1406 /* location.nit:147 */
1407 fra.me.REG[1] = CALL_location___Location___file(fra.me.REG[0])(fra.me.REG[0]);
1408 REGB3 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
1409 if (UNTAG_Bool(REGB3)) {
1410 nit_abort("Reciever is null", NULL, LOCATE_location, 147);
1411 }
1412 fra.me.REG[1] = CALL_location___SourceFile___string(fra.me.REG[1])(fra.me.REG[1]);
1413 /* location.nit:148 */
1414 while(1) {
1415 REGB3 = TAG_Int(1);
1416 /* ../lib/standard/kernel.nit:235 */
1417 REGB3 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB3));
1418 /* ../lib/standard/collection/array.nit:24 */
1419 REGB4 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1])!=NIT_NULL);
1420 if (UNTAG_Bool(REGB4)) {
1421 } else {
1422 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 24);
1423 }
1424 REGB4 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1]);
1425 REGB5 = TAG_Bool(VAL_ISA(REGB4, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3), VTID_standard___kernel___Comparable___OTHER(REGB3))) /*cast OTHER*/;
1426 if (UNTAG_Bool(REGB5)) {
1427 } else {
1428 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1429 }
1430 /* ../lib/standard/kernel.nit:232 */
1431 REGB4 = TAG_Bool(UNTAG_Int(REGB3)<UNTAG_Int(REGB4));
1432 /* location.nit:148 */
1433 if (UNTAG_Bool(REGB4)) {
1434 REGB4 = TAG_Int(1);
1435 /* ../lib/standard/kernel.nit:235 */
1436 REGB4 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB4));
1437 /* location.nit:148 */
1438 REGB4 = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[1])(fra.me.REG[1], REGB4);
1439 REGB3 = TAG_Char('\n');
1440 REGB5 = TAG_Bool(IS_EQUAL_OO(REGB4,REGB3));
1441 if (UNTAG_Bool(REGB5)) {
1442 } else {
1443 /* ../lib/standard/kernel.nit:378 */
1444 REGB3 = TAG_Bool((REGB4)==(REGB3));
1445 /* location.nit:148 */
1446 REGB5 = REGB3;
1447 }
1448 REGB5 = TAG_Bool(!UNTAG_Bool(REGB5));
1449 } else {
1450 REGB3 = TAG_Bool(false);
1451 REGB5 = REGB3;
1452 }
1453 if (UNTAG_Bool(REGB5)) {
1454 REGB5 = TAG_Int(1);
1455 /* ../lib/standard/kernel.nit:235 */
1456 REGB5 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB5));
1457 /* location.nit:148 */
1458 REGB5 = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[1])(fra.me.REG[1], REGB5);
1459 REGB3 = TAG_Char('\r');
1460 REGB4 = TAG_Bool(IS_EQUAL_OO(REGB5,REGB3));
1461 if (UNTAG_Bool(REGB4)) {
1462 } else {
1463 /* ../lib/standard/kernel.nit:378 */
1464 REGB3 = TAG_Bool((REGB5)==(REGB3));
1465 /* location.nit:148 */
1466 REGB4 = REGB3;
1467 }
1468 REGB4 = TAG_Bool(!UNTAG_Bool(REGB4));
1469 } else {
1470 REGB3 = TAG_Bool(false);
1471 REGB4 = REGB3;
1472 }
1473 if (UNTAG_Bool(REGB4)) {
1474 /* location.nit:149 */
1475 REGB4 = TAG_Int(1);
1476 /* ../lib/standard/kernel.nit:235 */
1477 REGB4 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB4));
1478 /* location.nit:149 */
1479 REGB2 = REGB4;
1480 } else {
1481 /* location.nit:148 */
1482 goto label7;
1483 }
1484 }
1485 label7: while(0);
1486 /* location.nit:151 */
1487 REGB4 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
1488 REGB3 = TAG_Int(1);
1489 /* ../lib/standard/kernel.nit:237 */
1490 REGB3 = TAG_Int(UNTAG_Int(REGB4)-UNTAG_Int(REGB3));
1491 /* location.nit:151 */
1492 fra.me.REG[4] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB1, REGB3);
1493 /* location.nit:153 */
1494 REGB3 = CALL_location___Location___line_end(fra.me.REG[0])(fra.me.REG[0]);
1495 REGB4 = TAG_Bool(IS_EQUAL_OO(REGB0,REGB3));
1496 if (UNTAG_Bool(REGB4)) {
1497 } else {
1498 /* ../lib/standard/kernel.nit:227 */
1499 REGB3 = TAG_Bool((REGB0)==(REGB3));
1500 /* location.nit:153 */
1501 REGB4 = REGB3;
1502 }
1503 REGB4 = TAG_Bool(!UNTAG_Bool(REGB4));
1504 if (UNTAG_Bool(REGB4)) {
1505 /* ../lib/standard/kernel.nit:237 */
1506 REGB4 = TAG_Int(UNTAG_Int(REGB2)-UNTAG_Int(REGB1));
1507 /* location.nit:154 */
1508 REGB3 = TAG_Int(1);
1509 /* ../lib/standard/kernel.nit:235 */
1510 REGB3 = TAG_Int(UNTAG_Int(REGB4)+UNTAG_Int(REGB3));
1511 /* location.nit:154 */
1512 fra.me.REG[5] = REGB3;
1513 } else {
1514 /* location.nit:156 */
1515 REGB3 = CALL_location___Location___column_end(fra.me.REG[0])(fra.me.REG[0]);
1516 fra.me.REG[5] = REGB3;
1517 }
1518 /* ../lib/standard/kernel.nit:235 */
1519 REGB3 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(fra.me.REG[5]));
1520 /* ../lib/standard/collection/array.nit:24 */
1521 REGB4 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1])!=NIT_NULL);
1522 if (UNTAG_Bool(REGB4)) {
1523 } else {
1524 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 24);
1525 }
1526 REGB4 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1]);
1527 REGB0 = TAG_Bool(VAL_ISA(REGB4, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3), VTID_standard___kernel___Comparable___OTHER(REGB3))) /*cast OTHER*/;
1528 if (UNTAG_Bool(REGB0)) {
1529 } else {
1530 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1531 }
1532 /* ../lib/standard/kernel.nit:231 */
1533 REGB4 = TAG_Bool(UNTAG_Int(REGB3)<=UNTAG_Int(REGB4));
1534 /* location.nit:160 */
1535 if (UNTAG_Bool(REGB4)) {
1536 /* location.nit:161 */
1537 REGB4 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
1538 /* ../lib/standard/kernel.nit:235 */
1539 REGB4 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB4));
1540 /* location.nit:161 */
1541 REGB3 = TAG_Int(1);
1542 /* ../lib/standard/kernel.nit:237 */
1543 REGB3 = TAG_Int(UNTAG_Int(REGB4)-UNTAG_Int(REGB3));
1544 /* location.nit:161 */
1545 REGB4 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
1546 REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
1547 if (UNTAG_Bool(REGB0)) {
1548 nit_abort("Reciever is null", NULL, LOCATE_location, 161);
1549 }
1550 /* ../lib/standard/kernel.nit:237 */
1551 REGB4 = TAG_Int(UNTAG_Int(fra.me.REG[5])-UNTAG_Int(REGB4));
1552 /* location.nit:161 */
1553 REGB0 = TAG_Int(1);
1554 /* ../lib/standard/kernel.nit:235 */
1555 REGB0 = TAG_Int(UNTAG_Int(REGB4)+UNTAG_Int(REGB0));
1556 /* location.nit:161 */
1557 fra.me.REG[6] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB3, REGB0);
1558 /* ../lib/standard/kernel.nit:235 */
1559 REGB0 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(fra.me.REG[5]));
1560 /* ../lib/standard/kernel.nit:237 */
1561 REGB2 = TAG_Int(UNTAG_Int(REGB2)-UNTAG_Int(REGB1));
1562 REGB2 = TAG_Int(UNTAG_Int(REGB2)-UNTAG_Int(fra.me.REG[5]));
1563 /* location.nit:162 */
1564 REGB3 = TAG_Int(1);
1565 /* ../lib/standard/kernel.nit:235 */
1566 REGB3 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB3));
1567 /* location.nit:162 */
1568 fra.me.REG[5] = CALL_standard___string___AbstractString___substring(fra.me.REG[1])(fra.me.REG[1], REGB0, REGB3);
1569 } else {
1570 /* location.nit:164 */
1571 if (!once_value_8) {
1572 fra.me.REG[7] = BOX_NativeString("");
1573 REGB3 = TAG_Int(0);
1574 fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB3);
1575 once_value_8 = fra.me.REG[7];
1576 register_static_object(&once_value_8);
1577 } else fra.me.REG[7] = once_value_8;
1578 fra.me.REG[7] = fra.me.REG[7];
1579 fra.me.REG[6] = fra.me.REG[7];
1580 /* location.nit:165 */
1581 if (!once_value_9) {
1582 fra.me.REG[7] = BOX_NativeString("");
1583 REGB3 = TAG_Int(0);
1584 fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB3);
1585 once_value_9 = fra.me.REG[7];
1586 register_static_object(&once_value_9);
1587 } else fra.me.REG[7] = once_value_9;
1588 fra.me.REG[7] = fra.me.REG[7];
1589 fra.me.REG[5] = fra.me.REG[7];
1590 }
1591 /* location.nit:167 */
1592 fra.me.REG[7] = NEW_Buffer_standard___string___Buffer___init();
1593 /* location.nit:168 */
1594 REGB3 = CALL_location___Location___column_start(fra.me.REG[0])(fra.me.REG[0]);
1595 /* ../lib/standard/kernel.nit:235 */
1596 REGB3 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB3));
1597 /* location.nit:168 */
1598 REGB0 = TAG_Int(1);
1599 /* ../lib/standard/kernel.nit:237 */
1600 REGB0 = TAG_Int(UNTAG_Int(REGB3)-UNTAG_Int(REGB0));
1601 /* ../lib/standard/kernel.nit:352 */
1602 while(1) {
1603 REGB3 = TAG_Bool(VAL_ISA(REGB0, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
1604 if (UNTAG_Bool(REGB3)) {
1605 } else {
1606 nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
1607 }
1608 /* ../lib/standard/kernel.nit:232 */
1609 REGB3 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB0));
1610 /* ../lib/standard/kernel.nit:352 */
1611 if (UNTAG_Bool(REGB3)) {
1612 /* location.nit:168 */
1613 REGB3 = REGB1;
1614 /* location.nit:169 */
1615 REGB3 = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra.me.REG[1])(fra.me.REG[1], REGB3);
1616 REGB2 = TAG_Char('\t');
1617 REGB4 = TAG_Bool(IS_EQUAL_OO(REGB3,REGB2));
1618 if (UNTAG_Bool(REGB4)) {
1619 } else {
1620 /* ../lib/standard/kernel.nit:378 */
1621 REGB2 = TAG_Bool((REGB3)==(REGB2));
1622 /* location.nit:169 */
1623 REGB4 = REGB2;
1624 }
1625 if (UNTAG_Bool(REGB4)) {
1626 /* location.nit:170 */
1627 REGB4 = TAG_Char('\t');
1628 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], REGB4);
1629 } else {
1630 /* location.nit:172 */
1631 REGB4 = TAG_Char(' ');
1632 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], REGB4);
1633 }
1634 /* ../lib/standard/kernel.nit:354 */
1635 REGB4 = TAG_Int(1);
1636 /* ../lib/standard/kernel.nit:235 */
1637 REGB4 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB4));
1638 /* ../lib/standard/kernel.nit:354 */
1639 REGB1 = REGB4;
1640 } else {
1641 /* ../lib/standard/kernel.nit:352 */
1642 goto label10;
1643 }
1644 }
1645 label10: while(0);
1646 /* location.nit:175 */
1647 REGB1 = TAG_Int(13);
1648 fra.me.REG[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1);
1649 if (!once_value_11) {
1650 fra.me.REG[0] = BOX_NativeString("\t");
1651 REGB1 = TAG_Int(1);
1652 fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB1);
1653 once_value_11 = fra.me.REG[0];
1654 register_static_object(&once_value_11);
1655 } else fra.me.REG[0] = once_value_11;
1656 fra.me.REG[0] = fra.me.REG[0];
1657 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
1658 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
1659 if (!once_value_12) {
1660 fra.me.REG[4] = BOX_NativeString("");
1661 REGB1 = TAG_Int(0);
1662 fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
1663 once_value_12 = fra.me.REG[4];
1664 register_static_object(&once_value_12);
1665 } else fra.me.REG[4] = once_value_12;
1666 fra.me.REG[4] = fra.me.REG[4];
1667 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
1668 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
1669 if (!once_value_13) {
1670 fra.me.REG[3] = BOX_NativeString("");
1671 REGB1 = TAG_Int(0);
1672 fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
1673 once_value_13 = fra.me.REG[3];
1674 register_static_object(&once_value_13);
1675 } else fra.me.REG[3] = once_value_13;
1676 fra.me.REG[3] = fra.me.REG[3];
1677 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
1678 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
1679 if (!once_value_14) {
1680 fra.me.REG[6] = BOX_NativeString("");
1681 REGB1 = TAG_Int(0);
1682 fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB1);
1683 once_value_14 = fra.me.REG[6];
1684 register_static_object(&once_value_14);
1685 } else fra.me.REG[6] = once_value_14;
1686 fra.me.REG[6] = fra.me.REG[6];
1687 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
1688 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1689 if (!once_value_15) {
1690 fra.me.REG[2] = BOX_NativeString("");
1691 REGB1 = TAG_Int(0);
1692 fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB1);
1693 once_value_15 = fra.me.REG[2];
1694 register_static_object(&once_value_15);
1695 } else fra.me.REG[2] = once_value_15;
1696 fra.me.REG[2] = fra.me.REG[2];
1697 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
1698 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
1699 if (!once_value_16) {
1700 fra.me.REG[5] = BOX_NativeString("\n\t");
1701 REGB1 = TAG_Int(2);
1702 fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB1);
1703 once_value_16 = fra.me.REG[5];
1704 register_static_object(&once_value_16);
1705 } else fra.me.REG[5] = once_value_16;
1706 fra.me.REG[5] = fra.me.REG[5];
1707 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
1708 fra.me.REG[7] = CALL_standard___string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
1709 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
1710 if (!once_value_17) {
1711 fra.me.REG[7] = BOX_NativeString("^");
1712 REGB1 = TAG_Int(1);
1713 fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB1);
1714 once_value_17 = fra.me.REG[7];
1715 register_static_object(&once_value_17);
1716 } else fra.me.REG[7] = once_value_17;
1717 fra.me.REG[7] = fra.me.REG[7];
1718 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
1719 fra.me.REG[1] = CALL_standard___string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
1720 goto label18;
1721 label18: while(0);
1722 stack_frame_head = fra.me.prev;
1723 return fra.me.REG[1];
1724 }