1 /* This C file is generated by NIT to compile module location. */
2 #include "location._sep.h"
3 static const char LOCATE_location___SourceFile___filename
[] = "location::SourceFile::filename";
4 val_t
location___SourceFile___filename(val_t p0
){
5 struct {struct stack_frame_t me
;} fra
;
8 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9 fra
.me
.file
= LOCATE_location
;
11 fra
.me
.meth
= LOCATE_location___SourceFile___filename
;
14 fra
.me
.nitni_local_ref_head
= NULL
;
15 fra
.me
.REG
[0] = NIT_NULL
;
18 REGB0
= TAG_Bool(ATTR_location___SourceFile_____atfilename(fra
.me
.REG
[0])!=NIT_NULL
);
19 if (UNTAG_Bool(REGB0
)) {
21 nit_abort("Uninitialized attribute %s", "@filename", LOCATE_location
, 22);
23 fra
.me
.REG
[0] = ATTR_location___SourceFile_____atfilename(fra
.me
.REG
[0]);
24 stack_frame_head
= fra
.me
.prev
;
27 static const char LOCATE_location___SourceFile___filename__eq
[] = "location::SourceFile::filename=";
28 void location___SourceFile___filename__eq(val_t p0
, val_t p1
){
29 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
31 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
32 fra
.me
.file
= LOCATE_location
;
34 fra
.me
.meth
= LOCATE_location___SourceFile___filename__eq
;
37 fra
.me
.nitni_local_ref_head
= NULL
;
38 fra
.me
.REG
[0] = NIT_NULL
;
39 fra
.me
.REG
[1] = NIT_NULL
;
43 ATTR_location___SourceFile_____atfilename(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
44 stack_frame_head
= fra
.me
.prev
;
47 static const char LOCATE_location___SourceFile___string
[] = "location::SourceFile::string";
48 val_t
location___SourceFile___string(val_t p0
){
49 struct {struct stack_frame_t me
;} fra
;
52 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
53 fra
.me
.file
= LOCATE_location
;
55 fra
.me
.meth
= LOCATE_location___SourceFile___string
;
58 fra
.me
.nitni_local_ref_head
= NULL
;
59 fra
.me
.REG
[0] = NIT_NULL
;
62 REGB0
= TAG_Bool(ATTR_location___SourceFile_____atstring(fra
.me
.REG
[0])!=NIT_NULL
);
63 if (UNTAG_Bool(REGB0
)) {
65 nit_abort("Uninitialized attribute %s", "@string", LOCATE_location
, 25);
67 fra
.me
.REG
[0] = ATTR_location___SourceFile_____atstring(fra
.me
.REG
[0]);
68 stack_frame_head
= fra
.me
.prev
;
71 static const char LOCATE_location___SourceFile___string__eq
[] = "location::SourceFile::string=";
72 void location___SourceFile___string__eq(val_t p0
, val_t p1
){
73 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
75 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
76 fra
.me
.file
= LOCATE_location
;
78 fra
.me
.meth
= LOCATE_location___SourceFile___string__eq
;
81 fra
.me
.nitni_local_ref_head
= NULL
;
82 fra
.me
.REG
[0] = NIT_NULL
;
83 fra
.me
.REG
[1] = NIT_NULL
;
87 ATTR_location___SourceFile_____atstring(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
88 stack_frame_head
= fra
.me
.prev
;
91 static const char LOCATE_location___SourceFile___init
[] = "location::SourceFile::init";
92 void location___SourceFile___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
93 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_location___SourceFile
].i
;
94 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
98 if (init_table
[itpos0
]) return;
99 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
100 fra
.me
.file
= LOCATE_location
;
102 fra
.me
.meth
= LOCATE_location___SourceFile___init
;
103 fra
.me
.has_broke
= 0;
105 fra
.me
.nitni_local_ref_head
= NULL
;
106 fra
.me
.REG
[0] = NIT_NULL
;
107 fra
.me
.REG
[1] = NIT_NULL
;
108 fra
.me
.REG
[2] = NIT_NULL
;
112 /* location.nit:31 */
113 CALL_location___SourceFile___filename__eq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
114 /* location.nit:32 */
115 fra
.me
.REG
[2] = CALL_standard___stream___IStream___read_all(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
116 CALL_location___SourceFile___string__eq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
117 /* location.nit:33 */
118 fra
.me
.REG
[0] = CALL_location___SourceFile___line_starts(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
121 CALL_standard___collection___abstract_collection___Sequence_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
, REGB1
);
122 stack_frame_head
= fra
.me
.prev
;
123 init_table
[itpos0
] = 1;
126 static const char LOCATE_location___SourceFile___line_starts
[] = "location::SourceFile::line_starts";
127 val_t
location___SourceFile___line_starts(val_t p0
){
128 struct {struct stack_frame_t me
;} fra
;
131 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
132 fra
.me
.file
= LOCATE_location
;
134 fra
.me
.meth
= LOCATE_location___SourceFile___line_starts
;
135 fra
.me
.has_broke
= 0;
137 fra
.me
.nitni_local_ref_head
= NULL
;
138 fra
.me
.REG
[0] = NIT_NULL
;
140 /* location.nit:36 */
141 REGB0
= TAG_Bool(ATTR_location___SourceFile_____atline_starts(fra
.me
.REG
[0])!=NIT_NULL
);
142 if (UNTAG_Bool(REGB0
)) {
144 nit_abort("Uninitialized attribute %s", "@line_starts", LOCATE_location
, 36);
146 fra
.me
.REG
[0] = ATTR_location___SourceFile_____atline_starts(fra
.me
.REG
[0]);
147 stack_frame_head
= fra
.me
.prev
;
148 return fra
.me
.REG
[0];
150 static const char LOCATE_location___SourceFile___line_starts__eq
[] = "location::SourceFile::line_starts=";
151 void location___SourceFile___line_starts__eq(val_t p0
, val_t p1
){
152 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
154 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
155 fra
.me
.file
= LOCATE_location
;
157 fra
.me
.meth
= LOCATE_location___SourceFile___line_starts__eq
;
158 fra
.me
.has_broke
= 0;
160 fra
.me
.nitni_local_ref_head
= NULL
;
161 fra
.me
.REG
[0] = NIT_NULL
;
162 fra
.me
.REG
[1] = NIT_NULL
;
165 /* location.nit:36 */
166 ATTR_location___SourceFile_____atline_starts(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
167 stack_frame_head
= fra
.me
.prev
;
170 static const char LOCATE_location___Location___file
[] = "location::Location::file";
171 val_t
location___Location___file(val_t p0
){
172 struct {struct stack_frame_t me
;} fra
;
174 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
175 fra
.me
.file
= LOCATE_location
;
177 fra
.me
.meth
= LOCATE_location___Location___file
;
178 fra
.me
.has_broke
= 0;
180 fra
.me
.nitni_local_ref_head
= NULL
;
181 fra
.me
.REG
[0] = NIT_NULL
;
183 /* location.nit:45 */
184 fra
.me
.REG
[0] = ATTR_location___Location____file(fra
.me
.REG
[0]);
185 stack_frame_head
= fra
.me
.prev
;
186 return fra
.me
.REG
[0];
188 static const char LOCATE_location___Location___line_start
[] = "location::Location::line_start";
189 val_t
location___Location___line_start(val_t p0
){
190 struct {struct stack_frame_t me
;} fra
;
193 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
194 fra
.me
.file
= LOCATE_location
;
196 fra
.me
.meth
= LOCATE_location___Location___line_start
;
197 fra
.me
.has_broke
= 0;
199 fra
.me
.nitni_local_ref_head
= NULL
;
200 fra
.me
.REG
[0] = NIT_NULL
;
202 /* location.nit:46 */
203 REGB0
= TAG_Bool(ATTR_location___Location____line_start(fra
.me
.REG
[0])!=NIT_NULL
);
204 if (UNTAG_Bool(REGB0
)) {
206 nit_abort("Uninitialized attribute %s", "_line_start", LOCATE_location
, 46);
208 REGB0
= ATTR_location___Location____line_start(fra
.me
.REG
[0]);
209 stack_frame_head
= fra
.me
.prev
;
212 static const char LOCATE_location___Location___line_end
[] = "location::Location::line_end";
213 val_t
location___Location___line_end(val_t p0
){
214 struct {struct stack_frame_t me
;} fra
;
217 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
218 fra
.me
.file
= LOCATE_location
;
220 fra
.me
.meth
= LOCATE_location___Location___line_end
;
221 fra
.me
.has_broke
= 0;
223 fra
.me
.nitni_local_ref_head
= NULL
;
224 fra
.me
.REG
[0] = NIT_NULL
;
226 /* location.nit:47 */
227 REGB0
= TAG_Bool(ATTR_location___Location____line_end(fra
.me
.REG
[0])!=NIT_NULL
);
228 if (UNTAG_Bool(REGB0
)) {
230 nit_abort("Uninitialized attribute %s", "_line_end", LOCATE_location
, 47);
232 REGB0
= ATTR_location___Location____line_end(fra
.me
.REG
[0]);
233 stack_frame_head
= fra
.me
.prev
;
236 static const char LOCATE_location___Location___column_start
[] = "location::Location::column_start";
237 val_t
location___Location___column_start(val_t p0
){
238 struct {struct stack_frame_t me
;} fra
;
241 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
242 fra
.me
.file
= LOCATE_location
;
244 fra
.me
.meth
= LOCATE_location___Location___column_start
;
245 fra
.me
.has_broke
= 0;
247 fra
.me
.nitni_local_ref_head
= NULL
;
248 fra
.me
.REG
[0] = NIT_NULL
;
250 /* location.nit:48 */
251 REGB0
= TAG_Bool(ATTR_location___Location____column_start(fra
.me
.REG
[0])!=NIT_NULL
);
252 if (UNTAG_Bool(REGB0
)) {
254 nit_abort("Uninitialized attribute %s", "_column_start", LOCATE_location
, 48);
256 REGB0
= ATTR_location___Location____column_start(fra
.me
.REG
[0]);
257 stack_frame_head
= fra
.me
.prev
;
260 static const char LOCATE_location___Location___column_end
[] = "location::Location::column_end";
261 val_t
location___Location___column_end(val_t p0
){
262 struct {struct stack_frame_t me
;} fra
;
265 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
266 fra
.me
.file
= LOCATE_location
;
268 fra
.me
.meth
= LOCATE_location___Location___column_end
;
269 fra
.me
.has_broke
= 0;
271 fra
.me
.nitni_local_ref_head
= NULL
;
272 fra
.me
.REG
[0] = NIT_NULL
;
274 /* location.nit:49 */
275 REGB0
= TAG_Bool(ATTR_location___Location____column_end(fra
.me
.REG
[0])!=NIT_NULL
);
276 if (UNTAG_Bool(REGB0
)) {
278 nit_abort("Uninitialized attribute %s", "_column_end", LOCATE_location
, 49);
280 REGB0
= ATTR_location___Location____column_end(fra
.me
.REG
[0]);
281 stack_frame_head
= fra
.me
.prev
;
284 static const char LOCATE_location___Location___init
[] = "location::Location::init";
285 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
){
286 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_location___Location
].i
;
287 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
293 if (init_table
[itpos1
]) return;
294 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
295 fra
.me
.file
= LOCATE_location
;
297 fra
.me
.meth
= LOCATE_location___Location___init
;
298 fra
.me
.has_broke
= 0;
300 fra
.me
.nitni_local_ref_head
= NULL
;
301 fra
.me
.REG
[0] = NIT_NULL
;
302 fra
.me
.REG
[1] = NIT_NULL
;
309 /* location.nit:52 */
310 ATTR_location___Location____file(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
311 /* location.nit:53 */
312 ATTR_location___Location____line_start(fra
.me
.REG
[0]) = REGB0
;
313 /* location.nit:54 */
314 ATTR_location___Location____line_end(fra
.me
.REG
[0]) = REGB1
;
315 /* location.nit:55 */
316 ATTR_location___Location____column_start(fra
.me
.REG
[0]) = REGB2
;
317 /* location.nit:56 */
318 ATTR_location___Location____column_end(fra
.me
.REG
[0]) = REGB3
;
319 stack_frame_head
= fra
.me
.prev
;
320 init_table
[itpos1
] = 1;
323 static const char LOCATE_location___Location___text
[] = "location::Location::text";
324 val_t
location___Location___text(val_t p0
){
325 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
331 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
332 fra
.me
.file
= LOCATE_location
;
334 fra
.me
.meth
= LOCATE_location___Location___text
;
335 fra
.me
.has_broke
= 0;
337 fra
.me
.nitni_local_ref_head
= NULL
;
338 fra
.me
.REG
[0] = NIT_NULL
;
339 fra
.me
.REG
[1] = NIT_NULL
;
340 fra
.me
.REG
[2] = NIT_NULL
;
341 fra
.me
.REG
[3] = NIT_NULL
;
342 fra
.me
.REG
[4] = NIT_NULL
;
344 /* location.nit:62 */
345 fra
.me
.REG
[1] = CALL_location___Location___text_cache(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
346 /* location.nit:63 */
347 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
348 if (UNTAG_Bool(REGB0
)) {
350 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
351 if (UNTAG_Bool(REGB1
)) {
355 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
359 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
360 if (UNTAG_Bool(REGB0
)) {
361 fra
.me
.REG
[2] = fra
.me
.REG
[1];
364 /* location.nit:64 */
365 fra
.me
.REG
[3] = fra
.me
.REG
[0];
366 /* location.nit:65 */
367 fra
.me
.REG
[4] = CALL_location___Location___file(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
368 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
369 if (UNTAG_Bool(REGB0
)) {
370 nit_abort("Reciever is null", NULL
, LOCATE_location
, 65);
372 fra
.me
.REG
[4] = CALL_location___SourceFile___line_starts(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
373 REGB0
= CALL_location___Location___line_start(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
375 /* ../lib/standard/kernel.nit:240 */
376 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
377 /* ../lib/standard/collection/array.nit:280 */
379 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
380 if (UNTAG_Bool(REGB2
)) {
382 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
384 /* ../lib/standard/kernel.nit:236 */
385 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
386 /* ../lib/standard/collection/array.nit:280 */
387 if (UNTAG_Bool(REGB0
)) {
388 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
389 if (UNTAG_Bool(REGB0
)) {
391 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
393 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
394 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
395 if (UNTAG_Bool(REGB2
)) {
397 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
399 /* ../lib/standard/kernel.nit:235 */
400 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
402 /* ../lib/standard/collection/array.nit:280 */
406 if (UNTAG_Bool(REGB0
)) {
408 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 280);
410 /* ../lib/standard/collection/array.nit:281 */
411 fra
.me
.REG
[4] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[4]);
412 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
413 if (UNTAG_Bool(REGB0
)) {
414 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
416 /* ../lib/standard/collection/array.nit:718 */
417 fra
.me
.REG
[4] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB1
)];
418 /* ../lib/standard/collection/array.nit:281 */
421 /* location.nit:65 */
422 REGB1
= CALL_location___Location___column_start(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
423 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
424 if (UNTAG_Bool(REGB0
)) {
425 nit_abort("Reciever is null", NULL
, LOCATE_location
, 65);
427 /* ../lib/standard/kernel.nit:238 */
428 REGB1
= TAG_Int(UNTAG_Int(fra
.me
.REG
[4])+UNTAG_Int(REGB1
));
429 /* location.nit:65 */
431 /* ../lib/standard/kernel.nit:240 */
432 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
433 /* location.nit:66 */
434 fra
.me
.REG
[4] = CALL_location___Location___file(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
435 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
436 if (UNTAG_Bool(REGB1
)) {
437 nit_abort("Reciever is null", NULL
, LOCATE_location
, 66);
439 fra
.me
.REG
[4] = CALL_location___SourceFile___line_starts(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
440 REGB1
= CALL_location___Location___line_end(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
442 /* ../lib/standard/kernel.nit:240 */
443 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
444 /* ../lib/standard/collection/array.nit:280 */
446 REGB3
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
447 if (UNTAG_Bool(REGB3
)) {
449 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
451 /* ../lib/standard/kernel.nit:236 */
452 REGB1
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB1
));
453 /* ../lib/standard/collection/array.nit:280 */
454 if (UNTAG_Bool(REGB1
)) {
455 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
456 if (UNTAG_Bool(REGB1
)) {
458 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
460 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
461 REGB3
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
462 if (UNTAG_Bool(REGB3
)) {
464 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
466 /* ../lib/standard/kernel.nit:235 */
467 REGB1
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB1
));
469 /* ../lib/standard/collection/array.nit:280 */
473 if (UNTAG_Bool(REGB1
)) {
475 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 280);
477 /* ../lib/standard/collection/array.nit:281 */
478 fra
.me
.REG
[4] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[4]);
479 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
480 if (UNTAG_Bool(REGB1
)) {
481 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
483 /* ../lib/standard/collection/array.nit:718 */
484 fra
.me
.REG
[4] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB2
)];
485 /* ../lib/standard/collection/array.nit:281 */
488 /* location.nit:66 */
489 REGB2
= CALL_location___Location___column_end(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
490 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
491 if (UNTAG_Bool(REGB1
)) {
492 nit_abort("Reciever is null", NULL
, LOCATE_location
, 66);
494 /* ../lib/standard/kernel.nit:238 */
495 REGB2
= TAG_Int(UNTAG_Int(fra
.me
.REG
[4])+UNTAG_Int(REGB2
));
496 /* location.nit:66 */
498 /* ../lib/standard/kernel.nit:240 */
499 REGB1
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB1
));
500 /* location.nit:67 */
501 fra
.me
.REG
[3] = CALL_location___Location___file(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
502 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
503 if (UNTAG_Bool(REGB2
)) {
504 nit_abort("Reciever is null", NULL
, LOCATE_location
, 67);
506 fra
.me
.REG
[3] = CALL_location___SourceFile___string(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
507 /* ../lib/standard/kernel.nit:240 */
508 REGB1
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
509 /* location.nit:67 */
511 /* ../lib/standard/kernel.nit:238 */
512 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
513 /* location.nit:67 */
514 fra
.me
.REG
[3] = CALL_standard___string___AbstractString___substring(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
, REGB2
);
515 fra
.me
.REG
[1] = fra
.me
.REG
[3];
516 /* location.nit:68 */
517 CALL_location___Location___text_cache__eq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
518 /* location.nit:69 */
519 fra
.me
.REG
[2] = fra
.me
.REG
[1];
522 stack_frame_head
= fra
.me
.prev
;
523 return fra
.me
.REG
[2];
525 static const char LOCATE_location___Location___text_cache
[] = "location::Location::text_cache";
526 val_t
location___Location___text_cache(val_t p0
){
527 struct {struct stack_frame_t me
;} fra
;
529 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
530 fra
.me
.file
= LOCATE_location
;
532 fra
.me
.meth
= LOCATE_location___Location___text_cache
;
533 fra
.me
.has_broke
= 0;
535 fra
.me
.nitni_local_ref_head
= NULL
;
536 fra
.me
.REG
[0] = NIT_NULL
;
538 /* location.nit:72 */
539 fra
.me
.REG
[0] = ATTR_location___Location_____attext_cache(fra
.me
.REG
[0]);
540 stack_frame_head
= fra
.me
.prev
;
541 return fra
.me
.REG
[0];
543 static const char LOCATE_location___Location___text_cache__eq
[] = "location::Location::text_cache=";
544 void location___Location___text_cache__eq(val_t p0
, val_t p1
){
545 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
547 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
548 fra
.me
.file
= LOCATE_location
;
550 fra
.me
.meth
= LOCATE_location___Location___text_cache__eq
;
551 fra
.me
.has_broke
= 0;
553 fra
.me
.nitni_local_ref_head
= NULL
;
554 fra
.me
.REG
[0] = NIT_NULL
;
555 fra
.me
.REG
[1] = NIT_NULL
;
558 /* location.nit:72 */
559 ATTR_location___Location_____attext_cache(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
560 stack_frame_head
= fra
.me
.prev
;
563 static const char LOCATE_location___Location___with_file
[] = "location::Location::with_file";
564 void location___Location___with_file(val_t p0
, val_t p1
, int* init_table
){
565 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_location___Location
].i
;
566 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
572 if (init_table
[itpos2
]) return;
573 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
574 fra
.me
.file
= LOCATE_location
;
576 fra
.me
.meth
= LOCATE_location___Location___with_file
;
577 fra
.me
.has_broke
= 0;
579 fra
.me
.nitni_local_ref_head
= NULL
;
580 fra
.me
.REG
[0] = NIT_NULL
;
581 fra
.me
.REG
[1] = NIT_NULL
;
584 /* location.nit:74 */
589 CALL_location___Location___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB0
, REGB1
, REGB2
, REGB3
, init_table
);
590 stack_frame_head
= fra
.me
.prev
;
591 init_table
[itpos2
] = 1;
594 static const char LOCATE_location___Location_____eqeq
[] = "location::Location::(kernel::Object::==)";
595 val_t
location___Location_____eqeq(val_t p0
, val_t p1
){
596 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
602 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
603 fra
.me
.file
= LOCATE_location
;
605 fra
.me
.meth
= LOCATE_location___Location_____eqeq
;
606 fra
.me
.has_broke
= 0;
608 fra
.me
.nitni_local_ref_head
= NULL
;
609 fra
.me
.REG
[0] = NIT_NULL
;
610 fra
.me
.REG
[1] = NIT_NULL
;
611 fra
.me
.REG
[2] = NIT_NULL
;
612 fra
.me
.REG
[3] = NIT_NULL
;
615 /* location.nit:77 */
616 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
617 if (UNTAG_Bool(REGB0
)) {
619 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
620 if (UNTAG_Bool(REGB1
)) {
624 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
628 if (UNTAG_Bool(REGB0
)) {
632 /* location.nit:78 */
633 REGB1
= TAG_Bool((fra
.me
.REG
[1]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[1], COLOR_location___Location
, ID_location___Location
)) /*cast Location*/;
634 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
635 if (UNTAG_Bool(REGB1
)) {
640 /* location.nit:80 */
641 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
642 if (UNTAG_Bool(REGB1
)) {
643 nit_abort("Reciever is null", NULL
, LOCATE_location
, 80);
645 fra
.me
.REG
[2] = CALL_location___Location___file(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
646 fra
.me
.REG
[3] = CALL_location___Location___file(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
647 REGB1
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[2],fra
.me
.REG
[3]));
648 if (UNTAG_Bool(REGB1
)) {
650 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
651 if (UNTAG_Bool(REGB2
)) {
655 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
659 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
660 if (UNTAG_Bool(REGB1
)) {
665 /* location.nit:81 */
666 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
667 if (UNTAG_Bool(REGB1
)) {
668 nit_abort("Reciever is null", NULL
, LOCATE_location
, 81);
670 REGB1
= CALL_location___Location___line_start(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
671 REGB2
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
672 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB2
));
673 if (UNTAG_Bool(REGB3
)) {
675 /* ../lib/standard/kernel.nit:230 */
676 REGB2
= TAG_Bool((REGB1
)==(REGB2
));
677 /* location.nit:81 */
680 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
681 if (UNTAG_Bool(REGB3
)) {
686 /* location.nit:82 */
687 REGB3
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
688 if (UNTAG_Bool(REGB3
)) {
689 nit_abort("Reciever is null", NULL
, LOCATE_location
, 82);
691 REGB3
= CALL_location___Location___line_end(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
692 REGB2
= CALL_location___Location___line_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
693 REGB1
= TAG_Bool(IS_EQUAL_OO(REGB3
,REGB2
));
694 if (UNTAG_Bool(REGB1
)) {
696 /* ../lib/standard/kernel.nit:230 */
697 REGB2
= TAG_Bool((REGB3
)==(REGB2
));
698 /* location.nit:82 */
701 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
702 if (UNTAG_Bool(REGB1
)) {
707 /* location.nit:83 */
708 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
709 if (UNTAG_Bool(REGB1
)) {
710 nit_abort("Reciever is null", NULL
, LOCATE_location
, 83);
712 REGB1
= CALL_location___Location___column_start(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
713 REGB2
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
714 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB2
));
715 if (UNTAG_Bool(REGB3
)) {
717 /* ../lib/standard/kernel.nit:230 */
718 REGB2
= TAG_Bool((REGB1
)==(REGB2
));
719 /* location.nit:83 */
722 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
723 if (UNTAG_Bool(REGB3
)) {
728 /* location.nit:84 */
729 REGB3
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
730 if (UNTAG_Bool(REGB3
)) {
731 nit_abort("Reciever is null", NULL
, LOCATE_location
, 84);
733 REGB3
= CALL_location___Location___column_end(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
734 REGB2
= CALL_location___Location___column_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
735 REGB1
= TAG_Bool(IS_EQUAL_OO(REGB3
,REGB2
));
736 if (UNTAG_Bool(REGB1
)) {
738 /* ../lib/standard/kernel.nit:230 */
739 REGB2
= TAG_Bool((REGB3
)==(REGB2
));
740 /* location.nit:84 */
743 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
744 if (UNTAG_Bool(REGB1
)) {
749 /* location.nit:86 */
754 stack_frame_head
= fra
.me
.prev
;
757 static const char LOCATE_location___Location___located_in
[] = "location::Location::located_in";
758 val_t
location___Location___located_in(val_t p0
, val_t p1
){
759 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
765 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
766 fra
.me
.file
= LOCATE_location
;
768 fra
.me
.meth
= LOCATE_location___Location___located_in
;
769 fra
.me
.has_broke
= 0;
771 fra
.me
.nitni_local_ref_head
= NULL
;
772 fra
.me
.REG
[0] = NIT_NULL
;
773 fra
.me
.REG
[1] = NIT_NULL
;
776 /* location.nit:90 */
777 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
778 if (UNTAG_Bool(REGB0
)) {
780 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
781 if (UNTAG_Bool(REGB1
)) {
785 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
789 if (UNTAG_Bool(REGB0
)) {
793 /* location.nit:92 */
794 REGB1
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
795 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
796 if (UNTAG_Bool(REGB2
)) {
797 nit_abort("Reciever is null", NULL
, LOCATE_location
, 92);
799 REGB2
= CALL_location___Location___line_start(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
800 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
801 if (UNTAG_Bool(REGB3
)) {
803 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
805 /* ../lib/standard/kernel.nit:235 */
806 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
807 /* location.nit:92 */
808 if (UNTAG_Bool(REGB2
)) {
813 /* location.nit:93 */
814 REGB2
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
815 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
816 if (UNTAG_Bool(REGB1
)) {
817 nit_abort("Reciever is null", NULL
, LOCATE_location
, 93);
819 REGB1
= CALL_location___Location___line_end(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
820 REGB3
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
821 if (UNTAG_Bool(REGB3
)) {
823 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
825 /* ../lib/standard/kernel.nit:237 */
826 REGB1
= TAG_Bool(UNTAG_Int(REGB2
)>UNTAG_Int(REGB1
));
827 /* location.nit:93 */
828 if (UNTAG_Bool(REGB1
)) {
833 /* location.nit:95 */
834 REGB1
= CALL_location___Location___line_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
835 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
836 if (UNTAG_Bool(REGB2
)) {
837 nit_abort("Reciever is null", NULL
, LOCATE_location
, 95);
839 REGB2
= CALL_location___Location___line_end(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
840 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
841 if (UNTAG_Bool(REGB3
)) {
843 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
845 /* ../lib/standard/kernel.nit:237 */
846 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB2
));
847 /* location.nit:95 */
848 if (UNTAG_Bool(REGB2
)) {
853 /* location.nit:97 */
854 REGB2
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
855 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
856 if (UNTAG_Bool(REGB1
)) {
857 nit_abort("Reciever is null", NULL
, LOCATE_location
, 97);
859 REGB1
= CALL_location___Location___line_start(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
860 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB1
));
861 if (UNTAG_Bool(REGB3
)) {
863 /* ../lib/standard/kernel.nit:230 */
864 REGB1
= TAG_Bool((REGB2
)==(REGB1
));
865 /* location.nit:97 */
868 if (UNTAG_Bool(REGB3
)) {
869 /* location.nit:98 */
870 REGB3
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
871 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
872 if (UNTAG_Bool(REGB1
)) {
873 nit_abort("Reciever is null", NULL
, LOCATE_location
, 98);
875 REGB1
= CALL_location___Location___column_start(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
876 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
877 if (UNTAG_Bool(REGB2
)) {
879 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
881 /* ../lib/standard/kernel.nit:235 */
882 REGB1
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB1
));
883 /* location.nit:98 */
884 if (UNTAG_Bool(REGB1
)) {
889 /* location.nit:99 */
890 REGB1
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
891 REGB3
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
892 if (UNTAG_Bool(REGB3
)) {
893 nit_abort("Reciever is null", NULL
, LOCATE_location
, 99);
895 REGB3
= CALL_location___Location___column_end(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
896 REGB2
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
897 if (UNTAG_Bool(REGB2
)) {
899 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
901 /* ../lib/standard/kernel.nit:237 */
902 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB3
));
903 /* location.nit:99 */
904 if (UNTAG_Bool(REGB3
)) {
910 /* location.nit:102 */
911 REGB3
= CALL_location___Location___line_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
912 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
913 if (UNTAG_Bool(REGB1
)) {
914 nit_abort("Reciever is null", NULL
, LOCATE_location
, 102);
916 REGB1
= CALL_location___Location___line_end(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
917 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB3
,REGB1
));
918 if (UNTAG_Bool(REGB2
)) {
920 /* ../lib/standard/kernel.nit:230 */
921 REGB1
= TAG_Bool((REGB3
)==(REGB1
));
922 /* location.nit:102 */
925 if (UNTAG_Bool(REGB2
)) {
926 REGB2
= CALL_location___Location___column_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
927 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
928 if (UNTAG_Bool(REGB1
)) {
929 nit_abort("Reciever is null", NULL
, LOCATE_location
, 102);
931 REGB1
= CALL_location___Location___column_end(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
932 REGB3
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
933 if (UNTAG_Bool(REGB3
)) {
935 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
937 /* ../lib/standard/kernel.nit:237 */
938 REGB1
= TAG_Bool(UNTAG_Int(REGB2
)>UNTAG_Int(REGB1
));
940 /* location.nit:102 */
944 if (UNTAG_Bool(REGB1
)) {
949 /* location.nit:104 */
954 stack_frame_head
= fra
.me
.prev
;
957 static const char LOCATE_location___Location___to_s
[] = "location::Location::(string::Object::to_s)";
958 val_t
location___Location___to_s(val_t p0
){
959 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
964 static val_t once_value_1
; /* Once value */
965 static val_t once_value_2
; /* Once value */
966 static val_t once_value_3
; /* Once value */
967 static val_t once_value_4
; /* Once value */
968 static val_t once_value_5
; /* Once value */
969 static val_t once_value_6
; /* Once value */
970 static val_t once_value_8
; /* Once value */
971 static val_t once_value_9
; /* Once value */
972 static val_t once_value_10
; /* Once value */
973 static val_t once_value_11
; /* Once value */
974 static val_t once_value_12
; /* Once value */
975 static val_t once_value_13
; /* Once value */
976 static val_t once_value_14
; /* Once value */
977 static val_t once_value_15
; /* Once value */
978 static val_t once_value_16
; /* Once value */
979 static val_t once_value_17
; /* Once value */
980 static val_t once_value_18
; /* Once value */
981 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
982 fra
.me
.file
= LOCATE_location
;
984 fra
.me
.meth
= LOCATE_location___Location___to_s
;
985 fra
.me
.has_broke
= 0;
987 fra
.me
.nitni_local_ref_head
= NULL
;
988 fra
.me
.REG
[0] = NIT_NULL
;
989 fra
.me
.REG
[1] = NIT_NULL
;
990 fra
.me
.REG
[2] = NIT_NULL
;
991 fra
.me
.REG
[3] = NIT_NULL
;
992 fra
.me
.REG
[4] = NIT_NULL
;
994 /* location.nit:108 */
996 fra
.me
.REG
[1] = BOX_NativeString("");
998 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
999 once_value_1
= fra
.me
.REG
[1];
1000 register_static_object(&once_value_1
);
1001 } else fra
.me
.REG
[1] = once_value_1
;
1002 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1003 /* location.nit:109 */
1004 fra
.me
.REG
[2] = CALL_location___Location___file(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1005 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1006 if (UNTAG_Bool(REGB0
)) {
1008 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1009 if (UNTAG_Bool(REGB1
)) {
1010 REGB1
= TAG_Bool(0);
1013 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
1017 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1018 if (UNTAG_Bool(REGB0
)) {
1019 /* location.nit:110 */
1020 fra
.me
.REG
[2] = CALL_location___Location___file(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1021 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1022 if (UNTAG_Bool(REGB0
)) {
1023 nit_abort("Reciever is null", NULL
, LOCATE_location
, 110);
1025 fra
.me
.REG
[2] = CALL_location___SourceFile___filename(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1026 fra
.me
.REG
[1] = fra
.me
.REG
[2];
1027 /* location.nit:111 */
1028 fra
.me
.REG
[2] = CALL_location___Location___file(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1029 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1030 if (UNTAG_Bool(REGB0
)) {
1031 nit_abort("Reciever is null", NULL
, LOCATE_location
, 111);
1033 fra
.me
.REG
[2] = CALL_location___SourceFile___filename(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1034 /* ../lib/standard/collection/array.nit:24 */
1035 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
1036 if (UNTAG_Bool(REGB0
)) {
1038 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1040 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
1041 /* location.nit:111 */
1043 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1044 if (UNTAG_Bool(REGB2
)) {
1046 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1048 /* ../lib/standard/kernel.nit:237 */
1049 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
1050 /* location.nit:111 */
1051 if (UNTAG_Bool(REGB1
)) {
1052 if (!once_value_2
) {
1053 fra
.me
.REG
[2] = BOX_NativeString(":");
1055 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB1
);
1056 once_value_2
= fra
.me
.REG
[2];
1057 register_static_object(&once_value_2
);
1058 } else fra
.me
.REG
[2] = once_value_2
;
1059 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1060 fra
.me
.REG
[2] = CALL_standard___string___String_____plus(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1061 fra
.me
.REG
[1] = fra
.me
.REG
[2];
1064 /* location.nit:114 */
1065 REGB1
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1066 REGB0
= CALL_location___Location___line_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1067 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB0
));
1068 if (UNTAG_Bool(REGB2
)) {
1070 /* ../lib/standard/kernel.nit:230 */
1071 REGB0
= TAG_Bool((REGB1
)==(REGB0
));
1072 /* location.nit:114 */
1075 if (UNTAG_Bool(REGB2
)) {
1076 /* location.nit:115 */
1077 REGB2
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1078 REGB0
= CALL_location___Location___column_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1079 REGB1
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB0
));
1080 if (UNTAG_Bool(REGB1
)) {
1082 /* ../lib/standard/kernel.nit:230 */
1083 REGB0
= TAG_Bool((REGB2
)==(REGB0
));
1084 /* location.nit:115 */
1087 if (UNTAG_Bool(REGB1
)) {
1088 /* location.nit:116 */
1090 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
1091 if (!once_value_3
) {
1092 fra
.me
.REG
[3] = BOX_NativeString("");
1094 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
1095 once_value_3
= fra
.me
.REG
[3];
1096 register_static_object(&once_value_3
);
1097 } else fra
.me
.REG
[3] = once_value_3
;
1098 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1099 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1100 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1101 if (!once_value_4
) {
1102 fra
.me
.REG
[3] = BOX_NativeString("");
1104 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
1105 once_value_4
= fra
.me
.REG
[3];
1106 register_static_object(&once_value_4
);
1107 } else fra
.me
.REG
[3] = once_value_4
;
1108 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1109 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1110 REGB1
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1111 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
1112 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1113 if (!once_value_5
) {
1114 fra
.me
.REG
[3] = BOX_NativeString(",");
1116 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
1117 once_value_5
= fra
.me
.REG
[3];
1118 register_static_object(&once_value_5
);
1119 } else fra
.me
.REG
[3] = once_value_5
;
1120 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1121 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1122 REGB1
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1123 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
1124 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1125 if (!once_value_6
) {
1126 fra
.me
.REG
[3] = BOX_NativeString("");
1128 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
1129 once_value_6
= fra
.me
.REG
[3];
1130 register_static_object(&once_value_6
);
1131 } else fra
.me
.REG
[3] = once_value_6
;
1132 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1133 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1134 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1137 /* location.nit:118 */
1139 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
1140 if (!once_value_8
) {
1141 fra
.me
.REG
[4] = BOX_NativeString("");
1143 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
1144 once_value_8
= fra
.me
.REG
[4];
1145 register_static_object(&once_value_8
);
1146 } else fra
.me
.REG
[4] = once_value_8
;
1147 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1148 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1149 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1150 if (!once_value_9
) {
1151 fra
.me
.REG
[4] = BOX_NativeString("");
1153 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
1154 once_value_9
= fra
.me
.REG
[4];
1155 register_static_object(&once_value_9
);
1156 } else fra
.me
.REG
[4] = once_value_9
;
1157 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1158 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1159 REGB1
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1160 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
1161 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1162 if (!once_value_10
) {
1163 fra
.me
.REG
[4] = BOX_NativeString(",");
1165 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
1166 once_value_10
= fra
.me
.REG
[4];
1167 register_static_object(&once_value_10
);
1168 } else fra
.me
.REG
[4] = once_value_10
;
1169 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1170 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1171 REGB1
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1172 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
1173 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1174 if (!once_value_11
) {
1175 fra
.me
.REG
[4] = BOX_NativeString("--");
1177 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
1178 once_value_11
= fra
.me
.REG
[4];
1179 register_static_object(&once_value_11
);
1180 } else fra
.me
.REG
[4] = once_value_11
;
1181 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1182 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1183 REGB1
= CALL_location___Location___column_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1184 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
1185 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1186 if (!once_value_12
) {
1187 fra
.me
.REG
[4] = BOX_NativeString("");
1189 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
1190 once_value_12
= fra
.me
.REG
[4];
1191 register_static_object(&once_value_12
);
1192 } else fra
.me
.REG
[4] = once_value_12
;
1193 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1194 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1195 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1196 fra
.me
.REG
[2] = fra
.me
.REG
[3];
1200 /* location.nit:121 */
1201 REGB1
= TAG_Int(11);
1202 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
1203 if (!once_value_13
) {
1204 fra
.me
.REG
[4] = BOX_NativeString("");
1206 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
1207 once_value_13
= fra
.me
.REG
[4];
1208 register_static_object(&once_value_13
);
1209 } else fra
.me
.REG
[4] = once_value_13
;
1210 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1211 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1212 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1213 if (!once_value_14
) {
1214 fra
.me
.REG
[1] = BOX_NativeString("");
1216 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB1
);
1217 once_value_14
= fra
.me
.REG
[1];
1218 register_static_object(&once_value_14
);
1219 } else fra
.me
.REG
[1] = once_value_14
;
1220 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1221 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1222 REGB1
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1223 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
1224 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1225 if (!once_value_15
) {
1226 fra
.me
.REG
[1] = BOX_NativeString(",");
1228 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB1
);
1229 once_value_15
= fra
.me
.REG
[1];
1230 register_static_object(&once_value_15
);
1231 } else fra
.me
.REG
[1] = once_value_15
;
1232 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1233 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1234 REGB1
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1235 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
1236 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1237 if (!once_value_16
) {
1238 fra
.me
.REG
[1] = BOX_NativeString("--");
1240 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB1
);
1241 once_value_16
= fra
.me
.REG
[1];
1242 register_static_object(&once_value_16
);
1243 } else fra
.me
.REG
[1] = once_value_16
;
1244 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1245 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1246 REGB1
= CALL_location___Location___line_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1247 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
1248 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1249 if (!once_value_17
) {
1250 fra
.me
.REG
[1] = BOX_NativeString(",");
1252 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB1
);
1253 once_value_17
= fra
.me
.REG
[1];
1254 register_static_object(&once_value_17
);
1255 } else fra
.me
.REG
[1] = once_value_17
;
1256 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1257 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1258 REGB1
= CALL_location___Location___column_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1259 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(REGB1
)(REGB1
);
1260 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
1261 if (!once_value_18
) {
1262 fra
.me
.REG
[0] = BOX_NativeString("");
1264 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB1
);
1265 once_value_18
= fra
.me
.REG
[0];
1266 register_static_object(&once_value_18
);
1267 } else fra
.me
.REG
[0] = once_value_18
;
1268 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1269 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
1270 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1271 fra
.me
.REG
[2] = fra
.me
.REG
[3];
1275 stack_frame_head
= fra
.me
.prev
;
1276 return fra
.me
.REG
[2];
1278 static const char LOCATE_location___Location___relative_to
[] = "location::Location::relative_to";
1279 val_t
location___Location___relative_to(val_t p0
, val_t p1
){
1280 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1286 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1287 fra
.me
.file
= LOCATE_location
;
1289 fra
.me
.meth
= LOCATE_location___Location___relative_to
;
1290 fra
.me
.has_broke
= 0;
1291 fra
.me
.REG_size
= 3;
1292 fra
.me
.nitni_local_ref_head
= NULL
;
1293 fra
.me
.REG
[0] = NIT_NULL
;
1294 fra
.me
.REG
[1] = NIT_NULL
;
1295 fra
.me
.REG
[2] = NIT_NULL
;
1298 /* location.nit:127 */
1299 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1300 if (UNTAG_Bool(REGB0
)) {
1302 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1303 if (UNTAG_Bool(REGB1
)) {
1304 REGB1
= TAG_Bool(0);
1307 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
1311 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1312 if (UNTAG_Bool(REGB0
)) {
1313 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1314 if (UNTAG_Bool(REGB0
)) {
1315 nit_abort("Reciever is null", NULL
, LOCATE_location
, 127);
1317 fra
.me
.REG
[1] = CALL_location___Location___file(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1318 fra
.me
.REG
[2] = CALL_location___Location___file(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1319 REGB0
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[1],fra
.me
.REG
[2]));
1320 if (UNTAG_Bool(REGB0
)) {
1322 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1323 if (UNTAG_Bool(REGB1
)) {
1324 REGB1
= TAG_Bool(0);
1327 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1332 REGB1
= TAG_Bool(0);
1335 if (UNTAG_Bool(REGB0
)) {
1336 /* location.nit:128 */
1337 REGB0
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1338 REGB1
= CALL_location___Location___line_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1339 REGB2
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1340 REGB3
= CALL_location___Location___column_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1341 fra
.me
.REG
[2] = NEW_Location_location___Location___init(NIT_NULL
, REGB0
, REGB1
, REGB2
, REGB3
);
1343 /* location.nit:130 */
1344 fra
.me
.REG
[1] = CALL_location___Location___file(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1345 REGB3
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1346 REGB2
= CALL_location___Location___line_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1347 REGB1
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1348 REGB0
= CALL_location___Location___column_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1349 fra
.me
.REG
[1] = NEW_Location_location___Location___init(fra
.me
.REG
[1], REGB3
, REGB2
, REGB1
, REGB0
);
1350 fra
.me
.REG
[2] = fra
.me
.REG
[1];
1352 /* location.nit:132 */
1353 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1356 stack_frame_head
= fra
.me
.prev
;
1357 return fra
.me
.REG
[2];
1359 static const char LOCATE_location___Location_____l
[] = "location::Location::(kernel::Comparable::<)";
1360 val_t
location___Location_____l(val_t p0
, val_t p1
){
1361 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1367 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1368 fra
.me
.file
= LOCATE_location
;
1370 fra
.me
.meth
= LOCATE_location___Location_____l
;
1371 fra
.me
.has_broke
= 0;
1372 fra
.me
.REG_size
= 2;
1373 fra
.me
.nitni_local_ref_head
= NULL
;
1374 fra
.me
.REG
[0] = NIT_NULL
;
1375 fra
.me
.REG
[1] = NIT_NULL
;
1378 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*/;
1379 if (UNTAG_Bool(REGB0
)) {
1381 nit_abort("Cast failed", NULL
, LOCATE_location
, 0);
1383 /* location.nit:136 */
1384 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[0],fra
.me
.REG
[1]));
1385 if (UNTAG_Bool(REGB0
)) {
1387 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1390 if (UNTAG_Bool(REGB0
)) {
1391 REGB0
= TAG_Bool(0);
1394 /* location.nit:137 */
1395 REGB1
= CALL_location___Location___located_in(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1396 if (UNTAG_Bool(REGB1
)) {
1397 REGB1
= TAG_Bool(1);
1401 /* location.nit:138 */
1402 REGB1
= CALL_location___Location___located_in(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1403 if (UNTAG_Bool(REGB1
)) {
1404 REGB1
= TAG_Bool(0);
1408 /* location.nit:140 */
1409 REGB1
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1410 REGB2
= CALL_location___Location___line_start(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1411 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB2
));
1412 if (UNTAG_Bool(REGB3
)) {
1414 /* ../lib/standard/kernel.nit:230 */
1415 REGB2
= TAG_Bool((REGB1
)==(REGB2
));
1416 /* location.nit:140 */
1419 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
1420 if (UNTAG_Bool(REGB3
)) {
1421 REGB3
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1422 REGB2
= CALL_location___Location___line_start(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1423 REGB1
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
1424 if (UNTAG_Bool(REGB1
)) {
1426 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1428 /* ../lib/standard/kernel.nit:235 */
1429 REGB2
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB2
));
1430 /* location.nit:140 */
1434 /* location.nit:141 */
1435 REGB2
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1436 REGB3
= CALL_location___Location___column_start(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1437 REGB1
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB3
));
1438 if (UNTAG_Bool(REGB1
)) {
1440 /* ../lib/standard/kernel.nit:230 */
1441 REGB3
= TAG_Bool((REGB2
)==(REGB3
));
1442 /* location.nit:141 */
1445 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
1446 if (UNTAG_Bool(REGB1
)) {
1447 REGB1
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1448 REGB3
= CALL_location___Location___column_start(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1449 REGB2
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1450 if (UNTAG_Bool(REGB2
)) {
1452 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1454 /* ../lib/standard/kernel.nit:235 */
1455 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB3
));
1456 /* location.nit:141 */
1460 /* location.nit:142 */
1461 REGB3
= CALL_location___Location___line_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1462 REGB1
= CALL_location___Location___line_end(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1463 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB3
,REGB1
));
1464 if (UNTAG_Bool(REGB2
)) {
1466 /* ../lib/standard/kernel.nit:230 */
1467 REGB1
= TAG_Bool((REGB3
)==(REGB1
));
1468 /* location.nit:142 */
1471 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
1472 if (UNTAG_Bool(REGB2
)) {
1473 REGB2
= CALL_location___Location___line_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1474 REGB1
= CALL_location___Location___line_end(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1475 REGB3
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
1476 if (UNTAG_Bool(REGB3
)) {
1478 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1480 /* ../lib/standard/kernel.nit:235 */
1481 REGB1
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB1
));
1482 /* location.nit:142 */
1486 /* location.nit:144 */
1487 REGB1
= CALL_location___Location___column_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1488 REGB2
= CALL_location___Location___column_end(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1489 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1490 if (UNTAG_Bool(REGB3
)) {
1492 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1494 /* ../lib/standard/kernel.nit:235 */
1495 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
1496 /* location.nit:144 */
1500 stack_frame_head
= fra
.me
.prev
;
1503 static const char LOCATE_location___Location___colored_line
[] = "location::Location::colored_line";
1504 val_t
location___Location___colored_line(val_t p0
, val_t p1
){
1505 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
1513 static val_t once_value_1
; /* Once value */
1514 static val_t once_value_2
; /* Once value */
1515 static val_t once_value_3
; /* Once value */
1516 static val_t once_value_4
; /* Once value */
1517 static val_t once_value_5
; /* Once value */
1518 static val_t once_value_8
; /* Once value */
1519 static val_t once_value_9
; /* Once value */
1520 static val_t once_value_11
; /* Once value */
1521 static val_t once_value_12
; /* Once value */
1522 static val_t once_value_13
; /* Once value */
1523 static val_t once_value_14
; /* Once value */
1524 static val_t once_value_15
; /* Once value */
1525 static val_t once_value_16
; /* Once value */
1526 static val_t once_value_17
; /* Once value */
1527 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1528 fra
.me
.file
= LOCATE_location
;
1530 fra
.me
.meth
= LOCATE_location___Location___colored_line
;
1531 fra
.me
.has_broke
= 0;
1532 fra
.me
.REG_size
= 8;
1533 fra
.me
.nitni_local_ref_head
= NULL
;
1534 fra
.me
.REG
[0] = NIT_NULL
;
1535 fra
.me
.REG
[1] = NIT_NULL
;
1536 fra
.me
.REG
[2] = NIT_NULL
;
1537 fra
.me
.REG
[3] = NIT_NULL
;
1538 fra
.me
.REG
[4] = NIT_NULL
;
1539 fra
.me
.REG
[5] = NIT_NULL
;
1540 fra
.me
.REG
[6] = NIT_NULL
;
1541 fra
.me
.REG
[7] = NIT_NULL
;
1544 /* location.nit:154 */
1545 REGB0
= TAG_Int(27);
1546 /* ../lib/standard/kernel.nit:300 */
1547 REGB0
= TAG_Char(UNTAG_Int(REGB0
));
1548 /* location.nit:155 */
1550 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
1551 if (!once_value_1
) {
1552 fra
.me
.REG
[3] = BOX_NativeString("");
1554 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
1555 once_value_1
= fra
.me
.REG
[3];
1556 register_static_object(&once_value_1
);
1557 } else fra
.me
.REG
[3] = once_value_1
;
1558 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1559 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1560 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
1561 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1562 if (!once_value_2
) {
1563 fra
.me
.REG
[3] = BOX_NativeString("[0m");
1565 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
1566 once_value_2
= fra
.me
.REG
[3];
1567 register_static_object(&once_value_2
);
1568 } else fra
.me
.REG
[3] = once_value_2
;
1569 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1570 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1571 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1572 /* location.nit:156 */
1574 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
1575 if (!once_value_3
) {
1576 fra
.me
.REG
[4] = BOX_NativeString("");
1578 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
1579 once_value_3
= fra
.me
.REG
[4];
1580 register_static_object(&once_value_3
);
1581 } else fra
.me
.REG
[4] = once_value_3
;
1582 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1583 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1584 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
1585 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1586 if (!once_value_4
) {
1587 fra
.me
.REG
[4] = BOX_NativeString("[");
1589 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
1590 once_value_4
= fra
.me
.REG
[4];
1591 register_static_object(&once_value_4
);
1592 } else fra
.me
.REG
[4] = once_value_4
;
1593 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1594 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1595 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1596 if (!once_value_5
) {
1597 fra
.me
.REG
[1] = BOX_NativeString("m");
1599 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
1600 once_value_5
= fra
.me
.REG
[1];
1601 register_static_object(&once_value_5
);
1602 } else fra
.me
.REG
[1] = once_value_5
;
1603 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1604 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1605 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1606 /* location.nit:159 */
1607 REGB0
= CALL_location___Location___line_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1608 /* location.nit:160 */
1609 fra
.me
.REG
[1] = CALL_location___Location___file(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1610 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1611 if (UNTAG_Bool(REGB1
)) {
1612 nit_abort("Reciever is null", NULL
, LOCATE_location
, 160);
1614 fra
.me
.REG
[1] = CALL_location___SourceFile___line_starts(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1616 /* ../lib/standard/kernel.nit:240 */
1617 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
1618 /* ../lib/standard/collection/array.nit:280 */
1620 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1621 if (UNTAG_Bool(REGB3
)) {
1623 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1625 /* ../lib/standard/kernel.nit:236 */
1626 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB2
));
1627 /* ../lib/standard/collection/array.nit:280 */
1628 if (UNTAG_Bool(REGB2
)) {
1629 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
1630 if (UNTAG_Bool(REGB2
)) {
1632 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 280);
1634 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
1635 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1636 if (UNTAG_Bool(REGB3
)) {
1638 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1640 /* ../lib/standard/kernel.nit:235 */
1641 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB2
));
1643 /* ../lib/standard/collection/array.nit:280 */
1644 REGB3
= TAG_Bool(0);
1647 if (UNTAG_Bool(REGB2
)) {
1649 nit_abort("Assert '%s' failed", "index", LOCATE_standard___collection___array
, 280);
1651 /* ../lib/standard/collection/array.nit:281 */
1652 fra
.me
.REG
[1] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
1653 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1654 if (UNTAG_Bool(REGB2
)) {
1655 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 281);
1657 /* ../lib/standard/collection/array.nit:718 */
1658 fra
.me
.REG
[1] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB1
)];
1659 /* ../lib/standard/collection/array.nit:281 */
1662 /* location.nit:160 */
1663 REGB1
= fra
.me
.REG
[1];
1664 /* location.nit:161 */
1666 /* location.nit:162 */
1667 fra
.me
.REG
[1] = CALL_location___Location___file(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1668 REGB3
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1669 if (UNTAG_Bool(REGB3
)) {
1670 nit_abort("Reciever is null", NULL
, LOCATE_location
, 162);
1672 fra
.me
.REG
[1] = CALL_location___SourceFile___string(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1673 /* location.nit:163 */
1676 /* ../lib/standard/kernel.nit:238 */
1677 REGB3
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB3
));
1678 /* ../lib/standard/collection/array.nit:24 */
1679 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
1680 if (UNTAG_Bool(REGB4
)) {
1682 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1684 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
1685 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
1686 if (UNTAG_Bool(REGB5
)) {
1688 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1690 /* ../lib/standard/kernel.nit:235 */
1691 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB4
));
1692 /* location.nit:163 */
1693 if (UNTAG_Bool(REGB4
)) {
1695 /* ../lib/standard/kernel.nit:238 */
1696 REGB4
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB4
));
1697 /* location.nit:163 */
1698 REGB4
= CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB4
);
1699 REGB3
= TAG_Char('\n');
1700 REGB5
= TAG_Bool(IS_EQUAL_OO(REGB4
,REGB3
));
1701 if (UNTAG_Bool(REGB5
)) {
1703 /* ../lib/standard/kernel.nit:381 */
1704 REGB3
= TAG_Bool((REGB4
)==(REGB3
));
1705 /* location.nit:163 */
1708 REGB5
= TAG_Bool(!UNTAG_Bool(REGB5
));
1710 REGB3
= TAG_Bool(0);
1713 if (UNTAG_Bool(REGB5
)) {
1715 /* ../lib/standard/kernel.nit:238 */
1716 REGB5
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB5
));
1717 /* location.nit:163 */
1718 REGB5
= CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB5
);
1719 REGB3
= TAG_Char('\r');
1720 REGB4
= TAG_Bool(IS_EQUAL_OO(REGB5
,REGB3
));
1721 if (UNTAG_Bool(REGB4
)) {
1723 /* ../lib/standard/kernel.nit:381 */
1724 REGB3
= TAG_Bool((REGB5
)==(REGB3
));
1725 /* location.nit:163 */
1728 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
1730 REGB3
= TAG_Bool(0);
1733 if (UNTAG_Bool(REGB4
)) {
1734 /* location.nit:164 */
1736 /* ../lib/standard/kernel.nit:238 */
1737 REGB4
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB4
));
1738 /* location.nit:164 */
1741 /* location.nit:163 */
1746 /* location.nit:166 */
1747 REGB4
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1749 /* ../lib/standard/kernel.nit:240 */
1750 REGB3
= TAG_Int(UNTAG_Int(REGB4
)-UNTAG_Int(REGB3
));
1751 /* location.nit:166 */
1752 fra
.me
.REG
[4] = CALL_standard___string___AbstractString___substring(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB1
, REGB3
);
1753 /* location.nit:168 */
1754 REGB3
= CALL_location___Location___line_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1755 REGB4
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB3
));
1756 if (UNTAG_Bool(REGB4
)) {
1758 /* ../lib/standard/kernel.nit:230 */
1759 REGB3
= TAG_Bool((REGB0
)==(REGB3
));
1760 /* location.nit:168 */
1763 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
1764 if (UNTAG_Bool(REGB4
)) {
1765 /* ../lib/standard/kernel.nit:240 */
1766 REGB4
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB1
));
1767 /* location.nit:169 */
1769 /* ../lib/standard/kernel.nit:238 */
1770 REGB3
= TAG_Int(UNTAG_Int(REGB4
)+UNTAG_Int(REGB3
));
1771 /* location.nit:169 */
1772 fra
.me
.REG
[5] = REGB3
;
1774 /* location.nit:171 */
1775 REGB3
= CALL_location___Location___column_end(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1776 fra
.me
.REG
[5] = REGB3
;
1778 /* ../lib/standard/kernel.nit:238 */
1779 REGB3
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(fra
.me
.REG
[5]));
1780 /* ../lib/standard/collection/array.nit:24 */
1781 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
1782 if (UNTAG_Bool(REGB4
)) {
1784 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 24);
1786 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
1787 REGB0
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
1788 if (UNTAG_Bool(REGB0
)) {
1790 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1792 /* ../lib/standard/kernel.nit:234 */
1793 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)<=UNTAG_Int(REGB4
));
1794 /* location.nit:175 */
1795 if (UNTAG_Bool(REGB4
)) {
1796 /* location.nit:176 */
1797 REGB4
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1798 /* ../lib/standard/kernel.nit:238 */
1799 REGB4
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB4
));
1800 /* location.nit:176 */
1802 /* ../lib/standard/kernel.nit:240 */
1803 REGB3
= TAG_Int(UNTAG_Int(REGB4
)-UNTAG_Int(REGB3
));
1804 /* location.nit:176 */
1805 REGB4
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1806 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1807 if (UNTAG_Bool(REGB0
)) {
1808 nit_abort("Reciever is null", NULL
, LOCATE_location
, 176);
1810 /* ../lib/standard/kernel.nit:240 */
1811 REGB4
= TAG_Int(UNTAG_Int(fra
.me
.REG
[5])-UNTAG_Int(REGB4
));
1812 /* location.nit:176 */
1814 /* ../lib/standard/kernel.nit:238 */
1815 REGB0
= TAG_Int(UNTAG_Int(REGB4
)+UNTAG_Int(REGB0
));
1816 /* location.nit:176 */
1817 fra
.me
.REG
[6] = CALL_standard___string___AbstractString___substring(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB3
, REGB0
);
1818 /* ../lib/standard/kernel.nit:238 */
1819 REGB0
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(fra
.me
.REG
[5]));
1820 /* ../lib/standard/kernel.nit:240 */
1821 REGB2
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(REGB1
));
1822 REGB2
= TAG_Int(UNTAG_Int(REGB2
)-UNTAG_Int(fra
.me
.REG
[5]));
1823 /* location.nit:177 */
1825 /* ../lib/standard/kernel.nit:238 */
1826 REGB3
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB3
));
1827 /* location.nit:177 */
1828 fra
.me
.REG
[5] = CALL_standard___string___AbstractString___substring(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
, REGB3
);
1830 /* location.nit:179 */
1831 if (!once_value_8
) {
1832 fra
.me
.REG
[7] = BOX_NativeString("");
1834 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB3
);
1835 once_value_8
= fra
.me
.REG
[7];
1836 register_static_object(&once_value_8
);
1837 } else fra
.me
.REG
[7] = once_value_8
;
1838 fra
.me
.REG
[7] = fra
.me
.REG
[7];
1839 fra
.me
.REG
[6] = fra
.me
.REG
[7];
1840 /* location.nit:180 */
1841 if (!once_value_9
) {
1842 fra
.me
.REG
[7] = BOX_NativeString("");
1844 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB3
);
1845 once_value_9
= fra
.me
.REG
[7];
1846 register_static_object(&once_value_9
);
1847 } else fra
.me
.REG
[7] = once_value_9
;
1848 fra
.me
.REG
[7] = fra
.me
.REG
[7];
1849 fra
.me
.REG
[5] = fra
.me
.REG
[7];
1851 /* location.nit:182 */
1852 fra
.me
.REG
[7] = NEW_Buffer_standard___string___Buffer___init();
1853 /* location.nit:183 */
1854 REGB3
= CALL_location___Location___column_start(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1855 /* ../lib/standard/kernel.nit:238 */
1856 REGB3
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB3
));
1857 /* location.nit:183 */
1859 /* ../lib/standard/kernel.nit:240 */
1860 REGB0
= TAG_Int(UNTAG_Int(REGB3
)-UNTAG_Int(REGB0
));
1861 /* ../lib/standard/kernel.nit:355 */
1863 REGB3
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1864 if (UNTAG_Bool(REGB3
)) {
1866 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1868 /* ../lib/standard/kernel.nit:235 */
1869 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
1870 /* ../lib/standard/kernel.nit:355 */
1871 if (UNTAG_Bool(REGB3
)) {
1872 /* location.nit:183 */
1874 /* location.nit:184 */
1875 REGB3
= CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB3
);
1876 REGB2
= TAG_Char('\t');
1877 REGB4
= TAG_Bool(IS_EQUAL_OO(REGB3
,REGB2
));
1878 if (UNTAG_Bool(REGB4
)) {
1880 /* ../lib/standard/kernel.nit:381 */
1881 REGB2
= TAG_Bool((REGB3
)==(REGB2
));
1882 /* location.nit:184 */
1885 if (UNTAG_Bool(REGB4
)) {
1886 /* location.nit:185 */
1887 REGB4
= TAG_Char('\t');
1888 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], REGB4
);
1890 /* location.nit:187 */
1891 REGB4
= TAG_Char(' ');
1892 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], REGB4
);
1894 /* ../lib/standard/kernel.nit:357 */
1896 /* ../lib/standard/kernel.nit:238 */
1897 REGB4
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB4
));
1898 /* ../lib/standard/kernel.nit:357 */
1901 /* ../lib/standard/kernel.nit:355 */
1906 /* location.nit:190 */
1907 REGB1
= TAG_Int(13);
1908 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
1909 if (!once_value_11
) {
1910 fra
.me
.REG
[0] = BOX_NativeString("\t");
1912 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB1
);
1913 once_value_11
= fra
.me
.REG
[0];
1914 register_static_object(&once_value_11
);
1915 } else fra
.me
.REG
[0] = once_value_11
;
1916 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1917 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1918 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
1919 if (!once_value_12
) {
1920 fra
.me
.REG
[4] = BOX_NativeString("");
1922 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB1
);
1923 once_value_12
= fra
.me
.REG
[4];
1924 register_static_object(&once_value_12
);
1925 } else fra
.me
.REG
[4] = once_value_12
;
1926 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1927 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
1928 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
1929 if (!once_value_13
) {
1930 fra
.me
.REG
[3] = BOX_NativeString("");
1932 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB1
);
1933 once_value_13
= fra
.me
.REG
[3];
1934 register_static_object(&once_value_13
);
1935 } else fra
.me
.REG
[3] = once_value_13
;
1936 fra
.me
.REG
[3] = fra
.me
.REG
[3];
1937 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
1938 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1939 if (!once_value_14
) {
1940 fra
.me
.REG
[6] = BOX_NativeString("");
1942 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB1
);
1943 once_value_14
= fra
.me
.REG
[6];
1944 register_static_object(&once_value_14
);
1945 } else fra
.me
.REG
[6] = once_value_14
;
1946 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1947 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1948 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1949 if (!once_value_15
) {
1950 fra
.me
.REG
[2] = BOX_NativeString("");
1952 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB1
);
1953 once_value_15
= fra
.me
.REG
[2];
1954 register_static_object(&once_value_15
);
1955 } else fra
.me
.REG
[2] = once_value_15
;
1956 fra
.me
.REG
[2] = fra
.me
.REG
[2];
1957 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1958 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[5]);
1959 if (!once_value_16
) {
1960 fra
.me
.REG
[5] = BOX_NativeString("\n\t");
1962 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB1
);
1963 once_value_16
= fra
.me
.REG
[5];
1964 register_static_object(&once_value_16
);
1965 } else fra
.me
.REG
[5] = once_value_16
;
1966 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1967 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[5]);
1968 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
1969 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[7]);
1970 if (!once_value_17
) {
1971 fra
.me
.REG
[7] = BOX_NativeString("^");
1973 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB1
);
1974 once_value_17
= fra
.me
.REG
[7];
1975 register_static_object(&once_value_17
);
1976 } else fra
.me
.REG
[7] = once_value_17
;
1977 fra
.me
.REG
[7] = fra
.me
.REG
[7];
1978 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[7]);
1979 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1982 stack_frame_head
= fra
.me
.prev
;
1983 return fra
.me
.REG
[1];