misc/vim: inform the user when no results are found
[nit.git] / c_src / nit__lexer_work.sep.1.c
1 #include "nit__lexer_work.sep.0.h"
2 /* method lexer_work#Token#text for (self: Token): String */
3 val* nit__lexer_work___Token___text(val* self) {
4 val* var /* : String */;
5 val* var1 /* : nullable String */;
6 val* var_res /* var res: nullable String */;
7 val* var2 /* : null */;
8 short int var3 /* : Bool */;
9 short int var4 /* : Bool */;
10 val* var_other /* var other: nullable Object */;
11 short int var6 /* : Bool */;
12 short int var7 /* : Bool */;
13 val* var8 /* : Location */;
14 val* var10 /* : Location */;
15 val* var11 /* : String */;
16 var1 = self->attrs[COLOR_nit__lexer_work__Token___cached_text].val; /* _cached_text on <self:Token> */
17 var_res = var1;
18 var2 = NULL;
19 if (var_res == NULL) {
20 var3 = 0; /* is null */
21 } else {
22 var3 = 1; /* arg is null and recv is not */
23 }
24 if (0) {
25 { /* Inline kernel#Object#!= (var_res,var2) on <var_res:nullable String> */
26 var_other = var2;
27 {
28 var6 = ((short int (*)(val* self, val* p0))(var_res->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_res, var_other) /* == on <var_res:nullable String(String)>*/;
29 }
30 var7 = !var6;
31 var4 = var7;
32 goto RET_LABEL5;
33 RET_LABEL5:(void)0;
34 }
35 var3 = var4;
36 }
37 if (var3){
38 var = var_res;
39 goto RET_LABEL;
40 } else {
41 }
42 {
43 { /* Inline parser_nodes#ANode#location (self) on <self:Token> */
44 var10 = self->attrs[COLOR_nit__parser_nodes__ANode___location].val; /* _location on <self:Token> */
45 if (unlikely(var10 == NULL)) {
46 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
47 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 23);
48 show_backtrace(1);
49 }
50 var8 = var10;
51 RET_LABEL9:(void)0;
52 }
53 }
54 {
55 var11 = nit___nit__Location___text(var8);
56 }
57 var_res = var11;
58 self->attrs[COLOR_nit__lexer_work__Token___cached_text].val = var_res; /* _cached_text on <self:Token> */
59 var = var_res;
60 goto RET_LABEL;
61 RET_LABEL:;
62 return var;
63 }
64 /* method lexer_work#EOF#init_tk for (self: EOF, Location) */
65 void nit__lexer_work___EOF___init_tk(val* self, val* p0) {
66 val* var_loc /* var loc: Location */;
67 static val* varonce;
68 val* var /* : String */;
69 char* var1 /* : NativeString */;
70 long var2 /* : Int */;
71 val* var3 /* : FlatString */;
72 var_loc = p0;
73 if (varonce) {
74 var = varonce;
75 } else {
76 var1 = "";
77 var2 = 0;
78 var3 = standard___standard__NativeString___to_s_with_length(var1, var2);
79 var = var3;
80 varonce = var;
81 }
82 self->attrs[COLOR_nit__lexer_work__Token___cached_text].val = var; /* _cached_text on <self:EOF> */
83 self->attrs[COLOR_nit__parser_nodes__ANode___location].val = var_loc; /* _location on <self:EOF> */
84 RET_LABEL:;
85 }
86 /* method lexer_work#AError#message for (self: AError): String */
87 val* nit__lexer_work___AError___message(val* self) {
88 val* var /* : String */;
89 val* var1 /* : String */;
90 var1 = self->attrs[COLOR_nit__lexer_work__AError___message].val; /* _message on <self:AError> */
91 if (unlikely(var1 == NULL)) {
92 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _message");
93 PRINT_ERROR(" (%s:%d)\n", FILE_nit__lexer_work, 50);
94 show_backtrace(1);
95 }
96 var = var1;
97 RET_LABEL:;
98 return var;
99 }
100 /* method lexer_work#AError#message= for (self: AError, String) */
101 void nit__lexer_work___AError___message_61d(val* self, val* p0) {
102 self->attrs[COLOR_nit__lexer_work__AError___message].val = p0; /* _message on <self:AError> */
103 RET_LABEL:;
104 }
105 /* method lexer_work#AError#init_error for (self: AError, String, Location) */
106 void nit__lexer_work___AError___init_error(val* self, val* p0, val* p1) {
107 val* var_message /* var message: String */;
108 val* var_loc /* var loc: Location */;
109 var_message = p0;
110 var_loc = p1;
111 {
112 nit__lexer_work___EOF___init_tk(self, var_loc); /* Direct call lexer_work#EOF#init_tk on <self:AError>*/
113 }
114 {
115 { /* Inline lexer_work#AError#message= (self,var_message) on <self:AError> */
116 self->attrs[COLOR_nit__lexer_work__AError___message].val = var_message; /* _message on <self:AError> */
117 RET_LABEL1:(void)0;
118 }
119 }
120 RET_LABEL:;
121 }
122 /* method lexer_work#ALexerError#string= for (self: ALexerError, String) */
123 void nit__lexer_work___ALexerError___string_61d(val* self, val* p0) {
124 self->attrs[COLOR_nit__lexer_work__ALexerError___string].val = p0; /* _string on <self:ALexerError> */
125 RET_LABEL:;
126 }
127 /* method lexer_work#ALexerError#init_lexer_error for (self: ALexerError, String, Location, String) */
128 void nit__lexer_work___ALexerError___init_lexer_error(val* self, val* p0, val* p1, val* p2) {
129 val* var_message /* var message: String */;
130 val* var_loc /* var loc: Location */;
131 val* var_string /* var string: String */;
132 var_message = p0;
133 var_loc = p1;
134 var_string = p2;
135 {
136 nit__lexer_work___AError___init_error(self, var_message, var_loc); /* Direct call lexer_work#AError#init_error on <self:ALexerError>*/
137 }
138 {
139 { /* Inline lexer_work#ALexerError#string= (self,var_string) on <self:ALexerError> */
140 self->attrs[COLOR_nit__lexer_work__ALexerError___string].val = var_string; /* _string on <self:ALexerError> */
141 RET_LABEL1:(void)0;
142 }
143 }
144 RET_LABEL:;
145 }
146 /* method lexer_work#AParserError#token= for (self: AParserError, Token) */
147 void nit__lexer_work___AParserError___token_61d(val* self, val* p0) {
148 self->attrs[COLOR_nit__lexer_work__AParserError___token].val = p0; /* _token on <self:AParserError> */
149 RET_LABEL:;
150 }
151 /* method lexer_work#AParserError#init_parser_error for (self: AParserError, String, Location, Token) */
152 void nit__lexer_work___AParserError___init_parser_error(val* self, val* p0, val* p1, val* p2) {
153 val* var_message /* var message: String */;
154 val* var_loc /* var loc: Location */;
155 val* var_token /* var token: Token */;
156 var_message = p0;
157 var_loc = p1;
158 var_token = p2;
159 {
160 nit__lexer_work___AError___init_error(self, var_message, var_loc); /* Direct call lexer_work#AError#init_error on <self:AParserError>*/
161 }
162 {
163 { /* Inline lexer_work#AParserError#token= (self,var_token) on <self:AParserError> */
164 self->attrs[COLOR_nit__lexer_work__AParserError___token].val = var_token; /* _token on <self:AParserError> */
165 RET_LABEL1:(void)0;
166 }
167 }
168 RET_LABEL:;
169 }
170 /* method lexer_work#Lexer#file for (self: Lexer): SourceFile */
171 val* nit___nit__Lexer___file(val* self) {
172 val* var /* : SourceFile */;
173 val* var1 /* : SourceFile */;
174 var1 = self->attrs[COLOR_nit__lexer_work__Lexer___file].val; /* _file on <self:Lexer> */
175 if (unlikely(var1 == NULL)) {
176 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _file");
177 PRINT_ERROR(" (%s:%d)\n", FILE_nit__lexer_work, 90);
178 show_backtrace(1);
179 }
180 var = var1;
181 RET_LABEL:;
182 return var;
183 }
184 /* method lexer_work#Lexer#file= for (self: Lexer, SourceFile) */
185 void nit___nit__Lexer___file_61d(val* self, val* p0) {
186 self->attrs[COLOR_nit__lexer_work__Lexer___file].val = p0; /* _file on <self:Lexer> */
187 RET_LABEL:;
188 }
189 /* method lexer_work#Lexer#last_token for (self: Lexer): nullable Token */
190 val* nit___nit__Lexer___last_token(val* self) {
191 val* var /* : nullable Token */;
192 val* var1 /* : nullable Token */;
193 var1 = self->attrs[COLOR_nit__lexer_work__Lexer___last_token].val; /* _last_token on <self:Lexer> */
194 var = var1;
195 RET_LABEL:;
196 return var;
197 }
198 /* method lexer_work#Lexer#last_token= for (self: Lexer, nullable Token) */
199 void nit___nit__Lexer___last_token_61d(val* self, val* p0) {
200 self->attrs[COLOR_nit__lexer_work__Lexer___last_token].val = p0; /* _last_token on <self:Lexer> */
201 RET_LABEL:;
202 }
203 /* method lexer_work#Lexer#peek for (self: Lexer): Token */
204 val* nit___nit__Lexer___peek(val* self) {
205 val* var /* : Token */;
206 val* var1 /* : nullable Token */;
207 val* var_t /* var t: nullable Token */;
208 val* var2 /* : null */;
209 short int var3 /* : Bool */;
210 short int var4 /* : Bool */;
211 val* var_other /* var other: nullable Object */;
212 short int var6 /* : Bool */;
213 short int var7 /* : Bool */;
214 val* var8 /* : nullable Token */;
215 val* var9 /* : null */;
216 short int var10 /* : Bool */;
217 short int var11 /* : Bool */;
218 val* var_other13 /* var other: nullable Object */;
219 short int var14 /* : Bool */;
220 short int var16 /* : Bool */;
221 val* var17 /* : nullable Token */;
222 short int var18 /* : Bool */;
223 val* var19 /* : nullable Token */;
224 val* var21 /* : nullable Token */;
225 val* var_l /* var l: nullable Token */;
226 val* var22 /* : null */;
227 short int var23 /* : Bool */;
228 short int var24 /* : Bool */;
229 short int var26 /* : Bool */;
230 short int var27 /* : Bool */;
231 val* var30 /* : SourceFile */;
232 val* var32 /* : SourceFile */;
233 var1 = self->attrs[COLOR_nit__lexer_work__Lexer___token].val; /* _token on <self:Lexer> */
234 var_t = var1;
235 var2 = NULL;
236 if (var_t == NULL) {
237 var3 = 0; /* is null */
238 } else {
239 var3 = 1; /* arg is null and recv is not */
240 }
241 if (0) {
242 { /* Inline kernel#Object#!= (var_t,var2) on <var_t:nullable Token> */
243 var_other = var2;
244 {
245 var6 = ((short int (*)(val* self, val* p0))(var_t->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_t, var_other) /* == on <var_t:nullable Token(Token)>*/;
246 }
247 var7 = !var6;
248 var4 = var7;
249 goto RET_LABEL5;
250 RET_LABEL5:(void)0;
251 }
252 var3 = var4;
253 }
254 if (var3){
255 var = var_t;
256 goto RET_LABEL;
257 } else {
258 }
259 {
260 var8 = nit___nit__Lexer___get_token(self);
261 }
262 var_t = var8;
263 for(;;) {
264 var9 = NULL;
265 if (var_t == NULL) {
266 var10 = 1; /* is null */
267 } else {
268 var10 = 0; /* arg is null but recv is not */
269 }
270 if (0) {
271 { /* Inline kernel#Object#== (var_t,var9) on <var_t:nullable Token> */
272 var_other13 = var9;
273 {
274 { /* Inline kernel#Object#is_same_instance (var_t,var_other13) on <var_t:nullable Token(Token)> */
275 var16 = var_t == var_other13;
276 var14 = var16;
277 goto RET_LABEL15;
278 RET_LABEL15:(void)0;
279 }
280 }
281 var11 = var14;
282 goto RET_LABEL12;
283 RET_LABEL12:(void)0;
284 }
285 var10 = var11;
286 }
287 if (var10){
288 {
289 var17 = nit___nit__Lexer___get_token(self);
290 }
291 var_t = var17;
292 } else {
293 goto BREAK_label;
294 }
295 }
296 BREAK_label: (void)0;
297 var18 = var_t->attrs[COLOR_nit__parser_nodes__ANode___location].val != NULL; /* _location on <var_t:nullable Token(Token)> */
298 if (var18){
299 {
300 { /* Inline lexer_work#Lexer#last_token (self) on <self:Lexer> */
301 var21 = self->attrs[COLOR_nit__lexer_work__Lexer___last_token].val; /* _last_token on <self:Lexer> */
302 var19 = var21;
303 RET_LABEL20:(void)0;
304 }
305 }
306 var_l = var19;
307 var22 = NULL;
308 if (var_l == NULL) {
309 var23 = 0; /* is null */
310 } else {
311 var23 = 1; /* arg is null and recv is not */
312 }
313 if (0) {
314 { /* Inline kernel#Object#!= (var_l,var22) on <var_l:nullable Token> */
315 var_other = var22;
316 {
317 var26 = ((short int (*)(val* self, val* p0))(var_l->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_l, var_other) /* == on <var_l:nullable Token(Token)>*/;
318 }
319 var27 = !var26;
320 var24 = var27;
321 goto RET_LABEL25;
322 RET_LABEL25:(void)0;
323 }
324 var23 = var24;
325 }
326 if (var23){
327 {
328 { /* Inline parser_nodes#Token#next_token= (var_l,var_t) on <var_l:nullable Token(Token)> */
329 var_l->attrs[COLOR_nit__parser_nodes__Token___next_token].val = var_t; /* _next_token on <var_l:nullable Token(Token)> */
330 RET_LABEL28:(void)0;
331 }
332 }
333 {
334 { /* Inline parser_nodes#Token#prev_token= (var_t,var_l) on <var_t:nullable Token(Token)> */
335 var_t->attrs[COLOR_nit__parser_nodes__Token___prev_token].val = var_l; /* _prev_token on <var_t:nullable Token(Token)> */
336 RET_LABEL29:(void)0;
337 }
338 }
339 } else {
340 {
341 { /* Inline lexer_work#Lexer#file (self) on <self:Lexer> */
342 var32 = self->attrs[COLOR_nit__lexer_work__Lexer___file].val; /* _file on <self:Lexer> */
343 if (unlikely(var32 == NULL)) {
344 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _file");
345 PRINT_ERROR(" (%s:%d)\n", FILE_nit__lexer_work, 90);
346 show_backtrace(1);
347 }
348 var30 = var32;
349 RET_LABEL31:(void)0;
350 }
351 }
352 {
353 { /* Inline parser_nodes#SourceFile#first_token= (var30,var_t) on <var30:SourceFile> */
354 var30->attrs[COLOR_nit__parser_nodes__SourceFile___first_token].val = var_t; /* _first_token on <var30:SourceFile> */
355 RET_LABEL33:(void)0;
356 }
357 }
358 }
359 {
360 { /* Inline lexer_work#Lexer#last_token= (self,var_t) on <self:Lexer> */
361 self->attrs[COLOR_nit__lexer_work__Lexer___last_token].val = var_t; /* _last_token on <self:Lexer> */
362 RET_LABEL34:(void)0;
363 }
364 }
365 } else {
366 }
367 self->attrs[COLOR_nit__lexer_work__Lexer___token].val = var_t; /* _token on <self:Lexer> */
368 var = var_t;
369 goto RET_LABEL;
370 RET_LABEL:;
371 return var;
372 }
373 /* method lexer_work#Lexer#next for (self: Lexer): Token */
374 val* nit___nit__Lexer___next(val* self) {
375 val* var /* : Token */;
376 val* var1 /* : Token */;
377 val* var_result /* var result: Token */;
378 val* var2 /* : null */;
379 {
380 var1 = nit___nit__Lexer___peek(self);
381 }
382 var_result = var1;
383 var2 = NULL;
384 self->attrs[COLOR_nit__lexer_work__Lexer___token].val = var2; /* _token on <self:Lexer> */
385 var = var_result;
386 goto RET_LABEL;
387 RET_LABEL:;
388 return var;
389 }
390 /* method lexer_work#Lexer#get_token for (self: Lexer): nullable Token */
391 val* nit___nit__Lexer___get_token(val* self) {
392 val* var /* : nullable Token */;
393 long var1 /* : Int */;
394 long var_dfa_state /* var dfa_state: Int */;
395 long var2 /* : Int */;
396 long var_sp /* var sp: Int */;
397 long var_start_stream_pos /* var start_stream_pos: Int */;
398 long var3 /* : Int */;
399 long var_start_pos /* var start_pos: Int */;
400 long var4 /* : Int */;
401 long var_start_line /* var start_line: Int */;
402 val* var5 /* : SourceFile */;
403 val* var7 /* : SourceFile */;
404 val* var_file /* var file: SourceFile */;
405 val* var8 /* : String */;
406 val* var10 /* : String */;
407 val* var_string /* var string: String */;
408 long var11 /* : Int */;
409 long var_string_len /* var string_len: Int */;
410 long var12 /* : Int */;
411 long var13 /* : Int */;
412 long var15 /* : Int */;
413 long var_accept_state /* var accept_state: Int */;
414 long var16 /* : Int */;
415 long var17 /* : Int */;
416 long var19 /* : Int */;
417 long var_accept_token /* var accept_token: Int */;
418 long var20 /* : Int */;
419 long var21 /* : Int */;
420 long var23 /* : Int */;
421 long var_accept_length /* var accept_length: Int */;
422 long var24 /* : Int */;
423 long var25 /* : Int */;
424 long var27 /* : Int */;
425 long var_accept_pos /* var accept_pos: Int */;
426 long var28 /* : Int */;
427 long var29 /* : Int */;
428 long var31 /* : Int */;
429 long var_accept_line /* var accept_line: Int */;
430 short int var32 /* : Bool */;
431 short int var34 /* : Bool */;
432 int cltype;
433 int idtype;
434 const char* var_class_name;
435 short int var35 /* : Bool */;
436 long var36 /* : Int */;
437 long var37 /* : Int */;
438 long var39 /* : Int */;
439 char var40 /* : Char */;
440 long var41 /* : Int */;
441 long var43 /* : Int */;
442 long var_c /* var c: Int */;
443 long var44 /* : Int */;
444 long var45 /* : Int */;
445 short int var47 /* : Bool */;
446 int cltype48;
447 int idtype49;
448 const char* var_class_name50;
449 long var51 /* : Int */;
450 short int var52 /* : Bool */;
451 short int var_cr /* var cr: Bool */;
452 long var53 /* : Int */;
453 long var_line /* var line: Int */;
454 long var54 /* : Int */;
455 long var_pos /* var pos: Int */;
456 long var55 /* : Int */;
457 short int var56 /* : Bool */;
458 short int var58 /* : Bool */;
459 short int var59 /* : Bool */;
460 val* var60 /* : Array[Int] */;
461 val* var62 /* : Array[Int] */;
462 val* var63 /* : nullable Object */;
463 long var64 /* : Int */;
464 long var65 /* : Int */;
465 short int var67 /* : Bool */;
466 int cltype68;
467 int idtype69;
468 const char* var_class_name70;
469 long var71 /* : Int */;
470 long var72 /* : Int */;
471 val* var73 /* : Array[Int] */;
472 val* var75 /* : Array[Int] */;
473 val* var76 /* : nullable Object */;
474 long var77 /* : Int */;
475 short int var78 /* : Bool */;
476 short int var80 /* : Bool */;
477 long var81 /* : Int */;
478 long var82 /* : Int */;
479 short int var84 /* : Bool */;
480 int cltype85;
481 int idtype86;
482 const char* var_class_name87;
483 long var88 /* : Int */;
484 long var89 /* : Int */;
485 short int var90 /* : Bool */;
486 val* var91 /* : Array[Int] */;
487 val* var93 /* : Array[Int] */;
488 val* var94 /* : nullable Object */;
489 long var95 /* : Int */;
490 long var96 /* : Int */;
491 short int var98 /* : Bool */;
492 int cltype99;
493 int idtype100;
494 const char* var_class_name101;
495 long var102 /* : Int */;
496 short int var103 /* : Bool */;
497 long var_old_state /* var old_state: Int */;
498 long var104 /* : Int */;
499 long var105 /* : Int */;
500 long var107 /* : Int */;
501 short int var108 /* : Bool */;
502 short int var110 /* : Bool */;
503 int cltype111;
504 int idtype112;
505 const char* var_class_name113;
506 short int var114 /* : Bool */;
507 long var115 /* : Int */;
508 long var116 /* : Int */;
509 long var118 /* : Int */;
510 long var119 /* : Int */;
511 short int var121 /* : Bool */;
512 int cltype122;
513 int idtype123;
514 const char* var_class_name124;
515 long var125 /* : Int */;
516 long var126 /* : Int */;
517 long var127 /* : Int */;
518 long var129 /* : Int */;
519 long var130 /* : Int */;
520 long var_low /* var low: Int */;
521 long var131 /* : Int */;
522 long var132 /* : Int */;
523 long var134 /* : Int for extern */;
524 long var135 /* : Int */;
525 long var136 /* : Int */;
526 short int var138 /* : Bool */;
527 int cltype139;
528 int idtype140;
529 const char* var_class_name141;
530 long var142 /* : Int */;
531 long var_high /* var high: Int */;
532 long var143 /* : Int */;
533 short int var144 /* : Bool */;
534 short int var146 /* : Bool */;
535 int cltype147;
536 int idtype148;
537 const char* var_class_name149;
538 short int var150 /* : Bool */;
539 short int var151 /* : Bool */;
540 short int var153 /* : Bool */;
541 int cltype154;
542 int idtype155;
543 const char* var_class_name156;
544 short int var157 /* : Bool */;
545 long var158 /* : Int */;
546 short int var160 /* : Bool */;
547 int cltype161;
548 int idtype162;
549 const char* var_class_name163;
550 long var164 /* : Int */;
551 long var165 /* : Int */;
552 long var166 /* : Int */;
553 short int var168 /* : Bool */;
554 int cltype169;
555 int idtype170;
556 const char* var_class_name171;
557 long var172 /* : Int */;
558 long var_middle /* var middle: Int */;
559 long var173 /* : Int */;
560 long var174 /* : Int */;
561 short int var176 /* : Bool */;
562 int cltype177;
563 int idtype178;
564 const char* var_class_name179;
565 long var180 /* : Int */;
566 long var181 /* : Int */;
567 long var182 /* : Int */;
568 short int var184 /* : Bool */;
569 int cltype185;
570 int idtype186;
571 const char* var_class_name187;
572 long var188 /* : Int */;
573 long var_offset /* var offset: Int */;
574 long var189 /* : Int */;
575 long var191 /* : Int for extern */;
576 short int var192 /* : Bool */;
577 short int var194 /* : Bool */;
578 int cltype195;
579 int idtype196;
580 const char* var_class_name197;
581 short int var198 /* : Bool */;
582 long var199 /* : Int */;
583 long var200 /* : Int */;
584 short int var202 /* : Bool */;
585 int cltype203;
586 int idtype204;
587 const char* var_class_name205;
588 long var206 /* : Int */;
589 long var207 /* : Int */;
590 long var208 /* : Int */;
591 short int var210 /* : Bool */;
592 int cltype211;
593 int idtype212;
594 const char* var_class_name213;
595 long var214 /* : Int */;
596 long var215 /* : Int */;
597 long var217 /* : Int for extern */;
598 short int var218 /* : Bool */;
599 short int var220 /* : Bool */;
600 int cltype221;
601 int idtype222;
602 const char* var_class_name223;
603 short int var224 /* : Bool */;
604 long var225 /* : Int */;
605 long var226 /* : Int */;
606 short int var228 /* : Bool */;
607 int cltype229;
608 int idtype230;
609 const char* var_class_name231;
610 long var232 /* : Int */;
611 long var233 /* : Int */;
612 long var234 /* : Int */;
613 short int var236 /* : Bool */;
614 int cltype237;
615 int idtype238;
616 const char* var_class_name239;
617 long var240 /* : Int */;
618 long var241 /* : Int */;
619 long var243 /* : Int for extern */;
620 long var244 /* : Int */;
621 long var245 /* : Int */;
622 long var247 /* : Int */;
623 short int var248 /* : Bool */;
624 short int var250 /* : Bool */;
625 int cltype251;
626 int idtype252;
627 const char* var_class_name253;
628 short int var254 /* : Bool */;
629 long var256 /* : Int */;
630 short int var257 /* : Bool */;
631 short int var259 /* : Bool */;
632 int cltype260;
633 int idtype261;
634 const char* var_class_name262;
635 short int var263 /* : Bool */;
636 long var264 /* : Int */;
637 long var266 /* : Int for extern */;
638 long var_tok /* var tok: Int */;
639 long var267 /* : Int */;
640 long var268 /* : Int */;
641 long var270 /* : Int */;
642 short int var271 /* : Bool */;
643 short int var273 /* : Bool */;
644 short int var274 /* : Bool */;
645 long var275 /* : Int */;
646 short int var277 /* : Bool */;
647 int cltype278;
648 int idtype279;
649 const char* var_class_name280;
650 long var281 /* : Int */;
651 long var282 /* : Int */;
652 long var283 /* : Int */;
653 long var284 /* : Int */;
654 long var285 /* : Int */;
655 long var287 /* : Int */;
656 short int var288 /* : Bool */;
657 short int var290 /* : Bool */;
658 short int var291 /* : Bool */;
659 val* var292 /* : Location */;
660 long var293 /* : Int */;
661 long var294 /* : Int */;
662 short int var296 /* : Bool */;
663 int cltype297;
664 int idtype298;
665 const char* var_class_name299;
666 long var300 /* : Int */;
667 long var301 /* : Int */;
668 long var302 /* : Int */;
669 short int var304 /* : Bool */;
670 int cltype305;
671 int idtype306;
672 const char* var_class_name307;
673 long var308 /* : Int */;
674 long var309 /* : Int */;
675 long var310 /* : Int */;
676 short int var312 /* : Bool */;
677 int cltype313;
678 int idtype314;
679 const char* var_class_name315;
680 long var316 /* : Int */;
681 val* var_location /* var location: Location */;
682 long var317 /* : Int */;
683 short int var319 /* : Bool */;
684 int cltype320;
685 int idtype321;
686 const char* var_class_name322;
687 long var323 /* : Int */;
688 long var324 /* : Int */;
689 short int var325 /* : Bool */;
690 short int var327 /* : Bool */;
691 val* var328 /* : null */;
692 val* var329 /* : Token */;
693 val* var330 /* : Location */;
694 long var331 /* : Int */;
695 long var332 /* : Int */;
696 short int var334 /* : Bool */;
697 int cltype335;
698 int idtype336;
699 const char* var_class_name337;
700 long var338 /* : Int */;
701 long var339 /* : Int */;
702 long var340 /* : Int */;
703 short int var342 /* : Bool */;
704 int cltype343;
705 int idtype344;
706 const char* var_class_name345;
707 long var346 /* : Int */;
708 long var347 /* : Int */;
709 long var348 /* : Int */;
710 short int var350 /* : Bool */;
711 int cltype351;
712 int idtype352;
713 const char* var_class_name353;
714 long var354 /* : Int */;
715 long var355 /* : Int */;
716 long var356 /* : Int */;
717 short int var358 /* : Bool */;
718 int cltype359;
719 int idtype360;
720 const char* var_class_name361;
721 long var362 /* : Int */;
722 val* var_location363 /* var location: Location */;
723 short int var364 /* : Bool */;
724 short int var366 /* : Bool */;
725 int cltype367;
726 int idtype368;
727 const char* var_class_name369;
728 short int var370 /* : Bool */;
729 long var371 /* : Int */;
730 short int var373 /* : Bool */;
731 int cltype374;
732 int idtype375;
733 const char* var_class_name376;
734 long var377 /* : Int */;
735 val* var378 /* : Text */;
736 val* var_text /* var text: String */;
737 val* var379 /* : ALexerError */;
738 static val* varonce;
739 val* var380 /* : String */;
740 char* var381 /* : NativeString */;
741 long var382 /* : Int */;
742 val* var383 /* : FlatString */;
743 static val* varonce384;
744 val* var385 /* : String */;
745 char* var386 /* : NativeString */;
746 long var387 /* : Int */;
747 val* var388 /* : FlatString */;
748 val* var389 /* : Array[Object] */;
749 long var390 /* : Int */;
750 val* var391 /* : NativeArray[Object] */;
751 val* var392 /* : String */;
752 val* var_token /* var token: ALexerError */;
753 val* var394 /* : EOF */;
754 val* var_token395 /* var token: EOF */;
755 var1 = 0;
756 var_dfa_state = var1;
757 var2 = self->attrs[COLOR_nit__lexer_work__Lexer___stream_pos].l; /* _stream_pos on <self:Lexer> */
758 var_sp = var2;
759 var_start_stream_pos = var_sp;
760 var3 = self->attrs[COLOR_nit__lexer_work__Lexer___pos].l; /* _pos on <self:Lexer> */
761 var_start_pos = var3;
762 var4 = self->attrs[COLOR_nit__lexer_work__Lexer___line].l; /* _line on <self:Lexer> */
763 var_start_line = var4;
764 {
765 { /* Inline lexer_work#Lexer#file (self) on <self:Lexer> */
766 var7 = self->attrs[COLOR_nit__lexer_work__Lexer___file].val; /* _file on <self:Lexer> */
767 if (unlikely(var7 == NULL)) {
768 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _file");
769 PRINT_ERROR(" (%s:%d)\n", FILE_nit__lexer_work, 90);
770 show_backtrace(1);
771 }
772 var5 = var7;
773 RET_LABEL6:(void)0;
774 }
775 }
776 var_file = var5;
777 {
778 { /* Inline location#SourceFile#string (var_file) on <var_file:SourceFile> */
779 var10 = var_file->attrs[COLOR_nit__location__SourceFile___string].val; /* _string on <var_file:SourceFile> */
780 if (unlikely(var10 == NULL)) {
781 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _string");
782 PRINT_ERROR(" (%s:%d)\n", FILE_nit__location, 25);
783 show_backtrace(1);
784 }
785 var8 = var10;
786 RET_LABEL9:(void)0;
787 }
788 }
789 var_string = var8;
790 {
791 var11 = ((long (*)(val* self))(var_string->class->vft[COLOR_standard__string__Text__length]))(var_string) /* length on <var_string:String>*/;
792 }
793 var_string_len = var11;
794 var12 = 1;
795 {
796 { /* Inline kernel#Int#unary - (var12) on <var12:Int> */
797 var15 = -var12;
798 var13 = var15;
799 goto RET_LABEL14;
800 RET_LABEL14:(void)0;
801 }
802 }
803 var_accept_state = var13;
804 var16 = 1;
805 {
806 { /* Inline kernel#Int#unary - (var16) on <var16:Int> */
807 var19 = -var16;
808 var17 = var19;
809 goto RET_LABEL18;
810 RET_LABEL18:(void)0;
811 }
812 }
813 var_accept_token = var17;
814 var20 = 1;
815 {
816 { /* Inline kernel#Int#unary - (var20) on <var20:Int> */
817 var23 = -var20;
818 var21 = var23;
819 goto RET_LABEL22;
820 RET_LABEL22:(void)0;
821 }
822 }
823 var_accept_length = var21;
824 var24 = 1;
825 {
826 { /* Inline kernel#Int#unary - (var24) on <var24:Int> */
827 var27 = -var24;
828 var25 = var27;
829 goto RET_LABEL26;
830 RET_LABEL26:(void)0;
831 }
832 }
833 var_accept_pos = var25;
834 var28 = 1;
835 {
836 { /* Inline kernel#Int#unary - (var28) on <var28:Int> */
837 var31 = -var28;
838 var29 = var31;
839 goto RET_LABEL30;
840 RET_LABEL30:(void)0;
841 }
842 }
843 var_accept_line = var29;
844 for(;;) {
845 {
846 { /* Inline kernel#Int#>= (var_sp,var_string_len) on <var_sp:Int> */
847 /* Covariant cast for argument 0 (i) <var_string_len:Int> isa OTHER */
848 /* <var_string_len:Int> isa OTHER */
849 var34 = 1; /* easy <var_string_len:Int> isa OTHER*/
850 if (unlikely(!var34)) {
851 var_class_name = type_standard__Int.name;
852 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
853 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 411);
854 show_backtrace(1);
855 }
856 var35 = var_sp >= var_string_len;
857 var32 = var35;
858 goto RET_LABEL33;
859 RET_LABEL33:(void)0;
860 }
861 }
862 if (var32){
863 var36 = 1;
864 {
865 { /* Inline kernel#Int#unary - (var36) on <var36:Int> */
866 var39 = -var36;
867 var37 = var39;
868 goto RET_LABEL38;
869 RET_LABEL38:(void)0;
870 }
871 }
872 var_dfa_state = var37;
873 } else {
874 {
875 var40 = ((char (*)(val* self, long p0))(var_string->class->vft[COLOR_standard__string__Text___91d_93d]))(var_string, var_sp) /* [] on <var_string:String>*/;
876 }
877 {
878 { /* Inline kernel#Char#ascii (var40) on <var40:Char> */
879 var43 = (unsigned char)var40;
880 var41 = var43;
881 goto RET_LABEL42;
882 RET_LABEL42:(void)0;
883 }
884 }
885 var_c = var41;
886 var44 = 1;
887 {
888 { /* Inline kernel#Int#+ (var_sp,var44) on <var_sp:Int> */
889 /* Covariant cast for argument 0 (i) <var44:Int> isa OTHER */
890 /* <var44:Int> isa OTHER */
891 var47 = 1; /* easy <var44:Int> isa OTHER*/
892 if (unlikely(!var47)) {
893 var_class_name50 = type_standard__Int.name;
894 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name50);
895 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
896 show_backtrace(1);
897 }
898 var51 = var_sp + var44;
899 var45 = var51;
900 goto RET_LABEL46;
901 RET_LABEL46:(void)0;
902 }
903 }
904 var_sp = var45;
905 var52 = self->attrs[COLOR_nit__lexer_work__Lexer___cr].s; /* _cr on <self:Lexer> */
906 var_cr = var52;
907 var53 = self->attrs[COLOR_nit__lexer_work__Lexer___line].l; /* _line on <self:Lexer> */
908 var_line = var53;
909 var54 = self->attrs[COLOR_nit__lexer_work__Lexer___pos].l; /* _pos on <self:Lexer> */
910 var_pos = var54;
911 var55 = 10;
912 {
913 { /* Inline kernel#Int#== (var_c,var55) on <var_c:Int> */
914 var58 = var_c == var55;
915 var56 = var58;
916 goto RET_LABEL57;
917 RET_LABEL57:(void)0;
918 }
919 }
920 if (var56){
921 if (var_cr){
922 var59 = 0;
923 var_cr = var59;
924 {
925 { /* Inline location#SourceFile#line_starts (var_file) on <var_file:SourceFile> */
926 var62 = var_file->attrs[COLOR_nit__location__SourceFile___line_starts].val; /* _line_starts on <var_file:SourceFile> */
927 if (unlikely(var62 == NULL)) {
928 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _line_starts");
929 PRINT_ERROR(" (%s:%d)\n", FILE_nit__location, 45);
930 show_backtrace(1);
931 }
932 var60 = var62;
933 RET_LABEL61:(void)0;
934 }
935 }
936 {
937 var63 = BOX_standard__Int(var_sp); /* autobox from Int to nullable Object */
938 standard___standard__Array___standard__abstract_collection__Sequence___91d_93d_61d(var60, var_line, var63); /* Direct call array#Array#[]= on <var60:Array[Int]>*/
939 }
940 } else {
941 var64 = 1;
942 {
943 { /* Inline kernel#Int#+ (var_line,var64) on <var_line:Int> */
944 /* Covariant cast for argument 0 (i) <var64:Int> isa OTHER */
945 /* <var64:Int> isa OTHER */
946 var67 = 1; /* easy <var64:Int> isa OTHER*/
947 if (unlikely(!var67)) {
948 var_class_name70 = type_standard__Int.name;
949 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name70);
950 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
951 show_backtrace(1);
952 }
953 var71 = var_line + var64;
954 var65 = var71;
955 goto RET_LABEL66;
956 RET_LABEL66:(void)0;
957 }
958 }
959 var_line = var65;
960 var72 = 0;
961 var_pos = var72;
962 {
963 { /* Inline location#SourceFile#line_starts (var_file) on <var_file:SourceFile> */
964 var75 = var_file->attrs[COLOR_nit__location__SourceFile___line_starts].val; /* _line_starts on <var_file:SourceFile> */
965 if (unlikely(var75 == NULL)) {
966 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _line_starts");
967 PRINT_ERROR(" (%s:%d)\n", FILE_nit__location, 45);
968 show_backtrace(1);
969 }
970 var73 = var75;
971 RET_LABEL74:(void)0;
972 }
973 }
974 {
975 var76 = BOX_standard__Int(var_sp); /* autobox from Int to nullable Object */
976 standard___standard__Array___standard__abstract_collection__Sequence___91d_93d_61d(var73, var_line, var76); /* Direct call array#Array#[]= on <var73:Array[Int]>*/
977 }
978 }
979 } else {
980 var77 = 13;
981 {
982 { /* Inline kernel#Int#== (var_c,var77) on <var_c:Int> */
983 var80 = var_c == var77;
984 var78 = var80;
985 goto RET_LABEL79;
986 RET_LABEL79:(void)0;
987 }
988 }
989 if (var78){
990 var81 = 1;
991 {
992 { /* Inline kernel#Int#+ (var_line,var81) on <var_line:Int> */
993 /* Covariant cast for argument 0 (i) <var81:Int> isa OTHER */
994 /* <var81:Int> isa OTHER */
995 var84 = 1; /* easy <var81:Int> isa OTHER*/
996 if (unlikely(!var84)) {
997 var_class_name87 = type_standard__Int.name;
998 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name87);
999 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1000 show_backtrace(1);
1001 }
1002 var88 = var_line + var81;
1003 var82 = var88;
1004 goto RET_LABEL83;
1005 RET_LABEL83:(void)0;
1006 }
1007 }
1008 var_line = var82;
1009 var89 = 0;
1010 var_pos = var89;
1011 var90 = 1;
1012 var_cr = var90;
1013 {
1014 { /* Inline location#SourceFile#line_starts (var_file) on <var_file:SourceFile> */
1015 var93 = var_file->attrs[COLOR_nit__location__SourceFile___line_starts].val; /* _line_starts on <var_file:SourceFile> */
1016 if (unlikely(var93 == NULL)) {
1017 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _line_starts");
1018 PRINT_ERROR(" (%s:%d)\n", FILE_nit__location, 45);
1019 show_backtrace(1);
1020 }
1021 var91 = var93;
1022 RET_LABEL92:(void)0;
1023 }
1024 }
1025 {
1026 var94 = BOX_standard__Int(var_sp); /* autobox from Int to nullable Object */
1027 standard___standard__Array___standard__abstract_collection__Sequence___91d_93d_61d(var91, var_line, var94); /* Direct call array#Array#[]= on <var91:Array[Int]>*/
1028 }
1029 } else {
1030 var95 = 1;
1031 {
1032 { /* Inline kernel#Int#+ (var_pos,var95) on <var_pos:Int> */
1033 /* Covariant cast for argument 0 (i) <var95:Int> isa OTHER */
1034 /* <var95:Int> isa OTHER */
1035 var98 = 1; /* easy <var95:Int> isa OTHER*/
1036 if (unlikely(!var98)) {
1037 var_class_name101 = type_standard__Int.name;
1038 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name101);
1039 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1040 show_backtrace(1);
1041 }
1042 var102 = var_pos + var95;
1043 var96 = var102;
1044 goto RET_LABEL97;
1045 RET_LABEL97:(void)0;
1046 }
1047 }
1048 var_pos = var96;
1049 var103 = 0;
1050 var_cr = var103;
1051 }
1052 }
1053 for(;;) {
1054 var_old_state = var_dfa_state;
1055 var104 = 1;
1056 {
1057 { /* Inline kernel#Int#unary - (var104) on <var104:Int> */
1058 var107 = -var104;
1059 var105 = var107;
1060 goto RET_LABEL106;
1061 RET_LABEL106:(void)0;
1062 }
1063 }
1064 {
1065 { /* Inline kernel#Int#< (var_dfa_state,var105) on <var_dfa_state:Int> */
1066 /* Covariant cast for argument 0 (i) <var105:Int> isa OTHER */
1067 /* <var105:Int> isa OTHER */
1068 var110 = 1; /* easy <var105:Int> isa OTHER*/
1069 if (unlikely(!var110)) {
1070 var_class_name113 = type_standard__Int.name;
1071 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name113);
1072 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 410);
1073 show_backtrace(1);
1074 }
1075 var114 = var_dfa_state < var105;
1076 var108 = var114;
1077 goto RET_LABEL109;
1078 RET_LABEL109:(void)0;
1079 }
1080 }
1081 if (var108){
1082 var115 = 2;
1083 {
1084 { /* Inline kernel#Int#unary - (var115) on <var115:Int> */
1085 var118 = -var115;
1086 var116 = var118;
1087 goto RET_LABEL117;
1088 RET_LABEL117:(void)0;
1089 }
1090 }
1091 {
1092 { /* Inline kernel#Int#- (var116,var_dfa_state) on <var116:Int> */
1093 /* Covariant cast for argument 0 (i) <var_dfa_state:Int> isa OTHER */
1094 /* <var_dfa_state:Int> isa OTHER */
1095 var121 = 1; /* easy <var_dfa_state:Int> isa OTHER*/
1096 if (unlikely(!var121)) {
1097 var_class_name124 = type_standard__Int.name;
1098 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name124);
1099 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 416);
1100 show_backtrace(1);
1101 }
1102 var125 = var116 - var_dfa_state;
1103 var119 = var125;
1104 goto RET_LABEL120;
1105 RET_LABEL120:(void)0;
1106 }
1107 }
1108 var_old_state = var119;
1109 } else {
1110 }
1111 var126 = 1;
1112 {
1113 { /* Inline kernel#Int#unary - (var126) on <var126:Int> */
1114 var129 = -var126;
1115 var127 = var129;
1116 goto RET_LABEL128;
1117 RET_LABEL128:(void)0;
1118 }
1119 }
1120 var_dfa_state = var127;
1121 var130 = 0;
1122 var_low = var130;
1123 var131 = 0;
1124 {
1125 { /* Inline tables#TablesCapable#lexer_goto (self,var_old_state,var131) on <self:Lexer> */
1126 var134 = lexer_goto(self, var_old_state, var131);
1127 var132 = var134;
1128 goto RET_LABEL133;
1129 RET_LABEL133:(void)0;
1130 }
1131 }
1132 var135 = 1;
1133 {
1134 { /* Inline kernel#Int#- (var132,var135) on <var132:Int> */
1135 /* Covariant cast for argument 0 (i) <var135:Int> isa OTHER */
1136 /* <var135:Int> isa OTHER */
1137 var138 = 1; /* easy <var135:Int> isa OTHER*/
1138 if (unlikely(!var138)) {
1139 var_class_name141 = type_standard__Int.name;
1140 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name141);
1141 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 416);
1142 show_backtrace(1);
1143 }
1144 var142 = var132 - var135;
1145 var136 = var142;
1146 goto RET_LABEL137;
1147 RET_LABEL137:(void)0;
1148 }
1149 }
1150 var_high = var136;
1151 var143 = 0;
1152 {
1153 { /* Inline kernel#Int#>= (var_high,var143) on <var_high:Int> */
1154 /* Covariant cast for argument 0 (i) <var143:Int> isa OTHER */
1155 /* <var143:Int> isa OTHER */
1156 var146 = 1; /* easy <var143:Int> isa OTHER*/
1157 if (unlikely(!var146)) {
1158 var_class_name149 = type_standard__Int.name;
1159 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name149);
1160 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 411);
1161 show_backtrace(1);
1162 }
1163 var150 = var_high >= var143;
1164 var144 = var150;
1165 goto RET_LABEL145;
1166 RET_LABEL145:(void)0;
1167 }
1168 }
1169 if (var144){
1170 for(;;) {
1171 {
1172 { /* Inline kernel#Int#<= (var_low,var_high) on <var_low:Int> */
1173 /* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
1174 /* <var_high:Int> isa OTHER */
1175 var153 = 1; /* easy <var_high:Int> isa OTHER*/
1176 if (unlikely(!var153)) {
1177 var_class_name156 = type_standard__Int.name;
1178 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name156);
1179 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 409);
1180 show_backtrace(1);
1181 }
1182 var157 = var_low <= var_high;
1183 var151 = var157;
1184 goto RET_LABEL152;
1185 RET_LABEL152:(void)0;
1186 }
1187 }
1188 if (var151){
1189 {
1190 { /* Inline kernel#Int#+ (var_low,var_high) on <var_low:Int> */
1191 /* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
1192 /* <var_high:Int> isa OTHER */
1193 var160 = 1; /* easy <var_high:Int> isa OTHER*/
1194 if (unlikely(!var160)) {
1195 var_class_name163 = type_standard__Int.name;
1196 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name163);
1197 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1198 show_backtrace(1);
1199 }
1200 var164 = var_low + var_high;
1201 var158 = var164;
1202 goto RET_LABEL159;
1203 RET_LABEL159:(void)0;
1204 }
1205 }
1206 var165 = 2;
1207 {
1208 { /* Inline kernel#Int#/ (var158,var165) on <var158:Int> */
1209 /* Covariant cast for argument 0 (i) <var165:Int> isa OTHER */
1210 /* <var165:Int> isa OTHER */
1211 var168 = 1; /* easy <var165:Int> isa OTHER*/
1212 if (unlikely(!var168)) {
1213 var_class_name171 = type_standard__Int.name;
1214 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name171);
1215 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 418);
1216 show_backtrace(1);
1217 }
1218 var172 = var158 / var165;
1219 var166 = var172;
1220 goto RET_LABEL167;
1221 RET_LABEL167:(void)0;
1222 }
1223 }
1224 var_middle = var166;
1225 var173 = 3;
1226 {
1227 { /* Inline kernel#Int#* (var_middle,var173) on <var_middle:Int> */
1228 /* Covariant cast for argument 0 (i) <var173:Int> isa OTHER */
1229 /* <var173:Int> isa OTHER */
1230 var176 = 1; /* easy <var173:Int> isa OTHER*/
1231 if (unlikely(!var176)) {
1232 var_class_name179 = type_standard__Int.name;
1233 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name179);
1234 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 417);
1235 show_backtrace(1);
1236 }
1237 var180 = var_middle * var173;
1238 var174 = var180;
1239 goto RET_LABEL175;
1240 RET_LABEL175:(void)0;
1241 }
1242 }
1243 var181 = 1;
1244 {
1245 { /* Inline kernel#Int#+ (var174,var181) on <var174:Int> */
1246 /* Covariant cast for argument 0 (i) <var181:Int> isa OTHER */
1247 /* <var181:Int> isa OTHER */
1248 var184 = 1; /* easy <var181:Int> isa OTHER*/
1249 if (unlikely(!var184)) {
1250 var_class_name187 = type_standard__Int.name;
1251 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name187);
1252 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1253 show_backtrace(1);
1254 }
1255 var188 = var174 + var181;
1256 var182 = var188;
1257 goto RET_LABEL183;
1258 RET_LABEL183:(void)0;
1259 }
1260 }
1261 var_offset = var182;
1262 {
1263 { /* Inline tables#TablesCapable#lexer_goto (self,var_old_state,var_offset) on <self:Lexer> */
1264 var191 = lexer_goto(self, var_old_state, var_offset);
1265 var189 = var191;
1266 goto RET_LABEL190;
1267 RET_LABEL190:(void)0;
1268 }
1269 }
1270 {
1271 { /* Inline kernel#Int#< (var_c,var189) on <var_c:Int> */
1272 /* Covariant cast for argument 0 (i) <var189:Int> isa OTHER */
1273 /* <var189:Int> isa OTHER */
1274 var194 = 1; /* easy <var189:Int> isa OTHER*/
1275 if (unlikely(!var194)) {
1276 var_class_name197 = type_standard__Int.name;
1277 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name197);
1278 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 410);
1279 show_backtrace(1);
1280 }
1281 var198 = var_c < var189;
1282 var192 = var198;
1283 goto RET_LABEL193;
1284 RET_LABEL193:(void)0;
1285 }
1286 }
1287 if (var192){
1288 var199 = 1;
1289 {
1290 { /* Inline kernel#Int#- (var_middle,var199) on <var_middle:Int> */
1291 /* Covariant cast for argument 0 (i) <var199:Int> isa OTHER */
1292 /* <var199:Int> isa OTHER */
1293 var202 = 1; /* easy <var199:Int> isa OTHER*/
1294 if (unlikely(!var202)) {
1295 var_class_name205 = type_standard__Int.name;
1296 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name205);
1297 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 416);
1298 show_backtrace(1);
1299 }
1300 var206 = var_middle - var199;
1301 var200 = var206;
1302 goto RET_LABEL201;
1303 RET_LABEL201:(void)0;
1304 }
1305 }
1306 var_high = var200;
1307 } else {
1308 var207 = 1;
1309 {
1310 { /* Inline kernel#Int#+ (var_offset,var207) on <var_offset:Int> */
1311 /* Covariant cast for argument 0 (i) <var207:Int> isa OTHER */
1312 /* <var207:Int> isa OTHER */
1313 var210 = 1; /* easy <var207:Int> isa OTHER*/
1314 if (unlikely(!var210)) {
1315 var_class_name213 = type_standard__Int.name;
1316 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name213);
1317 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1318 show_backtrace(1);
1319 }
1320 var214 = var_offset + var207;
1321 var208 = var214;
1322 goto RET_LABEL209;
1323 RET_LABEL209:(void)0;
1324 }
1325 }
1326 {
1327 { /* Inline tables#TablesCapable#lexer_goto (self,var_old_state,var208) on <self:Lexer> */
1328 var217 = lexer_goto(self, var_old_state, var208);
1329 var215 = var217;
1330 goto RET_LABEL216;
1331 RET_LABEL216:(void)0;
1332 }
1333 }
1334 {
1335 { /* Inline kernel#Int#> (var_c,var215) on <var_c:Int> */
1336 /* Covariant cast for argument 0 (i) <var215:Int> isa OTHER */
1337 /* <var215:Int> isa OTHER */
1338 var220 = 1; /* easy <var215:Int> isa OTHER*/
1339 if (unlikely(!var220)) {
1340 var_class_name223 = type_standard__Int.name;
1341 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name223);
1342 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 412);
1343 show_backtrace(1);
1344 }
1345 var224 = var_c > var215;
1346 var218 = var224;
1347 goto RET_LABEL219;
1348 RET_LABEL219:(void)0;
1349 }
1350 }
1351 if (var218){
1352 var225 = 1;
1353 {
1354 { /* Inline kernel#Int#+ (var_middle,var225) on <var_middle:Int> */
1355 /* Covariant cast for argument 0 (i) <var225:Int> isa OTHER */
1356 /* <var225:Int> isa OTHER */
1357 var228 = 1; /* easy <var225:Int> isa OTHER*/
1358 if (unlikely(!var228)) {
1359 var_class_name231 = type_standard__Int.name;
1360 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name231);
1361 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1362 show_backtrace(1);
1363 }
1364 var232 = var_middle + var225;
1365 var226 = var232;
1366 goto RET_LABEL227;
1367 RET_LABEL227:(void)0;
1368 }
1369 }
1370 var_low = var226;
1371 } else {
1372 var233 = 2;
1373 {
1374 { /* Inline kernel#Int#+ (var_offset,var233) on <var_offset:Int> */
1375 /* Covariant cast for argument 0 (i) <var233:Int> isa OTHER */
1376 /* <var233:Int> isa OTHER */
1377 var236 = 1; /* easy <var233:Int> isa OTHER*/
1378 if (unlikely(!var236)) {
1379 var_class_name239 = type_standard__Int.name;
1380 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name239);
1381 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1382 show_backtrace(1);
1383 }
1384 var240 = var_offset + var233;
1385 var234 = var240;
1386 goto RET_LABEL235;
1387 RET_LABEL235:(void)0;
1388 }
1389 }
1390 {
1391 { /* Inline tables#TablesCapable#lexer_goto (self,var_old_state,var234) on <self:Lexer> */
1392 var243 = lexer_goto(self, var_old_state, var234);
1393 var241 = var243;
1394 goto RET_LABEL242;
1395 RET_LABEL242:(void)0;
1396 }
1397 }
1398 var_dfa_state = var241;
1399 goto BREAK_label;
1400 }
1401 }
1402 } else {
1403 goto BREAK_label;
1404 }
1405 }
1406 BREAK_label: (void)0;
1407 } else {
1408 }
1409 var244 = 2;
1410 {
1411 { /* Inline kernel#Int#unary - (var244) on <var244:Int> */
1412 var247 = -var244;
1413 var245 = var247;
1414 goto RET_LABEL246;
1415 RET_LABEL246:(void)0;
1416 }
1417 }
1418 {
1419 { /* Inline kernel#Int#> (var_dfa_state,var245) on <var_dfa_state:Int> */
1420 /* Covariant cast for argument 0 (i) <var245:Int> isa OTHER */
1421 /* <var245:Int> isa OTHER */
1422 var250 = 1; /* easy <var245:Int> isa OTHER*/
1423 if (unlikely(!var250)) {
1424 var_class_name253 = type_standard__Int.name;
1425 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name253);
1426 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 412);
1427 show_backtrace(1);
1428 }
1429 var254 = var_dfa_state > var245;
1430 var248 = var254;
1431 goto RET_LABEL249;
1432 RET_LABEL249:(void)0;
1433 }
1434 }
1435 if (var248){
1436 goto BREAK_label255;
1437 } else {
1438 }
1439 }
1440 BREAK_label255: (void)0;
1441 self->attrs[COLOR_nit__lexer_work__Lexer___cr].s = var_cr; /* _cr on <self:Lexer> */
1442 self->attrs[COLOR_nit__lexer_work__Lexer___line].l = var_line; /* _line on <self:Lexer> */
1443 self->attrs[COLOR_nit__lexer_work__Lexer___pos].l = var_pos; /* _pos on <self:Lexer> */
1444 }
1445 var256 = 0;
1446 {
1447 { /* Inline kernel#Int#>= (var_dfa_state,var256) on <var_dfa_state:Int> */
1448 /* Covariant cast for argument 0 (i) <var256:Int> isa OTHER */
1449 /* <var256:Int> isa OTHER */
1450 var259 = 1; /* easy <var256:Int> isa OTHER*/
1451 if (unlikely(!var259)) {
1452 var_class_name262 = type_standard__Int.name;
1453 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name262);
1454 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 411);
1455 show_backtrace(1);
1456 }
1457 var263 = var_dfa_state >= var256;
1458 var257 = var263;
1459 goto RET_LABEL258;
1460 RET_LABEL258:(void)0;
1461 }
1462 }
1463 if (var257){
1464 {
1465 { /* Inline tables#TablesCapable#lexer_accept (self,var_dfa_state) on <self:Lexer> */
1466 var266 = lexer_accept(self, var_dfa_state);
1467 var264 = var266;
1468 goto RET_LABEL265;
1469 RET_LABEL265:(void)0;
1470 }
1471 }
1472 var_tok = var264;
1473 var267 = 1;
1474 {
1475 { /* Inline kernel#Int#unary - (var267) on <var267:Int> */
1476 var270 = -var267;
1477 var268 = var270;
1478 goto RET_LABEL269;
1479 RET_LABEL269:(void)0;
1480 }
1481 }
1482 {
1483 { /* Inline kernel#Int#!= (var_tok,var268) on <var_tok:Int> */
1484 var273 = var_tok == var268;
1485 var274 = !var273;
1486 var271 = var274;
1487 goto RET_LABEL272;
1488 RET_LABEL272:(void)0;
1489 }
1490 }
1491 if (var271){
1492 var_accept_state = var_dfa_state;
1493 var_accept_token = var_tok;
1494 {
1495 { /* Inline kernel#Int#- (var_sp,var_start_stream_pos) on <var_sp:Int> */
1496 /* Covariant cast for argument 0 (i) <var_start_stream_pos:Int> isa OTHER */
1497 /* <var_start_stream_pos:Int> isa OTHER */
1498 var277 = 1; /* easy <var_start_stream_pos:Int> isa OTHER*/
1499 if (unlikely(!var277)) {
1500 var_class_name280 = type_standard__Int.name;
1501 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name280);
1502 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 416);
1503 show_backtrace(1);
1504 }
1505 var281 = var_sp - var_start_stream_pos;
1506 var275 = var281;
1507 goto RET_LABEL276;
1508 RET_LABEL276:(void)0;
1509 }
1510 }
1511 var_accept_length = var275;
1512 var282 = self->attrs[COLOR_nit__lexer_work__Lexer___pos].l; /* _pos on <self:Lexer> */
1513 var_accept_pos = var282;
1514 var283 = self->attrs[COLOR_nit__lexer_work__Lexer___line].l; /* _line on <self:Lexer> */
1515 var_accept_line = var283;
1516 } else {
1517 }
1518 } else {
1519 var284 = 1;
1520 {
1521 { /* Inline kernel#Int#unary - (var284) on <var284:Int> */
1522 var287 = -var284;
1523 var285 = var287;
1524 goto RET_LABEL286;
1525 RET_LABEL286:(void)0;
1526 }
1527 }
1528 {
1529 { /* Inline kernel#Int#!= (var_accept_state,var285) on <var_accept_state:Int> */
1530 var290 = var_accept_state == var285;
1531 var291 = !var290;
1532 var288 = var291;
1533 goto RET_LABEL289;
1534 RET_LABEL289:(void)0;
1535 }
1536 }
1537 if (var288){
1538 var292 = NEW_nit__Location(&type_nit__Location);
1539 var293 = 1;
1540 {
1541 { /* Inline kernel#Int#+ (var_start_line,var293) on <var_start_line:Int> */
1542 /* Covariant cast for argument 0 (i) <var293:Int> isa OTHER */
1543 /* <var293:Int> isa OTHER */
1544 var296 = 1; /* easy <var293:Int> isa OTHER*/
1545 if (unlikely(!var296)) {
1546 var_class_name299 = type_standard__Int.name;
1547 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name299);
1548 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1549 show_backtrace(1);
1550 }
1551 var300 = var_start_line + var293;
1552 var294 = var300;
1553 goto RET_LABEL295;
1554 RET_LABEL295:(void)0;
1555 }
1556 }
1557 var301 = 1;
1558 {
1559 { /* Inline kernel#Int#+ (var_accept_line,var301) on <var_accept_line:Int> */
1560 /* Covariant cast for argument 0 (i) <var301:Int> isa OTHER */
1561 /* <var301:Int> isa OTHER */
1562 var304 = 1; /* easy <var301:Int> isa OTHER*/
1563 if (unlikely(!var304)) {
1564 var_class_name307 = type_standard__Int.name;
1565 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name307);
1566 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1567 show_backtrace(1);
1568 }
1569 var308 = var_accept_line + var301;
1570 var302 = var308;
1571 goto RET_LABEL303;
1572 RET_LABEL303:(void)0;
1573 }
1574 }
1575 var309 = 1;
1576 {
1577 { /* Inline kernel#Int#+ (var_start_pos,var309) on <var_start_pos:Int> */
1578 /* Covariant cast for argument 0 (i) <var309:Int> isa OTHER */
1579 /* <var309:Int> isa OTHER */
1580 var312 = 1; /* easy <var309:Int> isa OTHER*/
1581 if (unlikely(!var312)) {
1582 var_class_name315 = type_standard__Int.name;
1583 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name315);
1584 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1585 show_backtrace(1);
1586 }
1587 var316 = var_start_pos + var309;
1588 var310 = var316;
1589 goto RET_LABEL311;
1590 RET_LABEL311:(void)0;
1591 }
1592 }
1593 {
1594 ((void (*)(val* self, val* p0))(var292->class->vft[COLOR_nit__location__Location__file_61d]))(var292, var_file) /* file= on <var292:Location>*/;
1595 }
1596 {
1597 ((void (*)(val* self, long p0))(var292->class->vft[COLOR_nit__location__Location__line_start_61d]))(var292, var294) /* line_start= on <var292:Location>*/;
1598 }
1599 {
1600 ((void (*)(val* self, long p0))(var292->class->vft[COLOR_nit__location__Location__line_end_61d]))(var292, var302) /* line_end= on <var292:Location>*/;
1601 }
1602 {
1603 ((void (*)(val* self, long p0))(var292->class->vft[COLOR_nit__location__Location__column_start_61d]))(var292, var310) /* column_start= on <var292:Location>*/;
1604 }
1605 {
1606 ((void (*)(val* self, long p0))(var292->class->vft[COLOR_nit__location__Location__column_end_61d]))(var292, var_accept_pos) /* column_end= on <var292:Location>*/;
1607 }
1608 {
1609 ((void (*)(val* self))(var292->class->vft[COLOR_standard__kernel__Object__init]))(var292) /* init on <var292:Location>*/;
1610 }
1611 var_location = var292;
1612 self->attrs[COLOR_nit__lexer_work__Lexer___pos].l = var_accept_pos; /* _pos on <self:Lexer> */
1613 self->attrs[COLOR_nit__lexer_work__Lexer___line].l = var_accept_line; /* _line on <self:Lexer> */
1614 {
1615 { /* Inline kernel#Int#+ (var_start_stream_pos,var_accept_length) on <var_start_stream_pos:Int> */
1616 /* Covariant cast for argument 0 (i) <var_accept_length:Int> isa OTHER */
1617 /* <var_accept_length:Int> isa OTHER */
1618 var319 = 1; /* easy <var_accept_length:Int> isa OTHER*/
1619 if (unlikely(!var319)) {
1620 var_class_name322 = type_standard__Int.name;
1621 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name322);
1622 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1623 show_backtrace(1);
1624 }
1625 var323 = var_start_stream_pos + var_accept_length;
1626 var317 = var323;
1627 goto RET_LABEL318;
1628 RET_LABEL318:(void)0;
1629 }
1630 }
1631 self->attrs[COLOR_nit__lexer_work__Lexer___stream_pos].l = var317; /* _stream_pos on <self:Lexer> */
1632 var324 = 0;
1633 {
1634 { /* Inline kernel#Int#== (var_accept_token,var324) on <var_accept_token:Int> */
1635 var327 = var_accept_token == var324;
1636 var325 = var327;
1637 goto RET_LABEL326;
1638 RET_LABEL326:(void)0;
1639 }
1640 }
1641 if (var325){
1642 var328 = NULL;
1643 var = var328;
1644 goto RET_LABEL;
1645 } else {
1646 }
1647 {
1648 var329 = nit__lexer___Lexer___make_token(self, var_accept_token, var_location);
1649 }
1650 var = var329;
1651 goto RET_LABEL;
1652 } else {
1653 self->attrs[COLOR_nit__lexer_work__Lexer___stream_pos].l = var_sp; /* _stream_pos on <self:Lexer> */
1654 var330 = NEW_nit__Location(&type_nit__Location);
1655 var331 = 1;
1656 {
1657 { /* Inline kernel#Int#+ (var_start_line,var331) on <var_start_line:Int> */
1658 /* Covariant cast for argument 0 (i) <var331:Int> isa OTHER */
1659 /* <var331:Int> isa OTHER */
1660 var334 = 1; /* easy <var331:Int> isa OTHER*/
1661 if (unlikely(!var334)) {
1662 var_class_name337 = type_standard__Int.name;
1663 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name337);
1664 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1665 show_backtrace(1);
1666 }
1667 var338 = var_start_line + var331;
1668 var332 = var338;
1669 goto RET_LABEL333;
1670 RET_LABEL333:(void)0;
1671 }
1672 }
1673 var339 = 1;
1674 {
1675 { /* Inline kernel#Int#+ (var_start_line,var339) on <var_start_line:Int> */
1676 /* Covariant cast for argument 0 (i) <var339:Int> isa OTHER */
1677 /* <var339:Int> isa OTHER */
1678 var342 = 1; /* easy <var339:Int> isa OTHER*/
1679 if (unlikely(!var342)) {
1680 var_class_name345 = type_standard__Int.name;
1681 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name345);
1682 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1683 show_backtrace(1);
1684 }
1685 var346 = var_start_line + var339;
1686 var340 = var346;
1687 goto RET_LABEL341;
1688 RET_LABEL341:(void)0;
1689 }
1690 }
1691 var347 = 1;
1692 {
1693 { /* Inline kernel#Int#+ (var_start_pos,var347) on <var_start_pos:Int> */
1694 /* Covariant cast for argument 0 (i) <var347:Int> isa OTHER */
1695 /* <var347:Int> isa OTHER */
1696 var350 = 1; /* easy <var347:Int> isa OTHER*/
1697 if (unlikely(!var350)) {
1698 var_class_name353 = type_standard__Int.name;
1699 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name353);
1700 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1701 show_backtrace(1);
1702 }
1703 var354 = var_start_pos + var347;
1704 var348 = var354;
1705 goto RET_LABEL349;
1706 RET_LABEL349:(void)0;
1707 }
1708 }
1709 var355 = 1;
1710 {
1711 { /* Inline kernel#Int#+ (var_start_pos,var355) on <var_start_pos:Int> */
1712 /* Covariant cast for argument 0 (i) <var355:Int> isa OTHER */
1713 /* <var355:Int> isa OTHER */
1714 var358 = 1; /* easy <var355:Int> isa OTHER*/
1715 if (unlikely(!var358)) {
1716 var_class_name361 = type_standard__Int.name;
1717 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name361);
1718 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 413);
1719 show_backtrace(1);
1720 }
1721 var362 = var_start_pos + var355;
1722 var356 = var362;
1723 goto RET_LABEL357;
1724 RET_LABEL357:(void)0;
1725 }
1726 }
1727 {
1728 ((void (*)(val* self, val* p0))(var330->class->vft[COLOR_nit__location__Location__file_61d]))(var330, var_file) /* file= on <var330:Location>*/;
1729 }
1730 {
1731 ((void (*)(val* self, long p0))(var330->class->vft[COLOR_nit__location__Location__line_start_61d]))(var330, var332) /* line_start= on <var330:Location>*/;
1732 }
1733 {
1734 ((void (*)(val* self, long p0))(var330->class->vft[COLOR_nit__location__Location__line_end_61d]))(var330, var340) /* line_end= on <var330:Location>*/;
1735 }
1736 {
1737 ((void (*)(val* self, long p0))(var330->class->vft[COLOR_nit__location__Location__column_start_61d]))(var330, var348) /* column_start= on <var330:Location>*/;
1738 }
1739 {
1740 ((void (*)(val* self, long p0))(var330->class->vft[COLOR_nit__location__Location__column_end_61d]))(var330, var356) /* column_end= on <var330:Location>*/;
1741 }
1742 {
1743 ((void (*)(val* self))(var330->class->vft[COLOR_standard__kernel__Object__init]))(var330) /* init on <var330:Location>*/;
1744 }
1745 var_location363 = var330;
1746 {
1747 { /* Inline kernel#Int#> (var_sp,var_start_stream_pos) on <var_sp:Int> */
1748 /* Covariant cast for argument 0 (i) <var_start_stream_pos:Int> isa OTHER */
1749 /* <var_start_stream_pos:Int> isa OTHER */
1750 var366 = 1; /* easy <var_start_stream_pos:Int> isa OTHER*/
1751 if (unlikely(!var366)) {
1752 var_class_name369 = type_standard__Int.name;
1753 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name369);
1754 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 412);
1755 show_backtrace(1);
1756 }
1757 var370 = var_sp > var_start_stream_pos;
1758 var364 = var370;
1759 goto RET_LABEL365;
1760 RET_LABEL365:(void)0;
1761 }
1762 }
1763 if (var364){
1764 {
1765 { /* Inline kernel#Int#- (var_sp,var_start_stream_pos) on <var_sp:Int> */
1766 /* Covariant cast for argument 0 (i) <var_start_stream_pos:Int> isa OTHER */
1767 /* <var_start_stream_pos:Int> isa OTHER */
1768 var373 = 1; /* easy <var_start_stream_pos:Int> isa OTHER*/
1769 if (unlikely(!var373)) {
1770 var_class_name376 = type_standard__Int.name;
1771 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name376);
1772 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 416);
1773 show_backtrace(1);
1774 }
1775 var377 = var_sp - var_start_stream_pos;
1776 var371 = var377;
1777 goto RET_LABEL372;
1778 RET_LABEL372:(void)0;
1779 }
1780 }
1781 {
1782 var378 = ((val* (*)(val* self, long p0, long p1))(var_string->class->vft[COLOR_standard__string__Text__substring]))(var_string, var_start_stream_pos, var371) /* substring on <var_string:String>*/;
1783 }
1784 var_text = var378;
1785 var379 = NEW_nit__ALexerError(&type_nit__ALexerError);
1786 if (varonce) {
1787 var380 = varonce;
1788 } else {
1789 var381 = "Syntax error: unknown token ";
1790 var382 = 28;
1791 var383 = standard___standard__NativeString___to_s_with_length(var381, var382);
1792 var380 = var383;
1793 varonce = var380;
1794 }
1795 if (varonce384) {
1796 var385 = varonce384;
1797 } else {
1798 var386 = ".";
1799 var387 = 1;
1800 var388 = standard___standard__NativeString___to_s_with_length(var386, var387);
1801 var385 = var388;
1802 varonce384 = var385;
1803 }
1804 var389 = NEW_standard__Array(&type_standard__Array__standard__Object);
1805 { /* var389 = array_instance Array[Object] */
1806 var390 = 3;
1807 var391 = NEW_standard__NativeArray(var390, &type_standard__NativeArray__standard__Object);
1808 ((struct instance_standard__NativeArray*)var391)->values[0] = (val*) var380;
1809 ((struct instance_standard__NativeArray*)var391)->values[1] = (val*) var_text;
1810 ((struct instance_standard__NativeArray*)var391)->values[2] = (val*) var385;
1811 {
1812 ((void (*)(val* self, val* p0, long p1))(var389->class->vft[COLOR_standard__array__Array__with_native]))(var389, var391, var390) /* with_native on <var389:Array[Object]>*/;
1813 }
1814 }
1815 {
1816 var392 = ((val* (*)(val* self))(var389->class->vft[COLOR_standard__string__Object__to_s]))(var389) /* to_s on <var389:Array[Object]>*/;
1817 }
1818 {
1819 nit__lexer_work___ALexerError___init_lexer_error(var379, var392, var_location363, var_text); /* Direct call lexer_work#ALexerError#init_lexer_error on <var379:ALexerError>*/
1820 }
1821 var_token = var379;
1822 {
1823 { /* Inline parser_nodes#SourceFile#last_token= (var_file,var_token) on <var_file:SourceFile> */
1824 var_file->attrs[COLOR_nit__parser_nodes__SourceFile___last_token].val = var_token; /* _last_token on <var_file:SourceFile> */
1825 RET_LABEL393:(void)0;
1826 }
1827 }
1828 var = var_token;
1829 goto RET_LABEL;
1830 } else {
1831 var394 = NEW_nit__EOF(&type_nit__EOF);
1832 {
1833 nit__lexer_work___EOF___init_tk(var394, var_location363); /* Direct call lexer_work#EOF#init_tk on <var394:EOF>*/
1834 }
1835 var_token395 = var394;
1836 {
1837 { /* Inline parser_nodes#SourceFile#last_token= (var_file,var_token395) on <var_file:SourceFile> */
1838 var_file->attrs[COLOR_nit__parser_nodes__SourceFile___last_token].val = var_token395; /* _last_token on <var_file:SourceFile> */
1839 RET_LABEL396:(void)0;
1840 }
1841 }
1842 var = var_token395;
1843 goto RET_LABEL;
1844 }
1845 }
1846 }
1847 }
1848 RET_LABEL:;
1849 return var;
1850 }
1851 /* method lexer_work#Lexer#init for (self: Lexer) */
1852 void nit___nit__Lexer___standard__kernel__Object__init(val* self) {
1853 {
1854 ((void (*)(val* self))(self->class->vft[COLOR_nit___nit__Lexer___standard__kernel__Object__init]))(self) /* init on <self:Lexer>*/;
1855 }
1856 RET_LABEL:;
1857 }