README: document nit_env.sh
[nit.git] / c_src / nit__abstract_compiler.sep.4.c
1 #include "nit__abstract_compiler.sep.0.h"
2 /* method abstract_compiler#AMethPropdef#compile_intern_to_c for (self: AMethPropdef, AbstractCompilerVisitor, MMethodDef, Array[RuntimeVariable]): Bool */
3 short int nit__abstract_compiler___AMethPropdef___compile_intern_to_c(val* self, val* p0, val* p1, val* p2) {
4 short int var /* : Bool */;
5 val* var_v /* var v: AbstractCompilerVisitor */;
6 val* var_mpropdef /* var mpropdef: MMethodDef */;
7 val* var_arguments /* var arguments: Array[RuntimeVariable] */;
8 val* var1 /* : MProperty */;
9 val* var3 /* : MProperty */;
10 val* var4 /* : String */;
11 val* var6 /* : String */;
12 val* var_pname /* var pname: String */;
13 val* var7 /* : MClassDef */;
14 val* var9 /* : MClassDef */;
15 val* var10 /* : MClass */;
16 val* var12 /* : MClass */;
17 val* var13 /* : String */;
18 val* var15 /* : String */;
19 val* var_cname /* var cname: String */;
20 val* var16 /* : nullable MSignature */;
21 val* var18 /* : nullable MSignature */;
22 val* var19 /* : nullable MType */;
23 val* var21 /* : nullable MType */;
24 val* var_ret /* var ret: nullable MType */;
25 short int var22 /* : Bool */;
26 short int var23 /* : Bool */;
27 val* var_other /* var other: nullable Object */;
28 short int var25 /* : Bool */;
29 short int var26 /* : Bool */;
30 val* var27 /* : nullable Object */;
31 val* var28 /* : MType */;
32 short int var29 /* : Bool */;
33 static val* varonce;
34 val* var30 /* : String */;
35 char* var31 /* : NativeString */;
36 val* var32 /* : FlatString */;
37 short int var33 /* : Bool */;
38 short int var35 /* : Bool */;
39 short int var36 /* : Bool */;
40 short int var_ /* var : Bool */;
41 static val* varonce37;
42 val* var38 /* : String */;
43 char* var39 /* : NativeString */;
44 val* var40 /* : FlatString */;
45 short int var41 /* : Bool */;
46 short int var43 /* : Bool */;
47 short int var44 /* : Bool */;
48 static val* varonce45;
49 val* var46 /* : String */;
50 char* var47 /* : NativeString */;
51 val* var48 /* : FlatString */;
52 short int var49 /* : Bool */;
53 static val* varonce50;
54 val* var51 /* : String */;
55 char* var52 /* : NativeString */;
56 val* var53 /* : FlatString */;
57 short int var54 /* : Bool */;
58 val* var56 /* : NativeArray[String] */;
59 static val* varonce55;
60 static val* varonce57;
61 val* var58 /* : String */;
62 char* var59 /* : NativeString */;
63 val* var60 /* : FlatString */;
64 static val* varonce61;
65 val* var62 /* : String */;
66 char* var63 /* : NativeString */;
67 val* var64 /* : FlatString */;
68 val* var65 /* : nullable Object */;
69 val* var66 /* : String */;
70 val* var67 /* : String */;
71 static val* varonce68;
72 val* var69 /* : String */;
73 char* var70 /* : NativeString */;
74 val* var71 /* : FlatString */;
75 short int var72 /* : Bool */;
76 val* var73 /* : nullable Object */;
77 static val* varonce74;
78 val* var75 /* : String */;
79 char* var76 /* : NativeString */;
80 val* var77 /* : FlatString */;
81 short int var78 /* : Bool */;
82 val* var80 /* : NativeArray[String] */;
83 static val* varonce79;
84 static val* varonce81;
85 val* var82 /* : String */;
86 char* var83 /* : NativeString */;
87 val* var84 /* : FlatString */;
88 val* var85 /* : nullable Object */;
89 val* var86 /* : String */;
90 val* var87 /* : nullable Object */;
91 val* var88 /* : String */;
92 val* var89 /* : String */;
93 val* var90 /* : RuntimeVariable */;
94 static val* varonce91;
95 val* var92 /* : String */;
96 char* var93 /* : NativeString */;
97 val* var94 /* : FlatString */;
98 short int var95 /* : Bool */;
99 val* var97 /* : NativeArray[String] */;
100 static val* varonce96;
101 static val* varonce98;
102 val* var99 /* : String */;
103 char* var100 /* : NativeString */;
104 val* var101 /* : FlatString */;
105 val* var102 /* : nullable Object */;
106 val* var103 /* : String */;
107 val* var104 /* : nullable Object */;
108 val* var105 /* : String */;
109 val* var106 /* : String */;
110 val* var107 /* : RuntimeVariable */;
111 static val* varonce108;
112 val* var109 /* : String */;
113 char* var110 /* : NativeString */;
114 val* var111 /* : FlatString */;
115 short int var112 /* : Bool */;
116 val* var114 /* : NativeArray[String] */;
117 static val* varonce113;
118 static val* varonce115;
119 val* var116 /* : String */;
120 char* var117 /* : NativeString */;
121 val* var118 /* : FlatString */;
122 val* var119 /* : nullable Object */;
123 val* var120 /* : String */;
124 val* var121 /* : String */;
125 val* var122 /* : RuntimeVariable */;
126 static val* varonce123;
127 val* var124 /* : String */;
128 char* var125 /* : NativeString */;
129 val* var126 /* : FlatString */;
130 short int var127 /* : Bool */;
131 val* var128 /* : nullable Object */;
132 static val* varonce129;
133 val* var130 /* : String */;
134 char* var131 /* : NativeString */;
135 val* var132 /* : FlatString */;
136 short int var133 /* : Bool */;
137 val* var135 /* : NativeArray[String] */;
138 static val* varonce134;
139 static val* varonce136;
140 val* var137 /* : String */;
141 char* var138 /* : NativeString */;
142 val* var139 /* : FlatString */;
143 val* var140 /* : nullable Object */;
144 val* var141 /* : String */;
145 val* var142 /* : nullable Object */;
146 val* var143 /* : String */;
147 val* var144 /* : String */;
148 val* var145 /* : RuntimeVariable */;
149 static val* varonce146;
150 val* var147 /* : String */;
151 char* var148 /* : NativeString */;
152 val* var149 /* : FlatString */;
153 short int var150 /* : Bool */;
154 val* var152 /* : NativeArray[String] */;
155 static val* varonce151;
156 static val* varonce153;
157 val* var154 /* : String */;
158 char* var155 /* : NativeString */;
159 val* var156 /* : FlatString */;
160 val* var157 /* : nullable Object */;
161 val* var158 /* : String */;
162 val* var159 /* : nullable Object */;
163 val* var160 /* : String */;
164 val* var161 /* : String */;
165 val* var162 /* : RuntimeVariable */;
166 static val* varonce163;
167 val* var164 /* : String */;
168 char* var165 /* : NativeString */;
169 val* var166 /* : FlatString */;
170 short int var167 /* : Bool */;
171 val* var169 /* : NativeArray[String] */;
172 static val* varonce168;
173 static val* varonce170;
174 val* var171 /* : String */;
175 char* var172 /* : NativeString */;
176 val* var173 /* : FlatString */;
177 val* var174 /* : nullable Object */;
178 val* var175 /* : String */;
179 val* var176 /* : nullable Object */;
180 val* var177 /* : String */;
181 val* var178 /* : String */;
182 val* var179 /* : RuntimeVariable */;
183 static val* varonce180;
184 val* var181 /* : String */;
185 char* var182 /* : NativeString */;
186 val* var183 /* : FlatString */;
187 short int var184 /* : Bool */;
188 val* var186 /* : NativeArray[String] */;
189 static val* varonce185;
190 static val* varonce187;
191 val* var188 /* : String */;
192 char* var189 /* : NativeString */;
193 val* var190 /* : FlatString */;
194 val* var191 /* : nullable Object */;
195 val* var192 /* : String */;
196 val* var193 /* : nullable Object */;
197 val* var194 /* : String */;
198 val* var195 /* : String */;
199 val* var196 /* : RuntimeVariable */;
200 static val* varonce197;
201 val* var198 /* : String */;
202 char* var199 /* : NativeString */;
203 val* var200 /* : FlatString */;
204 short int var201 /* : Bool */;
205 val* var203 /* : NativeArray[String] */;
206 static val* varonce202;
207 static val* varonce204;
208 val* var205 /* : String */;
209 char* var206 /* : NativeString */;
210 val* var207 /* : FlatString */;
211 val* var208 /* : nullable Object */;
212 val* var209 /* : String */;
213 val* var210 /* : nullable Object */;
214 val* var211 /* : String */;
215 val* var212 /* : String */;
216 val* var213 /* : RuntimeVariable */;
217 static val* varonce214;
218 val* var215 /* : String */;
219 char* var216 /* : NativeString */;
220 val* var217 /* : FlatString */;
221 short int var218 /* : Bool */;
222 val* var219 /* : nullable Object */;
223 val* var220 /* : nullable Object */;
224 val* var221 /* : RuntimeVariable */;
225 static val* varonce222;
226 val* var223 /* : String */;
227 char* var224 /* : NativeString */;
228 val* var225 /* : FlatString */;
229 short int var226 /* : Bool */;
230 val* var227 /* : nullable Object */;
231 val* var228 /* : nullable Object */;
232 val* var229 /* : RuntimeVariable */;
233 val* var_res /* var res: RuntimeVariable */;
234 val* var231 /* : NativeArray[String] */;
235 static val* varonce230;
236 static val* varonce232;
237 val* var233 /* : String */;
238 char* var234 /* : NativeString */;
239 val* var235 /* : FlatString */;
240 val* var236 /* : String */;
241 val* var237 /* : String */;
242 val* var238 /* : RuntimeVariable */;
243 static val* varonce239;
244 val* var240 /* : String */;
245 char* var241 /* : NativeString */;
246 val* var242 /* : FlatString */;
247 short int var243 /* : Bool */;
248 val* var245 /* : NativeArray[String] */;
249 static val* varonce244;
250 static val* varonce246;
251 val* var247 /* : String */;
252 char* var248 /* : NativeString */;
253 val* var249 /* : FlatString */;
254 val* var250 /* : nullable Object */;
255 val* var251 /* : String */;
256 val* var252 /* : nullable Object */;
257 val* var253 /* : String */;
258 val* var254 /* : String */;
259 val* var255 /* : RuntimeVariable */;
260 static val* varonce256;
261 val* var257 /* : String */;
262 char* var258 /* : NativeString */;
263 val* var259 /* : FlatString */;
264 short int var260 /* : Bool */;
265 val* var262 /* : NativeArray[String] */;
266 static val* varonce261;
267 static val* varonce263;
268 val* var264 /* : String */;
269 char* var265 /* : NativeString */;
270 val* var266 /* : FlatString */;
271 val* var267 /* : nullable Object */;
272 val* var268 /* : String */;
273 val* var269 /* : nullable Object */;
274 val* var270 /* : String */;
275 val* var271 /* : String */;
276 val* var272 /* : RuntimeVariable */;
277 static val* varonce273;
278 val* var274 /* : String */;
279 char* var275 /* : NativeString */;
280 val* var276 /* : FlatString */;
281 short int var277 /* : Bool */;
282 val* var279 /* : NativeArray[String] */;
283 static val* varonce278;
284 static val* varonce280;
285 val* var281 /* : String */;
286 char* var282 /* : NativeString */;
287 val* var283 /* : FlatString */;
288 val* var284 /* : nullable Object */;
289 val* var285 /* : String */;
290 val* var286 /* : nullable Object */;
291 val* var287 /* : String */;
292 val* var288 /* : String */;
293 val* var289 /* : RuntimeVariable */;
294 static val* varonce290;
295 val* var291 /* : String */;
296 char* var292 /* : NativeString */;
297 val* var293 /* : FlatString */;
298 short int var294 /* : Bool */;
299 val* var296 /* : NativeArray[String] */;
300 static val* varonce295;
301 static val* varonce297;
302 val* var298 /* : String */;
303 char* var299 /* : NativeString */;
304 val* var300 /* : FlatString */;
305 val* var301 /* : nullable Object */;
306 val* var302 /* : String */;
307 val* var303 /* : nullable Object */;
308 val* var304 /* : String */;
309 val* var305 /* : String */;
310 val* var306 /* : RuntimeVariable */;
311 static val* varonce307;
312 val* var308 /* : String */;
313 char* var309 /* : NativeString */;
314 val* var310 /* : FlatString */;
315 short int var311 /* : Bool */;
316 val* var313 /* : NativeArray[String] */;
317 static val* varonce312;
318 static val* varonce314;
319 val* var315 /* : String */;
320 char* var316 /* : NativeString */;
321 val* var317 /* : FlatString */;
322 val* var318 /* : nullable Object */;
323 val* var319 /* : String */;
324 val* var320 /* : String */;
325 val* var321 /* : RuntimeVariable */;
326 static val* varonce322;
327 val* var323 /* : String */;
328 char* var324 /* : NativeString */;
329 val* var325 /* : FlatString */;
330 short int var326 /* : Bool */;
331 val* var328 /* : NativeArray[String] */;
332 static val* varonce327;
333 static val* varonce329;
334 val* var330 /* : String */;
335 char* var331 /* : NativeString */;
336 val* var332 /* : FlatString */;
337 val* var333 /* : nullable Object */;
338 val* var334 /* : String */;
339 val* var335 /* : String */;
340 val* var336 /* : RuntimeVariable */;
341 static val* varonce337;
342 val* var338 /* : String */;
343 char* var339 /* : NativeString */;
344 val* var340 /* : FlatString */;
345 short int var341 /* : Bool */;
346 val* var343 /* : NativeArray[String] */;
347 static val* varonce342;
348 static val* varonce344;
349 val* var345 /* : String */;
350 char* var346 /* : NativeString */;
351 val* var347 /* : FlatString */;
352 val* var348 /* : nullable Object */;
353 val* var349 /* : String */;
354 val* var350 /* : String */;
355 val* var351 /* : RuntimeVariable */;
356 static val* varonce352;
357 val* var353 /* : String */;
358 char* var354 /* : NativeString */;
359 val* var355 /* : FlatString */;
360 short int var356 /* : Bool */;
361 static val* varonce357;
362 val* var358 /* : String */;
363 char* var359 /* : NativeString */;
364 val* var360 /* : FlatString */;
365 short int var361 /* : Bool */;
366 val* var363 /* : NativeArray[String] */;
367 static val* varonce362;
368 static val* varonce364;
369 val* var365 /* : String */;
370 char* var366 /* : NativeString */;
371 val* var367 /* : FlatString */;
372 static val* varonce368;
373 val* var369 /* : String */;
374 char* var370 /* : NativeString */;
375 val* var371 /* : FlatString */;
376 val* var372 /* : nullable Object */;
377 val* var373 /* : String */;
378 val* var374 /* : String */;
379 static val* varonce375;
380 val* var376 /* : String */;
381 char* var377 /* : NativeString */;
382 val* var378 /* : FlatString */;
383 short int var379 /* : Bool */;
384 val* var381 /* : NativeArray[String] */;
385 static val* varonce380;
386 static val* varonce382;
387 val* var383 /* : String */;
388 char* var384 /* : NativeString */;
389 val* var385 /* : FlatString */;
390 val* var386 /* : nullable Object */;
391 val* var387 /* : String */;
392 val* var388 /* : String */;
393 val* var389 /* : RuntimeVariable */;
394 static val* varonce390;
395 val* var391 /* : String */;
396 char* var392 /* : NativeString */;
397 val* var393 /* : FlatString */;
398 short int var394 /* : Bool */;
399 val* var396 /* : NativeArray[String] */;
400 static val* varonce395;
401 static val* varonce397;
402 val* var398 /* : String */;
403 char* var399 /* : NativeString */;
404 val* var400 /* : FlatString */;
405 val* var401 /* : nullable Object */;
406 val* var402 /* : String */;
407 val* var403 /* : nullable Object */;
408 val* var404 /* : String */;
409 val* var405 /* : String */;
410 val* var406 /* : RuntimeVariable */;
411 static val* varonce407;
412 val* var408 /* : String */;
413 char* var409 /* : NativeString */;
414 val* var410 /* : FlatString */;
415 short int var411 /* : Bool */;
416 val* var413 /* : NativeArray[String] */;
417 static val* varonce412;
418 static val* varonce414;
419 val* var415 /* : String */;
420 char* var416 /* : NativeString */;
421 val* var417 /* : FlatString */;
422 val* var418 /* : nullable Object */;
423 val* var419 /* : String */;
424 val* var420 /* : nullable Object */;
425 val* var421 /* : String */;
426 val* var422 /* : String */;
427 val* var423 /* : RuntimeVariable */;
428 static val* varonce424;
429 val* var425 /* : String */;
430 char* var426 /* : NativeString */;
431 val* var427 /* : FlatString */;
432 short int var428 /* : Bool */;
433 val* var429 /* : nullable Object */;
434 val* var430 /* : nullable Object */;
435 val* var431 /* : RuntimeVariable */;
436 static val* varonce432;
437 val* var433 /* : String */;
438 char* var434 /* : NativeString */;
439 val* var435 /* : FlatString */;
440 short int var436 /* : Bool */;
441 val* var437 /* : nullable Object */;
442 val* var438 /* : nullable Object */;
443 val* var439 /* : RuntimeVariable */;
444 val* var_res440 /* var res: RuntimeVariable */;
445 val* var442 /* : NativeArray[String] */;
446 static val* varonce441;
447 static val* varonce443;
448 val* var444 /* : String */;
449 char* var445 /* : NativeString */;
450 val* var446 /* : FlatString */;
451 val* var447 /* : String */;
452 val* var448 /* : String */;
453 val* var449 /* : RuntimeVariable */;
454 static val* varonce450;
455 val* var451 /* : String */;
456 char* var452 /* : NativeString */;
457 val* var453 /* : FlatString */;
458 short int var454 /* : Bool */;
459 val* var456 /* : NativeArray[String] */;
460 static val* varonce455;
461 static val* varonce457;
462 val* var458 /* : String */;
463 char* var459 /* : NativeString */;
464 val* var460 /* : FlatString */;
465 val* var461 /* : nullable Object */;
466 val* var462 /* : String */;
467 val* var463 /* : nullable Object */;
468 val* var464 /* : String */;
469 val* var465 /* : String */;
470 val* var466 /* : RuntimeVariable */;
471 static val* varonce467;
472 val* var468 /* : String */;
473 char* var469 /* : NativeString */;
474 val* var470 /* : FlatString */;
475 short int var471 /* : Bool */;
476 val* var473 /* : NativeArray[String] */;
477 static val* varonce472;
478 static val* varonce474;
479 val* var475 /* : String */;
480 char* var476 /* : NativeString */;
481 val* var477 /* : FlatString */;
482 val* var478 /* : nullable Object */;
483 val* var479 /* : String */;
484 val* var480 /* : nullable Object */;
485 val* var481 /* : String */;
486 val* var482 /* : String */;
487 val* var483 /* : RuntimeVariable */;
488 static val* varonce484;
489 val* var485 /* : String */;
490 char* var486 /* : NativeString */;
491 val* var487 /* : FlatString */;
492 short int var488 /* : Bool */;
493 val* var490 /* : NativeArray[String] */;
494 static val* varonce489;
495 static val* varonce491;
496 val* var492 /* : String */;
497 char* var493 /* : NativeString */;
498 val* var494 /* : FlatString */;
499 val* var495 /* : nullable Object */;
500 val* var496 /* : String */;
501 val* var497 /* : nullable Object */;
502 val* var498 /* : String */;
503 val* var499 /* : String */;
504 val* var500 /* : RuntimeVariable */;
505 static val* varonce501;
506 val* var502 /* : String */;
507 char* var503 /* : NativeString */;
508 val* var504 /* : FlatString */;
509 short int var505 /* : Bool */;
510 val* var507 /* : NativeArray[String] */;
511 static val* varonce506;
512 static val* varonce508;
513 val* var509 /* : String */;
514 char* var510 /* : NativeString */;
515 val* var511 /* : FlatString */;
516 val* var512 /* : nullable Object */;
517 val* var513 /* : String */;
518 val* var514 /* : nullable Object */;
519 val* var515 /* : String */;
520 val* var516 /* : String */;
521 val* var517 /* : RuntimeVariable */;
522 static val* varonce518;
523 val* var519 /* : String */;
524 char* var520 /* : NativeString */;
525 val* var521 /* : FlatString */;
526 short int var522 /* : Bool */;
527 val* var524 /* : NativeArray[String] */;
528 static val* varonce523;
529 static val* varonce525;
530 val* var526 /* : String */;
531 char* var527 /* : NativeString */;
532 val* var528 /* : FlatString */;
533 val* var529 /* : nullable Object */;
534 val* var530 /* : String */;
535 val* var531 /* : String */;
536 val* var532 /* : RuntimeVariable */;
537 static val* varonce533;
538 val* var534 /* : String */;
539 char* var535 /* : NativeString */;
540 val* var536 /* : FlatString */;
541 short int var537 /* : Bool */;
542 val* var539 /* : NativeArray[String] */;
543 static val* varonce538;
544 static val* varonce540;
545 val* var541 /* : String */;
546 char* var542 /* : NativeString */;
547 val* var543 /* : FlatString */;
548 val* var544 /* : nullable Object */;
549 val* var545 /* : String */;
550 val* var546 /* : String */;
551 val* var547 /* : RuntimeVariable */;
552 static val* varonce548;
553 val* var549 /* : String */;
554 char* var550 /* : NativeString */;
555 val* var551 /* : FlatString */;
556 short int var552 /* : Bool */;
557 static val* varonce553;
558 val* var554 /* : String */;
559 char* var555 /* : NativeString */;
560 val* var556 /* : FlatString */;
561 short int var557 /* : Bool */;
562 val* var559 /* : NativeArray[String] */;
563 static val* varonce558;
564 static val* varonce560;
565 val* var561 /* : String */;
566 char* var562 /* : NativeString */;
567 val* var563 /* : FlatString */;
568 static val* varonce564;
569 val* var565 /* : String */;
570 char* var566 /* : NativeString */;
571 val* var567 /* : FlatString */;
572 val* var568 /* : nullable Object */;
573 val* var569 /* : String */;
574 val* var570 /* : String */;
575 static val* varonce571;
576 val* var572 /* : String */;
577 char* var573 /* : NativeString */;
578 val* var574 /* : FlatString */;
579 short int var575 /* : Bool */;
580 val* var577 /* : NativeArray[String] */;
581 static val* varonce576;
582 static val* varonce578;
583 val* var579 /* : String */;
584 char* var580 /* : NativeString */;
585 val* var581 /* : FlatString */;
586 val* var582 /* : nullable Object */;
587 val* var583 /* : String */;
588 val* var584 /* : String */;
589 val* var585 /* : RuntimeVariable */;
590 static val* varonce586;
591 val* var587 /* : String */;
592 char* var588 /* : NativeString */;
593 val* var589 /* : FlatString */;
594 short int var590 /* : Bool */;
595 val* var592 /* : NativeArray[String] */;
596 static val* varonce591;
597 static val* varonce593;
598 val* var594 /* : String */;
599 char* var595 /* : NativeString */;
600 val* var596 /* : FlatString */;
601 val* var597 /* : nullable Object */;
602 val* var598 /* : String */;
603 val* var599 /* : nullable Object */;
604 val* var600 /* : String */;
605 val* var601 /* : String */;
606 val* var602 /* : RuntimeVariable */;
607 static val* varonce603;
608 val* var604 /* : String */;
609 char* var605 /* : NativeString */;
610 val* var606 /* : FlatString */;
611 short int var607 /* : Bool */;
612 val* var609 /* : NativeArray[String] */;
613 static val* varonce608;
614 static val* varonce610;
615 val* var611 /* : String */;
616 char* var612 /* : NativeString */;
617 val* var613 /* : FlatString */;
618 val* var614 /* : nullable Object */;
619 val* var615 /* : String */;
620 val* var616 /* : nullable Object */;
621 val* var617 /* : String */;
622 val* var618 /* : String */;
623 val* var619 /* : RuntimeVariable */;
624 static val* varonce620;
625 val* var621 /* : String */;
626 char* var622 /* : NativeString */;
627 val* var623 /* : FlatString */;
628 short int var624 /* : Bool */;
629 val* var626 /* : NativeArray[String] */;
630 static val* varonce625;
631 static val* varonce627;
632 val* var628 /* : String */;
633 char* var629 /* : NativeString */;
634 val* var630 /* : FlatString */;
635 val* var631 /* : nullable Object */;
636 val* var632 /* : String */;
637 val* var633 /* : String */;
638 val* var634 /* : RuntimeVariable */;
639 static val* varonce635;
640 val* var636 /* : String */;
641 char* var637 /* : NativeString */;
642 val* var638 /* : FlatString */;
643 short int var639 /* : Bool */;
644 val* var640 /* : nullable Object */;
645 static val* varonce641;
646 val* var642 /* : String */;
647 char* var643 /* : NativeString */;
648 val* var644 /* : FlatString */;
649 short int var645 /* : Bool */;
650 val* var647 /* : NativeArray[String] */;
651 static val* varonce646;
652 static val* varonce648;
653 val* var649 /* : String */;
654 char* var650 /* : NativeString */;
655 val* var651 /* : FlatString */;
656 val* var652 /* : nullable Object */;
657 val* var653 /* : String */;
658 val* var654 /* : nullable Object */;
659 val* var655 /* : String */;
660 val* var656 /* : String */;
661 val* var657 /* : RuntimeVariable */;
662 static val* varonce658;
663 val* var659 /* : String */;
664 char* var660 /* : NativeString */;
665 val* var661 /* : FlatString */;
666 short int var662 /* : Bool */;
667 val* var664 /* : NativeArray[String] */;
668 static val* varonce663;
669 static val* varonce665;
670 val* var666 /* : String */;
671 char* var667 /* : NativeString */;
672 val* var668 /* : FlatString */;
673 val* var669 /* : nullable Object */;
674 val* var670 /* : String */;
675 val* var671 /* : nullable Object */;
676 val* var672 /* : String */;
677 val* var673 /* : String */;
678 val* var674 /* : RuntimeVariable */;
679 static val* varonce675;
680 val* var676 /* : String */;
681 char* var677 /* : NativeString */;
682 val* var678 /* : FlatString */;
683 short int var679 /* : Bool */;
684 val* var681 /* : NativeArray[String] */;
685 static val* varonce680;
686 static val* varonce682;
687 val* var683 /* : String */;
688 char* var684 /* : NativeString */;
689 val* var685 /* : FlatString */;
690 val* var686 /* : nullable Object */;
691 val* var687 /* : String */;
692 val* var688 /* : nullable Object */;
693 val* var689 /* : String */;
694 val* var690 /* : String */;
695 val* var691 /* : RuntimeVariable */;
696 static val* varonce692;
697 val* var693 /* : String */;
698 char* var694 /* : NativeString */;
699 val* var695 /* : FlatString */;
700 short int var696 /* : Bool */;
701 val* var698 /* : NativeArray[String] */;
702 static val* varonce697;
703 static val* varonce699;
704 val* var700 /* : String */;
705 char* var701 /* : NativeString */;
706 val* var702 /* : FlatString */;
707 val* var703 /* : nullable Object */;
708 val* var704 /* : String */;
709 val* var705 /* : nullable Object */;
710 val* var706 /* : String */;
711 val* var707 /* : String */;
712 val* var708 /* : RuntimeVariable */;
713 static val* varonce709;
714 val* var710 /* : String */;
715 char* var711 /* : NativeString */;
716 val* var712 /* : FlatString */;
717 short int var713 /* : Bool */;
718 val* var715 /* : NativeArray[String] */;
719 static val* varonce714;
720 static val* varonce716;
721 val* var717 /* : String */;
722 char* var718 /* : NativeString */;
723 val* var719 /* : FlatString */;
724 val* var720 /* : nullable Object */;
725 val* var721 /* : String */;
726 val* var722 /* : nullable Object */;
727 val* var723 /* : String */;
728 val* var724 /* : String */;
729 val* var725 /* : RuntimeVariable */;
730 static val* varonce726;
731 val* var727 /* : String */;
732 char* var728 /* : NativeString */;
733 val* var729 /* : FlatString */;
734 short int var730 /* : Bool */;
735 val* var731 /* : nullable Object */;
736 val* var732 /* : nullable Object */;
737 val* var733 /* : RuntimeVariable */;
738 static val* varonce734;
739 val* var735 /* : String */;
740 char* var736 /* : NativeString */;
741 val* var737 /* : FlatString */;
742 short int var738 /* : Bool */;
743 val* var739 /* : nullable Object */;
744 val* var740 /* : nullable Object */;
745 val* var741 /* : RuntimeVariable */;
746 val* var_res742 /* var res: RuntimeVariable */;
747 val* var744 /* : NativeArray[String] */;
748 static val* varonce743;
749 static val* varonce745;
750 val* var746 /* : String */;
751 char* var747 /* : NativeString */;
752 val* var748 /* : FlatString */;
753 val* var749 /* : String */;
754 val* var750 /* : String */;
755 val* var751 /* : RuntimeVariable */;
756 static val* varonce752;
757 val* var753 /* : String */;
758 char* var754 /* : NativeString */;
759 val* var755 /* : FlatString */;
760 short int var756 /* : Bool */;
761 val* var758 /* : NativeArray[String] */;
762 static val* varonce757;
763 static val* varonce759;
764 val* var760 /* : String */;
765 char* var761 /* : NativeString */;
766 val* var762 /* : FlatString */;
767 val* var763 /* : nullable Object */;
768 val* var764 /* : String */;
769 val* var765 /* : nullable Object */;
770 val* var766 /* : String */;
771 val* var767 /* : String */;
772 val* var768 /* : RuntimeVariable */;
773 static val* varonce769;
774 val* var770 /* : String */;
775 char* var771 /* : NativeString */;
776 val* var772 /* : FlatString */;
777 short int var773 /* : Bool */;
778 val* var775 /* : NativeArray[String] */;
779 static val* varonce774;
780 static val* varonce776;
781 val* var777 /* : String */;
782 char* var778 /* : NativeString */;
783 val* var779 /* : FlatString */;
784 val* var780 /* : nullable Object */;
785 val* var781 /* : String */;
786 val* var782 /* : nullable Object */;
787 val* var783 /* : String */;
788 val* var784 /* : String */;
789 val* var785 /* : RuntimeVariable */;
790 static val* varonce786;
791 val* var787 /* : String */;
792 char* var788 /* : NativeString */;
793 val* var789 /* : FlatString */;
794 short int var790 /* : Bool */;
795 val* var792 /* : NativeArray[String] */;
796 static val* varonce791;
797 static val* varonce793;
798 val* var794 /* : String */;
799 char* var795 /* : NativeString */;
800 val* var796 /* : FlatString */;
801 val* var797 /* : nullable Object */;
802 val* var798 /* : String */;
803 val* var799 /* : nullable Object */;
804 val* var800 /* : String */;
805 val* var801 /* : String */;
806 val* var802 /* : RuntimeVariable */;
807 static val* varonce803;
808 val* var804 /* : String */;
809 char* var805 /* : NativeString */;
810 val* var806 /* : FlatString */;
811 short int var807 /* : Bool */;
812 val* var809 /* : NativeArray[String] */;
813 static val* varonce808;
814 static val* varonce810;
815 val* var811 /* : String */;
816 char* var812 /* : NativeString */;
817 val* var813 /* : FlatString */;
818 val* var814 /* : nullable Object */;
819 val* var815 /* : String */;
820 val* var816 /* : nullable Object */;
821 val* var817 /* : String */;
822 val* var818 /* : String */;
823 val* var819 /* : RuntimeVariable */;
824 static val* varonce820;
825 val* var821 /* : String */;
826 char* var822 /* : NativeString */;
827 val* var823 /* : FlatString */;
828 short int var824 /* : Bool */;
829 val* var826 /* : NativeArray[String] */;
830 static val* varonce825;
831 static val* varonce827;
832 val* var828 /* : String */;
833 char* var829 /* : NativeString */;
834 val* var830 /* : FlatString */;
835 val* var831 /* : nullable Object */;
836 val* var832 /* : String */;
837 val* var833 /* : String */;
838 val* var834 /* : RuntimeVariable */;
839 static val* varonce835;
840 val* var836 /* : String */;
841 char* var837 /* : NativeString */;
842 val* var838 /* : FlatString */;
843 short int var839 /* : Bool */;
844 val* var841 /* : NativeArray[String] */;
845 static val* varonce840;
846 static val* varonce842;
847 val* var843 /* : String */;
848 char* var844 /* : NativeString */;
849 val* var845 /* : FlatString */;
850 val* var846 /* : nullable Object */;
851 val* var847 /* : String */;
852 val* var848 /* : String */;
853 val* var849 /* : RuntimeVariable */;
854 static val* varonce850;
855 val* var851 /* : String */;
856 char* var852 /* : NativeString */;
857 val* var853 /* : FlatString */;
858 short int var854 /* : Bool */;
859 val* var856 /* : NativeArray[String] */;
860 static val* varonce855;
861 val* var857 /* : nullable Object */;
862 val* var858 /* : String */;
863 val* var859 /* : String */;
864 val* var860 /* : RuntimeVariable */;
865 static val* varonce861;
866 val* var862 /* : String */;
867 char* var863 /* : NativeString */;
868 val* var864 /* : FlatString */;
869 short int var865 /* : Bool */;
870 static val* varonce866;
871 val* var867 /* : String */;
872 char* var868 /* : NativeString */;
873 val* var869 /* : FlatString */;
874 short int var870 /* : Bool */;
875 val* var872 /* : NativeArray[String] */;
876 static val* varonce871;
877 static val* varonce873;
878 val* var874 /* : String */;
879 char* var875 /* : NativeString */;
880 val* var876 /* : FlatString */;
881 static val* varonce877;
882 val* var878 /* : String */;
883 char* var879 /* : NativeString */;
884 val* var880 /* : FlatString */;
885 val* var881 /* : nullable Object */;
886 val* var882 /* : String */;
887 val* var883 /* : String */;
888 static val* varonce884;
889 val* var885 /* : String */;
890 char* var886 /* : NativeString */;
891 val* var887 /* : FlatString */;
892 short int var888 /* : Bool */;
893 val* var890 /* : NativeArray[String] */;
894 static val* varonce889;
895 static val* varonce891;
896 val* var892 /* : String */;
897 char* var893 /* : NativeString */;
898 val* var894 /* : FlatString */;
899 val* var895 /* : nullable Object */;
900 val* var896 /* : String */;
901 val* var897 /* : String */;
902 val* var898 /* : RuntimeVariable */;
903 static val* varonce899;
904 val* var900 /* : String */;
905 char* var901 /* : NativeString */;
906 val* var902 /* : FlatString */;
907 short int var903 /* : Bool */;
908 val* var904 /* : nullable Object */;
909 val* var905 /* : nullable Object */;
910 val* var906 /* : RuntimeVariable */;
911 static val* varonce907;
912 val* var908 /* : String */;
913 char* var909 /* : NativeString */;
914 val* var910 /* : FlatString */;
915 short int var911 /* : Bool */;
916 val* var912 /* : nullable Object */;
917 val* var913 /* : nullable Object */;
918 val* var914 /* : RuntimeVariable */;
919 val* var_res915 /* var res: RuntimeVariable */;
920 val* var917 /* : NativeArray[String] */;
921 static val* varonce916;
922 static val* varonce918;
923 val* var919 /* : String */;
924 char* var920 /* : NativeString */;
925 val* var921 /* : FlatString */;
926 val* var922 /* : String */;
927 val* var923 /* : String */;
928 val* var924 /* : RuntimeVariable */;
929 static val* varonce925;
930 val* var926 /* : String */;
931 char* var927 /* : NativeString */;
932 val* var928 /* : FlatString */;
933 short int var929 /* : Bool */;
934 static val* varonce930;
935 val* var931 /* : String */;
936 char* var932 /* : NativeString */;
937 val* var933 /* : FlatString */;
938 short int var934 /* : Bool */;
939 val* var936 /* : NativeArray[String] */;
940 static val* varonce935;
941 static val* varonce937;
942 val* var938 /* : String */;
943 char* var939 /* : NativeString */;
944 val* var940 /* : FlatString */;
945 static val* varonce941;
946 val* var942 /* : String */;
947 char* var943 /* : NativeString */;
948 val* var944 /* : FlatString */;
949 val* var945 /* : nullable Object */;
950 val* var946 /* : String */;
951 val* var947 /* : String */;
952 static val* varonce948;
953 val* var949 /* : String */;
954 char* var950 /* : NativeString */;
955 val* var951 /* : FlatString */;
956 short int var952 /* : Bool */;
957 val* var954 /* : NativeArray[String] */;
958 static val* varonce953;
959 static val* varonce955;
960 val* var956 /* : String */;
961 char* var957 /* : NativeString */;
962 val* var958 /* : FlatString */;
963 val* var959 /* : nullable Object */;
964 val* var960 /* : String */;
965 val* var961 /* : String */;
966 val* var962 /* : RuntimeVariable */;
967 static val* varonce963;
968 val* var964 /* : String */;
969 char* var965 /* : NativeString */;
970 val* var966 /* : FlatString */;
971 short int var967 /* : Bool */;
972 val* var969 /* : NativeArray[String] */;
973 static val* varonce968;
974 static val* varonce970;
975 val* var971 /* : String */;
976 char* var972 /* : NativeString */;
977 val* var973 /* : FlatString */;
978 val* var974 /* : nullable Object */;
979 val* var975 /* : String */;
980 val* var976 /* : nullable Object */;
981 val* var977 /* : String */;
982 val* var978 /* : String */;
983 val* var979 /* : RuntimeVariable */;
984 static val* varonce980;
985 val* var981 /* : String */;
986 char* var982 /* : NativeString */;
987 val* var983 /* : FlatString */;
988 short int var984 /* : Bool */;
989 val* var986 /* : NativeArray[String] */;
990 static val* varonce985;
991 static val* varonce987;
992 val* var988 /* : String */;
993 char* var989 /* : NativeString */;
994 val* var990 /* : FlatString */;
995 val* var991 /* : nullable Object */;
996 val* var992 /* : String */;
997 val* var993 /* : nullable Object */;
998 val* var994 /* : String */;
999 val* var995 /* : String */;
1000 val* var996 /* : RuntimeVariable */;
1001 static val* varonce997;
1002 val* var998 /* : String */;
1003 char* var999 /* : NativeString */;
1004 val* var1000 /* : FlatString */;
1005 short int var1001 /* : Bool */;
1006 val* var1003 /* : NativeArray[String] */;
1007 static val* varonce1002;
1008 static val* varonce1004;
1009 val* var1005 /* : String */;
1010 char* var1006 /* : NativeString */;
1011 val* var1007 /* : FlatString */;
1012 val* var1008 /* : nullable Object */;
1013 val* var1009 /* : String */;
1014 val* var1010 /* : String */;
1015 val* var1011 /* : RuntimeVariable */;
1016 static val* varonce1012;
1017 val* var1013 /* : String */;
1018 char* var1014 /* : NativeString */;
1019 val* var1015 /* : FlatString */;
1020 short int var1016 /* : Bool */;
1021 val* var1017 /* : nullable Object */;
1022 static val* varonce1018;
1023 val* var1019 /* : String */;
1024 char* var1020 /* : NativeString */;
1025 val* var1021 /* : FlatString */;
1026 short int var1022 /* : Bool */;
1027 val* var1024 /* : NativeArray[String] */;
1028 static val* varonce1023;
1029 static val* varonce1025;
1030 val* var1026 /* : String */;
1031 char* var1027 /* : NativeString */;
1032 val* var1028 /* : FlatString */;
1033 val* var1029 /* : nullable Object */;
1034 val* var1030 /* : String */;
1035 val* var1031 /* : String */;
1036 val* var1032 /* : RuntimeVariable */;
1037 static val* varonce1033;
1038 val* var1034 /* : String */;
1039 char* var1035 /* : NativeString */;
1040 val* var1036 /* : FlatString */;
1041 short int var1037 /* : Bool */;
1042 val* var1039 /* : NativeArray[String] */;
1043 static val* varonce1038;
1044 static val* varonce1040;
1045 val* var1041 /* : String */;
1046 char* var1042 /* : NativeString */;
1047 val* var1043 /* : FlatString */;
1048 val* var1044 /* : nullable Object */;
1049 val* var1045 /* : String */;
1050 val* var1046 /* : String */;
1051 val* var1047 /* : RuntimeVariable */;
1052 static val* varonce1048;
1053 val* var1049 /* : String */;
1054 char* var1050 /* : NativeString */;
1055 val* var1051 /* : FlatString */;
1056 short int var1052 /* : Bool */;
1057 val* var1054 /* : NativeArray[String] */;
1058 static val* varonce1053;
1059 static val* varonce1055;
1060 val* var1056 /* : String */;
1061 char* var1057 /* : NativeString */;
1062 val* var1058 /* : FlatString */;
1063 val* var1059 /* : nullable Object */;
1064 val* var1060 /* : String */;
1065 val* var1061 /* : nullable Object */;
1066 val* var1062 /* : String */;
1067 val* var1063 /* : String */;
1068 val* var1064 /* : RuntimeVariable */;
1069 static val* varonce1065;
1070 val* var1066 /* : String */;
1071 char* var1067 /* : NativeString */;
1072 val* var1068 /* : FlatString */;
1073 short int var1069 /* : Bool */;
1074 val* var1071 /* : NativeArray[String] */;
1075 static val* varonce1070;
1076 static val* varonce1072;
1077 val* var1073 /* : String */;
1078 char* var1074 /* : NativeString */;
1079 val* var1075 /* : FlatString */;
1080 val* var1076 /* : nullable Object */;
1081 val* var1077 /* : String */;
1082 val* var1078 /* : nullable Object */;
1083 val* var1079 /* : String */;
1084 val* var1080 /* : String */;
1085 val* var1081 /* : RuntimeVariable */;
1086 static val* varonce1082;
1087 val* var1083 /* : String */;
1088 char* var1084 /* : NativeString */;
1089 val* var1085 /* : FlatString */;
1090 short int var1086 /* : Bool */;
1091 val* var1087 /* : nullable Object */;
1092 val* var1088 /* : nullable Object */;
1093 val* var1089 /* : RuntimeVariable */;
1094 static val* varonce1090;
1095 val* var1091 /* : String */;
1096 char* var1092 /* : NativeString */;
1097 val* var1093 /* : FlatString */;
1098 short int var1094 /* : Bool */;
1099 val* var1095 /* : nullable Object */;
1100 val* var1096 /* : nullable Object */;
1101 val* var1097 /* : RuntimeVariable */;
1102 val* var_res1098 /* var res: RuntimeVariable */;
1103 val* var1100 /* : NativeArray[String] */;
1104 static val* varonce1099;
1105 static val* varonce1101;
1106 val* var1102 /* : String */;
1107 char* var1103 /* : NativeString */;
1108 val* var1104 /* : FlatString */;
1109 val* var1105 /* : String */;
1110 val* var1106 /* : String */;
1111 val* var1107 /* : RuntimeVariable */;
1112 static val* varonce1108;
1113 val* var1109 /* : String */;
1114 char* var1110 /* : NativeString */;
1115 val* var1111 /* : FlatString */;
1116 short int var1112 /* : Bool */;
1117 val* var1114 /* : NativeArray[String] */;
1118 static val* varonce1113;
1119 static val* varonce1115;
1120 val* var1116 /* : String */;
1121 char* var1117 /* : NativeString */;
1122 val* var1118 /* : FlatString */;
1123 val* var1119 /* : nullable Object */;
1124 val* var1120 /* : String */;
1125 val* var1121 /* : nullable Object */;
1126 val* var1122 /* : String */;
1127 val* var1123 /* : String */;
1128 val* var1124 /* : RuntimeVariable */;
1129 static val* varonce1125;
1130 val* var1126 /* : String */;
1131 char* var1127 /* : NativeString */;
1132 val* var1128 /* : FlatString */;
1133 short int var1129 /* : Bool */;
1134 val* var1131 /* : NativeArray[String] */;
1135 static val* varonce1130;
1136 static val* varonce1132;
1137 val* var1133 /* : String */;
1138 char* var1134 /* : NativeString */;
1139 val* var1135 /* : FlatString */;
1140 val* var1136 /* : nullable Object */;
1141 val* var1137 /* : String */;
1142 val* var1138 /* : nullable Object */;
1143 val* var1139 /* : String */;
1144 val* var1140 /* : String */;
1145 val* var1141 /* : RuntimeVariable */;
1146 static val* varonce1142;
1147 val* var1143 /* : String */;
1148 char* var1144 /* : NativeString */;
1149 val* var1145 /* : FlatString */;
1150 short int var1146 /* : Bool */;
1151 val* var1148 /* : NativeArray[String] */;
1152 static val* varonce1147;
1153 static val* varonce1149;
1154 val* var1150 /* : String */;
1155 char* var1151 /* : NativeString */;
1156 val* var1152 /* : FlatString */;
1157 val* var1153 /* : nullable Object */;
1158 val* var1154 /* : String */;
1159 val* var1155 /* : nullable Object */;
1160 val* var1156 /* : String */;
1161 val* var1157 /* : String */;
1162 val* var1158 /* : RuntimeVariable */;
1163 static val* varonce1159;
1164 val* var1160 /* : String */;
1165 char* var1161 /* : NativeString */;
1166 val* var1162 /* : FlatString */;
1167 short int var1163 /* : Bool */;
1168 val* var1165 /* : NativeArray[String] */;
1169 static val* varonce1164;
1170 static val* varonce1166;
1171 val* var1167 /* : String */;
1172 char* var1168 /* : NativeString */;
1173 val* var1169 /* : FlatString */;
1174 val* var1170 /* : nullable Object */;
1175 val* var1171 /* : String */;
1176 val* var1172 /* : nullable Object */;
1177 val* var1173 /* : String */;
1178 val* var1174 /* : String */;
1179 val* var1175 /* : RuntimeVariable */;
1180 static val* varonce1176;
1181 val* var1177 /* : String */;
1182 char* var1178 /* : NativeString */;
1183 val* var1179 /* : FlatString */;
1184 short int var1180 /* : Bool */;
1185 val* var1182 /* : NativeArray[String] */;
1186 static val* varonce1181;
1187 static val* varonce1183;
1188 val* var1184 /* : String */;
1189 char* var1185 /* : NativeString */;
1190 val* var1186 /* : FlatString */;
1191 val* var1187 /* : nullable Object */;
1192 val* var1188 /* : String */;
1193 val* var1189 /* : String */;
1194 val* var1190 /* : RuntimeVariable */;
1195 static val* varonce1191;
1196 val* var1192 /* : String */;
1197 char* var1193 /* : NativeString */;
1198 val* var1194 /* : FlatString */;
1199 short int var1195 /* : Bool */;
1200 val* var1197 /* : NativeArray[String] */;
1201 static val* varonce1196;
1202 static val* varonce1198;
1203 val* var1199 /* : String */;
1204 char* var1200 /* : NativeString */;
1205 val* var1201 /* : FlatString */;
1206 val* var1202 /* : nullable Object */;
1207 val* var1203 /* : String */;
1208 val* var1204 /* : String */;
1209 val* var1205 /* : RuntimeVariable */;
1210 static val* varonce1206;
1211 val* var1207 /* : String */;
1212 char* var1208 /* : NativeString */;
1213 val* var1209 /* : FlatString */;
1214 short int var1210 /* : Bool */;
1215 static val* varonce1211;
1216 val* var1212 /* : String */;
1217 char* var1213 /* : NativeString */;
1218 val* var1214 /* : FlatString */;
1219 short int var1215 /* : Bool */;
1220 val* var1217 /* : NativeArray[String] */;
1221 static val* varonce1216;
1222 static val* varonce1218;
1223 val* var1219 /* : String */;
1224 char* var1220 /* : NativeString */;
1225 val* var1221 /* : FlatString */;
1226 static val* varonce1222;
1227 val* var1223 /* : String */;
1228 char* var1224 /* : NativeString */;
1229 val* var1225 /* : FlatString */;
1230 static val* varonce1226;
1231 val* var1227 /* : String */;
1232 char* var1228 /* : NativeString */;
1233 val* var1229 /* : FlatString */;
1234 val* var1230 /* : nullable Object */;
1235 val* var1231 /* : String */;
1236 val* var1232 /* : nullable Object */;
1237 val* var1233 /* : String */;
1238 val* var1234 /* : String */;
1239 val* var1235 /* : RuntimeVariable */;
1240 static val* varonce1236;
1241 val* var1237 /* : String */;
1242 char* var1238 /* : NativeString */;
1243 val* var1239 /* : FlatString */;
1244 short int var1240 /* : Bool */;
1245 val* var1242 /* : NativeArray[String] */;
1246 static val* varonce1241;
1247 static val* varonce1243;
1248 val* var1244 /* : String */;
1249 char* var1245 /* : NativeString */;
1250 val* var1246 /* : FlatString */;
1251 static val* varonce1247;
1252 val* var1248 /* : String */;
1253 char* var1249 /* : NativeString */;
1254 val* var1250 /* : FlatString */;
1255 static val* varonce1251;
1256 val* var1252 /* : String */;
1257 char* var1253 /* : NativeString */;
1258 val* var1254 /* : FlatString */;
1259 val* var1255 /* : nullable Object */;
1260 val* var1256 /* : String */;
1261 val* var1257 /* : nullable Object */;
1262 val* var1258 /* : String */;
1263 val* var1259 /* : nullable Object */;
1264 val* var1260 /* : String */;
1265 val* var1261 /* : String */;
1266 static val* varonce1262;
1267 val* var1263 /* : String */;
1268 char* var1264 /* : NativeString */;
1269 val* var1265 /* : FlatString */;
1270 short int var1266 /* : Bool */;
1271 val* var1268 /* : NativeArray[String] */;
1272 static val* varonce1267;
1273 static val* varonce1269;
1274 val* var1270 /* : String */;
1275 char* var1271 /* : NativeString */;
1276 val* var1272 /* : FlatString */;
1277 static val* varonce1273;
1278 val* var1274 /* : String */;
1279 char* var1275 /* : NativeString */;
1280 val* var1276 /* : FlatString */;
1281 static val* varonce1277;
1282 val* var1278 /* : String */;
1283 char* var1279 /* : NativeString */;
1284 val* var1280 /* : FlatString */;
1285 static val* varonce1281;
1286 val* var1282 /* : String */;
1287 char* var1283 /* : NativeString */;
1288 val* var1284 /* : FlatString */;
1289 static val* varonce1285;
1290 val* var1286 /* : String */;
1291 char* var1287 /* : NativeString */;
1292 val* var1288 /* : FlatString */;
1293 static val* varonce1289;
1294 val* var1290 /* : String */;
1295 char* var1291 /* : NativeString */;
1296 val* var1292 /* : FlatString */;
1297 val* var1293 /* : nullable Object */;
1298 val* var1294 /* : String */;
1299 val* var1295 /* : nullable Object */;
1300 val* var1296 /* : String */;
1301 val* var1297 /* : nullable Object */;
1302 val* var1298 /* : String */;
1303 val* var1299 /* : nullable Object */;
1304 val* var1300 /* : String */;
1305 val* var1301 /* : nullable Object */;
1306 val* var1302 /* : String */;
1307 val* var1303 /* : String */;
1308 static val* varonce1304;
1309 val* var1305 /* : String */;
1310 char* var1306 /* : NativeString */;
1311 val* var1307 /* : FlatString */;
1312 short int var1308 /* : Bool */;
1313 val* var1310 /* : NativeArray[String] */;
1314 static val* varonce1309;
1315 static val* varonce1311;
1316 val* var1312 /* : String */;
1317 char* var1313 /* : NativeString */;
1318 val* var1314 /* : FlatString */;
1319 static val* varonce1315;
1320 val* var1316 /* : String */;
1321 char* var1317 /* : NativeString */;
1322 val* var1318 /* : FlatString */;
1323 val* var1319 /* : nullable Object */;
1324 val* var1320 /* : String */;
1325 val* var1321 /* : String */;
1326 val* var1322 /* : RuntimeVariable */;
1327 static val* varonce1323;
1328 val* var1324 /* : String */;
1329 char* var1325 /* : NativeString */;
1330 val* var1326 /* : FlatString */;
1331 short int var1327 /* : Bool */;
1332 val* var1329 /* : NativeArray[String] */;
1333 static val* varonce1328;
1334 static val* varonce1330;
1335 val* var1331 /* : String */;
1336 char* var1332 /* : NativeString */;
1337 val* var1333 /* : FlatString */;
1338 val* var1334 /* : nullable Object */;
1339 val* var1335 /* : String */;
1340 val* var1336 /* : nullable Object */;
1341 val* var1337 /* : String */;
1342 val* var1338 /* : String */;
1343 val* var1339 /* : RuntimeVariable */;
1344 static val* varonce1340;
1345 val* var1341 /* : String */;
1346 char* var1342 /* : NativeString */;
1347 val* var1343 /* : FlatString */;
1348 short int var1344 /* : Bool */;
1349 val* var1346 /* : NativeArray[String] */;
1350 static val* varonce1345;
1351 static val* varonce1347;
1352 val* var1348 /* : String */;
1353 char* var1349 /* : NativeString */;
1354 val* var1350 /* : FlatString */;
1355 static val* varonce1351;
1356 val* var1352 /* : String */;
1357 char* var1353 /* : NativeString */;
1358 val* var1354 /* : FlatString */;
1359 val* var1355 /* : nullable Object */;
1360 val* var1356 /* : String */;
1361 val* var1357 /* : String */;
1362 val* var1358 /* : RuntimeVariable */;
1363 static val* varonce1359;
1364 val* var1360 /* : String */;
1365 char* var1361 /* : NativeString */;
1366 val* var1362 /* : FlatString */;
1367 short int var1363 /* : Bool */;
1368 static val* varonce1364;
1369 val* var1365 /* : String */;
1370 char* var1366 /* : NativeString */;
1371 val* var1367 /* : FlatString */;
1372 short int var1368 /* : Bool */;
1373 val* var1370 /* : NativeArray[String] */;
1374 static val* varonce1369;
1375 static val* varonce1371;
1376 val* var1372 /* : String */;
1377 char* var1373 /* : NativeString */;
1378 val* var1374 /* : FlatString */;
1379 static val* varonce1375;
1380 val* var1376 /* : String */;
1381 char* var1377 /* : NativeString */;
1382 val* var1378 /* : FlatString */;
1383 val* var1379 /* : nullable Object */;
1384 val* var1380 /* : String */;
1385 val* var1381 /* : String */;
1386 static val* varonce1382;
1387 val* var1383 /* : String */;
1388 char* var1384 /* : NativeString */;
1389 val* var1385 /* : FlatString */;
1390 short int var1386 /* : Bool */;
1391 static val* varonce1387;
1392 val* var1388 /* : String */;
1393 char* var1389 /* : NativeString */;
1394 val* var1390 /* : FlatString */;
1395 val* var1391 /* : RuntimeVariable */;
1396 static val* varonce1392;
1397 val* var1393 /* : String */;
1398 char* var1394 /* : NativeString */;
1399 val* var1395 /* : FlatString */;
1400 short int var1396 /* : Bool */;
1401 val* var1398 /* : NativeArray[String] */;
1402 static val* varonce1397;
1403 static val* varonce1399;
1404 val* var1400 /* : String */;
1405 char* var1401 /* : NativeString */;
1406 val* var1402 /* : FlatString */;
1407 static val* varonce1403;
1408 val* var1404 /* : String */;
1409 char* var1405 /* : NativeString */;
1410 val* var1406 /* : FlatString */;
1411 val* var1407 /* : nullable Object */;
1412 val* var1408 /* : String */;
1413 val* var1409 /* : String */;
1414 val* var1410 /* : RuntimeVariable */;
1415 static val* varonce1411;
1416 val* var1412 /* : String */;
1417 char* var1413 /* : NativeString */;
1418 val* var1414 /* : FlatString */;
1419 short int var1415 /* : Bool */;
1420 static val* varonce1416;
1421 val* var1417 /* : String */;
1422 char* var1418 /* : NativeString */;
1423 val* var1419 /* : FlatString */;
1424 short int var1420 /* : Bool */;
1425 val* var1422 /* : NativeArray[String] */;
1426 static val* varonce1421;
1427 static val* varonce1423;
1428 val* var1424 /* : String */;
1429 char* var1425 /* : NativeString */;
1430 val* var1426 /* : FlatString */;
1431 val* var1427 /* : nullable Object */;
1432 val* var1428 /* : String */;
1433 val* var1429 /* : String */;
1434 val* var1430 /* : RuntimeVariable */;
1435 static val* varonce1431;
1436 val* var1432 /* : String */;
1437 char* var1433 /* : NativeString */;
1438 val* var1434 /* : FlatString */;
1439 short int var1435 /* : Bool */;
1440 val* var1436 /* : nullable Object */;
1441 val* var1437 /* : nullable Object */;
1442 val* var1438 /* : RuntimeVariable */;
1443 static val* varonce1439;
1444 val* var1440 /* : String */;
1445 char* var1441 /* : NativeString */;
1446 val* var1442 /* : FlatString */;
1447 short int var1443 /* : Bool */;
1448 val* var1444 /* : nullable Object */;
1449 val* var1445 /* : nullable Object */;
1450 val* var1446 /* : RuntimeVariable */;
1451 static val* varonce1447;
1452 val* var1448 /* : String */;
1453 char* var1449 /* : NativeString */;
1454 val* var1450 /* : FlatString */;
1455 short int var1451 /* : Bool */;
1456 val* var1452 /* : nullable Object */;
1457 val* var1453 /* : String */;
1458 val* var_nat /* var nat: String */;
1459 val* var1455 /* : NativeArray[String] */;
1460 static val* varonce1454;
1461 static val* varonce1456;
1462 val* var1457 /* : String */;
1463 char* var1458 /* : NativeString */;
1464 val* var1459 /* : FlatString */;
1465 static val* varonce1460;
1466 val* var1461 /* : String */;
1467 char* var1462 /* : NativeString */;
1468 val* var1463 /* : FlatString */;
1469 val* var1464 /* : String */;
1470 static val* varonce1465;
1471 val* var1466 /* : String */;
1472 char* var1467 /* : NativeString */;
1473 val* var1468 /* : FlatString */;
1474 short int var1469 /* : Bool */;
1475 val* var1470 /* : nullable Object */;
1476 val* var1471 /* : String */;
1477 val* var_nat1472 /* var nat: String */;
1478 val* var1474 /* : NativeArray[String] */;
1479 static val* varonce1473;
1480 static val* varonce1475;
1481 val* var1476 /* : String */;
1482 char* var1477 /* : NativeString */;
1483 val* var1478 /* : FlatString */;
1484 val* var1479 /* : String */;
1485 val* var1480 /* : RuntimeVariable */;
1486 static val* varonce1481;
1487 val* var1482 /* : String */;
1488 char* var1483 /* : NativeString */;
1489 val* var1484 /* : FlatString */;
1490 short int var1485 /* : Bool */;
1491 static val* varonce1486;
1492 val* var1487 /* : String */;
1493 char* var1488 /* : NativeString */;
1494 val* var1489 /* : FlatString */;
1495 static val* varonce1490;
1496 val* var1491 /* : String */;
1497 char* var1492 /* : NativeString */;
1498 val* var1493 /* : FlatString */;
1499 short int var1494 /* : Bool */;
1500 static val* varonce1495;
1501 val* var1496 /* : String */;
1502 char* var1497 /* : NativeString */;
1503 val* var1498 /* : FlatString */;
1504 val* var1499 /* : RuntimeVariable */;
1505 static val* varonce1500;
1506 val* var1501 /* : String */;
1507 char* var1502 /* : NativeString */;
1508 val* var1503 /* : FlatString */;
1509 short int var1504 /* : Bool */;
1510 val* var1506 /* : NativeArray[String] */;
1511 static val* varonce1505;
1512 static val* varonce1507;
1513 val* var1508 /* : String */;
1514 char* var1509 /* : NativeString */;
1515 val* var1510 /* : FlatString */;
1516 static val* varonce1511;
1517 val* var1512 /* : String */;
1518 char* var1513 /* : NativeString */;
1519 val* var1514 /* : FlatString */;
1520 val* var1515 /* : nullable Object */;
1521 val* var1516 /* : String */;
1522 val* var1517 /* : String */;
1523 val* var1518 /* : RuntimeVariable */;
1524 var_v = p0;
1525 var_mpropdef = p1;
1526 var_arguments = p2;
1527 {
1528 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
1529 var3 = var_mpropdef->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var_mpropdef:MMethodDef> */
1530 if (unlikely(var3 == NULL)) {
1531 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1532 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
1533 fatal_exit(1);
1534 }
1535 var1 = var3;
1536 RET_LABEL2:(void)0;
1537 }
1538 }
1539 {
1540 { /* Inline model#MProperty#name (var1) on <var1:MProperty(MMethod)> */
1541 var6 = var1->attrs[COLOR_nit__model__MProperty___name].val; /* _name on <var1:MProperty(MMethod)> */
1542 if (unlikely(var6 == NULL)) {
1543 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1544 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1933);
1545 fatal_exit(1);
1546 }
1547 var4 = var6;
1548 RET_LABEL5:(void)0;
1549 }
1550 }
1551 var_pname = var4;
1552 {
1553 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:MMethodDef> */
1554 var9 = var_mpropdef->attrs[COLOR_nit__model__MPropDef___mclassdef].val; /* _mclassdef on <var_mpropdef:MMethodDef> */
1555 if (unlikely(var9 == NULL)) {
1556 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1557 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2209);
1558 fatal_exit(1);
1559 }
1560 var7 = var9;
1561 RET_LABEL8:(void)0;
1562 }
1563 }
1564 {
1565 { /* Inline model#MClassDef#mclass (var7) on <var7:MClassDef> */
1566 var12 = var7->attrs[COLOR_nit__model__MClassDef___mclass].val; /* _mclass on <var7:MClassDef> */
1567 if (unlikely(var12 == NULL)) {
1568 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1569 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 553);
1570 fatal_exit(1);
1571 }
1572 var10 = var12;
1573 RET_LABEL11:(void)0;
1574 }
1575 }
1576 {
1577 { /* Inline model#MClass#name (var10) on <var10:MClass> */
1578 var15 = var10->attrs[COLOR_nit__model__MClass___name].val; /* _name on <var10:MClass> */
1579 if (unlikely(var15 == NULL)) {
1580 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1581 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 362);
1582 fatal_exit(1);
1583 }
1584 var13 = var15;
1585 RET_LABEL14:(void)0;
1586 }
1587 }
1588 var_cname = var13;
1589 {
1590 { /* Inline model#MMethodDef#msignature (var_mpropdef) on <var_mpropdef:MMethodDef> */
1591 var18 = var_mpropdef->attrs[COLOR_nit__model__MMethodDef___msignature].val; /* _msignature on <var_mpropdef:MMethodDef> */
1592 var16 = var18;
1593 RET_LABEL17:(void)0;
1594 }
1595 }
1596 if (var16 == NULL) {
1597 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1598 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2079);
1599 fatal_exit(1);
1600 } else {
1601 { /* Inline model#MSignature#return_mtype (var16) on <var16:nullable MSignature> */
1602 if (unlikely(var16 == NULL)) {
1603 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1604 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1768);
1605 fatal_exit(1);
1606 }
1607 var21 = var16->attrs[COLOR_nit__model__MSignature___return_mtype].val; /* _return_mtype on <var16:nullable MSignature> */
1608 var19 = var21;
1609 RET_LABEL20:(void)0;
1610 }
1611 }
1612 var_ret = var19;
1613 if (var_ret == NULL) {
1614 var22 = 0; /* is null */
1615 } else {
1616 var22 = 1; /* arg is null and recv is not */
1617 }
1618 if (0) {
1619 { /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
1620 var_other = ((val*)NULL);
1621 {
1622 var25 = ((short int(*)(val* self, val* p0))(var_ret->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_ret, var_other); /* == on <var_ret:nullable MType(MType)>*/
1623 }
1624 var26 = !var25;
1625 var23 = var26;
1626 goto RET_LABEL24;
1627 RET_LABEL24:(void)0;
1628 }
1629 var22 = var23;
1630 }
1631 if (var22){
1632 {
1633 var27 = standard___standard__SequenceRead___Collection__first(var_arguments);
1634 }
1635 {
1636 var28 = nit___nit__AbstractCompilerVisitor___resolve_for(var_v, var_ret, var27);
1637 }
1638 var_ret = var28;
1639 } else {
1640 }
1641 if (likely(varonce!=NULL)) {
1642 var30 = varonce;
1643 } else {
1644 var31 = "==";
1645 var32 = standard___standard__NativeString___to_s_with_length(var31, 2l);
1646 var30 = var32;
1647 varonce = var30;
1648 }
1649 {
1650 { /* Inline kernel#Object#!= (var_pname,var30) on <var_pname:String> */
1651 var_other = var30;
1652 {
1653 var35 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var_other); /* == on <var_pname:String>*/
1654 }
1655 var36 = !var35;
1656 var33 = var36;
1657 goto RET_LABEL34;
1658 RET_LABEL34:(void)0;
1659 }
1660 }
1661 var_ = var33;
1662 if (var33){
1663 if (likely(varonce37!=NULL)) {
1664 var38 = varonce37;
1665 } else {
1666 var39 = "!=";
1667 var40 = standard___standard__NativeString___to_s_with_length(var39, 2l);
1668 var38 = var40;
1669 varonce37 = var38;
1670 }
1671 {
1672 { /* Inline kernel#Object#!= (var_pname,var38) on <var_pname:String> */
1673 var_other = var38;
1674 {
1675 var43 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var_other); /* == on <var_pname:String>*/
1676 }
1677 var44 = !var43;
1678 var41 = var44;
1679 goto RET_LABEL42;
1680 RET_LABEL42:(void)0;
1681 }
1682 }
1683 var29 = var41;
1684 } else {
1685 var29 = var_;
1686 }
1687 if (var29){
1688 {
1689 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__adapt_signature(var_v, var_mpropdef, var_arguments); /* Direct call separate_compiler#SeparateCompilerVisitor#adapt_signature on <var_v:AbstractCompilerVisitor>*/
1690 }
1691 {
1692 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__unbox_signature_extern(var_v, var_mpropdef, var_arguments); /* Direct call separate_compiler#SeparateCompilerVisitor#unbox_signature_extern on <var_v:AbstractCompilerVisitor>*/
1693 }
1694 } else {
1695 }
1696 if (likely(varonce45!=NULL)) {
1697 var46 = varonce45;
1698 } else {
1699 var47 = "Int";
1700 var48 = standard___standard__NativeString___to_s_with_length(var47, 3l);
1701 var46 = var48;
1702 varonce45 = var46;
1703 }
1704 {
1705 var49 = ((short int(*)(val* self, val* p0))(var_cname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_cname, var46); /* == on <var_cname:String>*/
1706 }
1707 if (var49){
1708 if (likely(varonce50!=NULL)) {
1709 var51 = varonce50;
1710 } else {
1711 var52 = "output";
1712 var53 = standard___standard__NativeString___to_s_with_length(var52, 6l);
1713 var51 = var53;
1714 varonce50 = var51;
1715 }
1716 {
1717 var54 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var51); /* == on <var_pname:String>*/
1718 }
1719 if (var54){
1720 if (unlikely(varonce55==NULL)) {
1721 var56 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
1722 if (likely(varonce57!=NULL)) {
1723 var58 = varonce57;
1724 } else {
1725 var59 = "printf(\"%ld\\n\", ";
1726 var60 = standard___standard__NativeString___to_s_with_length(var59, 16l);
1727 var58 = var60;
1728 varonce57 = var58;
1729 }
1730 ((struct instance_standard__NativeArray*)var56)->values[0]=var58;
1731 if (likely(varonce61!=NULL)) {
1732 var62 = varonce61;
1733 } else {
1734 var63 = ");";
1735 var64 = standard___standard__NativeString___to_s_with_length(var63, 2l);
1736 var62 = var64;
1737 varonce61 = var62;
1738 }
1739 ((struct instance_standard__NativeArray*)var56)->values[2]=var62;
1740 } else {
1741 var56 = varonce55;
1742 varonce55 = NULL;
1743 }
1744 {
1745 var65 = standard___standard__SequenceRead___Collection__first(var_arguments);
1746 }
1747 {
1748 var66 = ((val*(*)(val* self))(var65->class->vft[COLOR_standard__string__Object__to_s]))(var65); /* to_s on <var65:nullable Object(RuntimeVariable)>*/
1749 }
1750 ((struct instance_standard__NativeArray*)var56)->values[1]=var66;
1751 {
1752 var67 = ((val*(*)(val* self))(var56->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var56); /* native_to_s on <var56:NativeArray[String]>*/
1753 }
1754 varonce55 = var56;
1755 {
1756 nit___nit__AbstractCompilerVisitor___add(var_v, var67); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
1757 }
1758 var = 1;
1759 goto RET_LABEL;
1760 } else {
1761 if (likely(varonce68!=NULL)) {
1762 var69 = varonce68;
1763 } else {
1764 var70 = "object_id";
1765 var71 = standard___standard__NativeString___to_s_with_length(var70, 9l);
1766 var69 = var71;
1767 varonce68 = var69;
1768 }
1769 {
1770 var72 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var69); /* == on <var_pname:String>*/
1771 }
1772 if (var72){
1773 {
1774 var73 = standard___standard__SequenceRead___Collection__first(var_arguments);
1775 }
1776 {
1777 nit___nit__AbstractCompilerVisitor___ret(var_v, var73); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
1778 }
1779 var = 1;
1780 goto RET_LABEL;
1781 } else {
1782 if (likely(varonce74!=NULL)) {
1783 var75 = varonce74;
1784 } else {
1785 var76 = "+";
1786 var77 = standard___standard__NativeString___to_s_with_length(var76, 1l);
1787 var75 = var77;
1788 varonce74 = var75;
1789 }
1790 {
1791 var78 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var75); /* == on <var_pname:String>*/
1792 }
1793 if (var78){
1794 if (unlikely(varonce79==NULL)) {
1795 var80 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
1796 if (likely(varonce81!=NULL)) {
1797 var82 = varonce81;
1798 } else {
1799 var83 = " + ";
1800 var84 = standard___standard__NativeString___to_s_with_length(var83, 3l);
1801 var82 = var84;
1802 varonce81 = var82;
1803 }
1804 ((struct instance_standard__NativeArray*)var80)->values[1]=var82;
1805 } else {
1806 var80 = varonce79;
1807 varonce79 = NULL;
1808 }
1809 {
1810 var85 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
1811 }
1812 {
1813 var86 = ((val*(*)(val* self))(var85->class->vft[COLOR_standard__string__Object__to_s]))(var85); /* to_s on <var85:nullable Object(RuntimeVariable)>*/
1814 }
1815 ((struct instance_standard__NativeArray*)var80)->values[0]=var86;
1816 {
1817 var87 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
1818 }
1819 {
1820 var88 = ((val*(*)(val* self))(var87->class->vft[COLOR_standard__string__Object__to_s]))(var87); /* to_s on <var87:nullable Object(RuntimeVariable)>*/
1821 }
1822 ((struct instance_standard__NativeArray*)var80)->values[2]=var88;
1823 {
1824 var89 = ((val*(*)(val* self))(var80->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var80); /* native_to_s on <var80:NativeArray[String]>*/
1825 }
1826 varonce79 = var80;
1827 if (unlikely(var_ret == NULL)) {
1828 PRINT_ERROR("Runtime error: %s", "Cast failed");
1829 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2095);
1830 fatal_exit(1);
1831 }
1832 {
1833 var90 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var89, var_ret);
1834 }
1835 {
1836 nit___nit__AbstractCompilerVisitor___ret(var_v, var90); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
1837 }
1838 var = 1;
1839 goto RET_LABEL;
1840 } else {
1841 if (likely(varonce91!=NULL)) {
1842 var92 = varonce91;
1843 } else {
1844 var93 = "-";
1845 var94 = standard___standard__NativeString___to_s_with_length(var93, 1l);
1846 var92 = var94;
1847 varonce91 = var92;
1848 }
1849 {
1850 var95 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var92); /* == on <var_pname:String>*/
1851 }
1852 if (var95){
1853 if (unlikely(varonce96==NULL)) {
1854 var97 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
1855 if (likely(varonce98!=NULL)) {
1856 var99 = varonce98;
1857 } else {
1858 var100 = " - ";
1859 var101 = standard___standard__NativeString___to_s_with_length(var100, 3l);
1860 var99 = var101;
1861 varonce98 = var99;
1862 }
1863 ((struct instance_standard__NativeArray*)var97)->values[1]=var99;
1864 } else {
1865 var97 = varonce96;
1866 varonce96 = NULL;
1867 }
1868 {
1869 var102 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
1870 }
1871 {
1872 var103 = ((val*(*)(val* self))(var102->class->vft[COLOR_standard__string__Object__to_s]))(var102); /* to_s on <var102:nullable Object(RuntimeVariable)>*/
1873 }
1874 ((struct instance_standard__NativeArray*)var97)->values[0]=var103;
1875 {
1876 var104 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
1877 }
1878 {
1879 var105 = ((val*(*)(val* self))(var104->class->vft[COLOR_standard__string__Object__to_s]))(var104); /* to_s on <var104:nullable Object(RuntimeVariable)>*/
1880 }
1881 ((struct instance_standard__NativeArray*)var97)->values[2]=var105;
1882 {
1883 var106 = ((val*(*)(val* self))(var97->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var97); /* native_to_s on <var97:NativeArray[String]>*/
1884 }
1885 varonce96 = var97;
1886 if (unlikely(var_ret == NULL)) {
1887 PRINT_ERROR("Runtime error: %s", "Cast failed");
1888 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2098);
1889 fatal_exit(1);
1890 }
1891 {
1892 var107 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var106, var_ret);
1893 }
1894 {
1895 nit___nit__AbstractCompilerVisitor___ret(var_v, var107); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
1896 }
1897 var = 1;
1898 goto RET_LABEL;
1899 } else {
1900 if (likely(varonce108!=NULL)) {
1901 var109 = varonce108;
1902 } else {
1903 var110 = "unary -";
1904 var111 = standard___standard__NativeString___to_s_with_length(var110, 7l);
1905 var109 = var111;
1906 varonce108 = var109;
1907 }
1908 {
1909 var112 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var109); /* == on <var_pname:String>*/
1910 }
1911 if (var112){
1912 if (unlikely(varonce113==NULL)) {
1913 var114 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
1914 if (likely(varonce115!=NULL)) {
1915 var116 = varonce115;
1916 } else {
1917 var117 = "-";
1918 var118 = standard___standard__NativeString___to_s_with_length(var117, 1l);
1919 var116 = var118;
1920 varonce115 = var116;
1921 }
1922 ((struct instance_standard__NativeArray*)var114)->values[0]=var116;
1923 } else {
1924 var114 = varonce113;
1925 varonce113 = NULL;
1926 }
1927 {
1928 var119 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
1929 }
1930 {
1931 var120 = ((val*(*)(val* self))(var119->class->vft[COLOR_standard__string__Object__to_s]))(var119); /* to_s on <var119:nullable Object(RuntimeVariable)>*/
1932 }
1933 ((struct instance_standard__NativeArray*)var114)->values[1]=var120;
1934 {
1935 var121 = ((val*(*)(val* self))(var114->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var114); /* native_to_s on <var114:NativeArray[String]>*/
1936 }
1937 varonce113 = var114;
1938 if (unlikely(var_ret == NULL)) {
1939 PRINT_ERROR("Runtime error: %s", "Cast failed");
1940 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2101);
1941 fatal_exit(1);
1942 }
1943 {
1944 var122 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var121, var_ret);
1945 }
1946 {
1947 nit___nit__AbstractCompilerVisitor___ret(var_v, var122); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
1948 }
1949 var = 1;
1950 goto RET_LABEL;
1951 } else {
1952 if (likely(varonce123!=NULL)) {
1953 var124 = varonce123;
1954 } else {
1955 var125 = "unary +";
1956 var126 = standard___standard__NativeString___to_s_with_length(var125, 7l);
1957 var124 = var126;
1958 varonce123 = var124;
1959 }
1960 {
1961 var127 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var124); /* == on <var_pname:String>*/
1962 }
1963 if (var127){
1964 {
1965 var128 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
1966 }
1967 {
1968 nit___nit__AbstractCompilerVisitor___ret(var_v, var128); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
1969 }
1970 var = 1;
1971 goto RET_LABEL;
1972 } else {
1973 if (likely(varonce129!=NULL)) {
1974 var130 = varonce129;
1975 } else {
1976 var131 = "*";
1977 var132 = standard___standard__NativeString___to_s_with_length(var131, 1l);
1978 var130 = var132;
1979 varonce129 = var130;
1980 }
1981 {
1982 var133 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var130); /* == on <var_pname:String>*/
1983 }
1984 if (var133){
1985 if (unlikely(varonce134==NULL)) {
1986 var135 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
1987 if (likely(varonce136!=NULL)) {
1988 var137 = varonce136;
1989 } else {
1990 var138 = " * ";
1991 var139 = standard___standard__NativeString___to_s_with_length(var138, 3l);
1992 var137 = var139;
1993 varonce136 = var137;
1994 }
1995 ((struct instance_standard__NativeArray*)var135)->values[1]=var137;
1996 } else {
1997 var135 = varonce134;
1998 varonce134 = NULL;
1999 }
2000 {
2001 var140 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2002 }
2003 {
2004 var141 = ((val*(*)(val* self))(var140->class->vft[COLOR_standard__string__Object__to_s]))(var140); /* to_s on <var140:nullable Object(RuntimeVariable)>*/
2005 }
2006 ((struct instance_standard__NativeArray*)var135)->values[0]=var141;
2007 {
2008 var142 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2009 }
2010 {
2011 var143 = ((val*(*)(val* self))(var142->class->vft[COLOR_standard__string__Object__to_s]))(var142); /* to_s on <var142:nullable Object(RuntimeVariable)>*/
2012 }
2013 ((struct instance_standard__NativeArray*)var135)->values[2]=var143;
2014 {
2015 var144 = ((val*(*)(val* self))(var135->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var135); /* native_to_s on <var135:NativeArray[String]>*/
2016 }
2017 varonce134 = var135;
2018 if (unlikely(var_ret == NULL)) {
2019 PRINT_ERROR("Runtime error: %s", "Cast failed");
2020 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2107);
2021 fatal_exit(1);
2022 }
2023 {
2024 var145 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var144, var_ret);
2025 }
2026 {
2027 nit___nit__AbstractCompilerVisitor___ret(var_v, var145); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2028 }
2029 var = 1;
2030 goto RET_LABEL;
2031 } else {
2032 if (likely(varonce146!=NULL)) {
2033 var147 = varonce146;
2034 } else {
2035 var148 = "/";
2036 var149 = standard___standard__NativeString___to_s_with_length(var148, 1l);
2037 var147 = var149;
2038 varonce146 = var147;
2039 }
2040 {
2041 var150 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var147); /* == on <var_pname:String>*/
2042 }
2043 if (var150){
2044 if (unlikely(varonce151==NULL)) {
2045 var152 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2046 if (likely(varonce153!=NULL)) {
2047 var154 = varonce153;
2048 } else {
2049 var155 = " / ";
2050 var156 = standard___standard__NativeString___to_s_with_length(var155, 3l);
2051 var154 = var156;
2052 varonce153 = var154;
2053 }
2054 ((struct instance_standard__NativeArray*)var152)->values[1]=var154;
2055 } else {
2056 var152 = varonce151;
2057 varonce151 = NULL;
2058 }
2059 {
2060 var157 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2061 }
2062 {
2063 var158 = ((val*(*)(val* self))(var157->class->vft[COLOR_standard__string__Object__to_s]))(var157); /* to_s on <var157:nullable Object(RuntimeVariable)>*/
2064 }
2065 ((struct instance_standard__NativeArray*)var152)->values[0]=var158;
2066 {
2067 var159 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2068 }
2069 {
2070 var160 = ((val*(*)(val* self))(var159->class->vft[COLOR_standard__string__Object__to_s]))(var159); /* to_s on <var159:nullable Object(RuntimeVariable)>*/
2071 }
2072 ((struct instance_standard__NativeArray*)var152)->values[2]=var160;
2073 {
2074 var161 = ((val*(*)(val* self))(var152->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var152); /* native_to_s on <var152:NativeArray[String]>*/
2075 }
2076 varonce151 = var152;
2077 if (unlikely(var_ret == NULL)) {
2078 PRINT_ERROR("Runtime error: %s", "Cast failed");
2079 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2110);
2080 fatal_exit(1);
2081 }
2082 {
2083 var162 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var161, var_ret);
2084 }
2085 {
2086 nit___nit__AbstractCompilerVisitor___ret(var_v, var162); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2087 }
2088 var = 1;
2089 goto RET_LABEL;
2090 } else {
2091 if (likely(varonce163!=NULL)) {
2092 var164 = varonce163;
2093 } else {
2094 var165 = "%";
2095 var166 = standard___standard__NativeString___to_s_with_length(var165, 1l);
2096 var164 = var166;
2097 varonce163 = var164;
2098 }
2099 {
2100 var167 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var164); /* == on <var_pname:String>*/
2101 }
2102 if (var167){
2103 if (unlikely(varonce168==NULL)) {
2104 var169 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2105 if (likely(varonce170!=NULL)) {
2106 var171 = varonce170;
2107 } else {
2108 var172 = " % ";
2109 var173 = standard___standard__NativeString___to_s_with_length(var172, 3l);
2110 var171 = var173;
2111 varonce170 = var171;
2112 }
2113 ((struct instance_standard__NativeArray*)var169)->values[1]=var171;
2114 } else {
2115 var169 = varonce168;
2116 varonce168 = NULL;
2117 }
2118 {
2119 var174 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2120 }
2121 {
2122 var175 = ((val*(*)(val* self))(var174->class->vft[COLOR_standard__string__Object__to_s]))(var174); /* to_s on <var174:nullable Object(RuntimeVariable)>*/
2123 }
2124 ((struct instance_standard__NativeArray*)var169)->values[0]=var175;
2125 {
2126 var176 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2127 }
2128 {
2129 var177 = ((val*(*)(val* self))(var176->class->vft[COLOR_standard__string__Object__to_s]))(var176); /* to_s on <var176:nullable Object(RuntimeVariable)>*/
2130 }
2131 ((struct instance_standard__NativeArray*)var169)->values[2]=var177;
2132 {
2133 var178 = ((val*(*)(val* self))(var169->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var169); /* native_to_s on <var169:NativeArray[String]>*/
2134 }
2135 varonce168 = var169;
2136 if (unlikely(var_ret == NULL)) {
2137 PRINT_ERROR("Runtime error: %s", "Cast failed");
2138 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2113);
2139 fatal_exit(1);
2140 }
2141 {
2142 var179 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var178, var_ret);
2143 }
2144 {
2145 nit___nit__AbstractCompilerVisitor___ret(var_v, var179); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2146 }
2147 var = 1;
2148 goto RET_LABEL;
2149 } else {
2150 if (likely(varonce180!=NULL)) {
2151 var181 = varonce180;
2152 } else {
2153 var182 = "lshift";
2154 var183 = standard___standard__NativeString___to_s_with_length(var182, 6l);
2155 var181 = var183;
2156 varonce180 = var181;
2157 }
2158 {
2159 var184 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var181); /* == on <var_pname:String>*/
2160 }
2161 if (var184){
2162 if (unlikely(varonce185==NULL)) {
2163 var186 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2164 if (likely(varonce187!=NULL)) {
2165 var188 = varonce187;
2166 } else {
2167 var189 = " << ";
2168 var190 = standard___standard__NativeString___to_s_with_length(var189, 4l);
2169 var188 = var190;
2170 varonce187 = var188;
2171 }
2172 ((struct instance_standard__NativeArray*)var186)->values[1]=var188;
2173 } else {
2174 var186 = varonce185;
2175 varonce185 = NULL;
2176 }
2177 {
2178 var191 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2179 }
2180 {
2181 var192 = ((val*(*)(val* self))(var191->class->vft[COLOR_standard__string__Object__to_s]))(var191); /* to_s on <var191:nullable Object(RuntimeVariable)>*/
2182 }
2183 ((struct instance_standard__NativeArray*)var186)->values[0]=var192;
2184 {
2185 var193 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2186 }
2187 {
2188 var194 = ((val*(*)(val* self))(var193->class->vft[COLOR_standard__string__Object__to_s]))(var193); /* to_s on <var193:nullable Object(RuntimeVariable)>*/
2189 }
2190 ((struct instance_standard__NativeArray*)var186)->values[2]=var194;
2191 {
2192 var195 = ((val*(*)(val* self))(var186->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var186); /* native_to_s on <var186:NativeArray[String]>*/
2193 }
2194 varonce185 = var186;
2195 if (unlikely(var_ret == NULL)) {
2196 PRINT_ERROR("Runtime error: %s", "Cast failed");
2197 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2116);
2198 fatal_exit(1);
2199 }
2200 {
2201 var196 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var195, var_ret);
2202 }
2203 {
2204 nit___nit__AbstractCompilerVisitor___ret(var_v, var196); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2205 }
2206 var = 1;
2207 goto RET_LABEL;
2208 } else {
2209 if (likely(varonce197!=NULL)) {
2210 var198 = varonce197;
2211 } else {
2212 var199 = "rshift";
2213 var200 = standard___standard__NativeString___to_s_with_length(var199, 6l);
2214 var198 = var200;
2215 varonce197 = var198;
2216 }
2217 {
2218 var201 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var198); /* == on <var_pname:String>*/
2219 }
2220 if (var201){
2221 if (unlikely(varonce202==NULL)) {
2222 var203 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2223 if (likely(varonce204!=NULL)) {
2224 var205 = varonce204;
2225 } else {
2226 var206 = " >> ";
2227 var207 = standard___standard__NativeString___to_s_with_length(var206, 4l);
2228 var205 = var207;
2229 varonce204 = var205;
2230 }
2231 ((struct instance_standard__NativeArray*)var203)->values[1]=var205;
2232 } else {
2233 var203 = varonce202;
2234 varonce202 = NULL;
2235 }
2236 {
2237 var208 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2238 }
2239 {
2240 var209 = ((val*(*)(val* self))(var208->class->vft[COLOR_standard__string__Object__to_s]))(var208); /* to_s on <var208:nullable Object(RuntimeVariable)>*/
2241 }
2242 ((struct instance_standard__NativeArray*)var203)->values[0]=var209;
2243 {
2244 var210 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2245 }
2246 {
2247 var211 = ((val*(*)(val* self))(var210->class->vft[COLOR_standard__string__Object__to_s]))(var210); /* to_s on <var210:nullable Object(RuntimeVariable)>*/
2248 }
2249 ((struct instance_standard__NativeArray*)var203)->values[2]=var211;
2250 {
2251 var212 = ((val*(*)(val* self))(var203->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var203); /* native_to_s on <var203:NativeArray[String]>*/
2252 }
2253 varonce202 = var203;
2254 if (unlikely(var_ret == NULL)) {
2255 PRINT_ERROR("Runtime error: %s", "Cast failed");
2256 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2119);
2257 fatal_exit(1);
2258 }
2259 {
2260 var213 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var212, var_ret);
2261 }
2262 {
2263 nit___nit__AbstractCompilerVisitor___ret(var_v, var213); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2264 }
2265 var = 1;
2266 goto RET_LABEL;
2267 } else {
2268 if (likely(varonce214!=NULL)) {
2269 var215 = varonce214;
2270 } else {
2271 var216 = "==";
2272 var217 = standard___standard__NativeString___to_s_with_length(var216, 2l);
2273 var215 = var217;
2274 varonce214 = var215;
2275 }
2276 {
2277 var218 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var215); /* == on <var_pname:String>*/
2278 }
2279 if (var218){
2280 {
2281 var219 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2282 }
2283 {
2284 var220 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2285 }
2286 {
2287 var221 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var219, var220);
2288 }
2289 {
2290 nit___nit__AbstractCompilerVisitor___ret(var_v, var221); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2291 }
2292 var = 1;
2293 goto RET_LABEL;
2294 } else {
2295 if (likely(varonce222!=NULL)) {
2296 var223 = varonce222;
2297 } else {
2298 var224 = "!=";
2299 var225 = standard___standard__NativeString___to_s_with_length(var224, 2l);
2300 var223 = var225;
2301 varonce222 = var223;
2302 }
2303 {
2304 var226 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var223); /* == on <var_pname:String>*/
2305 }
2306 if (var226){
2307 {
2308 var227 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2309 }
2310 {
2311 var228 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2312 }
2313 {
2314 var229 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var227, var228);
2315 }
2316 var_res = var229;
2317 if (unlikely(varonce230==NULL)) {
2318 var231 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
2319 if (likely(varonce232!=NULL)) {
2320 var233 = varonce232;
2321 } else {
2322 var234 = "!";
2323 var235 = standard___standard__NativeString___to_s_with_length(var234, 1l);
2324 var233 = var235;
2325 varonce232 = var233;
2326 }
2327 ((struct instance_standard__NativeArray*)var231)->values[0]=var233;
2328 } else {
2329 var231 = varonce230;
2330 varonce230 = NULL;
2331 }
2332 {
2333 var236 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
2334 }
2335 ((struct instance_standard__NativeArray*)var231)->values[1]=var236;
2336 {
2337 var237 = ((val*(*)(val* self))(var231->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var231); /* native_to_s on <var231:NativeArray[String]>*/
2338 }
2339 varonce230 = var231;
2340 if (unlikely(var_ret == NULL)) {
2341 PRINT_ERROR("Runtime error: %s", "Cast failed");
2342 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2126);
2343 fatal_exit(1);
2344 }
2345 {
2346 var238 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var237, var_ret);
2347 }
2348 {
2349 nit___nit__AbstractCompilerVisitor___ret(var_v, var238); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2350 }
2351 var = 1;
2352 goto RET_LABEL;
2353 } else {
2354 if (likely(varonce239!=NULL)) {
2355 var240 = varonce239;
2356 } else {
2357 var241 = "<";
2358 var242 = standard___standard__NativeString___to_s_with_length(var241, 1l);
2359 var240 = var242;
2360 varonce239 = var240;
2361 }
2362 {
2363 var243 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var240); /* == on <var_pname:String>*/
2364 }
2365 if (var243){
2366 if (unlikely(varonce244==NULL)) {
2367 var245 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2368 if (likely(varonce246!=NULL)) {
2369 var247 = varonce246;
2370 } else {
2371 var248 = " < ";
2372 var249 = standard___standard__NativeString___to_s_with_length(var248, 3l);
2373 var247 = var249;
2374 varonce246 = var247;
2375 }
2376 ((struct instance_standard__NativeArray*)var245)->values[1]=var247;
2377 } else {
2378 var245 = varonce244;
2379 varonce244 = NULL;
2380 }
2381 {
2382 var250 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2383 }
2384 {
2385 var251 = ((val*(*)(val* self))(var250->class->vft[COLOR_standard__string__Object__to_s]))(var250); /* to_s on <var250:nullable Object(RuntimeVariable)>*/
2386 }
2387 ((struct instance_standard__NativeArray*)var245)->values[0]=var251;
2388 {
2389 var252 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2390 }
2391 {
2392 var253 = ((val*(*)(val* self))(var252->class->vft[COLOR_standard__string__Object__to_s]))(var252); /* to_s on <var252:nullable Object(RuntimeVariable)>*/
2393 }
2394 ((struct instance_standard__NativeArray*)var245)->values[2]=var253;
2395 {
2396 var254 = ((val*(*)(val* self))(var245->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var245); /* native_to_s on <var245:NativeArray[String]>*/
2397 }
2398 varonce244 = var245;
2399 if (unlikely(var_ret == NULL)) {
2400 PRINT_ERROR("Runtime error: %s", "Cast failed");
2401 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2129);
2402 fatal_exit(1);
2403 }
2404 {
2405 var255 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var254, var_ret);
2406 }
2407 {
2408 nit___nit__AbstractCompilerVisitor___ret(var_v, var255); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2409 }
2410 var = 1;
2411 goto RET_LABEL;
2412 } else {
2413 if (likely(varonce256!=NULL)) {
2414 var257 = varonce256;
2415 } else {
2416 var258 = ">";
2417 var259 = standard___standard__NativeString___to_s_with_length(var258, 1l);
2418 var257 = var259;
2419 varonce256 = var257;
2420 }
2421 {
2422 var260 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var257); /* == on <var_pname:String>*/
2423 }
2424 if (var260){
2425 if (unlikely(varonce261==NULL)) {
2426 var262 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2427 if (likely(varonce263!=NULL)) {
2428 var264 = varonce263;
2429 } else {
2430 var265 = " > ";
2431 var266 = standard___standard__NativeString___to_s_with_length(var265, 3l);
2432 var264 = var266;
2433 varonce263 = var264;
2434 }
2435 ((struct instance_standard__NativeArray*)var262)->values[1]=var264;
2436 } else {
2437 var262 = varonce261;
2438 varonce261 = NULL;
2439 }
2440 {
2441 var267 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2442 }
2443 {
2444 var268 = ((val*(*)(val* self))(var267->class->vft[COLOR_standard__string__Object__to_s]))(var267); /* to_s on <var267:nullable Object(RuntimeVariable)>*/
2445 }
2446 ((struct instance_standard__NativeArray*)var262)->values[0]=var268;
2447 {
2448 var269 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2449 }
2450 {
2451 var270 = ((val*(*)(val* self))(var269->class->vft[COLOR_standard__string__Object__to_s]))(var269); /* to_s on <var269:nullable Object(RuntimeVariable)>*/
2452 }
2453 ((struct instance_standard__NativeArray*)var262)->values[2]=var270;
2454 {
2455 var271 = ((val*(*)(val* self))(var262->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var262); /* native_to_s on <var262:NativeArray[String]>*/
2456 }
2457 varonce261 = var262;
2458 if (unlikely(var_ret == NULL)) {
2459 PRINT_ERROR("Runtime error: %s", "Cast failed");
2460 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2132);
2461 fatal_exit(1);
2462 }
2463 {
2464 var272 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var271, var_ret);
2465 }
2466 {
2467 nit___nit__AbstractCompilerVisitor___ret(var_v, var272); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2468 }
2469 var = 1;
2470 goto RET_LABEL;
2471 } else {
2472 if (likely(varonce273!=NULL)) {
2473 var274 = varonce273;
2474 } else {
2475 var275 = "<=";
2476 var276 = standard___standard__NativeString___to_s_with_length(var275, 2l);
2477 var274 = var276;
2478 varonce273 = var274;
2479 }
2480 {
2481 var277 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var274); /* == on <var_pname:String>*/
2482 }
2483 if (var277){
2484 if (unlikely(varonce278==NULL)) {
2485 var279 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2486 if (likely(varonce280!=NULL)) {
2487 var281 = varonce280;
2488 } else {
2489 var282 = " <= ";
2490 var283 = standard___standard__NativeString___to_s_with_length(var282, 4l);
2491 var281 = var283;
2492 varonce280 = var281;
2493 }
2494 ((struct instance_standard__NativeArray*)var279)->values[1]=var281;
2495 } else {
2496 var279 = varonce278;
2497 varonce278 = NULL;
2498 }
2499 {
2500 var284 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2501 }
2502 {
2503 var285 = ((val*(*)(val* self))(var284->class->vft[COLOR_standard__string__Object__to_s]))(var284); /* to_s on <var284:nullable Object(RuntimeVariable)>*/
2504 }
2505 ((struct instance_standard__NativeArray*)var279)->values[0]=var285;
2506 {
2507 var286 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2508 }
2509 {
2510 var287 = ((val*(*)(val* self))(var286->class->vft[COLOR_standard__string__Object__to_s]))(var286); /* to_s on <var286:nullable Object(RuntimeVariable)>*/
2511 }
2512 ((struct instance_standard__NativeArray*)var279)->values[2]=var287;
2513 {
2514 var288 = ((val*(*)(val* self))(var279->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var279); /* native_to_s on <var279:NativeArray[String]>*/
2515 }
2516 varonce278 = var279;
2517 if (unlikely(var_ret == NULL)) {
2518 PRINT_ERROR("Runtime error: %s", "Cast failed");
2519 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2135);
2520 fatal_exit(1);
2521 }
2522 {
2523 var289 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var288, var_ret);
2524 }
2525 {
2526 nit___nit__AbstractCompilerVisitor___ret(var_v, var289); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2527 }
2528 var = 1;
2529 goto RET_LABEL;
2530 } else {
2531 if (likely(varonce290!=NULL)) {
2532 var291 = varonce290;
2533 } else {
2534 var292 = ">=";
2535 var293 = standard___standard__NativeString___to_s_with_length(var292, 2l);
2536 var291 = var293;
2537 varonce290 = var291;
2538 }
2539 {
2540 var294 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var291); /* == on <var_pname:String>*/
2541 }
2542 if (var294){
2543 if (unlikely(varonce295==NULL)) {
2544 var296 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2545 if (likely(varonce297!=NULL)) {
2546 var298 = varonce297;
2547 } else {
2548 var299 = " >= ";
2549 var300 = standard___standard__NativeString___to_s_with_length(var299, 4l);
2550 var298 = var300;
2551 varonce297 = var298;
2552 }
2553 ((struct instance_standard__NativeArray*)var296)->values[1]=var298;
2554 } else {
2555 var296 = varonce295;
2556 varonce295 = NULL;
2557 }
2558 {
2559 var301 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2560 }
2561 {
2562 var302 = ((val*(*)(val* self))(var301->class->vft[COLOR_standard__string__Object__to_s]))(var301); /* to_s on <var301:nullable Object(RuntimeVariable)>*/
2563 }
2564 ((struct instance_standard__NativeArray*)var296)->values[0]=var302;
2565 {
2566 var303 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2567 }
2568 {
2569 var304 = ((val*(*)(val* self))(var303->class->vft[COLOR_standard__string__Object__to_s]))(var303); /* to_s on <var303:nullable Object(RuntimeVariable)>*/
2570 }
2571 ((struct instance_standard__NativeArray*)var296)->values[2]=var304;
2572 {
2573 var305 = ((val*(*)(val* self))(var296->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var296); /* native_to_s on <var296:NativeArray[String]>*/
2574 }
2575 varonce295 = var296;
2576 if (unlikely(var_ret == NULL)) {
2577 PRINT_ERROR("Runtime error: %s", "Cast failed");
2578 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2138);
2579 fatal_exit(1);
2580 }
2581 {
2582 var306 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var305, var_ret);
2583 }
2584 {
2585 nit___nit__AbstractCompilerVisitor___ret(var_v, var306); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2586 }
2587 var = 1;
2588 goto RET_LABEL;
2589 } else {
2590 if (likely(varonce307!=NULL)) {
2591 var308 = varonce307;
2592 } else {
2593 var309 = "to_f";
2594 var310 = standard___standard__NativeString___to_s_with_length(var309, 4l);
2595 var308 = var310;
2596 varonce307 = var308;
2597 }
2598 {
2599 var311 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var308); /* == on <var_pname:String>*/
2600 }
2601 if (var311){
2602 if (unlikely(varonce312==NULL)) {
2603 var313 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
2604 if (likely(varonce314!=NULL)) {
2605 var315 = varonce314;
2606 } else {
2607 var316 = "(double)";
2608 var317 = standard___standard__NativeString___to_s_with_length(var316, 8l);
2609 var315 = var317;
2610 varonce314 = var315;
2611 }
2612 ((struct instance_standard__NativeArray*)var313)->values[0]=var315;
2613 } else {
2614 var313 = varonce312;
2615 varonce312 = NULL;
2616 }
2617 {
2618 var318 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2619 }
2620 {
2621 var319 = ((val*(*)(val* self))(var318->class->vft[COLOR_standard__string__Object__to_s]))(var318); /* to_s on <var318:nullable Object(RuntimeVariable)>*/
2622 }
2623 ((struct instance_standard__NativeArray*)var313)->values[1]=var319;
2624 {
2625 var320 = ((val*(*)(val* self))(var313->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var313); /* native_to_s on <var313:NativeArray[String]>*/
2626 }
2627 varonce312 = var313;
2628 if (unlikely(var_ret == NULL)) {
2629 PRINT_ERROR("Runtime error: %s", "Cast failed");
2630 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2141);
2631 fatal_exit(1);
2632 }
2633 {
2634 var321 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var320, var_ret);
2635 }
2636 {
2637 nit___nit__AbstractCompilerVisitor___ret(var_v, var321); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2638 }
2639 var = 1;
2640 goto RET_LABEL;
2641 } else {
2642 if (likely(varonce322!=NULL)) {
2643 var323 = varonce322;
2644 } else {
2645 var324 = "to_b";
2646 var325 = standard___standard__NativeString___to_s_with_length(var324, 4l);
2647 var323 = var325;
2648 varonce322 = var323;
2649 }
2650 {
2651 var326 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var323); /* == on <var_pname:String>*/
2652 }
2653 if (var326){
2654 if (unlikely(varonce327==NULL)) {
2655 var328 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
2656 if (likely(varonce329!=NULL)) {
2657 var330 = varonce329;
2658 } else {
2659 var331 = "(unsigned char)";
2660 var332 = standard___standard__NativeString___to_s_with_length(var331, 15l);
2661 var330 = var332;
2662 varonce329 = var330;
2663 }
2664 ((struct instance_standard__NativeArray*)var328)->values[0]=var330;
2665 } else {
2666 var328 = varonce327;
2667 varonce327 = NULL;
2668 }
2669 {
2670 var333 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2671 }
2672 {
2673 var334 = ((val*(*)(val* self))(var333->class->vft[COLOR_standard__string__Object__to_s]))(var333); /* to_s on <var333:nullable Object(RuntimeVariable)>*/
2674 }
2675 ((struct instance_standard__NativeArray*)var328)->values[1]=var334;
2676 {
2677 var335 = ((val*(*)(val* self))(var328->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var328); /* native_to_s on <var328:NativeArray[String]>*/
2678 }
2679 varonce327 = var328;
2680 if (unlikely(var_ret == NULL)) {
2681 PRINT_ERROR("Runtime error: %s", "Cast failed");
2682 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2144);
2683 fatal_exit(1);
2684 }
2685 {
2686 var336 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var335, var_ret);
2687 }
2688 {
2689 nit___nit__AbstractCompilerVisitor___ret(var_v, var336); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2690 }
2691 var = 1;
2692 goto RET_LABEL;
2693 } else {
2694 if (likely(varonce337!=NULL)) {
2695 var338 = varonce337;
2696 } else {
2697 var339 = "ascii";
2698 var340 = standard___standard__NativeString___to_s_with_length(var339, 5l);
2699 var338 = var340;
2700 varonce337 = var338;
2701 }
2702 {
2703 var341 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var338); /* == on <var_pname:String>*/
2704 }
2705 if (var341){
2706 if (unlikely(varonce342==NULL)) {
2707 var343 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
2708 if (likely(varonce344!=NULL)) {
2709 var345 = varonce344;
2710 } else {
2711 var346 = "(uint32_t)";
2712 var347 = standard___standard__NativeString___to_s_with_length(var346, 10l);
2713 var345 = var347;
2714 varonce344 = var345;
2715 }
2716 ((struct instance_standard__NativeArray*)var343)->values[0]=var345;
2717 } else {
2718 var343 = varonce342;
2719 varonce342 = NULL;
2720 }
2721 {
2722 var348 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2723 }
2724 {
2725 var349 = ((val*(*)(val* self))(var348->class->vft[COLOR_standard__string__Object__to_s]))(var348); /* to_s on <var348:nullable Object(RuntimeVariable)>*/
2726 }
2727 ((struct instance_standard__NativeArray*)var343)->values[1]=var349;
2728 {
2729 var350 = ((val*(*)(val* self))(var343->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var343); /* native_to_s on <var343:NativeArray[String]>*/
2730 }
2731 varonce342 = var343;
2732 if (unlikely(var_ret == NULL)) {
2733 PRINT_ERROR("Runtime error: %s", "Cast failed");
2734 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2147);
2735 fatal_exit(1);
2736 }
2737 {
2738 var351 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var350, var_ret);
2739 }
2740 {
2741 nit___nit__AbstractCompilerVisitor___ret(var_v, var351); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2742 }
2743 var = 1;
2744 goto RET_LABEL;
2745 } else {
2746 }
2747 }
2748 }
2749 }
2750 }
2751 }
2752 }
2753 }
2754 }
2755 }
2756 }
2757 }
2758 }
2759 }
2760 }
2761 }
2762 }
2763 }
2764 }
2765 }
2766 } else {
2767 if (likely(varonce352!=NULL)) {
2768 var353 = varonce352;
2769 } else {
2770 var354 = "Char";
2771 var355 = standard___standard__NativeString___to_s_with_length(var354, 4l);
2772 var353 = var355;
2773 varonce352 = var353;
2774 }
2775 {
2776 var356 = ((short int(*)(val* self, val* p0))(var_cname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_cname, var353); /* == on <var_cname:String>*/
2777 }
2778 if (var356){
2779 if (likely(varonce357!=NULL)) {
2780 var358 = varonce357;
2781 } else {
2782 var359 = "output";
2783 var360 = standard___standard__NativeString___to_s_with_length(var359, 6l);
2784 var358 = var360;
2785 varonce357 = var358;
2786 }
2787 {
2788 var361 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var358); /* == on <var_pname:String>*/
2789 }
2790 if (var361){
2791 if (unlikely(varonce362==NULL)) {
2792 var363 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2793 if (likely(varonce364!=NULL)) {
2794 var365 = varonce364;
2795 } else {
2796 var366 = "printf(\"%c\", ((unsigned char)";
2797 var367 = standard___standard__NativeString___to_s_with_length(var366, 29l);
2798 var365 = var367;
2799 varonce364 = var365;
2800 }
2801 ((struct instance_standard__NativeArray*)var363)->values[0]=var365;
2802 if (likely(varonce368!=NULL)) {
2803 var369 = varonce368;
2804 } else {
2805 var370 = "));";
2806 var371 = standard___standard__NativeString___to_s_with_length(var370, 3l);
2807 var369 = var371;
2808 varonce368 = var369;
2809 }
2810 ((struct instance_standard__NativeArray*)var363)->values[2]=var369;
2811 } else {
2812 var363 = varonce362;
2813 varonce362 = NULL;
2814 }
2815 {
2816 var372 = standard___standard__SequenceRead___Collection__first(var_arguments);
2817 }
2818 {
2819 var373 = ((val*(*)(val* self))(var372->class->vft[COLOR_standard__string__Object__to_s]))(var372); /* to_s on <var372:nullable Object(RuntimeVariable)>*/
2820 }
2821 ((struct instance_standard__NativeArray*)var363)->values[1]=var373;
2822 {
2823 var374 = ((val*(*)(val* self))(var363->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var363); /* native_to_s on <var363:NativeArray[String]>*/
2824 }
2825 varonce362 = var363;
2826 {
2827 nit___nit__AbstractCompilerVisitor___add(var_v, var374); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2828 }
2829 var = 1;
2830 goto RET_LABEL;
2831 } else {
2832 if (likely(varonce375!=NULL)) {
2833 var376 = varonce375;
2834 } else {
2835 var377 = "object_id";
2836 var378 = standard___standard__NativeString___to_s_with_length(var377, 9l);
2837 var376 = var378;
2838 varonce375 = var376;
2839 }
2840 {
2841 var379 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var376); /* == on <var_pname:String>*/
2842 }
2843 if (var379){
2844 if (unlikely(varonce380==NULL)) {
2845 var381 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
2846 if (likely(varonce382!=NULL)) {
2847 var383 = varonce382;
2848 } else {
2849 var384 = "(long)";
2850 var385 = standard___standard__NativeString___to_s_with_length(var384, 6l);
2851 var383 = var385;
2852 varonce382 = var383;
2853 }
2854 ((struct instance_standard__NativeArray*)var381)->values[0]=var383;
2855 } else {
2856 var381 = varonce380;
2857 varonce380 = NULL;
2858 }
2859 {
2860 var386 = standard___standard__SequenceRead___Collection__first(var_arguments);
2861 }
2862 {
2863 var387 = ((val*(*)(val* self))(var386->class->vft[COLOR_standard__string__Object__to_s]))(var386); /* to_s on <var386:nullable Object(RuntimeVariable)>*/
2864 }
2865 ((struct instance_standard__NativeArray*)var381)->values[1]=var387;
2866 {
2867 var388 = ((val*(*)(val* self))(var381->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var381); /* native_to_s on <var381:NativeArray[String]>*/
2868 }
2869 varonce380 = var381;
2870 if (unlikely(var_ret == NULL)) {
2871 PRINT_ERROR("Runtime error: %s", "Cast failed");
2872 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2155);
2873 fatal_exit(1);
2874 }
2875 {
2876 var389 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var388, var_ret);
2877 }
2878 {
2879 nit___nit__AbstractCompilerVisitor___ret(var_v, var389); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2880 }
2881 var = 1;
2882 goto RET_LABEL;
2883 } else {
2884 if (likely(varonce390!=NULL)) {
2885 var391 = varonce390;
2886 } else {
2887 var392 = "successor";
2888 var393 = standard___standard__NativeString___to_s_with_length(var392, 9l);
2889 var391 = var393;
2890 varonce390 = var391;
2891 }
2892 {
2893 var394 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var391); /* == on <var_pname:String>*/
2894 }
2895 if (var394){
2896 if (unlikely(varonce395==NULL)) {
2897 var396 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2898 if (likely(varonce397!=NULL)) {
2899 var398 = varonce397;
2900 } else {
2901 var399 = " + ";
2902 var400 = standard___standard__NativeString___to_s_with_length(var399, 3l);
2903 var398 = var400;
2904 varonce397 = var398;
2905 }
2906 ((struct instance_standard__NativeArray*)var396)->values[1]=var398;
2907 } else {
2908 var396 = varonce395;
2909 varonce395 = NULL;
2910 }
2911 {
2912 var401 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2913 }
2914 {
2915 var402 = ((val*(*)(val* self))(var401->class->vft[COLOR_standard__string__Object__to_s]))(var401); /* to_s on <var401:nullable Object(RuntimeVariable)>*/
2916 }
2917 ((struct instance_standard__NativeArray*)var396)->values[0]=var402;
2918 {
2919 var403 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2920 }
2921 {
2922 var404 = ((val*(*)(val* self))(var403->class->vft[COLOR_standard__string__Object__to_s]))(var403); /* to_s on <var403:nullable Object(RuntimeVariable)>*/
2923 }
2924 ((struct instance_standard__NativeArray*)var396)->values[2]=var404;
2925 {
2926 var405 = ((val*(*)(val* self))(var396->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var396); /* native_to_s on <var396:NativeArray[String]>*/
2927 }
2928 varonce395 = var396;
2929 if (unlikely(var_ret == NULL)) {
2930 PRINT_ERROR("Runtime error: %s", "Cast failed");
2931 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2158);
2932 fatal_exit(1);
2933 }
2934 {
2935 var406 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var405, var_ret);
2936 }
2937 {
2938 nit___nit__AbstractCompilerVisitor___ret(var_v, var406); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2939 }
2940 var = 1;
2941 goto RET_LABEL;
2942 } else {
2943 if (likely(varonce407!=NULL)) {
2944 var408 = varonce407;
2945 } else {
2946 var409 = "predecessor";
2947 var410 = standard___standard__NativeString___to_s_with_length(var409, 11l);
2948 var408 = var410;
2949 varonce407 = var408;
2950 }
2951 {
2952 var411 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var408); /* == on <var_pname:String>*/
2953 }
2954 if (var411){
2955 if (unlikely(varonce412==NULL)) {
2956 var413 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
2957 if (likely(varonce414!=NULL)) {
2958 var415 = varonce414;
2959 } else {
2960 var416 = " - ";
2961 var417 = standard___standard__NativeString___to_s_with_length(var416, 3l);
2962 var415 = var417;
2963 varonce414 = var415;
2964 }
2965 ((struct instance_standard__NativeArray*)var413)->values[1]=var415;
2966 } else {
2967 var413 = varonce412;
2968 varonce412 = NULL;
2969 }
2970 {
2971 var418 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
2972 }
2973 {
2974 var419 = ((val*(*)(val* self))(var418->class->vft[COLOR_standard__string__Object__to_s]))(var418); /* to_s on <var418:nullable Object(RuntimeVariable)>*/
2975 }
2976 ((struct instance_standard__NativeArray*)var413)->values[0]=var419;
2977 {
2978 var420 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
2979 }
2980 {
2981 var421 = ((val*(*)(val* self))(var420->class->vft[COLOR_standard__string__Object__to_s]))(var420); /* to_s on <var420:nullable Object(RuntimeVariable)>*/
2982 }
2983 ((struct instance_standard__NativeArray*)var413)->values[2]=var421;
2984 {
2985 var422 = ((val*(*)(val* self))(var413->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var413); /* native_to_s on <var413:NativeArray[String]>*/
2986 }
2987 varonce412 = var413;
2988 if (unlikely(var_ret == NULL)) {
2989 PRINT_ERROR("Runtime error: %s", "Cast failed");
2990 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2161);
2991 fatal_exit(1);
2992 }
2993 {
2994 var423 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var422, var_ret);
2995 }
2996 {
2997 nit___nit__AbstractCompilerVisitor___ret(var_v, var423); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
2998 }
2999 var = 1;
3000 goto RET_LABEL;
3001 } else {
3002 if (likely(varonce424!=NULL)) {
3003 var425 = varonce424;
3004 } else {
3005 var426 = "==";
3006 var427 = standard___standard__NativeString___to_s_with_length(var426, 2l);
3007 var425 = var427;
3008 varonce424 = var425;
3009 }
3010 {
3011 var428 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var425); /* == on <var_pname:String>*/
3012 }
3013 if (var428){
3014 {
3015 var429 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3016 }
3017 {
3018 var430 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3019 }
3020 {
3021 var431 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var429, var430);
3022 }
3023 {
3024 nit___nit__AbstractCompilerVisitor___ret(var_v, var431); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3025 }
3026 var = 1;
3027 goto RET_LABEL;
3028 } else {
3029 if (likely(varonce432!=NULL)) {
3030 var433 = varonce432;
3031 } else {
3032 var434 = "!=";
3033 var435 = standard___standard__NativeString___to_s_with_length(var434, 2l);
3034 var433 = var435;
3035 varonce432 = var433;
3036 }
3037 {
3038 var436 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var433); /* == on <var_pname:String>*/
3039 }
3040 if (var436){
3041 {
3042 var437 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3043 }
3044 {
3045 var438 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3046 }
3047 {
3048 var439 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var437, var438);
3049 }
3050 var_res440 = var439;
3051 if (unlikely(varonce441==NULL)) {
3052 var442 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
3053 if (likely(varonce443!=NULL)) {
3054 var444 = varonce443;
3055 } else {
3056 var445 = "!";
3057 var446 = standard___standard__NativeString___to_s_with_length(var445, 1l);
3058 var444 = var446;
3059 varonce443 = var444;
3060 }
3061 ((struct instance_standard__NativeArray*)var442)->values[0]=var444;
3062 } else {
3063 var442 = varonce441;
3064 varonce441 = NULL;
3065 }
3066 {
3067 var447 = ((val*(*)(val* self))(var_res440->class->vft[COLOR_standard__string__Object__to_s]))(var_res440); /* to_s on <var_res440:RuntimeVariable>*/
3068 }
3069 ((struct instance_standard__NativeArray*)var442)->values[1]=var447;
3070 {
3071 var448 = ((val*(*)(val* self))(var442->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var442); /* native_to_s on <var442:NativeArray[String]>*/
3072 }
3073 varonce441 = var442;
3074 if (unlikely(var_ret == NULL)) {
3075 PRINT_ERROR("Runtime error: %s", "Cast failed");
3076 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2168);
3077 fatal_exit(1);
3078 }
3079 {
3080 var449 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var448, var_ret);
3081 }
3082 {
3083 nit___nit__AbstractCompilerVisitor___ret(var_v, var449); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3084 }
3085 var = 1;
3086 goto RET_LABEL;
3087 } else {
3088 if (likely(varonce450!=NULL)) {
3089 var451 = varonce450;
3090 } else {
3091 var452 = "<";
3092 var453 = standard___standard__NativeString___to_s_with_length(var452, 1l);
3093 var451 = var453;
3094 varonce450 = var451;
3095 }
3096 {
3097 var454 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var451); /* == on <var_pname:String>*/
3098 }
3099 if (var454){
3100 if (unlikely(varonce455==NULL)) {
3101 var456 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3102 if (likely(varonce457!=NULL)) {
3103 var458 = varonce457;
3104 } else {
3105 var459 = " < ";
3106 var460 = standard___standard__NativeString___to_s_with_length(var459, 3l);
3107 var458 = var460;
3108 varonce457 = var458;
3109 }
3110 ((struct instance_standard__NativeArray*)var456)->values[1]=var458;
3111 } else {
3112 var456 = varonce455;
3113 varonce455 = NULL;
3114 }
3115 {
3116 var461 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3117 }
3118 {
3119 var462 = ((val*(*)(val* self))(var461->class->vft[COLOR_standard__string__Object__to_s]))(var461); /* to_s on <var461:nullable Object(RuntimeVariable)>*/
3120 }
3121 ((struct instance_standard__NativeArray*)var456)->values[0]=var462;
3122 {
3123 var463 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3124 }
3125 {
3126 var464 = ((val*(*)(val* self))(var463->class->vft[COLOR_standard__string__Object__to_s]))(var463); /* to_s on <var463:nullable Object(RuntimeVariable)>*/
3127 }
3128 ((struct instance_standard__NativeArray*)var456)->values[2]=var464;
3129 {
3130 var465 = ((val*(*)(val* self))(var456->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var456); /* native_to_s on <var456:NativeArray[String]>*/
3131 }
3132 varonce455 = var456;
3133 if (unlikely(var_ret == NULL)) {
3134 PRINT_ERROR("Runtime error: %s", "Cast failed");
3135 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2171);
3136 fatal_exit(1);
3137 }
3138 {
3139 var466 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var465, var_ret);
3140 }
3141 {
3142 nit___nit__AbstractCompilerVisitor___ret(var_v, var466); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3143 }
3144 var = 1;
3145 goto RET_LABEL;
3146 } else {
3147 if (likely(varonce467!=NULL)) {
3148 var468 = varonce467;
3149 } else {
3150 var469 = ">";
3151 var470 = standard___standard__NativeString___to_s_with_length(var469, 1l);
3152 var468 = var470;
3153 varonce467 = var468;
3154 }
3155 {
3156 var471 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var468); /* == on <var_pname:String>*/
3157 }
3158 if (var471){
3159 if (unlikely(varonce472==NULL)) {
3160 var473 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3161 if (likely(varonce474!=NULL)) {
3162 var475 = varonce474;
3163 } else {
3164 var476 = " > ";
3165 var477 = standard___standard__NativeString___to_s_with_length(var476, 3l);
3166 var475 = var477;
3167 varonce474 = var475;
3168 }
3169 ((struct instance_standard__NativeArray*)var473)->values[1]=var475;
3170 } else {
3171 var473 = varonce472;
3172 varonce472 = NULL;
3173 }
3174 {
3175 var478 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3176 }
3177 {
3178 var479 = ((val*(*)(val* self))(var478->class->vft[COLOR_standard__string__Object__to_s]))(var478); /* to_s on <var478:nullable Object(RuntimeVariable)>*/
3179 }
3180 ((struct instance_standard__NativeArray*)var473)->values[0]=var479;
3181 {
3182 var480 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3183 }
3184 {
3185 var481 = ((val*(*)(val* self))(var480->class->vft[COLOR_standard__string__Object__to_s]))(var480); /* to_s on <var480:nullable Object(RuntimeVariable)>*/
3186 }
3187 ((struct instance_standard__NativeArray*)var473)->values[2]=var481;
3188 {
3189 var482 = ((val*(*)(val* self))(var473->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var473); /* native_to_s on <var473:NativeArray[String]>*/
3190 }
3191 varonce472 = var473;
3192 if (unlikely(var_ret == NULL)) {
3193 PRINT_ERROR("Runtime error: %s", "Cast failed");
3194 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2174);
3195 fatal_exit(1);
3196 }
3197 {
3198 var483 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var482, var_ret);
3199 }
3200 {
3201 nit___nit__AbstractCompilerVisitor___ret(var_v, var483); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3202 }
3203 var = 1;
3204 goto RET_LABEL;
3205 } else {
3206 if (likely(varonce484!=NULL)) {
3207 var485 = varonce484;
3208 } else {
3209 var486 = "<=";
3210 var487 = standard___standard__NativeString___to_s_with_length(var486, 2l);
3211 var485 = var487;
3212 varonce484 = var485;
3213 }
3214 {
3215 var488 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var485); /* == on <var_pname:String>*/
3216 }
3217 if (var488){
3218 if (unlikely(varonce489==NULL)) {
3219 var490 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3220 if (likely(varonce491!=NULL)) {
3221 var492 = varonce491;
3222 } else {
3223 var493 = " <= ";
3224 var494 = standard___standard__NativeString___to_s_with_length(var493, 4l);
3225 var492 = var494;
3226 varonce491 = var492;
3227 }
3228 ((struct instance_standard__NativeArray*)var490)->values[1]=var492;
3229 } else {
3230 var490 = varonce489;
3231 varonce489 = NULL;
3232 }
3233 {
3234 var495 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3235 }
3236 {
3237 var496 = ((val*(*)(val* self))(var495->class->vft[COLOR_standard__string__Object__to_s]))(var495); /* to_s on <var495:nullable Object(RuntimeVariable)>*/
3238 }
3239 ((struct instance_standard__NativeArray*)var490)->values[0]=var496;
3240 {
3241 var497 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3242 }
3243 {
3244 var498 = ((val*(*)(val* self))(var497->class->vft[COLOR_standard__string__Object__to_s]))(var497); /* to_s on <var497:nullable Object(RuntimeVariable)>*/
3245 }
3246 ((struct instance_standard__NativeArray*)var490)->values[2]=var498;
3247 {
3248 var499 = ((val*(*)(val* self))(var490->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var490); /* native_to_s on <var490:NativeArray[String]>*/
3249 }
3250 varonce489 = var490;
3251 if (unlikely(var_ret == NULL)) {
3252 PRINT_ERROR("Runtime error: %s", "Cast failed");
3253 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2177);
3254 fatal_exit(1);
3255 }
3256 {
3257 var500 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var499, var_ret);
3258 }
3259 {
3260 nit___nit__AbstractCompilerVisitor___ret(var_v, var500); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3261 }
3262 var = 1;
3263 goto RET_LABEL;
3264 } else {
3265 if (likely(varonce501!=NULL)) {
3266 var502 = varonce501;
3267 } else {
3268 var503 = ">=";
3269 var504 = standard___standard__NativeString___to_s_with_length(var503, 2l);
3270 var502 = var504;
3271 varonce501 = var502;
3272 }
3273 {
3274 var505 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var502); /* == on <var_pname:String>*/
3275 }
3276 if (var505){
3277 if (unlikely(varonce506==NULL)) {
3278 var507 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3279 if (likely(varonce508!=NULL)) {
3280 var509 = varonce508;
3281 } else {
3282 var510 = " >= ";
3283 var511 = standard___standard__NativeString___to_s_with_length(var510, 4l);
3284 var509 = var511;
3285 varonce508 = var509;
3286 }
3287 ((struct instance_standard__NativeArray*)var507)->values[1]=var509;
3288 } else {
3289 var507 = varonce506;
3290 varonce506 = NULL;
3291 }
3292 {
3293 var512 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3294 }
3295 {
3296 var513 = ((val*(*)(val* self))(var512->class->vft[COLOR_standard__string__Object__to_s]))(var512); /* to_s on <var512:nullable Object(RuntimeVariable)>*/
3297 }
3298 ((struct instance_standard__NativeArray*)var507)->values[0]=var513;
3299 {
3300 var514 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3301 }
3302 {
3303 var515 = ((val*(*)(val* self))(var514->class->vft[COLOR_standard__string__Object__to_s]))(var514); /* to_s on <var514:nullable Object(RuntimeVariable)>*/
3304 }
3305 ((struct instance_standard__NativeArray*)var507)->values[2]=var515;
3306 {
3307 var516 = ((val*(*)(val* self))(var507->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var507); /* native_to_s on <var507:NativeArray[String]>*/
3308 }
3309 varonce506 = var507;
3310 if (unlikely(var_ret == NULL)) {
3311 PRINT_ERROR("Runtime error: %s", "Cast failed");
3312 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2180);
3313 fatal_exit(1);
3314 }
3315 {
3316 var517 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var516, var_ret);
3317 }
3318 {
3319 nit___nit__AbstractCompilerVisitor___ret(var_v, var517); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3320 }
3321 var = 1;
3322 goto RET_LABEL;
3323 } else {
3324 if (likely(varonce518!=NULL)) {
3325 var519 = varonce518;
3326 } else {
3327 var520 = "to_i";
3328 var521 = standard___standard__NativeString___to_s_with_length(var520, 4l);
3329 var519 = var521;
3330 varonce518 = var519;
3331 }
3332 {
3333 var522 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var519); /* == on <var_pname:String>*/
3334 }
3335 if (var522){
3336 if (unlikely(varonce523==NULL)) {
3337 var524 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
3338 if (likely(varonce525!=NULL)) {
3339 var526 = varonce525;
3340 } else {
3341 var527 = "-\'0\'";
3342 var528 = standard___standard__NativeString___to_s_with_length(var527, 4l);
3343 var526 = var528;
3344 varonce525 = var526;
3345 }
3346 ((struct instance_standard__NativeArray*)var524)->values[1]=var526;
3347 } else {
3348 var524 = varonce523;
3349 varonce523 = NULL;
3350 }
3351 {
3352 var529 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3353 }
3354 {
3355 var530 = ((val*(*)(val* self))(var529->class->vft[COLOR_standard__string__Object__to_s]))(var529); /* to_s on <var529:nullable Object(RuntimeVariable)>*/
3356 }
3357 ((struct instance_standard__NativeArray*)var524)->values[0]=var530;
3358 {
3359 var531 = ((val*(*)(val* self))(var524->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var524); /* native_to_s on <var524:NativeArray[String]>*/
3360 }
3361 varonce523 = var524;
3362 if (unlikely(var_ret == NULL)) {
3363 PRINT_ERROR("Runtime error: %s", "Cast failed");
3364 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2183);
3365 fatal_exit(1);
3366 }
3367 {
3368 var532 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var531, var_ret);
3369 }
3370 {
3371 nit___nit__AbstractCompilerVisitor___ret(var_v, var532); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3372 }
3373 var = 1;
3374 goto RET_LABEL;
3375 } else {
3376 if (likely(varonce533!=NULL)) {
3377 var534 = varonce533;
3378 } else {
3379 var535 = "ascii";
3380 var536 = standard___standard__NativeString___to_s_with_length(var535, 5l);
3381 var534 = var536;
3382 varonce533 = var534;
3383 }
3384 {
3385 var537 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var534); /* == on <var_pname:String>*/
3386 }
3387 if (var537){
3388 if (unlikely(varonce538==NULL)) {
3389 var539 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
3390 if (likely(varonce540!=NULL)) {
3391 var541 = varonce540;
3392 } else {
3393 var542 = "(long)";
3394 var543 = standard___standard__NativeString___to_s_with_length(var542, 6l);
3395 var541 = var543;
3396 varonce540 = var541;
3397 }
3398 ((struct instance_standard__NativeArray*)var539)->values[0]=var541;
3399 } else {
3400 var539 = varonce538;
3401 varonce538 = NULL;
3402 }
3403 {
3404 var544 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3405 }
3406 {
3407 var545 = ((val*(*)(val* self))(var544->class->vft[COLOR_standard__string__Object__to_s]))(var544); /* to_s on <var544:nullable Object(RuntimeVariable)>*/
3408 }
3409 ((struct instance_standard__NativeArray*)var539)->values[1]=var545;
3410 {
3411 var546 = ((val*(*)(val* self))(var539->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var539); /* native_to_s on <var539:NativeArray[String]>*/
3412 }
3413 varonce538 = var539;
3414 if (unlikely(var_ret == NULL)) {
3415 PRINT_ERROR("Runtime error: %s", "Cast failed");
3416 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2186);
3417 fatal_exit(1);
3418 }
3419 {
3420 var547 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var546, var_ret);
3421 }
3422 {
3423 nit___nit__AbstractCompilerVisitor___ret(var_v, var547); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3424 }
3425 var = 1;
3426 goto RET_LABEL;
3427 } else {
3428 }
3429 }
3430 }
3431 }
3432 }
3433 }
3434 }
3435 }
3436 }
3437 }
3438 }
3439 }
3440 } else {
3441 if (likely(varonce548!=NULL)) {
3442 var549 = varonce548;
3443 } else {
3444 var550 = "Byte";
3445 var551 = standard___standard__NativeString___to_s_with_length(var550, 4l);
3446 var549 = var551;
3447 varonce548 = var549;
3448 }
3449 {
3450 var552 = ((short int(*)(val* self, val* p0))(var_cname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_cname, var549); /* == on <var_cname:String>*/
3451 }
3452 if (var552){
3453 if (likely(varonce553!=NULL)) {
3454 var554 = varonce553;
3455 } else {
3456 var555 = "output";
3457 var556 = standard___standard__NativeString___to_s_with_length(var555, 6l);
3458 var554 = var556;
3459 varonce553 = var554;
3460 }
3461 {
3462 var557 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var554); /* == on <var_pname:String>*/
3463 }
3464 if (var557){
3465 if (unlikely(varonce558==NULL)) {
3466 var559 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3467 if (likely(varonce560!=NULL)) {
3468 var561 = varonce560;
3469 } else {
3470 var562 = "printf(\"%x\\n\", ";
3471 var563 = standard___standard__NativeString___to_s_with_length(var562, 15l);
3472 var561 = var563;
3473 varonce560 = var561;
3474 }
3475 ((struct instance_standard__NativeArray*)var559)->values[0]=var561;
3476 if (likely(varonce564!=NULL)) {
3477 var565 = varonce564;
3478 } else {
3479 var566 = ");";
3480 var567 = standard___standard__NativeString___to_s_with_length(var566, 2l);
3481 var565 = var567;
3482 varonce564 = var565;
3483 }
3484 ((struct instance_standard__NativeArray*)var559)->values[2]=var565;
3485 } else {
3486 var559 = varonce558;
3487 varonce558 = NULL;
3488 }
3489 {
3490 var568 = standard___standard__SequenceRead___Collection__first(var_arguments);
3491 }
3492 {
3493 var569 = ((val*(*)(val* self))(var568->class->vft[COLOR_standard__string__Object__to_s]))(var568); /* to_s on <var568:nullable Object(RuntimeVariable)>*/
3494 }
3495 ((struct instance_standard__NativeArray*)var559)->values[1]=var569;
3496 {
3497 var570 = ((val*(*)(val* self))(var559->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var559); /* native_to_s on <var559:NativeArray[String]>*/
3498 }
3499 varonce558 = var559;
3500 {
3501 nit___nit__AbstractCompilerVisitor___add(var_v, var570); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3502 }
3503 var = 1;
3504 goto RET_LABEL;
3505 } else {
3506 if (likely(varonce571!=NULL)) {
3507 var572 = varonce571;
3508 } else {
3509 var573 = "object_id";
3510 var574 = standard___standard__NativeString___to_s_with_length(var573, 9l);
3511 var572 = var574;
3512 varonce571 = var572;
3513 }
3514 {
3515 var575 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var572); /* == on <var_pname:String>*/
3516 }
3517 if (var575){
3518 if (unlikely(varonce576==NULL)) {
3519 var577 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
3520 if (likely(varonce578!=NULL)) {
3521 var579 = varonce578;
3522 } else {
3523 var580 = "(long)";
3524 var581 = standard___standard__NativeString___to_s_with_length(var580, 6l);
3525 var579 = var581;
3526 varonce578 = var579;
3527 }
3528 ((struct instance_standard__NativeArray*)var577)->values[0]=var579;
3529 } else {
3530 var577 = varonce576;
3531 varonce576 = NULL;
3532 }
3533 {
3534 var582 = standard___standard__SequenceRead___Collection__first(var_arguments);
3535 }
3536 {
3537 var583 = ((val*(*)(val* self))(var582->class->vft[COLOR_standard__string__Object__to_s]))(var582); /* to_s on <var582:nullable Object(RuntimeVariable)>*/
3538 }
3539 ((struct instance_standard__NativeArray*)var577)->values[1]=var583;
3540 {
3541 var584 = ((val*(*)(val* self))(var577->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var577); /* native_to_s on <var577:NativeArray[String]>*/
3542 }
3543 varonce576 = var577;
3544 if (unlikely(var_ret == NULL)) {
3545 PRINT_ERROR("Runtime error: %s", "Cast failed");
3546 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2194);
3547 fatal_exit(1);
3548 }
3549 {
3550 var585 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var584, var_ret);
3551 }
3552 {
3553 nit___nit__AbstractCompilerVisitor___ret(var_v, var585); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3554 }
3555 var = 1;
3556 goto RET_LABEL;
3557 } else {
3558 if (likely(varonce586!=NULL)) {
3559 var587 = varonce586;
3560 } else {
3561 var588 = "+";
3562 var589 = standard___standard__NativeString___to_s_with_length(var588, 1l);
3563 var587 = var589;
3564 varonce586 = var587;
3565 }
3566 {
3567 var590 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var587); /* == on <var_pname:String>*/
3568 }
3569 if (var590){
3570 if (unlikely(varonce591==NULL)) {
3571 var592 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3572 if (likely(varonce593!=NULL)) {
3573 var594 = varonce593;
3574 } else {
3575 var595 = " + ";
3576 var596 = standard___standard__NativeString___to_s_with_length(var595, 3l);
3577 var594 = var596;
3578 varonce593 = var594;
3579 }
3580 ((struct instance_standard__NativeArray*)var592)->values[1]=var594;
3581 } else {
3582 var592 = varonce591;
3583 varonce591 = NULL;
3584 }
3585 {
3586 var597 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3587 }
3588 {
3589 var598 = ((val*(*)(val* self))(var597->class->vft[COLOR_standard__string__Object__to_s]))(var597); /* to_s on <var597:nullable Object(RuntimeVariable)>*/
3590 }
3591 ((struct instance_standard__NativeArray*)var592)->values[0]=var598;
3592 {
3593 var599 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3594 }
3595 {
3596 var600 = ((val*(*)(val* self))(var599->class->vft[COLOR_standard__string__Object__to_s]))(var599); /* to_s on <var599:nullable Object(RuntimeVariable)>*/
3597 }
3598 ((struct instance_standard__NativeArray*)var592)->values[2]=var600;
3599 {
3600 var601 = ((val*(*)(val* self))(var592->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var592); /* native_to_s on <var592:NativeArray[String]>*/
3601 }
3602 varonce591 = var592;
3603 if (unlikely(var_ret == NULL)) {
3604 PRINT_ERROR("Runtime error: %s", "Cast failed");
3605 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2197);
3606 fatal_exit(1);
3607 }
3608 {
3609 var602 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var601, var_ret);
3610 }
3611 {
3612 nit___nit__AbstractCompilerVisitor___ret(var_v, var602); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3613 }
3614 var = 1;
3615 goto RET_LABEL;
3616 } else {
3617 if (likely(varonce603!=NULL)) {
3618 var604 = varonce603;
3619 } else {
3620 var605 = "-";
3621 var606 = standard___standard__NativeString___to_s_with_length(var605, 1l);
3622 var604 = var606;
3623 varonce603 = var604;
3624 }
3625 {
3626 var607 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var604); /* == on <var_pname:String>*/
3627 }
3628 if (var607){
3629 if (unlikely(varonce608==NULL)) {
3630 var609 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3631 if (likely(varonce610!=NULL)) {
3632 var611 = varonce610;
3633 } else {
3634 var612 = " - ";
3635 var613 = standard___standard__NativeString___to_s_with_length(var612, 3l);
3636 var611 = var613;
3637 varonce610 = var611;
3638 }
3639 ((struct instance_standard__NativeArray*)var609)->values[1]=var611;
3640 } else {
3641 var609 = varonce608;
3642 varonce608 = NULL;
3643 }
3644 {
3645 var614 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3646 }
3647 {
3648 var615 = ((val*(*)(val* self))(var614->class->vft[COLOR_standard__string__Object__to_s]))(var614); /* to_s on <var614:nullable Object(RuntimeVariable)>*/
3649 }
3650 ((struct instance_standard__NativeArray*)var609)->values[0]=var615;
3651 {
3652 var616 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3653 }
3654 {
3655 var617 = ((val*(*)(val* self))(var616->class->vft[COLOR_standard__string__Object__to_s]))(var616); /* to_s on <var616:nullable Object(RuntimeVariable)>*/
3656 }
3657 ((struct instance_standard__NativeArray*)var609)->values[2]=var617;
3658 {
3659 var618 = ((val*(*)(val* self))(var609->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var609); /* native_to_s on <var609:NativeArray[String]>*/
3660 }
3661 varonce608 = var609;
3662 if (unlikely(var_ret == NULL)) {
3663 PRINT_ERROR("Runtime error: %s", "Cast failed");
3664 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2200);
3665 fatal_exit(1);
3666 }
3667 {
3668 var619 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var618, var_ret);
3669 }
3670 {
3671 nit___nit__AbstractCompilerVisitor___ret(var_v, var619); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3672 }
3673 var = 1;
3674 goto RET_LABEL;
3675 } else {
3676 if (likely(varonce620!=NULL)) {
3677 var621 = varonce620;
3678 } else {
3679 var622 = "unary -";
3680 var623 = standard___standard__NativeString___to_s_with_length(var622, 7l);
3681 var621 = var623;
3682 varonce620 = var621;
3683 }
3684 {
3685 var624 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var621); /* == on <var_pname:String>*/
3686 }
3687 if (var624){
3688 if (unlikely(varonce625==NULL)) {
3689 var626 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
3690 if (likely(varonce627!=NULL)) {
3691 var628 = varonce627;
3692 } else {
3693 var629 = "-";
3694 var630 = standard___standard__NativeString___to_s_with_length(var629, 1l);
3695 var628 = var630;
3696 varonce627 = var628;
3697 }
3698 ((struct instance_standard__NativeArray*)var626)->values[0]=var628;
3699 } else {
3700 var626 = varonce625;
3701 varonce625 = NULL;
3702 }
3703 {
3704 var631 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3705 }
3706 {
3707 var632 = ((val*(*)(val* self))(var631->class->vft[COLOR_standard__string__Object__to_s]))(var631); /* to_s on <var631:nullable Object(RuntimeVariable)>*/
3708 }
3709 ((struct instance_standard__NativeArray*)var626)->values[1]=var632;
3710 {
3711 var633 = ((val*(*)(val* self))(var626->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var626); /* native_to_s on <var626:NativeArray[String]>*/
3712 }
3713 varonce625 = var626;
3714 if (unlikely(var_ret == NULL)) {
3715 PRINT_ERROR("Runtime error: %s", "Cast failed");
3716 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2203);
3717 fatal_exit(1);
3718 }
3719 {
3720 var634 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var633, var_ret);
3721 }
3722 {
3723 nit___nit__AbstractCompilerVisitor___ret(var_v, var634); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3724 }
3725 var = 1;
3726 goto RET_LABEL;
3727 } else {
3728 if (likely(varonce635!=NULL)) {
3729 var636 = varonce635;
3730 } else {
3731 var637 = "unary +";
3732 var638 = standard___standard__NativeString___to_s_with_length(var637, 7l);
3733 var636 = var638;
3734 varonce635 = var636;
3735 }
3736 {
3737 var639 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var636); /* == on <var_pname:String>*/
3738 }
3739 if (var639){
3740 {
3741 var640 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3742 }
3743 {
3744 nit___nit__AbstractCompilerVisitor___ret(var_v, var640); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3745 }
3746 var = 1;
3747 goto RET_LABEL;
3748 } else {
3749 if (likely(varonce641!=NULL)) {
3750 var642 = varonce641;
3751 } else {
3752 var643 = "*";
3753 var644 = standard___standard__NativeString___to_s_with_length(var643, 1l);
3754 var642 = var644;
3755 varonce641 = var642;
3756 }
3757 {
3758 var645 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var642); /* == on <var_pname:String>*/
3759 }
3760 if (var645){
3761 if (unlikely(varonce646==NULL)) {
3762 var647 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3763 if (likely(varonce648!=NULL)) {
3764 var649 = varonce648;
3765 } else {
3766 var650 = " * ";
3767 var651 = standard___standard__NativeString___to_s_with_length(var650, 3l);
3768 var649 = var651;
3769 varonce648 = var649;
3770 }
3771 ((struct instance_standard__NativeArray*)var647)->values[1]=var649;
3772 } else {
3773 var647 = varonce646;
3774 varonce646 = NULL;
3775 }
3776 {
3777 var652 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3778 }
3779 {
3780 var653 = ((val*(*)(val* self))(var652->class->vft[COLOR_standard__string__Object__to_s]))(var652); /* to_s on <var652:nullable Object(RuntimeVariable)>*/
3781 }
3782 ((struct instance_standard__NativeArray*)var647)->values[0]=var653;
3783 {
3784 var654 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3785 }
3786 {
3787 var655 = ((val*(*)(val* self))(var654->class->vft[COLOR_standard__string__Object__to_s]))(var654); /* to_s on <var654:nullable Object(RuntimeVariable)>*/
3788 }
3789 ((struct instance_standard__NativeArray*)var647)->values[2]=var655;
3790 {
3791 var656 = ((val*(*)(val* self))(var647->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var647); /* native_to_s on <var647:NativeArray[String]>*/
3792 }
3793 varonce646 = var647;
3794 if (unlikely(var_ret == NULL)) {
3795 PRINT_ERROR("Runtime error: %s", "Cast failed");
3796 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2209);
3797 fatal_exit(1);
3798 }
3799 {
3800 var657 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var656, var_ret);
3801 }
3802 {
3803 nit___nit__AbstractCompilerVisitor___ret(var_v, var657); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3804 }
3805 var = 1;
3806 goto RET_LABEL;
3807 } else {
3808 if (likely(varonce658!=NULL)) {
3809 var659 = varonce658;
3810 } else {
3811 var660 = "/";
3812 var661 = standard___standard__NativeString___to_s_with_length(var660, 1l);
3813 var659 = var661;
3814 varonce658 = var659;
3815 }
3816 {
3817 var662 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var659); /* == on <var_pname:String>*/
3818 }
3819 if (var662){
3820 if (unlikely(varonce663==NULL)) {
3821 var664 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3822 if (likely(varonce665!=NULL)) {
3823 var666 = varonce665;
3824 } else {
3825 var667 = " / ";
3826 var668 = standard___standard__NativeString___to_s_with_length(var667, 3l);
3827 var666 = var668;
3828 varonce665 = var666;
3829 }
3830 ((struct instance_standard__NativeArray*)var664)->values[1]=var666;
3831 } else {
3832 var664 = varonce663;
3833 varonce663 = NULL;
3834 }
3835 {
3836 var669 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3837 }
3838 {
3839 var670 = ((val*(*)(val* self))(var669->class->vft[COLOR_standard__string__Object__to_s]))(var669); /* to_s on <var669:nullable Object(RuntimeVariable)>*/
3840 }
3841 ((struct instance_standard__NativeArray*)var664)->values[0]=var670;
3842 {
3843 var671 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3844 }
3845 {
3846 var672 = ((val*(*)(val* self))(var671->class->vft[COLOR_standard__string__Object__to_s]))(var671); /* to_s on <var671:nullable Object(RuntimeVariable)>*/
3847 }
3848 ((struct instance_standard__NativeArray*)var664)->values[2]=var672;
3849 {
3850 var673 = ((val*(*)(val* self))(var664->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var664); /* native_to_s on <var664:NativeArray[String]>*/
3851 }
3852 varonce663 = var664;
3853 if (unlikely(var_ret == NULL)) {
3854 PRINT_ERROR("Runtime error: %s", "Cast failed");
3855 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2212);
3856 fatal_exit(1);
3857 }
3858 {
3859 var674 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var673, var_ret);
3860 }
3861 {
3862 nit___nit__AbstractCompilerVisitor___ret(var_v, var674); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3863 }
3864 var = 1;
3865 goto RET_LABEL;
3866 } else {
3867 if (likely(varonce675!=NULL)) {
3868 var676 = varonce675;
3869 } else {
3870 var677 = "%";
3871 var678 = standard___standard__NativeString___to_s_with_length(var677, 1l);
3872 var676 = var678;
3873 varonce675 = var676;
3874 }
3875 {
3876 var679 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var676); /* == on <var_pname:String>*/
3877 }
3878 if (var679){
3879 if (unlikely(varonce680==NULL)) {
3880 var681 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3881 if (likely(varonce682!=NULL)) {
3882 var683 = varonce682;
3883 } else {
3884 var684 = " % ";
3885 var685 = standard___standard__NativeString___to_s_with_length(var684, 3l);
3886 var683 = var685;
3887 varonce682 = var683;
3888 }
3889 ((struct instance_standard__NativeArray*)var681)->values[1]=var683;
3890 } else {
3891 var681 = varonce680;
3892 varonce680 = NULL;
3893 }
3894 {
3895 var686 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3896 }
3897 {
3898 var687 = ((val*(*)(val* self))(var686->class->vft[COLOR_standard__string__Object__to_s]))(var686); /* to_s on <var686:nullable Object(RuntimeVariable)>*/
3899 }
3900 ((struct instance_standard__NativeArray*)var681)->values[0]=var687;
3901 {
3902 var688 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3903 }
3904 {
3905 var689 = ((val*(*)(val* self))(var688->class->vft[COLOR_standard__string__Object__to_s]))(var688); /* to_s on <var688:nullable Object(RuntimeVariable)>*/
3906 }
3907 ((struct instance_standard__NativeArray*)var681)->values[2]=var689;
3908 {
3909 var690 = ((val*(*)(val* self))(var681->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var681); /* native_to_s on <var681:NativeArray[String]>*/
3910 }
3911 varonce680 = var681;
3912 if (unlikely(var_ret == NULL)) {
3913 PRINT_ERROR("Runtime error: %s", "Cast failed");
3914 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2215);
3915 fatal_exit(1);
3916 }
3917 {
3918 var691 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var690, var_ret);
3919 }
3920 {
3921 nit___nit__AbstractCompilerVisitor___ret(var_v, var691); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3922 }
3923 var = 1;
3924 goto RET_LABEL;
3925 } else {
3926 if (likely(varonce692!=NULL)) {
3927 var693 = varonce692;
3928 } else {
3929 var694 = "lshift";
3930 var695 = standard___standard__NativeString___to_s_with_length(var694, 6l);
3931 var693 = var695;
3932 varonce692 = var693;
3933 }
3934 {
3935 var696 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var693); /* == on <var_pname:String>*/
3936 }
3937 if (var696){
3938 if (unlikely(varonce697==NULL)) {
3939 var698 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3940 if (likely(varonce699!=NULL)) {
3941 var700 = varonce699;
3942 } else {
3943 var701 = " << ";
3944 var702 = standard___standard__NativeString___to_s_with_length(var701, 4l);
3945 var700 = var702;
3946 varonce699 = var700;
3947 }
3948 ((struct instance_standard__NativeArray*)var698)->values[1]=var700;
3949 } else {
3950 var698 = varonce697;
3951 varonce697 = NULL;
3952 }
3953 {
3954 var703 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
3955 }
3956 {
3957 var704 = ((val*(*)(val* self))(var703->class->vft[COLOR_standard__string__Object__to_s]))(var703); /* to_s on <var703:nullable Object(RuntimeVariable)>*/
3958 }
3959 ((struct instance_standard__NativeArray*)var698)->values[0]=var704;
3960 {
3961 var705 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
3962 }
3963 {
3964 var706 = ((val*(*)(val* self))(var705->class->vft[COLOR_standard__string__Object__to_s]))(var705); /* to_s on <var705:nullable Object(RuntimeVariable)>*/
3965 }
3966 ((struct instance_standard__NativeArray*)var698)->values[2]=var706;
3967 {
3968 var707 = ((val*(*)(val* self))(var698->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var698); /* native_to_s on <var698:NativeArray[String]>*/
3969 }
3970 varonce697 = var698;
3971 if (unlikely(var_ret == NULL)) {
3972 PRINT_ERROR("Runtime error: %s", "Cast failed");
3973 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2218);
3974 fatal_exit(1);
3975 }
3976 {
3977 var708 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var707, var_ret);
3978 }
3979 {
3980 nit___nit__AbstractCompilerVisitor___ret(var_v, var708); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
3981 }
3982 var = 1;
3983 goto RET_LABEL;
3984 } else {
3985 if (likely(varonce709!=NULL)) {
3986 var710 = varonce709;
3987 } else {
3988 var711 = "rshift";
3989 var712 = standard___standard__NativeString___to_s_with_length(var711, 6l);
3990 var710 = var712;
3991 varonce709 = var710;
3992 }
3993 {
3994 var713 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var710); /* == on <var_pname:String>*/
3995 }
3996 if (var713){
3997 if (unlikely(varonce714==NULL)) {
3998 var715 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
3999 if (likely(varonce716!=NULL)) {
4000 var717 = varonce716;
4001 } else {
4002 var718 = " >> ";
4003 var719 = standard___standard__NativeString___to_s_with_length(var718, 4l);
4004 var717 = var719;
4005 varonce716 = var717;
4006 }
4007 ((struct instance_standard__NativeArray*)var715)->values[1]=var717;
4008 } else {
4009 var715 = varonce714;
4010 varonce714 = NULL;
4011 }
4012 {
4013 var720 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4014 }
4015 {
4016 var721 = ((val*(*)(val* self))(var720->class->vft[COLOR_standard__string__Object__to_s]))(var720); /* to_s on <var720:nullable Object(RuntimeVariable)>*/
4017 }
4018 ((struct instance_standard__NativeArray*)var715)->values[0]=var721;
4019 {
4020 var722 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4021 }
4022 {
4023 var723 = ((val*(*)(val* self))(var722->class->vft[COLOR_standard__string__Object__to_s]))(var722); /* to_s on <var722:nullable Object(RuntimeVariable)>*/
4024 }
4025 ((struct instance_standard__NativeArray*)var715)->values[2]=var723;
4026 {
4027 var724 = ((val*(*)(val* self))(var715->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var715); /* native_to_s on <var715:NativeArray[String]>*/
4028 }
4029 varonce714 = var715;
4030 if (unlikely(var_ret == NULL)) {
4031 PRINT_ERROR("Runtime error: %s", "Cast failed");
4032 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2221);
4033 fatal_exit(1);
4034 }
4035 {
4036 var725 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var724, var_ret);
4037 }
4038 {
4039 nit___nit__AbstractCompilerVisitor___ret(var_v, var725); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4040 }
4041 var = 1;
4042 goto RET_LABEL;
4043 } else {
4044 if (likely(varonce726!=NULL)) {
4045 var727 = varonce726;
4046 } else {
4047 var728 = "==";
4048 var729 = standard___standard__NativeString___to_s_with_length(var728, 2l);
4049 var727 = var729;
4050 varonce726 = var727;
4051 }
4052 {
4053 var730 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var727); /* == on <var_pname:String>*/
4054 }
4055 if (var730){
4056 {
4057 var731 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4058 }
4059 {
4060 var732 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4061 }
4062 {
4063 var733 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var731, var732);
4064 }
4065 {
4066 nit___nit__AbstractCompilerVisitor___ret(var_v, var733); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4067 }
4068 var = 1;
4069 goto RET_LABEL;
4070 } else {
4071 if (likely(varonce734!=NULL)) {
4072 var735 = varonce734;
4073 } else {
4074 var736 = "!=";
4075 var737 = standard___standard__NativeString___to_s_with_length(var736, 2l);
4076 var735 = var737;
4077 varonce734 = var735;
4078 }
4079 {
4080 var738 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var735); /* == on <var_pname:String>*/
4081 }
4082 if (var738){
4083 {
4084 var739 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4085 }
4086 {
4087 var740 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4088 }
4089 {
4090 var741 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var739, var740);
4091 }
4092 var_res742 = var741;
4093 if (unlikely(varonce743==NULL)) {
4094 var744 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
4095 if (likely(varonce745!=NULL)) {
4096 var746 = varonce745;
4097 } else {
4098 var747 = "!";
4099 var748 = standard___standard__NativeString___to_s_with_length(var747, 1l);
4100 var746 = var748;
4101 varonce745 = var746;
4102 }
4103 ((struct instance_standard__NativeArray*)var744)->values[0]=var746;
4104 } else {
4105 var744 = varonce743;
4106 varonce743 = NULL;
4107 }
4108 {
4109 var749 = ((val*(*)(val* self))(var_res742->class->vft[COLOR_standard__string__Object__to_s]))(var_res742); /* to_s on <var_res742:RuntimeVariable>*/
4110 }
4111 ((struct instance_standard__NativeArray*)var744)->values[1]=var749;
4112 {
4113 var750 = ((val*(*)(val* self))(var744->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var744); /* native_to_s on <var744:NativeArray[String]>*/
4114 }
4115 varonce743 = var744;
4116 if (unlikely(var_ret == NULL)) {
4117 PRINT_ERROR("Runtime error: %s", "Cast failed");
4118 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2228);
4119 fatal_exit(1);
4120 }
4121 {
4122 var751 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var750, var_ret);
4123 }
4124 {
4125 nit___nit__AbstractCompilerVisitor___ret(var_v, var751); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4126 }
4127 var = 1;
4128 goto RET_LABEL;
4129 } else {
4130 if (likely(varonce752!=NULL)) {
4131 var753 = varonce752;
4132 } else {
4133 var754 = "<";
4134 var755 = standard___standard__NativeString___to_s_with_length(var754, 1l);
4135 var753 = var755;
4136 varonce752 = var753;
4137 }
4138 {
4139 var756 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var753); /* == on <var_pname:String>*/
4140 }
4141 if (var756){
4142 if (unlikely(varonce757==NULL)) {
4143 var758 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
4144 if (likely(varonce759!=NULL)) {
4145 var760 = varonce759;
4146 } else {
4147 var761 = " < ";
4148 var762 = standard___standard__NativeString___to_s_with_length(var761, 3l);
4149 var760 = var762;
4150 varonce759 = var760;
4151 }
4152 ((struct instance_standard__NativeArray*)var758)->values[1]=var760;
4153 } else {
4154 var758 = varonce757;
4155 varonce757 = NULL;
4156 }
4157 {
4158 var763 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4159 }
4160 {
4161 var764 = ((val*(*)(val* self))(var763->class->vft[COLOR_standard__string__Object__to_s]))(var763); /* to_s on <var763:nullable Object(RuntimeVariable)>*/
4162 }
4163 ((struct instance_standard__NativeArray*)var758)->values[0]=var764;
4164 {
4165 var765 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4166 }
4167 {
4168 var766 = ((val*(*)(val* self))(var765->class->vft[COLOR_standard__string__Object__to_s]))(var765); /* to_s on <var765:nullable Object(RuntimeVariable)>*/
4169 }
4170 ((struct instance_standard__NativeArray*)var758)->values[2]=var766;
4171 {
4172 var767 = ((val*(*)(val* self))(var758->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var758); /* native_to_s on <var758:NativeArray[String]>*/
4173 }
4174 varonce757 = var758;
4175 if (unlikely(var_ret == NULL)) {
4176 PRINT_ERROR("Runtime error: %s", "Cast failed");
4177 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2231);
4178 fatal_exit(1);
4179 }
4180 {
4181 var768 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var767, var_ret);
4182 }
4183 {
4184 nit___nit__AbstractCompilerVisitor___ret(var_v, var768); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4185 }
4186 var = 1;
4187 goto RET_LABEL;
4188 } else {
4189 if (likely(varonce769!=NULL)) {
4190 var770 = varonce769;
4191 } else {
4192 var771 = ">";
4193 var772 = standard___standard__NativeString___to_s_with_length(var771, 1l);
4194 var770 = var772;
4195 varonce769 = var770;
4196 }
4197 {
4198 var773 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var770); /* == on <var_pname:String>*/
4199 }
4200 if (var773){
4201 if (unlikely(varonce774==NULL)) {
4202 var775 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
4203 if (likely(varonce776!=NULL)) {
4204 var777 = varonce776;
4205 } else {
4206 var778 = " > ";
4207 var779 = standard___standard__NativeString___to_s_with_length(var778, 3l);
4208 var777 = var779;
4209 varonce776 = var777;
4210 }
4211 ((struct instance_standard__NativeArray*)var775)->values[1]=var777;
4212 } else {
4213 var775 = varonce774;
4214 varonce774 = NULL;
4215 }
4216 {
4217 var780 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4218 }
4219 {
4220 var781 = ((val*(*)(val* self))(var780->class->vft[COLOR_standard__string__Object__to_s]))(var780); /* to_s on <var780:nullable Object(RuntimeVariable)>*/
4221 }
4222 ((struct instance_standard__NativeArray*)var775)->values[0]=var781;
4223 {
4224 var782 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4225 }
4226 {
4227 var783 = ((val*(*)(val* self))(var782->class->vft[COLOR_standard__string__Object__to_s]))(var782); /* to_s on <var782:nullable Object(RuntimeVariable)>*/
4228 }
4229 ((struct instance_standard__NativeArray*)var775)->values[2]=var783;
4230 {
4231 var784 = ((val*(*)(val* self))(var775->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var775); /* native_to_s on <var775:NativeArray[String]>*/
4232 }
4233 varonce774 = var775;
4234 if (unlikely(var_ret == NULL)) {
4235 PRINT_ERROR("Runtime error: %s", "Cast failed");
4236 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2234);
4237 fatal_exit(1);
4238 }
4239 {
4240 var785 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var784, var_ret);
4241 }
4242 {
4243 nit___nit__AbstractCompilerVisitor___ret(var_v, var785); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4244 }
4245 var = 1;
4246 goto RET_LABEL;
4247 } else {
4248 if (likely(varonce786!=NULL)) {
4249 var787 = varonce786;
4250 } else {
4251 var788 = "<=";
4252 var789 = standard___standard__NativeString___to_s_with_length(var788, 2l);
4253 var787 = var789;
4254 varonce786 = var787;
4255 }
4256 {
4257 var790 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var787); /* == on <var_pname:String>*/
4258 }
4259 if (var790){
4260 if (unlikely(varonce791==NULL)) {
4261 var792 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
4262 if (likely(varonce793!=NULL)) {
4263 var794 = varonce793;
4264 } else {
4265 var795 = " <= ";
4266 var796 = standard___standard__NativeString___to_s_with_length(var795, 4l);
4267 var794 = var796;
4268 varonce793 = var794;
4269 }
4270 ((struct instance_standard__NativeArray*)var792)->values[1]=var794;
4271 } else {
4272 var792 = varonce791;
4273 varonce791 = NULL;
4274 }
4275 {
4276 var797 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4277 }
4278 {
4279 var798 = ((val*(*)(val* self))(var797->class->vft[COLOR_standard__string__Object__to_s]))(var797); /* to_s on <var797:nullable Object(RuntimeVariable)>*/
4280 }
4281 ((struct instance_standard__NativeArray*)var792)->values[0]=var798;
4282 {
4283 var799 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4284 }
4285 {
4286 var800 = ((val*(*)(val* self))(var799->class->vft[COLOR_standard__string__Object__to_s]))(var799); /* to_s on <var799:nullable Object(RuntimeVariable)>*/
4287 }
4288 ((struct instance_standard__NativeArray*)var792)->values[2]=var800;
4289 {
4290 var801 = ((val*(*)(val* self))(var792->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var792); /* native_to_s on <var792:NativeArray[String]>*/
4291 }
4292 varonce791 = var792;
4293 if (unlikely(var_ret == NULL)) {
4294 PRINT_ERROR("Runtime error: %s", "Cast failed");
4295 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2237);
4296 fatal_exit(1);
4297 }
4298 {
4299 var802 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var801, var_ret);
4300 }
4301 {
4302 nit___nit__AbstractCompilerVisitor___ret(var_v, var802); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4303 }
4304 var = 1;
4305 goto RET_LABEL;
4306 } else {
4307 if (likely(varonce803!=NULL)) {
4308 var804 = varonce803;
4309 } else {
4310 var805 = ">=";
4311 var806 = standard___standard__NativeString___to_s_with_length(var805, 2l);
4312 var804 = var806;
4313 varonce803 = var804;
4314 }
4315 {
4316 var807 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var804); /* == on <var_pname:String>*/
4317 }
4318 if (var807){
4319 if (unlikely(varonce808==NULL)) {
4320 var809 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
4321 if (likely(varonce810!=NULL)) {
4322 var811 = varonce810;
4323 } else {
4324 var812 = " >= ";
4325 var813 = standard___standard__NativeString___to_s_with_length(var812, 4l);
4326 var811 = var813;
4327 varonce810 = var811;
4328 }
4329 ((struct instance_standard__NativeArray*)var809)->values[1]=var811;
4330 } else {
4331 var809 = varonce808;
4332 varonce808 = NULL;
4333 }
4334 {
4335 var814 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4336 }
4337 {
4338 var815 = ((val*(*)(val* self))(var814->class->vft[COLOR_standard__string__Object__to_s]))(var814); /* to_s on <var814:nullable Object(RuntimeVariable)>*/
4339 }
4340 ((struct instance_standard__NativeArray*)var809)->values[0]=var815;
4341 {
4342 var816 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4343 }
4344 {
4345 var817 = ((val*(*)(val* self))(var816->class->vft[COLOR_standard__string__Object__to_s]))(var816); /* to_s on <var816:nullable Object(RuntimeVariable)>*/
4346 }
4347 ((struct instance_standard__NativeArray*)var809)->values[2]=var817;
4348 {
4349 var818 = ((val*(*)(val* self))(var809->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var809); /* native_to_s on <var809:NativeArray[String]>*/
4350 }
4351 varonce808 = var809;
4352 if (unlikely(var_ret == NULL)) {
4353 PRINT_ERROR("Runtime error: %s", "Cast failed");
4354 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2240);
4355 fatal_exit(1);
4356 }
4357 {
4358 var819 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var818, var_ret);
4359 }
4360 {
4361 nit___nit__AbstractCompilerVisitor___ret(var_v, var819); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4362 }
4363 var = 1;
4364 goto RET_LABEL;
4365 } else {
4366 if (likely(varonce820!=NULL)) {
4367 var821 = varonce820;
4368 } else {
4369 var822 = "to_i";
4370 var823 = standard___standard__NativeString___to_s_with_length(var822, 4l);
4371 var821 = var823;
4372 varonce820 = var821;
4373 }
4374 {
4375 var824 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var821); /* == on <var_pname:String>*/
4376 }
4377 if (var824){
4378 if (unlikely(varonce825==NULL)) {
4379 var826 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
4380 if (likely(varonce827!=NULL)) {
4381 var828 = varonce827;
4382 } else {
4383 var829 = "(long)";
4384 var830 = standard___standard__NativeString___to_s_with_length(var829, 6l);
4385 var828 = var830;
4386 varonce827 = var828;
4387 }
4388 ((struct instance_standard__NativeArray*)var826)->values[0]=var828;
4389 } else {
4390 var826 = varonce825;
4391 varonce825 = NULL;
4392 }
4393 {
4394 var831 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4395 }
4396 {
4397 var832 = ((val*(*)(val* self))(var831->class->vft[COLOR_standard__string__Object__to_s]))(var831); /* to_s on <var831:nullable Object(RuntimeVariable)>*/
4398 }
4399 ((struct instance_standard__NativeArray*)var826)->values[1]=var832;
4400 {
4401 var833 = ((val*(*)(val* self))(var826->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var826); /* native_to_s on <var826:NativeArray[String]>*/
4402 }
4403 varonce825 = var826;
4404 if (unlikely(var_ret == NULL)) {
4405 PRINT_ERROR("Runtime error: %s", "Cast failed");
4406 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2243);
4407 fatal_exit(1);
4408 }
4409 {
4410 var834 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var833, var_ret);
4411 }
4412 {
4413 nit___nit__AbstractCompilerVisitor___ret(var_v, var834); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4414 }
4415 var = 1;
4416 goto RET_LABEL;
4417 } else {
4418 if (likely(varonce835!=NULL)) {
4419 var836 = varonce835;
4420 } else {
4421 var837 = "to_f";
4422 var838 = standard___standard__NativeString___to_s_with_length(var837, 4l);
4423 var836 = var838;
4424 varonce835 = var836;
4425 }
4426 {
4427 var839 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var836); /* == on <var_pname:String>*/
4428 }
4429 if (var839){
4430 if (unlikely(varonce840==NULL)) {
4431 var841 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
4432 if (likely(varonce842!=NULL)) {
4433 var843 = varonce842;
4434 } else {
4435 var844 = "(double)";
4436 var845 = standard___standard__NativeString___to_s_with_length(var844, 8l);
4437 var843 = var845;
4438 varonce842 = var843;
4439 }
4440 ((struct instance_standard__NativeArray*)var841)->values[0]=var843;
4441 } else {
4442 var841 = varonce840;
4443 varonce840 = NULL;
4444 }
4445 {
4446 var846 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4447 }
4448 {
4449 var847 = ((val*(*)(val* self))(var846->class->vft[COLOR_standard__string__Object__to_s]))(var846); /* to_s on <var846:nullable Object(RuntimeVariable)>*/
4450 }
4451 ((struct instance_standard__NativeArray*)var841)->values[1]=var847;
4452 {
4453 var848 = ((val*(*)(val* self))(var841->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var841); /* native_to_s on <var841:NativeArray[String]>*/
4454 }
4455 varonce840 = var841;
4456 if (unlikely(var_ret == NULL)) {
4457 PRINT_ERROR("Runtime error: %s", "Cast failed");
4458 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2246);
4459 fatal_exit(1);
4460 }
4461 {
4462 var849 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var848, var_ret);
4463 }
4464 {
4465 nit___nit__AbstractCompilerVisitor___ret(var_v, var849); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4466 }
4467 var = 1;
4468 goto RET_LABEL;
4469 } else {
4470 if (likely(varonce850!=NULL)) {
4471 var851 = varonce850;
4472 } else {
4473 var852 = "ascii";
4474 var853 = standard___standard__NativeString___to_s_with_length(var852, 5l);
4475 var851 = var853;
4476 varonce850 = var851;
4477 }
4478 {
4479 var854 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var851); /* == on <var_pname:String>*/
4480 }
4481 if (var854){
4482 if (unlikely(varonce855==NULL)) {
4483 var856 = NEW_standard__NativeArray(1l, &type_standard__NativeArray__standard__String);
4484 } else {
4485 var856 = varonce855;
4486 varonce855 = NULL;
4487 }
4488 {
4489 var857 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4490 }
4491 {
4492 var858 = ((val*(*)(val* self))(var857->class->vft[COLOR_standard__string__Object__to_s]))(var857); /* to_s on <var857:nullable Object(RuntimeVariable)>*/
4493 }
4494 ((struct instance_standard__NativeArray*)var856)->values[0]=var858;
4495 {
4496 var859 = ((val*(*)(val* self))(var856->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var856); /* native_to_s on <var856:NativeArray[String]>*/
4497 }
4498 varonce855 = var856;
4499 if (unlikely(var_ret == NULL)) {
4500 PRINT_ERROR("Runtime error: %s", "Cast failed");
4501 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2249);
4502 fatal_exit(1);
4503 }
4504 {
4505 var860 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var859, var_ret);
4506 }
4507 {
4508 nit___nit__AbstractCompilerVisitor___ret(var_v, var860); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4509 }
4510 var = 1;
4511 goto RET_LABEL;
4512 } else {
4513 }
4514 }
4515 }
4516 }
4517 }
4518 }
4519 }
4520 }
4521 }
4522 }
4523 }
4524 }
4525 }
4526 }
4527 }
4528 }
4529 }
4530 }
4531 }
4532 }
4533 } else {
4534 if (likely(varonce861!=NULL)) {
4535 var862 = varonce861;
4536 } else {
4537 var863 = "Bool";
4538 var864 = standard___standard__NativeString___to_s_with_length(var863, 4l);
4539 var862 = var864;
4540 varonce861 = var862;
4541 }
4542 {
4543 var865 = ((short int(*)(val* self, val* p0))(var_cname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_cname, var862); /* == on <var_cname:String>*/
4544 }
4545 if (var865){
4546 if (likely(varonce866!=NULL)) {
4547 var867 = varonce866;
4548 } else {
4549 var868 = "output";
4550 var869 = standard___standard__NativeString___to_s_with_length(var868, 6l);
4551 var867 = var869;
4552 varonce866 = var867;
4553 }
4554 {
4555 var870 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var867); /* == on <var_pname:String>*/
4556 }
4557 if (var870){
4558 if (unlikely(varonce871==NULL)) {
4559 var872 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
4560 if (likely(varonce873!=NULL)) {
4561 var874 = varonce873;
4562 } else {
4563 var875 = "printf(";
4564 var876 = standard___standard__NativeString___to_s_with_length(var875, 7l);
4565 var874 = var876;
4566 varonce873 = var874;
4567 }
4568 ((struct instance_standard__NativeArray*)var872)->values[0]=var874;
4569 if (likely(varonce877!=NULL)) {
4570 var878 = varonce877;
4571 } else {
4572 var879 = "?\"true\\n\":\"false\\n\");";
4573 var880 = standard___standard__NativeString___to_s_with_length(var879, 21l);
4574 var878 = var880;
4575 varonce877 = var878;
4576 }
4577 ((struct instance_standard__NativeArray*)var872)->values[2]=var878;
4578 } else {
4579 var872 = varonce871;
4580 varonce871 = NULL;
4581 }
4582 {
4583 var881 = standard___standard__SequenceRead___Collection__first(var_arguments);
4584 }
4585 {
4586 var882 = ((val*(*)(val* self))(var881->class->vft[COLOR_standard__string__Object__to_s]))(var881); /* to_s on <var881:nullable Object(RuntimeVariable)>*/
4587 }
4588 ((struct instance_standard__NativeArray*)var872)->values[1]=var882;
4589 {
4590 var883 = ((val*(*)(val* self))(var872->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var872); /* native_to_s on <var872:NativeArray[String]>*/
4591 }
4592 varonce871 = var872;
4593 {
4594 nit___nit__AbstractCompilerVisitor___add(var_v, var883); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
4595 }
4596 var = 1;
4597 goto RET_LABEL;
4598 } else {
4599 if (likely(varonce884!=NULL)) {
4600 var885 = varonce884;
4601 } else {
4602 var886 = "object_id";
4603 var887 = standard___standard__NativeString___to_s_with_length(var886, 9l);
4604 var885 = var887;
4605 varonce884 = var885;
4606 }
4607 {
4608 var888 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var885); /* == on <var_pname:String>*/
4609 }
4610 if (var888){
4611 if (unlikely(varonce889==NULL)) {
4612 var890 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
4613 if (likely(varonce891!=NULL)) {
4614 var892 = varonce891;
4615 } else {
4616 var893 = "(long)";
4617 var894 = standard___standard__NativeString___to_s_with_length(var893, 6l);
4618 var892 = var894;
4619 varonce891 = var892;
4620 }
4621 ((struct instance_standard__NativeArray*)var890)->values[0]=var892;
4622 } else {
4623 var890 = varonce889;
4624 varonce889 = NULL;
4625 }
4626 {
4627 var895 = standard___standard__SequenceRead___Collection__first(var_arguments);
4628 }
4629 {
4630 var896 = ((val*(*)(val* self))(var895->class->vft[COLOR_standard__string__Object__to_s]))(var895); /* to_s on <var895:nullable Object(RuntimeVariable)>*/
4631 }
4632 ((struct instance_standard__NativeArray*)var890)->values[1]=var896;
4633 {
4634 var897 = ((val*(*)(val* self))(var890->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var890); /* native_to_s on <var890:NativeArray[String]>*/
4635 }
4636 varonce889 = var890;
4637 if (unlikely(var_ret == NULL)) {
4638 PRINT_ERROR("Runtime error: %s", "Cast failed");
4639 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2257);
4640 fatal_exit(1);
4641 }
4642 {
4643 var898 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var897, var_ret);
4644 }
4645 {
4646 nit___nit__AbstractCompilerVisitor___ret(var_v, var898); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4647 }
4648 var = 1;
4649 goto RET_LABEL;
4650 } else {
4651 if (likely(varonce899!=NULL)) {
4652 var900 = varonce899;
4653 } else {
4654 var901 = "==";
4655 var902 = standard___standard__NativeString___to_s_with_length(var901, 2l);
4656 var900 = var902;
4657 varonce899 = var900;
4658 }
4659 {
4660 var903 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var900); /* == on <var_pname:String>*/
4661 }
4662 if (var903){
4663 {
4664 var904 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4665 }
4666 {
4667 var905 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4668 }
4669 {
4670 var906 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var904, var905);
4671 }
4672 {
4673 nit___nit__AbstractCompilerVisitor___ret(var_v, var906); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4674 }
4675 var = 1;
4676 goto RET_LABEL;
4677 } else {
4678 if (likely(varonce907!=NULL)) {
4679 var908 = varonce907;
4680 } else {
4681 var909 = "!=";
4682 var910 = standard___standard__NativeString___to_s_with_length(var909, 2l);
4683 var908 = var910;
4684 varonce907 = var908;
4685 }
4686 {
4687 var911 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var908); /* == on <var_pname:String>*/
4688 }
4689 if (var911){
4690 {
4691 var912 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4692 }
4693 {
4694 var913 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4695 }
4696 {
4697 var914 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var912, var913);
4698 }
4699 var_res915 = var914;
4700 if (unlikely(varonce916==NULL)) {
4701 var917 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
4702 if (likely(varonce918!=NULL)) {
4703 var919 = varonce918;
4704 } else {
4705 var920 = "!";
4706 var921 = standard___standard__NativeString___to_s_with_length(var920, 1l);
4707 var919 = var921;
4708 varonce918 = var919;
4709 }
4710 ((struct instance_standard__NativeArray*)var917)->values[0]=var919;
4711 } else {
4712 var917 = varonce916;
4713 varonce916 = NULL;
4714 }
4715 {
4716 var922 = ((val*(*)(val* self))(var_res915->class->vft[COLOR_standard__string__Object__to_s]))(var_res915); /* to_s on <var_res915:RuntimeVariable>*/
4717 }
4718 ((struct instance_standard__NativeArray*)var917)->values[1]=var922;
4719 {
4720 var923 = ((val*(*)(val* self))(var917->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var917); /* native_to_s on <var917:NativeArray[String]>*/
4721 }
4722 varonce916 = var917;
4723 if (unlikely(var_ret == NULL)) {
4724 PRINT_ERROR("Runtime error: %s", "Cast failed");
4725 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2264);
4726 fatal_exit(1);
4727 }
4728 {
4729 var924 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var923, var_ret);
4730 }
4731 {
4732 nit___nit__AbstractCompilerVisitor___ret(var_v, var924); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4733 }
4734 var = 1;
4735 goto RET_LABEL;
4736 } else {
4737 }
4738 }
4739 }
4740 }
4741 } else {
4742 if (likely(varonce925!=NULL)) {
4743 var926 = varonce925;
4744 } else {
4745 var927 = "Float";
4746 var928 = standard___standard__NativeString___to_s_with_length(var927, 5l);
4747 var926 = var928;
4748 varonce925 = var926;
4749 }
4750 {
4751 var929 = ((short int(*)(val* self, val* p0))(var_cname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_cname, var926); /* == on <var_cname:String>*/
4752 }
4753 if (var929){
4754 if (likely(varonce930!=NULL)) {
4755 var931 = varonce930;
4756 } else {
4757 var932 = "output";
4758 var933 = standard___standard__NativeString___to_s_with_length(var932, 6l);
4759 var931 = var933;
4760 varonce930 = var931;
4761 }
4762 {
4763 var934 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var931); /* == on <var_pname:String>*/
4764 }
4765 if (var934){
4766 if (unlikely(varonce935==NULL)) {
4767 var936 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
4768 if (likely(varonce937!=NULL)) {
4769 var938 = varonce937;
4770 } else {
4771 var939 = "printf(\"%f\\n\", ";
4772 var940 = standard___standard__NativeString___to_s_with_length(var939, 15l);
4773 var938 = var940;
4774 varonce937 = var938;
4775 }
4776 ((struct instance_standard__NativeArray*)var936)->values[0]=var938;
4777 if (likely(varonce941!=NULL)) {
4778 var942 = varonce941;
4779 } else {
4780 var943 = ");";
4781 var944 = standard___standard__NativeString___to_s_with_length(var943, 2l);
4782 var942 = var944;
4783 varonce941 = var942;
4784 }
4785 ((struct instance_standard__NativeArray*)var936)->values[2]=var942;
4786 } else {
4787 var936 = varonce935;
4788 varonce935 = NULL;
4789 }
4790 {
4791 var945 = standard___standard__SequenceRead___Collection__first(var_arguments);
4792 }
4793 {
4794 var946 = ((val*(*)(val* self))(var945->class->vft[COLOR_standard__string__Object__to_s]))(var945); /* to_s on <var945:nullable Object(RuntimeVariable)>*/
4795 }
4796 ((struct instance_standard__NativeArray*)var936)->values[1]=var946;
4797 {
4798 var947 = ((val*(*)(val* self))(var936->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var936); /* native_to_s on <var936:NativeArray[String]>*/
4799 }
4800 varonce935 = var936;
4801 {
4802 nit___nit__AbstractCompilerVisitor___add(var_v, var947); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
4803 }
4804 var = 1;
4805 goto RET_LABEL;
4806 } else {
4807 if (likely(varonce948!=NULL)) {
4808 var949 = varonce948;
4809 } else {
4810 var950 = "object_id";
4811 var951 = standard___standard__NativeString___to_s_with_length(var950, 9l);
4812 var949 = var951;
4813 varonce948 = var949;
4814 }
4815 {
4816 var952 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var949); /* == on <var_pname:String>*/
4817 }
4818 if (var952){
4819 if (unlikely(varonce953==NULL)) {
4820 var954 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
4821 if (likely(varonce955!=NULL)) {
4822 var956 = varonce955;
4823 } else {
4824 var957 = "(double)";
4825 var958 = standard___standard__NativeString___to_s_with_length(var957, 8l);
4826 var956 = var958;
4827 varonce955 = var956;
4828 }
4829 ((struct instance_standard__NativeArray*)var954)->values[0]=var956;
4830 } else {
4831 var954 = varonce953;
4832 varonce953 = NULL;
4833 }
4834 {
4835 var959 = standard___standard__SequenceRead___Collection__first(var_arguments);
4836 }
4837 {
4838 var960 = ((val*(*)(val* self))(var959->class->vft[COLOR_standard__string__Object__to_s]))(var959); /* to_s on <var959:nullable Object(RuntimeVariable)>*/
4839 }
4840 ((struct instance_standard__NativeArray*)var954)->values[1]=var960;
4841 {
4842 var961 = ((val*(*)(val* self))(var954->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var954); /* native_to_s on <var954:NativeArray[String]>*/
4843 }
4844 varonce953 = var954;
4845 if (unlikely(var_ret == NULL)) {
4846 PRINT_ERROR("Runtime error: %s", "Cast failed");
4847 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2272);
4848 fatal_exit(1);
4849 }
4850 {
4851 var962 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var961, var_ret);
4852 }
4853 {
4854 nit___nit__AbstractCompilerVisitor___ret(var_v, var962); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4855 }
4856 var = 1;
4857 goto RET_LABEL;
4858 } else {
4859 if (likely(varonce963!=NULL)) {
4860 var964 = varonce963;
4861 } else {
4862 var965 = "+";
4863 var966 = standard___standard__NativeString___to_s_with_length(var965, 1l);
4864 var964 = var966;
4865 varonce963 = var964;
4866 }
4867 {
4868 var967 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var964); /* == on <var_pname:String>*/
4869 }
4870 if (var967){
4871 if (unlikely(varonce968==NULL)) {
4872 var969 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
4873 if (likely(varonce970!=NULL)) {
4874 var971 = varonce970;
4875 } else {
4876 var972 = " + ";
4877 var973 = standard___standard__NativeString___to_s_with_length(var972, 3l);
4878 var971 = var973;
4879 varonce970 = var971;
4880 }
4881 ((struct instance_standard__NativeArray*)var969)->values[1]=var971;
4882 } else {
4883 var969 = varonce968;
4884 varonce968 = NULL;
4885 }
4886 {
4887 var974 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4888 }
4889 {
4890 var975 = ((val*(*)(val* self))(var974->class->vft[COLOR_standard__string__Object__to_s]))(var974); /* to_s on <var974:nullable Object(RuntimeVariable)>*/
4891 }
4892 ((struct instance_standard__NativeArray*)var969)->values[0]=var975;
4893 {
4894 var976 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4895 }
4896 {
4897 var977 = ((val*(*)(val* self))(var976->class->vft[COLOR_standard__string__Object__to_s]))(var976); /* to_s on <var976:nullable Object(RuntimeVariable)>*/
4898 }
4899 ((struct instance_standard__NativeArray*)var969)->values[2]=var977;
4900 {
4901 var978 = ((val*(*)(val* self))(var969->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var969); /* native_to_s on <var969:NativeArray[String]>*/
4902 }
4903 varonce968 = var969;
4904 if (unlikely(var_ret == NULL)) {
4905 PRINT_ERROR("Runtime error: %s", "Cast failed");
4906 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2275);
4907 fatal_exit(1);
4908 }
4909 {
4910 var979 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var978, var_ret);
4911 }
4912 {
4913 nit___nit__AbstractCompilerVisitor___ret(var_v, var979); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4914 }
4915 var = 1;
4916 goto RET_LABEL;
4917 } else {
4918 if (likely(varonce980!=NULL)) {
4919 var981 = varonce980;
4920 } else {
4921 var982 = "-";
4922 var983 = standard___standard__NativeString___to_s_with_length(var982, 1l);
4923 var981 = var983;
4924 varonce980 = var981;
4925 }
4926 {
4927 var984 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var981); /* == on <var_pname:String>*/
4928 }
4929 if (var984){
4930 if (unlikely(varonce985==NULL)) {
4931 var986 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
4932 if (likely(varonce987!=NULL)) {
4933 var988 = varonce987;
4934 } else {
4935 var989 = " - ";
4936 var990 = standard___standard__NativeString___to_s_with_length(var989, 3l);
4937 var988 = var990;
4938 varonce987 = var988;
4939 }
4940 ((struct instance_standard__NativeArray*)var986)->values[1]=var988;
4941 } else {
4942 var986 = varonce985;
4943 varonce985 = NULL;
4944 }
4945 {
4946 var991 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
4947 }
4948 {
4949 var992 = ((val*(*)(val* self))(var991->class->vft[COLOR_standard__string__Object__to_s]))(var991); /* to_s on <var991:nullable Object(RuntimeVariable)>*/
4950 }
4951 ((struct instance_standard__NativeArray*)var986)->values[0]=var992;
4952 {
4953 var993 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
4954 }
4955 {
4956 var994 = ((val*(*)(val* self))(var993->class->vft[COLOR_standard__string__Object__to_s]))(var993); /* to_s on <var993:nullable Object(RuntimeVariable)>*/
4957 }
4958 ((struct instance_standard__NativeArray*)var986)->values[2]=var994;
4959 {
4960 var995 = ((val*(*)(val* self))(var986->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var986); /* native_to_s on <var986:NativeArray[String]>*/
4961 }
4962 varonce985 = var986;
4963 if (unlikely(var_ret == NULL)) {
4964 PRINT_ERROR("Runtime error: %s", "Cast failed");
4965 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2278);
4966 fatal_exit(1);
4967 }
4968 {
4969 var996 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var995, var_ret);
4970 }
4971 {
4972 nit___nit__AbstractCompilerVisitor___ret(var_v, var996); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
4973 }
4974 var = 1;
4975 goto RET_LABEL;
4976 } else {
4977 if (likely(varonce997!=NULL)) {
4978 var998 = varonce997;
4979 } else {
4980 var999 = "unary -";
4981 var1000 = standard___standard__NativeString___to_s_with_length(var999, 7l);
4982 var998 = var1000;
4983 varonce997 = var998;
4984 }
4985 {
4986 var1001 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var998); /* == on <var_pname:String>*/
4987 }
4988 if (var1001){
4989 if (unlikely(varonce1002==NULL)) {
4990 var1003 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
4991 if (likely(varonce1004!=NULL)) {
4992 var1005 = varonce1004;
4993 } else {
4994 var1006 = "-";
4995 var1007 = standard___standard__NativeString___to_s_with_length(var1006, 1l);
4996 var1005 = var1007;
4997 varonce1004 = var1005;
4998 }
4999 ((struct instance_standard__NativeArray*)var1003)->values[0]=var1005;
5000 } else {
5001 var1003 = varonce1002;
5002 varonce1002 = NULL;
5003 }
5004 {
5005 var1008 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5006 }
5007 {
5008 var1009 = ((val*(*)(val* self))(var1008->class->vft[COLOR_standard__string__Object__to_s]))(var1008); /* to_s on <var1008:nullable Object(RuntimeVariable)>*/
5009 }
5010 ((struct instance_standard__NativeArray*)var1003)->values[1]=var1009;
5011 {
5012 var1010 = ((val*(*)(val* self))(var1003->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1003); /* native_to_s on <var1003:NativeArray[String]>*/
5013 }
5014 varonce1002 = var1003;
5015 if (unlikely(var_ret == NULL)) {
5016 PRINT_ERROR("Runtime error: %s", "Cast failed");
5017 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2281);
5018 fatal_exit(1);
5019 }
5020 {
5021 var1011 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1010, var_ret);
5022 }
5023 {
5024 nit___nit__AbstractCompilerVisitor___ret(var_v, var1011); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5025 }
5026 var = 1;
5027 goto RET_LABEL;
5028 } else {
5029 if (likely(varonce1012!=NULL)) {
5030 var1013 = varonce1012;
5031 } else {
5032 var1014 = "unary +";
5033 var1015 = standard___standard__NativeString___to_s_with_length(var1014, 7l);
5034 var1013 = var1015;
5035 varonce1012 = var1013;
5036 }
5037 {
5038 var1016 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1013); /* == on <var_pname:String>*/
5039 }
5040 if (var1016){
5041 {
5042 var1017 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5043 }
5044 {
5045 nit___nit__AbstractCompilerVisitor___ret(var_v, var1017); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5046 }
5047 var = 1;
5048 goto RET_LABEL;
5049 } else {
5050 if (likely(varonce1018!=NULL)) {
5051 var1019 = varonce1018;
5052 } else {
5053 var1020 = "succ";
5054 var1021 = standard___standard__NativeString___to_s_with_length(var1020, 4l);
5055 var1019 = var1021;
5056 varonce1018 = var1019;
5057 }
5058 {
5059 var1022 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1019); /* == on <var_pname:String>*/
5060 }
5061 if (var1022){
5062 if (unlikely(varonce1023==NULL)) {
5063 var1024 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
5064 if (likely(varonce1025!=NULL)) {
5065 var1026 = varonce1025;
5066 } else {
5067 var1027 = "+1";
5068 var1028 = standard___standard__NativeString___to_s_with_length(var1027, 2l);
5069 var1026 = var1028;
5070 varonce1025 = var1026;
5071 }
5072 ((struct instance_standard__NativeArray*)var1024)->values[1]=var1026;
5073 } else {
5074 var1024 = varonce1023;
5075 varonce1023 = NULL;
5076 }
5077 {
5078 var1029 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5079 }
5080 {
5081 var1030 = ((val*(*)(val* self))(var1029->class->vft[COLOR_standard__string__Object__to_s]))(var1029); /* to_s on <var1029:nullable Object(RuntimeVariable)>*/
5082 }
5083 ((struct instance_standard__NativeArray*)var1024)->values[0]=var1030;
5084 {
5085 var1031 = ((val*(*)(val* self))(var1024->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1024); /* native_to_s on <var1024:NativeArray[String]>*/
5086 }
5087 varonce1023 = var1024;
5088 if (unlikely(var_ret == NULL)) {
5089 PRINT_ERROR("Runtime error: %s", "Cast failed");
5090 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2287);
5091 fatal_exit(1);
5092 }
5093 {
5094 var1032 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1031, var_ret);
5095 }
5096 {
5097 nit___nit__AbstractCompilerVisitor___ret(var_v, var1032); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5098 }
5099 var = 1;
5100 goto RET_LABEL;
5101 } else {
5102 if (likely(varonce1033!=NULL)) {
5103 var1034 = varonce1033;
5104 } else {
5105 var1035 = "prec";
5106 var1036 = standard___standard__NativeString___to_s_with_length(var1035, 4l);
5107 var1034 = var1036;
5108 varonce1033 = var1034;
5109 }
5110 {
5111 var1037 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1034); /* == on <var_pname:String>*/
5112 }
5113 if (var1037){
5114 if (unlikely(varonce1038==NULL)) {
5115 var1039 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
5116 if (likely(varonce1040!=NULL)) {
5117 var1041 = varonce1040;
5118 } else {
5119 var1042 = "-1";
5120 var1043 = standard___standard__NativeString___to_s_with_length(var1042, 2l);
5121 var1041 = var1043;
5122 varonce1040 = var1041;
5123 }
5124 ((struct instance_standard__NativeArray*)var1039)->values[1]=var1041;
5125 } else {
5126 var1039 = varonce1038;
5127 varonce1038 = NULL;
5128 }
5129 {
5130 var1044 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5131 }
5132 {
5133 var1045 = ((val*(*)(val* self))(var1044->class->vft[COLOR_standard__string__Object__to_s]))(var1044); /* to_s on <var1044:nullable Object(RuntimeVariable)>*/
5134 }
5135 ((struct instance_standard__NativeArray*)var1039)->values[0]=var1045;
5136 {
5137 var1046 = ((val*(*)(val* self))(var1039->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1039); /* native_to_s on <var1039:NativeArray[String]>*/
5138 }
5139 varonce1038 = var1039;
5140 if (unlikely(var_ret == NULL)) {
5141 PRINT_ERROR("Runtime error: %s", "Cast failed");
5142 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2290);
5143 fatal_exit(1);
5144 }
5145 {
5146 var1047 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1046, var_ret);
5147 }
5148 {
5149 nit___nit__AbstractCompilerVisitor___ret(var_v, var1047); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5150 }
5151 var = 1;
5152 goto RET_LABEL;
5153 } else {
5154 if (likely(varonce1048!=NULL)) {
5155 var1049 = varonce1048;
5156 } else {
5157 var1050 = "*";
5158 var1051 = standard___standard__NativeString___to_s_with_length(var1050, 1l);
5159 var1049 = var1051;
5160 varonce1048 = var1049;
5161 }
5162 {
5163 var1052 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1049); /* == on <var_pname:String>*/
5164 }
5165 if (var1052){
5166 if (unlikely(varonce1053==NULL)) {
5167 var1054 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
5168 if (likely(varonce1055!=NULL)) {
5169 var1056 = varonce1055;
5170 } else {
5171 var1057 = " * ";
5172 var1058 = standard___standard__NativeString___to_s_with_length(var1057, 3l);
5173 var1056 = var1058;
5174 varonce1055 = var1056;
5175 }
5176 ((struct instance_standard__NativeArray*)var1054)->values[1]=var1056;
5177 } else {
5178 var1054 = varonce1053;
5179 varonce1053 = NULL;
5180 }
5181 {
5182 var1059 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5183 }
5184 {
5185 var1060 = ((val*(*)(val* self))(var1059->class->vft[COLOR_standard__string__Object__to_s]))(var1059); /* to_s on <var1059:nullable Object(RuntimeVariable)>*/
5186 }
5187 ((struct instance_standard__NativeArray*)var1054)->values[0]=var1060;
5188 {
5189 var1061 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5190 }
5191 {
5192 var1062 = ((val*(*)(val* self))(var1061->class->vft[COLOR_standard__string__Object__to_s]))(var1061); /* to_s on <var1061:nullable Object(RuntimeVariable)>*/
5193 }
5194 ((struct instance_standard__NativeArray*)var1054)->values[2]=var1062;
5195 {
5196 var1063 = ((val*(*)(val* self))(var1054->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1054); /* native_to_s on <var1054:NativeArray[String]>*/
5197 }
5198 varonce1053 = var1054;
5199 if (unlikely(var_ret == NULL)) {
5200 PRINT_ERROR("Runtime error: %s", "Cast failed");
5201 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2293);
5202 fatal_exit(1);
5203 }
5204 {
5205 var1064 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1063, var_ret);
5206 }
5207 {
5208 nit___nit__AbstractCompilerVisitor___ret(var_v, var1064); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5209 }
5210 var = 1;
5211 goto RET_LABEL;
5212 } else {
5213 if (likely(varonce1065!=NULL)) {
5214 var1066 = varonce1065;
5215 } else {
5216 var1067 = "/";
5217 var1068 = standard___standard__NativeString___to_s_with_length(var1067, 1l);
5218 var1066 = var1068;
5219 varonce1065 = var1066;
5220 }
5221 {
5222 var1069 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1066); /* == on <var_pname:String>*/
5223 }
5224 if (var1069){
5225 if (unlikely(varonce1070==NULL)) {
5226 var1071 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
5227 if (likely(varonce1072!=NULL)) {
5228 var1073 = varonce1072;
5229 } else {
5230 var1074 = " / ";
5231 var1075 = standard___standard__NativeString___to_s_with_length(var1074, 3l);
5232 var1073 = var1075;
5233 varonce1072 = var1073;
5234 }
5235 ((struct instance_standard__NativeArray*)var1071)->values[1]=var1073;
5236 } else {
5237 var1071 = varonce1070;
5238 varonce1070 = NULL;
5239 }
5240 {
5241 var1076 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5242 }
5243 {
5244 var1077 = ((val*(*)(val* self))(var1076->class->vft[COLOR_standard__string__Object__to_s]))(var1076); /* to_s on <var1076:nullable Object(RuntimeVariable)>*/
5245 }
5246 ((struct instance_standard__NativeArray*)var1071)->values[0]=var1077;
5247 {
5248 var1078 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5249 }
5250 {
5251 var1079 = ((val*(*)(val* self))(var1078->class->vft[COLOR_standard__string__Object__to_s]))(var1078); /* to_s on <var1078:nullable Object(RuntimeVariable)>*/
5252 }
5253 ((struct instance_standard__NativeArray*)var1071)->values[2]=var1079;
5254 {
5255 var1080 = ((val*(*)(val* self))(var1071->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1071); /* native_to_s on <var1071:NativeArray[String]>*/
5256 }
5257 varonce1070 = var1071;
5258 if (unlikely(var_ret == NULL)) {
5259 PRINT_ERROR("Runtime error: %s", "Cast failed");
5260 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2296);
5261 fatal_exit(1);
5262 }
5263 {
5264 var1081 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1080, var_ret);
5265 }
5266 {
5267 nit___nit__AbstractCompilerVisitor___ret(var_v, var1081); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5268 }
5269 var = 1;
5270 goto RET_LABEL;
5271 } else {
5272 if (likely(varonce1082!=NULL)) {
5273 var1083 = varonce1082;
5274 } else {
5275 var1084 = "==";
5276 var1085 = standard___standard__NativeString___to_s_with_length(var1084, 2l);
5277 var1083 = var1085;
5278 varonce1082 = var1083;
5279 }
5280 {
5281 var1086 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1083); /* == on <var_pname:String>*/
5282 }
5283 if (var1086){
5284 {
5285 var1087 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5286 }
5287 {
5288 var1088 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5289 }
5290 {
5291 var1089 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var1087, var1088);
5292 }
5293 {
5294 nit___nit__AbstractCompilerVisitor___ret(var_v, var1089); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5295 }
5296 var = 1;
5297 goto RET_LABEL;
5298 } else {
5299 if (likely(varonce1090!=NULL)) {
5300 var1091 = varonce1090;
5301 } else {
5302 var1092 = "!=";
5303 var1093 = standard___standard__NativeString___to_s_with_length(var1092, 2l);
5304 var1091 = var1093;
5305 varonce1090 = var1091;
5306 }
5307 {
5308 var1094 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1091); /* == on <var_pname:String>*/
5309 }
5310 if (var1094){
5311 {
5312 var1095 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5313 }
5314 {
5315 var1096 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5316 }
5317 {
5318 var1097 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var1095, var1096);
5319 }
5320 var_res1098 = var1097;
5321 if (unlikely(varonce1099==NULL)) {
5322 var1100 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
5323 if (likely(varonce1101!=NULL)) {
5324 var1102 = varonce1101;
5325 } else {
5326 var1103 = "!";
5327 var1104 = standard___standard__NativeString___to_s_with_length(var1103, 1l);
5328 var1102 = var1104;
5329 varonce1101 = var1102;
5330 }
5331 ((struct instance_standard__NativeArray*)var1100)->values[0]=var1102;
5332 } else {
5333 var1100 = varonce1099;
5334 varonce1099 = NULL;
5335 }
5336 {
5337 var1105 = ((val*(*)(val* self))(var_res1098->class->vft[COLOR_standard__string__Object__to_s]))(var_res1098); /* to_s on <var_res1098:RuntimeVariable>*/
5338 }
5339 ((struct instance_standard__NativeArray*)var1100)->values[1]=var1105;
5340 {
5341 var1106 = ((val*(*)(val* self))(var1100->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1100); /* native_to_s on <var1100:NativeArray[String]>*/
5342 }
5343 varonce1099 = var1100;
5344 if (unlikely(var_ret == NULL)) {
5345 PRINT_ERROR("Runtime error: %s", "Cast failed");
5346 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2303);
5347 fatal_exit(1);
5348 }
5349 {
5350 var1107 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1106, var_ret);
5351 }
5352 {
5353 nit___nit__AbstractCompilerVisitor___ret(var_v, var1107); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5354 }
5355 var = 1;
5356 goto RET_LABEL;
5357 } else {
5358 if (likely(varonce1108!=NULL)) {
5359 var1109 = varonce1108;
5360 } else {
5361 var1110 = "<";
5362 var1111 = standard___standard__NativeString___to_s_with_length(var1110, 1l);
5363 var1109 = var1111;
5364 varonce1108 = var1109;
5365 }
5366 {
5367 var1112 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1109); /* == on <var_pname:String>*/
5368 }
5369 if (var1112){
5370 if (unlikely(varonce1113==NULL)) {
5371 var1114 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
5372 if (likely(varonce1115!=NULL)) {
5373 var1116 = varonce1115;
5374 } else {
5375 var1117 = " < ";
5376 var1118 = standard___standard__NativeString___to_s_with_length(var1117, 3l);
5377 var1116 = var1118;
5378 varonce1115 = var1116;
5379 }
5380 ((struct instance_standard__NativeArray*)var1114)->values[1]=var1116;
5381 } else {
5382 var1114 = varonce1113;
5383 varonce1113 = NULL;
5384 }
5385 {
5386 var1119 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5387 }
5388 {
5389 var1120 = ((val*(*)(val* self))(var1119->class->vft[COLOR_standard__string__Object__to_s]))(var1119); /* to_s on <var1119:nullable Object(RuntimeVariable)>*/
5390 }
5391 ((struct instance_standard__NativeArray*)var1114)->values[0]=var1120;
5392 {
5393 var1121 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5394 }
5395 {
5396 var1122 = ((val*(*)(val* self))(var1121->class->vft[COLOR_standard__string__Object__to_s]))(var1121); /* to_s on <var1121:nullable Object(RuntimeVariable)>*/
5397 }
5398 ((struct instance_standard__NativeArray*)var1114)->values[2]=var1122;
5399 {
5400 var1123 = ((val*(*)(val* self))(var1114->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1114); /* native_to_s on <var1114:NativeArray[String]>*/
5401 }
5402 varonce1113 = var1114;
5403 if (unlikely(var_ret == NULL)) {
5404 PRINT_ERROR("Runtime error: %s", "Cast failed");
5405 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2306);
5406 fatal_exit(1);
5407 }
5408 {
5409 var1124 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1123, var_ret);
5410 }
5411 {
5412 nit___nit__AbstractCompilerVisitor___ret(var_v, var1124); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5413 }
5414 var = 1;
5415 goto RET_LABEL;
5416 } else {
5417 if (likely(varonce1125!=NULL)) {
5418 var1126 = varonce1125;
5419 } else {
5420 var1127 = ">";
5421 var1128 = standard___standard__NativeString___to_s_with_length(var1127, 1l);
5422 var1126 = var1128;
5423 varonce1125 = var1126;
5424 }
5425 {
5426 var1129 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1126); /* == on <var_pname:String>*/
5427 }
5428 if (var1129){
5429 if (unlikely(varonce1130==NULL)) {
5430 var1131 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
5431 if (likely(varonce1132!=NULL)) {
5432 var1133 = varonce1132;
5433 } else {
5434 var1134 = " > ";
5435 var1135 = standard___standard__NativeString___to_s_with_length(var1134, 3l);
5436 var1133 = var1135;
5437 varonce1132 = var1133;
5438 }
5439 ((struct instance_standard__NativeArray*)var1131)->values[1]=var1133;
5440 } else {
5441 var1131 = varonce1130;
5442 varonce1130 = NULL;
5443 }
5444 {
5445 var1136 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5446 }
5447 {
5448 var1137 = ((val*(*)(val* self))(var1136->class->vft[COLOR_standard__string__Object__to_s]))(var1136); /* to_s on <var1136:nullable Object(RuntimeVariable)>*/
5449 }
5450 ((struct instance_standard__NativeArray*)var1131)->values[0]=var1137;
5451 {
5452 var1138 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5453 }
5454 {
5455 var1139 = ((val*(*)(val* self))(var1138->class->vft[COLOR_standard__string__Object__to_s]))(var1138); /* to_s on <var1138:nullable Object(RuntimeVariable)>*/
5456 }
5457 ((struct instance_standard__NativeArray*)var1131)->values[2]=var1139;
5458 {
5459 var1140 = ((val*(*)(val* self))(var1131->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1131); /* native_to_s on <var1131:NativeArray[String]>*/
5460 }
5461 varonce1130 = var1131;
5462 if (unlikely(var_ret == NULL)) {
5463 PRINT_ERROR("Runtime error: %s", "Cast failed");
5464 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2309);
5465 fatal_exit(1);
5466 }
5467 {
5468 var1141 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1140, var_ret);
5469 }
5470 {
5471 nit___nit__AbstractCompilerVisitor___ret(var_v, var1141); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5472 }
5473 var = 1;
5474 goto RET_LABEL;
5475 } else {
5476 if (likely(varonce1142!=NULL)) {
5477 var1143 = varonce1142;
5478 } else {
5479 var1144 = "<=";
5480 var1145 = standard___standard__NativeString___to_s_with_length(var1144, 2l);
5481 var1143 = var1145;
5482 varonce1142 = var1143;
5483 }
5484 {
5485 var1146 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1143); /* == on <var_pname:String>*/
5486 }
5487 if (var1146){
5488 if (unlikely(varonce1147==NULL)) {
5489 var1148 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
5490 if (likely(varonce1149!=NULL)) {
5491 var1150 = varonce1149;
5492 } else {
5493 var1151 = " <= ";
5494 var1152 = standard___standard__NativeString___to_s_with_length(var1151, 4l);
5495 var1150 = var1152;
5496 varonce1149 = var1150;
5497 }
5498 ((struct instance_standard__NativeArray*)var1148)->values[1]=var1150;
5499 } else {
5500 var1148 = varonce1147;
5501 varonce1147 = NULL;
5502 }
5503 {
5504 var1153 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5505 }
5506 {
5507 var1154 = ((val*(*)(val* self))(var1153->class->vft[COLOR_standard__string__Object__to_s]))(var1153); /* to_s on <var1153:nullable Object(RuntimeVariable)>*/
5508 }
5509 ((struct instance_standard__NativeArray*)var1148)->values[0]=var1154;
5510 {
5511 var1155 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5512 }
5513 {
5514 var1156 = ((val*(*)(val* self))(var1155->class->vft[COLOR_standard__string__Object__to_s]))(var1155); /* to_s on <var1155:nullable Object(RuntimeVariable)>*/
5515 }
5516 ((struct instance_standard__NativeArray*)var1148)->values[2]=var1156;
5517 {
5518 var1157 = ((val*(*)(val* self))(var1148->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1148); /* native_to_s on <var1148:NativeArray[String]>*/
5519 }
5520 varonce1147 = var1148;
5521 if (unlikely(var_ret == NULL)) {
5522 PRINT_ERROR("Runtime error: %s", "Cast failed");
5523 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2312);
5524 fatal_exit(1);
5525 }
5526 {
5527 var1158 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1157, var_ret);
5528 }
5529 {
5530 nit___nit__AbstractCompilerVisitor___ret(var_v, var1158); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5531 }
5532 var = 1;
5533 goto RET_LABEL;
5534 } else {
5535 if (likely(varonce1159!=NULL)) {
5536 var1160 = varonce1159;
5537 } else {
5538 var1161 = ">=";
5539 var1162 = standard___standard__NativeString___to_s_with_length(var1161, 2l);
5540 var1160 = var1162;
5541 varonce1159 = var1160;
5542 }
5543 {
5544 var1163 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1160); /* == on <var_pname:String>*/
5545 }
5546 if (var1163){
5547 if (unlikely(varonce1164==NULL)) {
5548 var1165 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
5549 if (likely(varonce1166!=NULL)) {
5550 var1167 = varonce1166;
5551 } else {
5552 var1168 = " >= ";
5553 var1169 = standard___standard__NativeString___to_s_with_length(var1168, 4l);
5554 var1167 = var1169;
5555 varonce1166 = var1167;
5556 }
5557 ((struct instance_standard__NativeArray*)var1165)->values[1]=var1167;
5558 } else {
5559 var1165 = varonce1164;
5560 varonce1164 = NULL;
5561 }
5562 {
5563 var1170 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5564 }
5565 {
5566 var1171 = ((val*(*)(val* self))(var1170->class->vft[COLOR_standard__string__Object__to_s]))(var1170); /* to_s on <var1170:nullable Object(RuntimeVariable)>*/
5567 }
5568 ((struct instance_standard__NativeArray*)var1165)->values[0]=var1171;
5569 {
5570 var1172 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5571 }
5572 {
5573 var1173 = ((val*(*)(val* self))(var1172->class->vft[COLOR_standard__string__Object__to_s]))(var1172); /* to_s on <var1172:nullable Object(RuntimeVariable)>*/
5574 }
5575 ((struct instance_standard__NativeArray*)var1165)->values[2]=var1173;
5576 {
5577 var1174 = ((val*(*)(val* self))(var1165->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1165); /* native_to_s on <var1165:NativeArray[String]>*/
5578 }
5579 varonce1164 = var1165;
5580 if (unlikely(var_ret == NULL)) {
5581 PRINT_ERROR("Runtime error: %s", "Cast failed");
5582 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2315);
5583 fatal_exit(1);
5584 }
5585 {
5586 var1175 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1174, var_ret);
5587 }
5588 {
5589 nit___nit__AbstractCompilerVisitor___ret(var_v, var1175); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5590 }
5591 var = 1;
5592 goto RET_LABEL;
5593 } else {
5594 if (likely(varonce1176!=NULL)) {
5595 var1177 = varonce1176;
5596 } else {
5597 var1178 = "to_i";
5598 var1179 = standard___standard__NativeString___to_s_with_length(var1178, 4l);
5599 var1177 = var1179;
5600 varonce1176 = var1177;
5601 }
5602 {
5603 var1180 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1177); /* == on <var_pname:String>*/
5604 }
5605 if (var1180){
5606 if (unlikely(varonce1181==NULL)) {
5607 var1182 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
5608 if (likely(varonce1183!=NULL)) {
5609 var1184 = varonce1183;
5610 } else {
5611 var1185 = "(long)";
5612 var1186 = standard___standard__NativeString___to_s_with_length(var1185, 6l);
5613 var1184 = var1186;
5614 varonce1183 = var1184;
5615 }
5616 ((struct instance_standard__NativeArray*)var1182)->values[0]=var1184;
5617 } else {
5618 var1182 = varonce1181;
5619 varonce1181 = NULL;
5620 }
5621 {
5622 var1187 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5623 }
5624 {
5625 var1188 = ((val*(*)(val* self))(var1187->class->vft[COLOR_standard__string__Object__to_s]))(var1187); /* to_s on <var1187:nullable Object(RuntimeVariable)>*/
5626 }
5627 ((struct instance_standard__NativeArray*)var1182)->values[1]=var1188;
5628 {
5629 var1189 = ((val*(*)(val* self))(var1182->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1182); /* native_to_s on <var1182:NativeArray[String]>*/
5630 }
5631 varonce1181 = var1182;
5632 if (unlikely(var_ret == NULL)) {
5633 PRINT_ERROR("Runtime error: %s", "Cast failed");
5634 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2318);
5635 fatal_exit(1);
5636 }
5637 {
5638 var1190 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1189, var_ret);
5639 }
5640 {
5641 nit___nit__AbstractCompilerVisitor___ret(var_v, var1190); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5642 }
5643 var = 1;
5644 goto RET_LABEL;
5645 } else {
5646 if (likely(varonce1191!=NULL)) {
5647 var1192 = varonce1191;
5648 } else {
5649 var1193 = "to_b";
5650 var1194 = standard___standard__NativeString___to_s_with_length(var1193, 4l);
5651 var1192 = var1194;
5652 varonce1191 = var1192;
5653 }
5654 {
5655 var1195 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1192); /* == on <var_pname:String>*/
5656 }
5657 if (var1195){
5658 if (unlikely(varonce1196==NULL)) {
5659 var1197 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
5660 if (likely(varonce1198!=NULL)) {
5661 var1199 = varonce1198;
5662 } else {
5663 var1200 = "(unsigned char)";
5664 var1201 = standard___standard__NativeString___to_s_with_length(var1200, 15l);
5665 var1199 = var1201;
5666 varonce1198 = var1199;
5667 }
5668 ((struct instance_standard__NativeArray*)var1197)->values[0]=var1199;
5669 } else {
5670 var1197 = varonce1196;
5671 varonce1196 = NULL;
5672 }
5673 {
5674 var1202 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5675 }
5676 {
5677 var1203 = ((val*(*)(val* self))(var1202->class->vft[COLOR_standard__string__Object__to_s]))(var1202); /* to_s on <var1202:nullable Object(RuntimeVariable)>*/
5678 }
5679 ((struct instance_standard__NativeArray*)var1197)->values[1]=var1203;
5680 {
5681 var1204 = ((val*(*)(val* self))(var1197->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1197); /* native_to_s on <var1197:NativeArray[String]>*/
5682 }
5683 varonce1196 = var1197;
5684 if (unlikely(var_ret == NULL)) {
5685 PRINT_ERROR("Runtime error: %s", "Cast failed");
5686 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2321);
5687 fatal_exit(1);
5688 }
5689 {
5690 var1205 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1204, var_ret);
5691 }
5692 {
5693 nit___nit__AbstractCompilerVisitor___ret(var_v, var1205); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5694 }
5695 var = 1;
5696 goto RET_LABEL;
5697 } else {
5698 }
5699 }
5700 }
5701 }
5702 }
5703 }
5704 }
5705 }
5706 }
5707 }
5708 }
5709 }
5710 }
5711 }
5712 }
5713 }
5714 }
5715 }
5716 } else {
5717 if (likely(varonce1206!=NULL)) {
5718 var1207 = varonce1206;
5719 } else {
5720 var1208 = "NativeString";
5721 var1209 = standard___standard__NativeString___to_s_with_length(var1208, 12l);
5722 var1207 = var1209;
5723 varonce1206 = var1207;
5724 }
5725 {
5726 var1210 = ((short int(*)(val* self, val* p0))(var_cname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_cname, var1207); /* == on <var_cname:String>*/
5727 }
5728 if (var1210){
5729 if (likely(varonce1211!=NULL)) {
5730 var1212 = varonce1211;
5731 } else {
5732 var1213 = "[]";
5733 var1214 = standard___standard__NativeString___to_s_with_length(var1213, 2l);
5734 var1212 = var1214;
5735 varonce1211 = var1212;
5736 }
5737 {
5738 var1215 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1212); /* == on <var_pname:String>*/
5739 }
5740 if (var1215){
5741 if (unlikely(varonce1216==NULL)) {
5742 var1217 = NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String);
5743 if (likely(varonce1218!=NULL)) {
5744 var1219 = varonce1218;
5745 } else {
5746 var1220 = "(uint32_t)(unsigned char)";
5747 var1221 = standard___standard__NativeString___to_s_with_length(var1220, 25l);
5748 var1219 = var1221;
5749 varonce1218 = var1219;
5750 }
5751 ((struct instance_standard__NativeArray*)var1217)->values[0]=var1219;
5752 if (likely(varonce1222!=NULL)) {
5753 var1223 = varonce1222;
5754 } else {
5755 var1224 = "[";
5756 var1225 = standard___standard__NativeString___to_s_with_length(var1224, 1l);
5757 var1223 = var1225;
5758 varonce1222 = var1223;
5759 }
5760 ((struct instance_standard__NativeArray*)var1217)->values[2]=var1223;
5761 if (likely(varonce1226!=NULL)) {
5762 var1227 = varonce1226;
5763 } else {
5764 var1228 = "]";
5765 var1229 = standard___standard__NativeString___to_s_with_length(var1228, 1l);
5766 var1227 = var1229;
5767 varonce1226 = var1227;
5768 }
5769 ((struct instance_standard__NativeArray*)var1217)->values[4]=var1227;
5770 } else {
5771 var1217 = varonce1216;
5772 varonce1216 = NULL;
5773 }
5774 {
5775 var1230 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5776 }
5777 {
5778 var1231 = ((val*(*)(val* self))(var1230->class->vft[COLOR_standard__string__Object__to_s]))(var1230); /* to_s on <var1230:nullable Object(RuntimeVariable)>*/
5779 }
5780 ((struct instance_standard__NativeArray*)var1217)->values[1]=var1231;
5781 {
5782 var1232 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5783 }
5784 {
5785 var1233 = ((val*(*)(val* self))(var1232->class->vft[COLOR_standard__string__Object__to_s]))(var1232); /* to_s on <var1232:nullable Object(RuntimeVariable)>*/
5786 }
5787 ((struct instance_standard__NativeArray*)var1217)->values[3]=var1233;
5788 {
5789 var1234 = ((val*(*)(val* self))(var1217->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1217); /* native_to_s on <var1217:NativeArray[String]>*/
5790 }
5791 varonce1216 = var1217;
5792 if (unlikely(var_ret == NULL)) {
5793 PRINT_ERROR("Runtime error: %s", "Cast failed");
5794 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2326);
5795 fatal_exit(1);
5796 }
5797 {
5798 var1235 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1234, var_ret);
5799 }
5800 {
5801 nit___nit__AbstractCompilerVisitor___ret(var_v, var1235); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
5802 }
5803 var = 1;
5804 goto RET_LABEL;
5805 } else {
5806 if (likely(varonce1236!=NULL)) {
5807 var1237 = varonce1236;
5808 } else {
5809 var1238 = "[]=";
5810 var1239 = standard___standard__NativeString___to_s_with_length(var1238, 3l);
5811 var1237 = var1239;
5812 varonce1236 = var1237;
5813 }
5814 {
5815 var1240 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1237); /* == on <var_pname:String>*/
5816 }
5817 if (var1240){
5818 if (unlikely(varonce1241==NULL)) {
5819 var1242 = NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String);
5820 if (likely(varonce1243!=NULL)) {
5821 var1244 = varonce1243;
5822 } else {
5823 var1245 = "[";
5824 var1246 = standard___standard__NativeString___to_s_with_length(var1245, 1l);
5825 var1244 = var1246;
5826 varonce1243 = var1244;
5827 }
5828 ((struct instance_standard__NativeArray*)var1242)->values[1]=var1244;
5829 if (likely(varonce1247!=NULL)) {
5830 var1248 = varonce1247;
5831 } else {
5832 var1249 = "]=(unsigned char)";
5833 var1250 = standard___standard__NativeString___to_s_with_length(var1249, 17l);
5834 var1248 = var1250;
5835 varonce1247 = var1248;
5836 }
5837 ((struct instance_standard__NativeArray*)var1242)->values[3]=var1248;
5838 if (likely(varonce1251!=NULL)) {
5839 var1252 = varonce1251;
5840 } else {
5841 var1253 = ";";
5842 var1254 = standard___standard__NativeString___to_s_with_length(var1253, 1l);
5843 var1252 = var1254;
5844 varonce1251 = var1252;
5845 }
5846 ((struct instance_standard__NativeArray*)var1242)->values[5]=var1252;
5847 } else {
5848 var1242 = varonce1241;
5849 varonce1241 = NULL;
5850 }
5851 {
5852 var1255 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5853 }
5854 {
5855 var1256 = ((val*(*)(val* self))(var1255->class->vft[COLOR_standard__string__Object__to_s]))(var1255); /* to_s on <var1255:nullable Object(RuntimeVariable)>*/
5856 }
5857 ((struct instance_standard__NativeArray*)var1242)->values[0]=var1256;
5858 {
5859 var1257 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5860 }
5861 {
5862 var1258 = ((val*(*)(val* self))(var1257->class->vft[COLOR_standard__string__Object__to_s]))(var1257); /* to_s on <var1257:nullable Object(RuntimeVariable)>*/
5863 }
5864 ((struct instance_standard__NativeArray*)var1242)->values[2]=var1258;
5865 {
5866 var1259 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 2l);
5867 }
5868 {
5869 var1260 = ((val*(*)(val* self))(var1259->class->vft[COLOR_standard__string__Object__to_s]))(var1259); /* to_s on <var1259:nullable Object(RuntimeVariable)>*/
5870 }
5871 ((struct instance_standard__NativeArray*)var1242)->values[4]=var1260;
5872 {
5873 var1261 = ((val*(*)(val* self))(var1242->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1242); /* native_to_s on <var1242:NativeArray[String]>*/
5874 }
5875 varonce1241 = var1242;
5876 {
5877 nit___nit__AbstractCompilerVisitor___add(var_v, var1261); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
5878 }
5879 var = 1;
5880 goto RET_LABEL;
5881 } else {
5882 if (likely(varonce1262!=NULL)) {
5883 var1263 = varonce1262;
5884 } else {
5885 var1264 = "copy_to";
5886 var1265 = standard___standard__NativeString___to_s_with_length(var1264, 7l);
5887 var1263 = var1265;
5888 varonce1262 = var1263;
5889 }
5890 {
5891 var1266 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1263); /* == on <var_pname:String>*/
5892 }
5893 if (var1266){
5894 if (unlikely(varonce1267==NULL)) {
5895 var1268 = NEW_standard__NativeArray(11l, &type_standard__NativeArray__standard__String);
5896 if (likely(varonce1269!=NULL)) {
5897 var1270 = varonce1269;
5898 } else {
5899 var1271 = "memmove(";
5900 var1272 = standard___standard__NativeString___to_s_with_length(var1271, 8l);
5901 var1270 = var1272;
5902 varonce1269 = var1270;
5903 }
5904 ((struct instance_standard__NativeArray*)var1268)->values[0]=var1270;
5905 if (likely(varonce1273!=NULL)) {
5906 var1274 = varonce1273;
5907 } else {
5908 var1275 = "+";
5909 var1276 = standard___standard__NativeString___to_s_with_length(var1275, 1l);
5910 var1274 = var1276;
5911 varonce1273 = var1274;
5912 }
5913 ((struct instance_standard__NativeArray*)var1268)->values[2]=var1274;
5914 if (likely(varonce1277!=NULL)) {
5915 var1278 = varonce1277;
5916 } else {
5917 var1279 = ",";
5918 var1280 = standard___standard__NativeString___to_s_with_length(var1279, 1l);
5919 var1278 = var1280;
5920 varonce1277 = var1278;
5921 }
5922 ((struct instance_standard__NativeArray*)var1268)->values[4]=var1278;
5923 if (likely(varonce1281!=NULL)) {
5924 var1282 = varonce1281;
5925 } else {
5926 var1283 = "+";
5927 var1284 = standard___standard__NativeString___to_s_with_length(var1283, 1l);
5928 var1282 = var1284;
5929 varonce1281 = var1282;
5930 }
5931 ((struct instance_standard__NativeArray*)var1268)->values[6]=var1282;
5932 if (likely(varonce1285!=NULL)) {
5933 var1286 = varonce1285;
5934 } else {
5935 var1287 = ",";
5936 var1288 = standard___standard__NativeString___to_s_with_length(var1287, 1l);
5937 var1286 = var1288;
5938 varonce1285 = var1286;
5939 }
5940 ((struct instance_standard__NativeArray*)var1268)->values[8]=var1286;
5941 if (likely(varonce1289!=NULL)) {
5942 var1290 = varonce1289;
5943 } else {
5944 var1291 = ");";
5945 var1292 = standard___standard__NativeString___to_s_with_length(var1291, 2l);
5946 var1290 = var1292;
5947 varonce1289 = var1290;
5948 }
5949 ((struct instance_standard__NativeArray*)var1268)->values[10]=var1290;
5950 } else {
5951 var1268 = varonce1267;
5952 varonce1267 = NULL;
5953 }
5954 {
5955 var1293 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
5956 }
5957 {
5958 var1294 = ((val*(*)(val* self))(var1293->class->vft[COLOR_standard__string__Object__to_s]))(var1293); /* to_s on <var1293:nullable Object(RuntimeVariable)>*/
5959 }
5960 ((struct instance_standard__NativeArray*)var1268)->values[1]=var1294;
5961 {
5962 var1295 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 4l);
5963 }
5964 {
5965 var1296 = ((val*(*)(val* self))(var1295->class->vft[COLOR_standard__string__Object__to_s]))(var1295); /* to_s on <var1295:nullable Object(RuntimeVariable)>*/
5966 }
5967 ((struct instance_standard__NativeArray*)var1268)->values[3]=var1296;
5968 {
5969 var1297 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
5970 }
5971 {
5972 var1298 = ((val*(*)(val* self))(var1297->class->vft[COLOR_standard__string__Object__to_s]))(var1297); /* to_s on <var1297:nullable Object(RuntimeVariable)>*/
5973 }
5974 ((struct instance_standard__NativeArray*)var1268)->values[5]=var1298;
5975 {
5976 var1299 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 3l);
5977 }
5978 {
5979 var1300 = ((val*(*)(val* self))(var1299->class->vft[COLOR_standard__string__Object__to_s]))(var1299); /* to_s on <var1299:nullable Object(RuntimeVariable)>*/
5980 }
5981 ((struct instance_standard__NativeArray*)var1268)->values[7]=var1300;
5982 {
5983 var1301 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 2l);
5984 }
5985 {
5986 var1302 = ((val*(*)(val* self))(var1301->class->vft[COLOR_standard__string__Object__to_s]))(var1301); /* to_s on <var1301:nullable Object(RuntimeVariable)>*/
5987 }
5988 ((struct instance_standard__NativeArray*)var1268)->values[9]=var1302;
5989 {
5990 var1303 = ((val*(*)(val* self))(var1268->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1268); /* native_to_s on <var1268:NativeArray[String]>*/
5991 }
5992 varonce1267 = var1268;
5993 {
5994 nit___nit__AbstractCompilerVisitor___add(var_v, var1303); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
5995 }
5996 var = 1;
5997 goto RET_LABEL;
5998 } else {
5999 if (likely(varonce1304!=NULL)) {
6000 var1305 = varonce1304;
6001 } else {
6002 var1306 = "atoi";
6003 var1307 = standard___standard__NativeString___to_s_with_length(var1306, 4l);
6004 var1305 = var1307;
6005 varonce1304 = var1305;
6006 }
6007 {
6008 var1308 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1305); /* == on <var_pname:String>*/
6009 }
6010 if (var1308){
6011 if (unlikely(varonce1309==NULL)) {
6012 var1310 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
6013 if (likely(varonce1311!=NULL)) {
6014 var1312 = varonce1311;
6015 } else {
6016 var1313 = "atoi(";
6017 var1314 = standard___standard__NativeString___to_s_with_length(var1313, 5l);
6018 var1312 = var1314;
6019 varonce1311 = var1312;
6020 }
6021 ((struct instance_standard__NativeArray*)var1310)->values[0]=var1312;
6022 if (likely(varonce1315!=NULL)) {
6023 var1316 = varonce1315;
6024 } else {
6025 var1317 = ");";
6026 var1318 = standard___standard__NativeString___to_s_with_length(var1317, 2l);
6027 var1316 = var1318;
6028 varonce1315 = var1316;
6029 }
6030 ((struct instance_standard__NativeArray*)var1310)->values[2]=var1316;
6031 } else {
6032 var1310 = varonce1309;
6033 varonce1309 = NULL;
6034 }
6035 {
6036 var1319 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
6037 }
6038 {
6039 var1320 = ((val*(*)(val* self))(var1319->class->vft[COLOR_standard__string__Object__to_s]))(var1319); /* to_s on <var1319:nullable Object(RuntimeVariable)>*/
6040 }
6041 ((struct instance_standard__NativeArray*)var1310)->values[1]=var1320;
6042 {
6043 var1321 = ((val*(*)(val* self))(var1310->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1310); /* native_to_s on <var1310:NativeArray[String]>*/
6044 }
6045 varonce1309 = var1310;
6046 if (unlikely(var_ret == NULL)) {
6047 PRINT_ERROR("Runtime error: %s", "Cast failed");
6048 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2335);
6049 fatal_exit(1);
6050 }
6051 {
6052 var1322 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1321, var_ret);
6053 }
6054 {
6055 nit___nit__AbstractCompilerVisitor___ret(var_v, var1322); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6056 }
6057 var = 1;
6058 goto RET_LABEL;
6059 } else {
6060 if (likely(varonce1323!=NULL)) {
6061 var1324 = varonce1323;
6062 } else {
6063 var1325 = "fast_cstring";
6064 var1326 = standard___standard__NativeString___to_s_with_length(var1325, 12l);
6065 var1324 = var1326;
6066 varonce1323 = var1324;
6067 }
6068 {
6069 var1327 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1324); /* == on <var_pname:String>*/
6070 }
6071 if (var1327){
6072 if (unlikely(varonce1328==NULL)) {
6073 var1329 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
6074 if (likely(varonce1330!=NULL)) {
6075 var1331 = varonce1330;
6076 } else {
6077 var1332 = " + ";
6078 var1333 = standard___standard__NativeString___to_s_with_length(var1332, 3l);
6079 var1331 = var1333;
6080 varonce1330 = var1331;
6081 }
6082 ((struct instance_standard__NativeArray*)var1329)->values[1]=var1331;
6083 } else {
6084 var1329 = varonce1328;
6085 varonce1328 = NULL;
6086 }
6087 {
6088 var1334 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
6089 }
6090 {
6091 var1335 = ((val*(*)(val* self))(var1334->class->vft[COLOR_standard__string__Object__to_s]))(var1334); /* to_s on <var1334:nullable Object(RuntimeVariable)>*/
6092 }
6093 ((struct instance_standard__NativeArray*)var1329)->values[0]=var1335;
6094 {
6095 var1336 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
6096 }
6097 {
6098 var1337 = ((val*(*)(val* self))(var1336->class->vft[COLOR_standard__string__Object__to_s]))(var1336); /* to_s on <var1336:nullable Object(RuntimeVariable)>*/
6099 }
6100 ((struct instance_standard__NativeArray*)var1329)->values[2]=var1337;
6101 {
6102 var1338 = ((val*(*)(val* self))(var1329->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1329); /* native_to_s on <var1329:NativeArray[String]>*/
6103 }
6104 varonce1328 = var1329;
6105 if (unlikely(var_ret == NULL)) {
6106 PRINT_ERROR("Runtime error: %s", "Cast failed");
6107 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2338);
6108 fatal_exit(1);
6109 }
6110 {
6111 var1339 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1338, var_ret);
6112 }
6113 {
6114 nit___nit__AbstractCompilerVisitor___ret(var_v, var1339); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6115 }
6116 var = 1;
6117 goto RET_LABEL;
6118 } else {
6119 if (likely(varonce1340!=NULL)) {
6120 var1341 = varonce1340;
6121 } else {
6122 var1342 = "new";
6123 var1343 = standard___standard__NativeString___to_s_with_length(var1342, 3l);
6124 var1341 = var1343;
6125 varonce1340 = var1341;
6126 }
6127 {
6128 var1344 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1341); /* == on <var_pname:String>*/
6129 }
6130 if (var1344){
6131 if (unlikely(varonce1345==NULL)) {
6132 var1346 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
6133 if (likely(varonce1347!=NULL)) {
6134 var1348 = varonce1347;
6135 } else {
6136 var1349 = "(char*)nit_alloc(";
6137 var1350 = standard___standard__NativeString___to_s_with_length(var1349, 17l);
6138 var1348 = var1350;
6139 varonce1347 = var1348;
6140 }
6141 ((struct instance_standard__NativeArray*)var1346)->values[0]=var1348;
6142 if (likely(varonce1351!=NULL)) {
6143 var1352 = varonce1351;
6144 } else {
6145 var1353 = ")";
6146 var1354 = standard___standard__NativeString___to_s_with_length(var1353, 1l);
6147 var1352 = var1354;
6148 varonce1351 = var1352;
6149 }
6150 ((struct instance_standard__NativeArray*)var1346)->values[2]=var1352;
6151 } else {
6152 var1346 = varonce1345;
6153 varonce1345 = NULL;
6154 }
6155 {
6156 var1355 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
6157 }
6158 {
6159 var1356 = ((val*(*)(val* self))(var1355->class->vft[COLOR_standard__string__Object__to_s]))(var1355); /* to_s on <var1355:nullable Object(RuntimeVariable)>*/
6160 }
6161 ((struct instance_standard__NativeArray*)var1346)->values[1]=var1356;
6162 {
6163 var1357 = ((val*(*)(val* self))(var1346->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1346); /* native_to_s on <var1346:NativeArray[String]>*/
6164 }
6165 varonce1345 = var1346;
6166 if (unlikely(var_ret == NULL)) {
6167 PRINT_ERROR("Runtime error: %s", "Cast failed");
6168 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2341);
6169 fatal_exit(1);
6170 }
6171 {
6172 var1358 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1357, var_ret);
6173 }
6174 {
6175 nit___nit__AbstractCompilerVisitor___ret(var_v, var1358); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6176 }
6177 var = 1;
6178 goto RET_LABEL;
6179 } else {
6180 }
6181 }
6182 }
6183 }
6184 }
6185 }
6186 } else {
6187 if (likely(varonce1359!=NULL)) {
6188 var1360 = varonce1359;
6189 } else {
6190 var1361 = "NativeArray";
6191 var1362 = standard___standard__NativeString___to_s_with_length(var1361, 11l);
6192 var1360 = var1362;
6193 varonce1359 = var1360;
6194 }
6195 {
6196 var1363 = ((short int(*)(val* self, val* p0))(var_cname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_cname, var1360); /* == on <var_cname:String>*/
6197 }
6198 if (var1363){
6199 {
6200 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__native_array_def(var_v, var_pname, var_ret, var_arguments); /* Direct call separate_compiler#SeparateCompilerVisitor#native_array_def on <var_v:AbstractCompilerVisitor>*/
6201 }
6202 var = 1;
6203 goto RET_LABEL;
6204 } else {
6205 }
6206 }
6207 }
6208 }
6209 }
6210 }
6211 }
6212 if (likely(varonce1364!=NULL)) {
6213 var1365 = varonce1364;
6214 } else {
6215 var1366 = "exit";
6216 var1367 = standard___standard__NativeString___to_s_with_length(var1366, 4l);
6217 var1365 = var1367;
6218 varonce1364 = var1365;
6219 }
6220 {
6221 var1368 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1365); /* == on <var_pname:String>*/
6222 }
6223 if (var1368){
6224 if (unlikely(varonce1369==NULL)) {
6225 var1370 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
6226 if (likely(varonce1371!=NULL)) {
6227 var1372 = varonce1371;
6228 } else {
6229 var1373 = "exit(";
6230 var1374 = standard___standard__NativeString___to_s_with_length(var1373, 5l);
6231 var1372 = var1374;
6232 varonce1371 = var1372;
6233 }
6234 ((struct instance_standard__NativeArray*)var1370)->values[0]=var1372;
6235 if (likely(varonce1375!=NULL)) {
6236 var1376 = varonce1375;
6237 } else {
6238 var1377 = ");";
6239 var1378 = standard___standard__NativeString___to_s_with_length(var1377, 2l);
6240 var1376 = var1378;
6241 varonce1375 = var1376;
6242 }
6243 ((struct instance_standard__NativeArray*)var1370)->values[2]=var1376;
6244 } else {
6245 var1370 = varonce1369;
6246 varonce1369 = NULL;
6247 }
6248 {
6249 var1379 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
6250 }
6251 {
6252 var1380 = ((val*(*)(val* self))(var1379->class->vft[COLOR_standard__string__Object__to_s]))(var1379); /* to_s on <var1379:nullable Object(RuntimeVariable)>*/
6253 }
6254 ((struct instance_standard__NativeArray*)var1370)->values[1]=var1380;
6255 {
6256 var1381 = ((val*(*)(val* self))(var1370->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1370); /* native_to_s on <var1370:NativeArray[String]>*/
6257 }
6258 varonce1369 = var1370;
6259 {
6260 nit___nit__AbstractCompilerVisitor___add(var_v, var1381); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
6261 }
6262 var = 1;
6263 goto RET_LABEL;
6264 } else {
6265 if (likely(varonce1382!=NULL)) {
6266 var1383 = varonce1382;
6267 } else {
6268 var1384 = "sys";
6269 var1385 = standard___standard__NativeString___to_s_with_length(var1384, 3l);
6270 var1383 = var1385;
6271 varonce1382 = var1383;
6272 }
6273 {
6274 var1386 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1383); /* == on <var_pname:String>*/
6275 }
6276 if (var1386){
6277 if (likely(varonce1387!=NULL)) {
6278 var1388 = varonce1387;
6279 } else {
6280 var1389 = "glob_sys";
6281 var1390 = standard___standard__NativeString___to_s_with_length(var1389, 8l);
6282 var1388 = var1390;
6283 varonce1387 = var1388;
6284 }
6285 if (unlikely(var_ret == NULL)) {
6286 PRINT_ERROR("Runtime error: %s", "Cast failed");
6287 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2352);
6288 fatal_exit(1);
6289 }
6290 {
6291 var1391 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1388, var_ret);
6292 }
6293 {
6294 nit___nit__AbstractCompilerVisitor___ret(var_v, var1391); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6295 }
6296 var = 1;
6297 goto RET_LABEL;
6298 } else {
6299 if (likely(varonce1392!=NULL)) {
6300 var1393 = varonce1392;
6301 } else {
6302 var1394 = "calloc_string";
6303 var1395 = standard___standard__NativeString___to_s_with_length(var1394, 13l);
6304 var1393 = var1395;
6305 varonce1392 = var1393;
6306 }
6307 {
6308 var1396 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1393); /* == on <var_pname:String>*/
6309 }
6310 if (var1396){
6311 if (unlikely(varonce1397==NULL)) {
6312 var1398 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
6313 if (likely(varonce1399!=NULL)) {
6314 var1400 = varonce1399;
6315 } else {
6316 var1401 = "(char*)nit_alloc(";
6317 var1402 = standard___standard__NativeString___to_s_with_length(var1401, 17l);
6318 var1400 = var1402;
6319 varonce1399 = var1400;
6320 }
6321 ((struct instance_standard__NativeArray*)var1398)->values[0]=var1400;
6322 if (likely(varonce1403!=NULL)) {
6323 var1404 = varonce1403;
6324 } else {
6325 var1405 = ")";
6326 var1406 = standard___standard__NativeString___to_s_with_length(var1405, 1l);
6327 var1404 = var1406;
6328 varonce1403 = var1404;
6329 }
6330 ((struct instance_standard__NativeArray*)var1398)->values[2]=var1404;
6331 } else {
6332 var1398 = varonce1397;
6333 varonce1397 = NULL;
6334 }
6335 {
6336 var1407 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
6337 }
6338 {
6339 var1408 = ((val*(*)(val* self))(var1407->class->vft[COLOR_standard__string__Object__to_s]))(var1407); /* to_s on <var1407:nullable Object(RuntimeVariable)>*/
6340 }
6341 ((struct instance_standard__NativeArray*)var1398)->values[1]=var1408;
6342 {
6343 var1409 = ((val*(*)(val* self))(var1398->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1398); /* native_to_s on <var1398:NativeArray[String]>*/
6344 }
6345 varonce1397 = var1398;
6346 if (unlikely(var_ret == NULL)) {
6347 PRINT_ERROR("Runtime error: %s", "Cast failed");
6348 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2355);
6349 fatal_exit(1);
6350 }
6351 {
6352 var1410 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1409, var_ret);
6353 }
6354 {
6355 nit___nit__AbstractCompilerVisitor___ret(var_v, var1410); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6356 }
6357 var = 1;
6358 goto RET_LABEL;
6359 } else {
6360 if (likely(varonce1411!=NULL)) {
6361 var1412 = varonce1411;
6362 } else {
6363 var1413 = "calloc_array";
6364 var1414 = standard___standard__NativeString___to_s_with_length(var1413, 12l);
6365 var1412 = var1414;
6366 varonce1411 = var1412;
6367 }
6368 {
6369 var1415 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1412); /* == on <var_pname:String>*/
6370 }
6371 if (var1415){
6372 if (unlikely(var_ret == NULL)) {
6373 PRINT_ERROR("Runtime error: %s", "Cast failed");
6374 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2358);
6375 fatal_exit(1);
6376 }
6377 {
6378 ((void(*)(val* self, val* p0, val* p1))(var_v->class->vft[COLOR_nit__abstract_compiler__AbstractCompilerVisitor__calloc_array]))(var_v, var_ret, var_arguments); /* calloc_array on <var_v:AbstractCompilerVisitor>*/
6379 }
6380 var = 1;
6381 goto RET_LABEL;
6382 } else {
6383 if (likely(varonce1416!=NULL)) {
6384 var1417 = varonce1416;
6385 } else {
6386 var1418 = "object_id";
6387 var1419 = standard___standard__NativeString___to_s_with_length(var1418, 9l);
6388 var1417 = var1419;
6389 varonce1416 = var1417;
6390 }
6391 {
6392 var1420 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1417); /* == on <var_pname:String>*/
6393 }
6394 if (var1420){
6395 if (unlikely(varonce1421==NULL)) {
6396 var1422 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
6397 if (likely(varonce1423!=NULL)) {
6398 var1424 = varonce1423;
6399 } else {
6400 var1425 = "(long)";
6401 var1426 = standard___standard__NativeString___to_s_with_length(var1425, 6l);
6402 var1424 = var1426;
6403 varonce1423 = var1424;
6404 }
6405 ((struct instance_standard__NativeArray*)var1422)->values[0]=var1424;
6406 } else {
6407 var1422 = varonce1421;
6408 varonce1421 = NULL;
6409 }
6410 {
6411 var1427 = standard___standard__SequenceRead___Collection__first(var_arguments);
6412 }
6413 {
6414 var1428 = ((val*(*)(val* self))(var1427->class->vft[COLOR_standard__string__Object__to_s]))(var1427); /* to_s on <var1427:nullable Object(RuntimeVariable)>*/
6415 }
6416 ((struct instance_standard__NativeArray*)var1422)->values[1]=var1428;
6417 {
6418 var1429 = ((val*(*)(val* self))(var1422->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1422); /* native_to_s on <var1422:NativeArray[String]>*/
6419 }
6420 varonce1421 = var1422;
6421 if (unlikely(var_ret == NULL)) {
6422 PRINT_ERROR("Runtime error: %s", "Cast failed");
6423 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2361);
6424 fatal_exit(1);
6425 }
6426 {
6427 var1430 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1429, var_ret);
6428 }
6429 {
6430 nit___nit__AbstractCompilerVisitor___ret(var_v, var1430); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6431 }
6432 var = 1;
6433 goto RET_LABEL;
6434 } else {
6435 if (likely(varonce1431!=NULL)) {
6436 var1432 = varonce1431;
6437 } else {
6438 var1433 = "is_same_type";
6439 var1434 = standard___standard__NativeString___to_s_with_length(var1433, 12l);
6440 var1432 = var1434;
6441 varonce1431 = var1432;
6442 }
6443 {
6444 var1435 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1432); /* == on <var_pname:String>*/
6445 }
6446 if (var1435){
6447 {
6448 var1436 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
6449 }
6450 {
6451 var1437 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
6452 }
6453 {
6454 var1438 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__is_same_type_test(var_v, var1436, var1437);
6455 }
6456 {
6457 nit___nit__AbstractCompilerVisitor___ret(var_v, var1438); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6458 }
6459 var = 1;
6460 goto RET_LABEL;
6461 } else {
6462 if (likely(varonce1439!=NULL)) {
6463 var1440 = varonce1439;
6464 } else {
6465 var1441 = "is_same_instance";
6466 var1442 = standard___standard__NativeString___to_s_with_length(var1441, 16l);
6467 var1440 = var1442;
6468 varonce1439 = var1440;
6469 }
6470 {
6471 var1443 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1440); /* == on <var_pname:String>*/
6472 }
6473 if (var1443){
6474 {
6475 var1444 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 0l);
6476 }
6477 {
6478 var1445 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
6479 }
6480 {
6481 var1446 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__equal_test(var_v, var1444, var1445);
6482 }
6483 {
6484 nit___nit__AbstractCompilerVisitor___ret(var_v, var1446); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6485 }
6486 var = 1;
6487 goto RET_LABEL;
6488 } else {
6489 if (likely(varonce1447!=NULL)) {
6490 var1448 = varonce1447;
6491 } else {
6492 var1449 = "output_class_name";
6493 var1450 = standard___standard__NativeString___to_s_with_length(var1449, 17l);
6494 var1448 = var1450;
6495 varonce1447 = var1448;
6496 }
6497 {
6498 var1451 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1448); /* == on <var_pname:String>*/
6499 }
6500 if (var1451){
6501 {
6502 var1452 = standard___standard__SequenceRead___Collection__first(var_arguments);
6503 }
6504 {
6505 var1453 = ((val*(*)(val* self, val* p0))(var_v->class->vft[COLOR_nit__abstract_compiler__AbstractCompilerVisitor__class_name_string]))(var_v, var1452); /* class_name_string on <var_v:AbstractCompilerVisitor>*/
6506 }
6507 var_nat = var1453;
6508 if (unlikely(varonce1454==NULL)) {
6509 var1455 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
6510 if (likely(varonce1456!=NULL)) {
6511 var1457 = varonce1456;
6512 } else {
6513 var1458 = "printf(\"%s\\n\", ";
6514 var1459 = standard___standard__NativeString___to_s_with_length(var1458, 15l);
6515 var1457 = var1459;
6516 varonce1456 = var1457;
6517 }
6518 ((struct instance_standard__NativeArray*)var1455)->values[0]=var1457;
6519 if (likely(varonce1460!=NULL)) {
6520 var1461 = varonce1460;
6521 } else {
6522 var1462 = ");";
6523 var1463 = standard___standard__NativeString___to_s_with_length(var1462, 2l);
6524 var1461 = var1463;
6525 varonce1460 = var1461;
6526 }
6527 ((struct instance_standard__NativeArray*)var1455)->values[2]=var1461;
6528 } else {
6529 var1455 = varonce1454;
6530 varonce1454 = NULL;
6531 }
6532 ((struct instance_standard__NativeArray*)var1455)->values[1]=var_nat;
6533 {
6534 var1464 = ((val*(*)(val* self))(var1455->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1455); /* native_to_s on <var1455:NativeArray[String]>*/
6535 }
6536 varonce1454 = var1455;
6537 {
6538 nit___nit__AbstractCompilerVisitor___add(var_v, var1464); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
6539 }
6540 var = 1;
6541 goto RET_LABEL;
6542 } else {
6543 if (likely(varonce1465!=NULL)) {
6544 var1466 = varonce1465;
6545 } else {
6546 var1467 = "native_class_name";
6547 var1468 = standard___standard__NativeString___to_s_with_length(var1467, 17l);
6548 var1466 = var1468;
6549 varonce1465 = var1466;
6550 }
6551 {
6552 var1469 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1466); /* == on <var_pname:String>*/
6553 }
6554 if (var1469){
6555 {
6556 var1470 = standard___standard__SequenceRead___Collection__first(var_arguments);
6557 }
6558 {
6559 var1471 = ((val*(*)(val* self, val* p0))(var_v->class->vft[COLOR_nit__abstract_compiler__AbstractCompilerVisitor__class_name_string]))(var_v, var1470); /* class_name_string on <var_v:AbstractCompilerVisitor>*/
6560 }
6561 var_nat1472 = var1471;
6562 if (unlikely(varonce1473==NULL)) {
6563 var1474 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
6564 if (likely(varonce1475!=NULL)) {
6565 var1476 = varonce1475;
6566 } else {
6567 var1477 = "(char*)";
6568 var1478 = standard___standard__NativeString___to_s_with_length(var1477, 7l);
6569 var1476 = var1478;
6570 varonce1475 = var1476;
6571 }
6572 ((struct instance_standard__NativeArray*)var1474)->values[0]=var1476;
6573 } else {
6574 var1474 = varonce1473;
6575 varonce1473 = NULL;
6576 }
6577 ((struct instance_standard__NativeArray*)var1474)->values[1]=var_nat1472;
6578 {
6579 var1479 = ((val*(*)(val* self))(var1474->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1474); /* native_to_s on <var1474:NativeArray[String]>*/
6580 }
6581 varonce1473 = var1474;
6582 if (unlikely(var_ret == NULL)) {
6583 PRINT_ERROR("Runtime error: %s", "Cast failed");
6584 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2375);
6585 fatal_exit(1);
6586 }
6587 {
6588 var1480 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1479, var_ret);
6589 }
6590 {
6591 nit___nit__AbstractCompilerVisitor___ret(var_v, var1480); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6592 }
6593 var = 1;
6594 goto RET_LABEL;
6595 } else {
6596 if (likely(varonce1481!=NULL)) {
6597 var1482 = varonce1481;
6598 } else {
6599 var1483 = "force_garbage_collection";
6600 var1484 = standard___standard__NativeString___to_s_with_length(var1483, 24l);
6601 var1482 = var1484;
6602 varonce1481 = var1482;
6603 }
6604 {
6605 var1485 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1482); /* == on <var_pname:String>*/
6606 }
6607 if (var1485){
6608 if (likely(varonce1486!=NULL)) {
6609 var1487 = varonce1486;
6610 } else {
6611 var1488 = "nit_gcollect();";
6612 var1489 = standard___standard__NativeString___to_s_with_length(var1488, 15l);
6613 var1487 = var1489;
6614 varonce1486 = var1487;
6615 }
6616 {
6617 nit___nit__AbstractCompilerVisitor___add(var_v, var1487); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
6618 }
6619 var = 1;
6620 goto RET_LABEL;
6621 } else {
6622 if (likely(varonce1490!=NULL)) {
6623 var1491 = varonce1490;
6624 } else {
6625 var1492 = "native_argc";
6626 var1493 = standard___standard__NativeString___to_s_with_length(var1492, 11l);
6627 var1491 = var1493;
6628 varonce1490 = var1491;
6629 }
6630 {
6631 var1494 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1491); /* == on <var_pname:String>*/
6632 }
6633 if (var1494){
6634 if (likely(varonce1495!=NULL)) {
6635 var1496 = varonce1495;
6636 } else {
6637 var1497 = "glob_argc";
6638 var1498 = standard___standard__NativeString___to_s_with_length(var1497, 9l);
6639 var1496 = var1498;
6640 varonce1495 = var1496;
6641 }
6642 if (unlikely(var_ret == NULL)) {
6643 PRINT_ERROR("Runtime error: %s", "Cast failed");
6644 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2381);
6645 fatal_exit(1);
6646 }
6647 {
6648 var1499 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1496, var_ret);
6649 }
6650 {
6651 nit___nit__AbstractCompilerVisitor___ret(var_v, var1499); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6652 }
6653 var = 1;
6654 goto RET_LABEL;
6655 } else {
6656 if (likely(varonce1500!=NULL)) {
6657 var1501 = varonce1500;
6658 } else {
6659 var1502 = "native_argv";
6660 var1503 = standard___standard__NativeString___to_s_with_length(var1502, 11l);
6661 var1501 = var1503;
6662 varonce1500 = var1501;
6663 }
6664 {
6665 var1504 = ((short int(*)(val* self, val* p0))(var_pname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_pname, var1501); /* == on <var_pname:String>*/
6666 }
6667 if (var1504){
6668 if (unlikely(varonce1505==NULL)) {
6669 var1506 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
6670 if (likely(varonce1507!=NULL)) {
6671 var1508 = varonce1507;
6672 } else {
6673 var1509 = "glob_argv[";
6674 var1510 = standard___standard__NativeString___to_s_with_length(var1509, 10l);
6675 var1508 = var1510;
6676 varonce1507 = var1508;
6677 }
6678 ((struct instance_standard__NativeArray*)var1506)->values[0]=var1508;
6679 if (likely(varonce1511!=NULL)) {
6680 var1512 = varonce1511;
6681 } else {
6682 var1513 = "]";
6683 var1514 = standard___standard__NativeString___to_s_with_length(var1513, 1l);
6684 var1512 = var1514;
6685 varonce1511 = var1512;
6686 }
6687 ((struct instance_standard__NativeArray*)var1506)->values[2]=var1512;
6688 } else {
6689 var1506 = varonce1505;
6690 varonce1505 = NULL;
6691 }
6692 {
6693 var1515 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
6694 }
6695 {
6696 var1516 = ((val*(*)(val* self))(var1515->class->vft[COLOR_standard__string__Object__to_s]))(var1515); /* to_s on <var1515:nullable Object(RuntimeVariable)>*/
6697 }
6698 ((struct instance_standard__NativeArray*)var1506)->values[1]=var1516;
6699 {
6700 var1517 = ((val*(*)(val* self))(var1506->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1506); /* native_to_s on <var1506:NativeArray[String]>*/
6701 }
6702 varonce1505 = var1506;
6703 if (unlikely(var_ret == NULL)) {
6704 PRINT_ERROR("Runtime error: %s", "Cast failed");
6705 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2384);
6706 fatal_exit(1);
6707 }
6708 {
6709 var1518 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var1517, var_ret);
6710 }
6711 {
6712 nit___nit__AbstractCompilerVisitor___ret(var_v, var1518); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
6713 }
6714 var = 1;
6715 goto RET_LABEL;
6716 } else {
6717 }
6718 }
6719 }
6720 }
6721 }
6722 }
6723 }
6724 }
6725 }
6726 }
6727 }
6728 }
6729 var = 0;
6730 goto RET_LABEL;
6731 RET_LABEL:;
6732 return var;
6733 }
6734 /* method abstract_compiler#AMethPropdef#compile_externmeth_to_c for (self: AMethPropdef, AbstractCompilerVisitor, MMethodDef, Array[RuntimeVariable]): Bool */
6735 short int nit__abstract_compiler___AMethPropdef___compile_externmeth_to_c(val* self, val* p0, val* p1, val* p2) {
6736 short int var /* : Bool */;
6737 val* var_v /* var v: AbstractCompilerVisitor */;
6738 val* var_mpropdef /* var mpropdef: MMethodDef */;
6739 val* var_arguments /* var arguments: Array[RuntimeVariable] */;
6740 static val* varonce;
6741 val* var1 /* : String */;
6742 char* var2 /* : NativeString */;
6743 val* var3 /* : FlatString */;
6744 val* var4 /* : AbstractCompiler */;
6745 val* var6 /* : AbstractCompiler */;
6746 val* var7 /* : ModelBuilder */;
6747 val* var9 /* : ModelBuilder */;
6748 val* var10 /* : nullable AAnnotation */;
6749 val* var_at /* var at: nullable AAnnotation */;
6750 short int var11 /* : Bool */;
6751 short int var12 /* : Bool */;
6752 short int var13 /* : Bool */;
6753 val* var_other /* var other: nullable Object */;
6754 short int var15 /* : Bool */;
6755 short int var16 /* : Bool */;
6756 short int var_ /* var : Bool */;
6757 val* var17 /* : ANodes[AExpr] */;
6758 val* var19 /* : ANodes[AExpr] */;
6759 long var20 /* : Int */;
6760 short int var21 /* : Bool */;
6761 short int var23 /* : Bool */;
6762 val* var24 /* : AbstractCompiler */;
6763 val* var26 /* : AbstractCompiler */;
6764 val* var27 /* : ModelBuilder */;
6765 val* var29 /* : ModelBuilder */;
6766 val* var30 /* : nullable String */;
6767 val* var_externname /* var externname: nullable Object */;
6768 short int var31 /* : Bool */;
6769 short int var32 /* : Bool */;
6770 val* var33 /* : MClassDef */;
6771 val* var35 /* : MClassDef */;
6772 val* var36 /* : MModule */;
6773 val* var38 /* : MModule */;
6774 val* var_res /* var res: nullable RuntimeVariable */;
6775 val* var39 /* : nullable MSignature */;
6776 val* var41 /* : nullable MSignature */;
6777 val* var42 /* : nullable MType */;
6778 val* var44 /* : nullable MType */;
6779 val* var_ret /* var ret: nullable MType */;
6780 short int var45 /* : Bool */;
6781 short int var46 /* : Bool */;
6782 short int var48 /* : Bool */;
6783 short int var49 /* : Bool */;
6784 val* var50 /* : nullable Object */;
6785 val* var51 /* : MType */;
6786 val* var52 /* : RuntimeVariable */;
6787 short int var53 /* : Bool */;
6788 short int var54 /* : Bool */;
6789 val* var_other56 /* var other: nullable Object */;
6790 short int var57 /* : Bool */;
6791 short int var59 /* : Bool */;
6792 val* var61 /* : NativeArray[String] */;
6793 static val* varonce60;
6794 static val* varonce62;
6795 val* var63 /* : String */;
6796 char* var64 /* : NativeString */;
6797 val* var65 /* : FlatString */;
6798 static val* varonce66;
6799 val* var67 /* : String */;
6800 char* var68 /* : NativeString */;
6801 val* var69 /* : FlatString */;
6802 static val* varonce70;
6803 val* var71 /* : String */;
6804 char* var72 /* : NativeString */;
6805 val* var73 /* : FlatString */;
6806 val* var74 /* : String */;
6807 val* var75 /* : String */;
6808 val* var77 /* : NativeArray[String] */;
6809 static val* varonce76;
6810 static val* varonce78;
6811 val* var79 /* : String */;
6812 char* var80 /* : NativeString */;
6813 val* var81 /* : FlatString */;
6814 static val* varonce82;
6815 val* var83 /* : String */;
6816 char* var84 /* : NativeString */;
6817 val* var85 /* : FlatString */;
6818 static val* varonce86;
6819 val* var87 /* : String */;
6820 char* var88 /* : NativeString */;
6821 val* var89 /* : FlatString */;
6822 val* var90 /* : String */;
6823 static val* varonce91;
6824 val* var92 /* : String */;
6825 char* var93 /* : NativeString */;
6826 val* var94 /* : FlatString */;
6827 val* var95 /* : String */;
6828 val* var96 /* : String */;
6829 val* var97 /* : RuntimeVariable */;
6830 var_v = p0;
6831 var_mpropdef = p1;
6832 var_arguments = p2;
6833 if (likely(varonce!=NULL)) {
6834 var1 = varonce;
6835 } else {
6836 var2 = "extern";
6837 var3 = standard___standard__NativeString___to_s_with_length(var2, 6l);
6838 var1 = var3;
6839 varonce = var1;
6840 }
6841 {
6842 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
6843 var6 = var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <var_v:AbstractCompilerVisitor> */
6844 if (unlikely(var6 == NULL)) {
6845 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6846 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
6847 fatal_exit(1);
6848 }
6849 var4 = var6;
6850 RET_LABEL5:(void)0;
6851 }
6852 }
6853 {
6854 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var4) on <var4:AbstractCompiler> */
6855 var9 = var4->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var4:AbstractCompiler> */
6856 if (unlikely(var9 == NULL)) {
6857 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
6858 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 522);
6859 fatal_exit(1);
6860 }
6861 var7 = var9;
6862 RET_LABEL8:(void)0;
6863 }
6864 }
6865 {
6866 var10 = nit__annotation___Prod___get_single_annotation(self, var1, var7);
6867 }
6868 var_at = var10;
6869 if (var_at == NULL) {
6870 var12 = 0; /* is null */
6871 } else {
6872 var12 = 1; /* arg is null and recv is not */
6873 }
6874 if (0) {
6875 { /* Inline kernel#Object#!= (var_at,((val*)NULL)) on <var_at:nullable AAnnotation> */
6876 var_other = ((val*)NULL);
6877 {
6878 var15 = ((short int(*)(val* self, val* p0))(var_at->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_at, var_other); /* == on <var_at:nullable AAnnotation(AAnnotation)>*/
6879 }
6880 var16 = !var15;
6881 var13 = var16;
6882 goto RET_LABEL14;
6883 RET_LABEL14:(void)0;
6884 }
6885 var12 = var13;
6886 }
6887 var_ = var12;
6888 if (var12){
6889 {
6890 { /* Inline parser_nodes#AAnnotation#n_args (var_at) on <var_at:nullable AAnnotation(AAnnotation)> */
6891 var19 = var_at->attrs[COLOR_nit__parser_nodes__AAnnotation___n_args].val; /* _n_args on <var_at:nullable AAnnotation(AAnnotation)> */
6892 if (unlikely(var19 == NULL)) {
6893 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
6894 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2988);
6895 fatal_exit(1);
6896 }
6897 var17 = var19;
6898 RET_LABEL18:(void)0;
6899 }
6900 }
6901 {
6902 var20 = nit___nit__ANodes___standard__abstract_collection__Collection__length(var17);
6903 }
6904 {
6905 { /* Inline kernel#Int#== (var20,1l) on <var20:Int> */
6906 var23 = var20 == 1l;
6907 var21 = var23;
6908 goto RET_LABEL22;
6909 RET_LABEL22:(void)0;
6910 }
6911 }
6912 var11 = var21;
6913 } else {
6914 var11 = var_;
6915 }
6916 if (var11){
6917 {
6918 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
6919 var26 = var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <var_v:AbstractCompilerVisitor> */
6920 if (unlikely(var26 == NULL)) {
6921 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6922 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
6923 fatal_exit(1);
6924 }
6925 var24 = var26;
6926 RET_LABEL25:(void)0;
6927 }
6928 }
6929 {
6930 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var24) on <var24:AbstractCompiler> */
6931 var29 = var24->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var24:AbstractCompiler> */
6932 if (unlikely(var29 == NULL)) {
6933 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
6934 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 522);
6935 fatal_exit(1);
6936 }
6937 var27 = var29;
6938 RET_LABEL28:(void)0;
6939 }
6940 }
6941 {
6942 var30 = nit__annotation___AAnnotation___arg_as_string(var_at, var27);
6943 }
6944 var_externname = var30;
6945 if (var_externname == NULL) {
6946 var31 = 1; /* is null */
6947 } else {
6948 var31 = 0; /* arg is null but recv is not */
6949 }
6950 if (0) {
6951 var32 = ((short int(*)(val* self, val* p0))(var_externname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_externname, ((val*)NULL)); /* == on <var_externname:nullable Object(nullable String)>*/
6952 var31 = var32;
6953 }
6954 if (var31){
6955 var = 0;
6956 goto RET_LABEL;
6957 } else {
6958 }
6959 } else {
6960 var = 0;
6961 goto RET_LABEL;
6962 }
6963 {
6964 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:MMethodDef> */
6965 var35 = var_mpropdef->attrs[COLOR_nit__model__MPropDef___mclassdef].val; /* _mclassdef on <var_mpropdef:MMethodDef> */
6966 if (unlikely(var35 == NULL)) {
6967 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
6968 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2209);
6969 fatal_exit(1);
6970 }
6971 var33 = var35;
6972 RET_LABEL34:(void)0;
6973 }
6974 }
6975 {
6976 { /* Inline model#MClassDef#mmodule (var33) on <var33:MClassDef> */
6977 var38 = var33->attrs[COLOR_nit__model__MClassDef___mmodule].val; /* _mmodule on <var33:MClassDef> */
6978 if (unlikely(var38 == NULL)) {
6979 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
6980 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 550);
6981 fatal_exit(1);
6982 }
6983 var36 = var38;
6984 RET_LABEL37:(void)0;
6985 }
6986 }
6987 {
6988 nit___nit__AbstractCompilerVisitor___add_extern(var_v, var36); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_extern on <var_v:AbstractCompilerVisitor>*/
6989 }
6990 var_res = ((val*)NULL);
6991 {
6992 { /* Inline model#MMethodDef#msignature (var_mpropdef) on <var_mpropdef:MMethodDef> */
6993 var41 = var_mpropdef->attrs[COLOR_nit__model__MMethodDef___msignature].val; /* _msignature on <var_mpropdef:MMethodDef> */
6994 var39 = var41;
6995 RET_LABEL40:(void)0;
6996 }
6997 }
6998 if (var39 == NULL) {
6999 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7000 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2404);
7001 fatal_exit(1);
7002 } else {
7003 { /* Inline model#MSignature#return_mtype (var39) on <var39:nullable MSignature> */
7004 if (unlikely(var39 == NULL)) {
7005 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7006 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 1768);
7007 fatal_exit(1);
7008 }
7009 var44 = var39->attrs[COLOR_nit__model__MSignature___return_mtype].val; /* _return_mtype on <var39:nullable MSignature> */
7010 var42 = var44;
7011 RET_LABEL43:(void)0;
7012 }
7013 }
7014 var_ret = var42;
7015 if (var_ret == NULL) {
7016 var45 = 0; /* is null */
7017 } else {
7018 var45 = 1; /* arg is null and recv is not */
7019 }
7020 if (0) {
7021 { /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
7022 var_other = ((val*)NULL);
7023 {
7024 var48 = ((short int(*)(val* self, val* p0))(var_ret->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_ret, var_other); /* == on <var_ret:nullable MType(MType)>*/
7025 }
7026 var49 = !var48;
7027 var46 = var49;
7028 goto RET_LABEL47;
7029 RET_LABEL47:(void)0;
7030 }
7031 var45 = var46;
7032 }
7033 if (var45){
7034 {
7035 var50 = standard___standard__SequenceRead___Collection__first(var_arguments);
7036 }
7037 {
7038 var51 = nit___nit__AbstractCompilerVisitor___resolve_for(var_v, var_ret, var50);
7039 }
7040 var_ret = var51;
7041 {
7042 var52 = nit___nit__AbstractCompilerVisitor___new_var_extern(var_v, var_ret);
7043 }
7044 var_res = var52;
7045 } else {
7046 }
7047 {
7048 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__adapt_signature(var_v, var_mpropdef, var_arguments); /* Direct call separate_compiler#SeparateCompilerVisitor#adapt_signature on <var_v:AbstractCompilerVisitor>*/
7049 }
7050 {
7051 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__unbox_signature_extern(var_v, var_mpropdef, var_arguments); /* Direct call separate_compiler#SeparateCompilerVisitor#unbox_signature_extern on <var_v:AbstractCompilerVisitor>*/
7052 }
7053 if (var_res == NULL) {
7054 var53 = 1; /* is null */
7055 } else {
7056 var53 = 0; /* arg is null but recv is not */
7057 }
7058 if (0) {
7059 { /* Inline kernel#Object#== (var_res,((val*)NULL)) on <var_res:nullable RuntimeVariable> */
7060 var_other56 = ((val*)NULL);
7061 {
7062 { /* Inline kernel#Object#is_same_instance (var_res,var_other56) on <var_res:nullable RuntimeVariable(RuntimeVariable)> */
7063 var59 = var_res == var_other56;
7064 var57 = var59;
7065 goto RET_LABEL58;
7066 RET_LABEL58:(void)0;
7067 }
7068 }
7069 var54 = var57;
7070 goto RET_LABEL55;
7071 RET_LABEL55:(void)0;
7072 }
7073 var53 = var54;
7074 }
7075 if (var53){
7076 if (unlikely(varonce60==NULL)) {
7077 var61 = NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String);
7078 if (likely(varonce62!=NULL)) {
7079 var63 = varonce62;
7080 } else {
7081 var64 = "(";
7082 var65 = standard___standard__NativeString___to_s_with_length(var64, 1l);
7083 var63 = var65;
7084 varonce62 = var63;
7085 }
7086 ((struct instance_standard__NativeArray*)var61)->values[1]=var63;
7087 if (likely(varonce66!=NULL)) {
7088 var67 = varonce66;
7089 } else {
7090 var68 = ");";
7091 var69 = standard___standard__NativeString___to_s_with_length(var68, 2l);
7092 var67 = var69;
7093 varonce66 = var67;
7094 }
7095 ((struct instance_standard__NativeArray*)var61)->values[3]=var67;
7096 } else {
7097 var61 = varonce60;
7098 varonce60 = NULL;
7099 }
7100 ((struct instance_standard__NativeArray*)var61)->values[0]=var_externname;
7101 if (likely(varonce70!=NULL)) {
7102 var71 = varonce70;
7103 } else {
7104 var72 = ", ";
7105 var73 = standard___standard__NativeString___to_s_with_length(var72, 2l);
7106 var71 = var73;
7107 varonce70 = var71;
7108 }
7109 {
7110 var74 = standard__string___Collection___join(var_arguments, var71);
7111 }
7112 ((struct instance_standard__NativeArray*)var61)->values[2]=var74;
7113 {
7114 var75 = ((val*(*)(val* self))(var61->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var61); /* native_to_s on <var61:NativeArray[String]>*/
7115 }
7116 varonce60 = var61;
7117 {
7118 nit___nit__AbstractCompilerVisitor___add(var_v, var75); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
7119 }
7120 } else {
7121 if (unlikely(varonce76==NULL)) {
7122 var77 = NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String);
7123 if (likely(varonce78!=NULL)) {
7124 var79 = varonce78;
7125 } else {
7126 var80 = " = ";
7127 var81 = standard___standard__NativeString___to_s_with_length(var80, 3l);
7128 var79 = var81;
7129 varonce78 = var79;
7130 }
7131 ((struct instance_standard__NativeArray*)var77)->values[1]=var79;
7132 if (likely(varonce82!=NULL)) {
7133 var83 = varonce82;
7134 } else {
7135 var84 = "(";
7136 var85 = standard___standard__NativeString___to_s_with_length(var84, 1l);
7137 var83 = var85;
7138 varonce82 = var83;
7139 }
7140 ((struct instance_standard__NativeArray*)var77)->values[3]=var83;
7141 if (likely(varonce86!=NULL)) {
7142 var87 = varonce86;
7143 } else {
7144 var88 = ");";
7145 var89 = standard___standard__NativeString___to_s_with_length(var88, 2l);
7146 var87 = var89;
7147 varonce86 = var87;
7148 }
7149 ((struct instance_standard__NativeArray*)var77)->values[5]=var87;
7150 } else {
7151 var77 = varonce76;
7152 varonce76 = NULL;
7153 }
7154 {
7155 var90 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
7156 }
7157 ((struct instance_standard__NativeArray*)var77)->values[0]=var90;
7158 ((struct instance_standard__NativeArray*)var77)->values[2]=var_externname;
7159 if (likely(varonce91!=NULL)) {
7160 var92 = varonce91;
7161 } else {
7162 var93 = ", ";
7163 var94 = standard___standard__NativeString___to_s_with_length(var93, 2l);
7164 var92 = var94;
7165 varonce91 = var92;
7166 }
7167 {
7168 var95 = standard__string___Collection___join(var_arguments, var92);
7169 }
7170 ((struct instance_standard__NativeArray*)var77)->values[4]=var95;
7171 {
7172 var96 = ((val*(*)(val* self))(var77->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var77); /* native_to_s on <var77:NativeArray[String]>*/
7173 }
7174 varonce76 = var77;
7175 {
7176 nit___nit__AbstractCompilerVisitor___add(var_v, var96); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
7177 }
7178 if (unlikely(var_ret == NULL)) {
7179 PRINT_ERROR("Runtime error: %s", "Cast failed");
7180 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2416);
7181 fatal_exit(1);
7182 }
7183 {
7184 var97 = ((val*(*)(val* self, val* p0, val* p1))(var_v->class->vft[COLOR_nit__abstract_compiler__AbstractCompilerVisitor__box_extern]))(var_v, var_res, var_ret); /* box_extern on <var_v:AbstractCompilerVisitor>*/
7185 }
7186 var_res = var97;
7187 {
7188 nit___nit__AbstractCompilerVisitor___ret(var_v, var_res); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
7189 }
7190 }
7191 var = 1;
7192 goto RET_LABEL;
7193 RET_LABEL:;
7194 return var;
7195 }
7196 /* method abstract_compiler#AMethPropdef#compile_externinit_to_c for (self: AMethPropdef, AbstractCompilerVisitor, MMethodDef, Array[RuntimeVariable]): Bool */
7197 short int nit__abstract_compiler___AMethPropdef___compile_externinit_to_c(val* self, val* p0, val* p1, val* p2) {
7198 short int var /* : Bool */;
7199 val* var_v /* var v: AbstractCompilerVisitor */;
7200 val* var_mpropdef /* var mpropdef: MMethodDef */;
7201 val* var_arguments /* var arguments: Array[RuntimeVariable] */;
7202 static val* varonce;
7203 val* var1 /* : String */;
7204 char* var2 /* : NativeString */;
7205 val* var3 /* : FlatString */;
7206 val* var4 /* : AbstractCompiler */;
7207 val* var6 /* : AbstractCompiler */;
7208 val* var7 /* : ModelBuilder */;
7209 val* var9 /* : ModelBuilder */;
7210 val* var10 /* : nullable AAnnotation */;
7211 val* var_at /* var at: nullable AAnnotation */;
7212 short int var11 /* : Bool */;
7213 short int var12 /* : Bool */;
7214 val* var_other /* var other: nullable Object */;
7215 short int var14 /* : Bool */;
7216 short int var15 /* : Bool */;
7217 val* var16 /* : AbstractCompiler */;
7218 val* var18 /* : AbstractCompiler */;
7219 val* var19 /* : ModelBuilder */;
7220 val* var21 /* : ModelBuilder */;
7221 val* var22 /* : nullable String */;
7222 val* var_externname /* var externname: nullable Object */;
7223 short int var23 /* : Bool */;
7224 short int var24 /* : Bool */;
7225 val* var25 /* : MClassDef */;
7226 val* var27 /* : MClassDef */;
7227 val* var28 /* : MModule */;
7228 val* var30 /* : MModule */;
7229 val* var31 /* : nullable Object */;
7230 val* var32 /* : MType */;
7231 val* var34 /* : MType */;
7232 val* var_ret /* var ret: MType */;
7233 val* var35 /* : RuntimeVariable */;
7234 val* var_res /* var res: RuntimeVariable */;
7235 val* var36 /* : nullable Object */;
7236 val* var38 /* : NativeArray[String] */;
7237 static val* varonce37;
7238 static val* varonce39;
7239 val* var40 /* : String */;
7240 char* var41 /* : NativeString */;
7241 val* var42 /* : FlatString */;
7242 static val* varonce43;
7243 val* var44 /* : String */;
7244 char* var45 /* : NativeString */;
7245 val* var46 /* : FlatString */;
7246 static val* varonce47;
7247 val* var48 /* : String */;
7248 char* var49 /* : NativeString */;
7249 val* var50 /* : FlatString */;
7250 val* var51 /* : String */;
7251 static val* varonce52;
7252 val* var53 /* : String */;
7253 char* var54 /* : NativeString */;
7254 val* var55 /* : FlatString */;
7255 val* var56 /* : String */;
7256 val* var57 /* : String */;
7257 val* var58 /* : RuntimeVariable */;
7258 var_v = p0;
7259 var_mpropdef = p1;
7260 var_arguments = p2;
7261 if (likely(varonce!=NULL)) {
7262 var1 = varonce;
7263 } else {
7264 var2 = "extern";
7265 var3 = standard___standard__NativeString___to_s_with_length(var2, 6l);
7266 var1 = var3;
7267 varonce = var1;
7268 }
7269 {
7270 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
7271 var6 = var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <var_v:AbstractCompilerVisitor> */
7272 if (unlikely(var6 == NULL)) {
7273 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
7274 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
7275 fatal_exit(1);
7276 }
7277 var4 = var6;
7278 RET_LABEL5:(void)0;
7279 }
7280 }
7281 {
7282 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var4) on <var4:AbstractCompiler> */
7283 var9 = var4->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var4:AbstractCompiler> */
7284 if (unlikely(var9 == NULL)) {
7285 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
7286 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 522);
7287 fatal_exit(1);
7288 }
7289 var7 = var9;
7290 RET_LABEL8:(void)0;
7291 }
7292 }
7293 {
7294 var10 = nit__annotation___Prod___get_single_annotation(self, var1, var7);
7295 }
7296 var_at = var10;
7297 if (var_at == NULL) {
7298 var11 = 0; /* is null */
7299 } else {
7300 var11 = 1; /* arg is null and recv is not */
7301 }
7302 if (0) {
7303 { /* Inline kernel#Object#!= (var_at,((val*)NULL)) on <var_at:nullable AAnnotation> */
7304 var_other = ((val*)NULL);
7305 {
7306 var14 = ((short int(*)(val* self, val* p0))(var_at->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_at, var_other); /* == on <var_at:nullable AAnnotation(AAnnotation)>*/
7307 }
7308 var15 = !var14;
7309 var12 = var15;
7310 goto RET_LABEL13;
7311 RET_LABEL13:(void)0;
7312 }
7313 var11 = var12;
7314 }
7315 if (var11){
7316 {
7317 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
7318 var18 = var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler].val; /* _compiler on <var_v:AbstractCompilerVisitor> */
7319 if (unlikely(var18 == NULL)) {
7320 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
7321 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1102);
7322 fatal_exit(1);
7323 }
7324 var16 = var18;
7325 RET_LABEL17:(void)0;
7326 }
7327 }
7328 {
7329 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var16) on <var16:AbstractCompiler> */
7330 var21 = var16->attrs[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder].val; /* _modelbuilder on <var16:AbstractCompiler> */
7331 if (unlikely(var21 == NULL)) {
7332 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
7333 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 522);
7334 fatal_exit(1);
7335 }
7336 var19 = var21;
7337 RET_LABEL20:(void)0;
7338 }
7339 }
7340 {
7341 var22 = nit__annotation___AAnnotation___arg_as_string(var_at, var19);
7342 }
7343 var_externname = var22;
7344 if (var_externname == NULL) {
7345 var23 = 1; /* is null */
7346 } else {
7347 var23 = 0; /* arg is null but recv is not */
7348 }
7349 if (0) {
7350 var24 = ((short int(*)(val* self, val* p0))(var_externname->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_externname, ((val*)NULL)); /* == on <var_externname:nullable Object(nullable String)>*/
7351 var23 = var24;
7352 }
7353 if (var23){
7354 var = 0;
7355 goto RET_LABEL;
7356 } else {
7357 }
7358 } else {
7359 var = 0;
7360 goto RET_LABEL;
7361 }
7362 {
7363 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:MMethodDef> */
7364 var27 = var_mpropdef->attrs[COLOR_nit__model__MPropDef___mclassdef].val; /* _mclassdef on <var_mpropdef:MMethodDef> */
7365 if (unlikely(var27 == NULL)) {
7366 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
7367 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2209);
7368 fatal_exit(1);
7369 }
7370 var25 = var27;
7371 RET_LABEL26:(void)0;
7372 }
7373 }
7374 {
7375 { /* Inline model#MClassDef#mmodule (var25) on <var25:MClassDef> */
7376 var30 = var25->attrs[COLOR_nit__model__MClassDef___mmodule].val; /* _mmodule on <var25:MClassDef> */
7377 if (unlikely(var30 == NULL)) {
7378 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
7379 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 550);
7380 fatal_exit(1);
7381 }
7382 var28 = var30;
7383 RET_LABEL29:(void)0;
7384 }
7385 }
7386 {
7387 nit___nit__AbstractCompilerVisitor___add_extern(var_v, var28); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_extern on <var_v:AbstractCompilerVisitor>*/
7388 }
7389 {
7390 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__adapt_signature(var_v, var_mpropdef, var_arguments); /* Direct call separate_compiler#SeparateCompilerVisitor#adapt_signature on <var_v:AbstractCompilerVisitor>*/
7391 }
7392 {
7393 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__unbox_signature_extern(var_v, var_mpropdef, var_arguments); /* Direct call separate_compiler#SeparateCompilerVisitor#unbox_signature_extern on <var_v:AbstractCompilerVisitor>*/
7394 }
7395 {
7396 var31 = standard___standard__SequenceRead___Collection__first(var_arguments);
7397 }
7398 {
7399 { /* Inline abstract_compiler#RuntimeVariable#mtype (var31) on <var31:nullable Object(RuntimeVariable)> */
7400 var34 = var31->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var31:nullable Object(RuntimeVariable)> */
7401 if (unlikely(var34 == NULL)) {
7402 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
7403 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
7404 fatal_exit(1);
7405 }
7406 var32 = var34;
7407 RET_LABEL33:(void)0;
7408 }
7409 }
7410 var_ret = var32;
7411 {
7412 var35 = nit___nit__AbstractCompilerVisitor___new_var_extern(var_v, var_ret);
7413 }
7414 var_res = var35;
7415 {
7416 var36 = standard___standard__AbstractArray___standard__abstract_collection__Sequence__shift(var_arguments);
7417 }
7418 if (unlikely(varonce37==NULL)) {
7419 var38 = NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String);
7420 if (likely(varonce39!=NULL)) {
7421 var40 = varonce39;
7422 } else {
7423 var41 = " = ";
7424 var42 = standard___standard__NativeString___to_s_with_length(var41, 3l);
7425 var40 = var42;
7426 varonce39 = var40;
7427 }
7428 ((struct instance_standard__NativeArray*)var38)->values[1]=var40;
7429 if (likely(varonce43!=NULL)) {
7430 var44 = varonce43;
7431 } else {
7432 var45 = "(";
7433 var46 = standard___standard__NativeString___to_s_with_length(var45, 1l);
7434 var44 = var46;
7435 varonce43 = var44;
7436 }
7437 ((struct instance_standard__NativeArray*)var38)->values[3]=var44;
7438 if (likely(varonce47!=NULL)) {
7439 var48 = varonce47;
7440 } else {
7441 var49 = ");";
7442 var50 = standard___standard__NativeString___to_s_with_length(var49, 2l);
7443 var48 = var50;
7444 varonce47 = var48;
7445 }
7446 ((struct instance_standard__NativeArray*)var38)->values[5]=var48;
7447 } else {
7448 var38 = varonce37;
7449 varonce37 = NULL;
7450 }
7451 {
7452 var51 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
7453 }
7454 ((struct instance_standard__NativeArray*)var38)->values[0]=var51;
7455 ((struct instance_standard__NativeArray*)var38)->values[2]=var_externname;
7456 if (likely(varonce52!=NULL)) {
7457 var53 = varonce52;
7458 } else {
7459 var54 = ", ";
7460 var55 = standard___standard__NativeString___to_s_with_length(var54, 2l);
7461 var53 = var55;
7462 varonce52 = var53;
7463 }
7464 {
7465 var56 = standard__string___Collection___join(var_arguments, var53);
7466 }
7467 ((struct instance_standard__NativeArray*)var38)->values[4]=var56;
7468 {
7469 var57 = ((val*(*)(val* self))(var38->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var38); /* native_to_s on <var38:NativeArray[String]>*/
7470 }
7471 varonce37 = var38;
7472 {
7473 nit___nit__AbstractCompilerVisitor___add(var_v, var57); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
7474 }
7475 {
7476 var58 = ((val*(*)(val* self, val* p0, val* p1))(var_v->class->vft[COLOR_nit__abstract_compiler__AbstractCompilerVisitor__box_extern]))(var_v, var_res, var_ret); /* box_extern on <var_v:AbstractCompilerVisitor>*/
7477 }
7478 var_res = var58;
7479 {
7480 nit___nit__AbstractCompilerVisitor___ret(var_v, var_res); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <var_v:AbstractCompilerVisitor>*/
7481 }
7482 var = 1;
7483 goto RET_LABEL;
7484 RET_LABEL:;
7485 return var;
7486 }
7487 /* method abstract_compiler#AAttrPropdef#can_inline for (self: AAttrPropdef): Bool */
7488 short int nit__abstract_compiler___AAttrPropdef___APropdef__can_inline(val* self) {
7489 short int var /* : Bool */;
7490 short int var1 /* : Bool */;
7491 short int var3 /* : Bool */;
7492 short int var4 /* : Bool */;
7493 {
7494 { /* Inline modelize_property#AAttrPropdef#is_lazy (self) on <self:AAttrPropdef> */
7495 var3 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___is_lazy].s; /* _is_lazy on <self:AAttrPropdef> */
7496 var1 = var3;
7497 RET_LABEL2:(void)0;
7498 }
7499 }
7500 var4 = !var1;
7501 var = var4;
7502 goto RET_LABEL;
7503 RET_LABEL:;
7504 return var;
7505 }
7506 /* method abstract_compiler#AAttrPropdef#compile_to_c for (self: AAttrPropdef, AbstractCompilerVisitor, MMethodDef, Array[RuntimeVariable]) */
7507 void nit__abstract_compiler___AAttrPropdef___APropdef__compile_to_c(val* self, val* p0, val* p1, val* p2) {
7508 val* var_v /* var v: AbstractCompilerVisitor */;
7509 val* var_mpropdef /* var mpropdef: MMethodDef */;
7510 val* var_arguments /* var arguments: Array[RuntimeVariable] */;
7511 val* var /* : nullable MMethodDef */;
7512 val* var2 /* : nullable MMethodDef */;
7513 short int var3 /* : Bool */;
7514 val* var_other /* var other: nullable Object */;
7515 short int var5 /* : Bool */;
7516 short int var7 /* : Bool */;
7517 long var8 /* : Int */;
7518 long var10 /* : Int */;
7519 short int var11 /* : Bool */;
7520 short int var13 /* : Bool */;
7521 val* var14 /* : nullable Object */;
7522 val* var_recv /* var recv: RuntimeVariable */;
7523 short int var15 /* : Bool */;
7524 short int var17 /* : Bool */;
7525 val* var18 /* : nullable MType */;
7526 val* var20 /* : nullable MType */;
7527 val* var_ret /* var ret: nullable MType */;
7528 short int var21 /* : Bool */;
7529 short int var22 /* : Bool */;
7530 short int var23 /* : Bool */;
7531 short int var_ /* var : Bool */;
7532 short int var24 /* : Bool */;
7533 int cltype;
7534 int idtype;
7535 short int var25 /* : Bool */;
7536 short int var_useiset /* var useiset: Bool */;
7537 val* var26 /* : nullable MAttributeDef */;
7538 val* var28 /* : nullable MAttributeDef */;
7539 val* var29 /* : MProperty */;
7540 val* var31 /* : MProperty */;
7541 val* var_guard /* var guard: MAttribute */;
7542 val* var32 /* : nullable MPropDef */;
7543 val* var34 /* : nullable MPropDef */;
7544 val* var35 /* : MProperty */;
7545 val* var37 /* : MProperty */;
7546 val* var38 /* : RuntimeVariable */;
7547 val* var_set /* var set: nullable Object */;
7548 val* var39 /* : RuntimeVariable */;
7549 val* var40 /* : NativeArray[String] */;
7550 static val* varonce;
7551 static val* varonce41;
7552 val* var42 /* : String */;
7553 char* var43 /* : NativeString */;
7554 val* var44 /* : FlatString */;
7555 static val* varonce45;
7556 val* var46 /* : String */;
7557 char* var47 /* : NativeString */;
7558 val* var48 /* : FlatString */;
7559 val* var49 /* : String */;
7560 val* var50 /* : String */;
7561 val* var51 /* : nullable MPropDef */;
7562 val* var53 /* : nullable MPropDef */;
7563 val* var54 /* : MProperty */;
7564 val* var56 /* : MProperty */;
7565 val* var57 /* : RuntimeVariable */;
7566 val* var_res /* var res: nullable Object */;
7567 static val* varonce58;
7568 val* var59 /* : String */;
7569 char* var60 /* : NativeString */;
7570 val* var61 /* : FlatString */;
7571 val* var62 /* : RuntimeVariable */;
7572 val* var_value /* var value: RuntimeVariable */;
7573 short int var63 /* : Bool */;
7574 val* var64 /* : RuntimeVariable */;
7575 val* var_true_v /* var true_v: RuntimeVariable */;
7576 val* var65 /* : nullable Object */;
7577 static val* varonce66;
7578 val* var67 /* : String */;
7579 char* var68 /* : NativeString */;
7580 val* var69 /* : FlatString */;
7581 val* var70 /* : nullable MPropDef */;
7582 val* var72 /* : nullable MPropDef */;
7583 val* var73 /* : MProperty */;
7584 val* var75 /* : MProperty */;
7585 val* var76 /* : nullable Object */;
7586 val* var77 /* : RuntimeVariable */;
7587 val* var78 /* : nullable StaticFrame */;
7588 val* var80 /* : nullable StaticFrame */;
7589 val* var81 /* : nullable RuntimeVariable */;
7590 val* var83 /* : nullable RuntimeVariable */;
7591 val* var84 /* : nullable MMethodDef */;
7592 val* var86 /* : nullable MMethodDef */;
7593 short int var87 /* : Bool */;
7594 short int var89 /* : Bool */;
7595 short int var91 /* : Bool */;
7596 long var92 /* : Int */;
7597 long var94 /* : Int */;
7598 short int var95 /* : Bool */;
7599 short int var97 /* : Bool */;
7600 val* var98 /* : nullable MPropDef */;
7601 val* var100 /* : nullable MPropDef */;
7602 val* var101 /* : MProperty */;
7603 val* var103 /* : MProperty */;
7604 val* var104 /* : nullable Object */;
7605 val* var105 /* : nullable Object */;
7606 short int var106 /* : Bool */;
7607 short int var108 /* : Bool */;
7608 val* var109 /* : nullable MType */;
7609 val* var111 /* : nullable MType */;
7610 val* var_ret112 /* var ret: nullable MType */;
7611 short int var113 /* : Bool */;
7612 short int var114 /* : Bool */;
7613 short int var115 /* : Bool */;
7614 short int var_116 /* var : Bool */;
7615 short int var117 /* : Bool */;
7616 int cltype118;
7617 int idtype119;
7618 short int var120 /* : Bool */;
7619 short int var_useiset121 /* var useiset: Bool */;
7620 short int var122 /* : Bool */;
7621 val* var123 /* : nullable MAttributeDef */;
7622 val* var125 /* : nullable MAttributeDef */;
7623 val* var126 /* : MProperty */;
7624 val* var128 /* : MProperty */;
7625 val* var129 /* : nullable Object */;
7626 val* var130 /* : RuntimeVariable */;
7627 var_v = p0;
7628 var_mpropdef = p1;
7629 var_arguments = p2;
7630 {
7631 { /* Inline modelize_property#AAttrPropdef#mreadpropdef (self) on <self:AAttrPropdef> */
7632 var2 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___mreadpropdef].val; /* _mreadpropdef on <self:AAttrPropdef> */
7633 var = var2;
7634 RET_LABEL1:(void)0;
7635 }
7636 }
7637 {
7638 { /* Inline kernel#Object#== (var_mpropdef,var) on <var_mpropdef:MMethodDef> */
7639 var_other = var;
7640 {
7641 { /* Inline kernel#Object#is_same_instance (var_mpropdef,var_other) on <var_mpropdef:MMethodDef> */
7642 var7 = var_mpropdef == var_other;
7643 var5 = var7;
7644 goto RET_LABEL6;
7645 RET_LABEL6:(void)0;
7646 }
7647 }
7648 var3 = var5;
7649 goto RET_LABEL4;
7650 RET_LABEL4:(void)0;
7651 }
7652 }
7653 if (var3){
7654 {
7655 { /* Inline array#AbstractArrayRead#length (var_arguments) on <var_arguments:Array[RuntimeVariable]> */
7656 var10 = var_arguments->attrs[COLOR_standard__array__AbstractArrayRead___length].l; /* _length on <var_arguments:Array[RuntimeVariable]> */
7657 var8 = var10;
7658 RET_LABEL9:(void)0;
7659 }
7660 }
7661 {
7662 { /* Inline kernel#Int#== (var8,1l) on <var8:Int> */
7663 var13 = var8 == 1l;
7664 var11 = var13;
7665 goto RET_LABEL12;
7666 RET_LABEL12:(void)0;
7667 }
7668 }
7669 if (unlikely(!var11)) {
7670 PRINT_ERROR("Runtime error: %s", "Assert failed");
7671 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2455);
7672 fatal_exit(1);
7673 }
7674 {
7675 var14 = standard___standard__SequenceRead___Collection__first(var_arguments);
7676 }
7677 var_recv = var14;
7678 {
7679 { /* Inline modelize_property#AAttrPropdef#is_lazy (self) on <self:AAttrPropdef> */
7680 var17 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___is_lazy].s; /* _is_lazy on <self:AAttrPropdef> */
7681 var15 = var17;
7682 RET_LABEL16:(void)0;
7683 }
7684 }
7685 if (var15){
7686 {
7687 { /* Inline modelize_property#AAttrPropdef#mtype (self) on <self:AAttrPropdef> */
7688 var20 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___mtype].val; /* _mtype on <self:AAttrPropdef> */
7689 var18 = var20;
7690 RET_LABEL19:(void)0;
7691 }
7692 }
7693 var_ret = var18;
7694 if (var_ret == NULL) {
7695 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7696 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2461);
7697 fatal_exit(1);
7698 } else {
7699 var22 = ((short int(*)(val* self))(var_ret->class->vft[COLOR_nit__abstract_compiler__MType__is_c_primitive]))(var_ret); /* is_c_primitive on <var_ret:nullable MType>*/
7700 }
7701 var23 = !var22;
7702 var_ = var23;
7703 if (var23){
7704 /* <var_ret:nullable MType> isa MNullableType */
7705 cltype = type_nit__MNullableType.color;
7706 idtype = type_nit__MNullableType.id;
7707 if(var_ret == NULL) {
7708 var24 = 0;
7709 } else {
7710 if(cltype >= var_ret->type->table_size) {
7711 var24 = 0;
7712 } else {
7713 var24 = var_ret->type->type_table[cltype] == idtype;
7714 }
7715 }
7716 var25 = !var24;
7717 var21 = var25;
7718 } else {
7719 var21 = var_;
7720 }
7721 var_useiset = var21;
7722 {
7723 { /* Inline modelize_property#AAttrPropdef#mlazypropdef (self) on <self:AAttrPropdef> */
7724 var28 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___mlazypropdef].val; /* _mlazypropdef on <self:AAttrPropdef> */
7725 var26 = var28;
7726 RET_LABEL27:(void)0;
7727 }
7728 }
7729 if (var26 == NULL) {
7730 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7731 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2462);
7732 fatal_exit(1);
7733 } else {
7734 { /* Inline model#MPropDef#mproperty (var26) on <var26:nullable MAttributeDef> */
7735 if (unlikely(var26 == NULL)) {
7736 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7737 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
7738 fatal_exit(1);
7739 }
7740 var31 = var26->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var26:nullable MAttributeDef> */
7741 if (unlikely(var31 == NULL)) {
7742 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
7743 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
7744 fatal_exit(1);
7745 }
7746 var29 = var31;
7747 RET_LABEL30:(void)0;
7748 }
7749 }
7750 var_guard = var29;
7751 if (var_useiset){
7752 {
7753 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:AAttrPropdef> */
7754 var34 = self->attrs[COLOR_nit__modelize_property__APropdef___mpropdef].val; /* _mpropdef on <self:AAttrPropdef> */
7755 var32 = var34;
7756 RET_LABEL33:(void)0;
7757 }
7758 }
7759 if (var32 == NULL) {
7760 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7761 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2464);
7762 fatal_exit(1);
7763 } else {
7764 { /* Inline model#MPropDef#mproperty (var32) on <var32:nullable MPropDef(nullable MAttributeDef)> */
7765 if (unlikely(var32 == NULL)) {
7766 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7767 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
7768 fatal_exit(1);
7769 }
7770 var37 = var32->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var32:nullable MPropDef(nullable MAttributeDef)> */
7771 if (unlikely(var37 == NULL)) {
7772 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
7773 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
7774 fatal_exit(1);
7775 }
7776 var35 = var37;
7777 RET_LABEL36:(void)0;
7778 }
7779 }
7780 {
7781 var38 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__isset_attribute(var_v, var35, var_recv);
7782 }
7783 var_set = var38;
7784 } else {
7785 {
7786 var39 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__read_attribute(var_v, var_guard, var_recv);
7787 }
7788 var_set = var39;
7789 }
7790 if (unlikely(varonce==NULL)) {
7791 var40 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
7792 if (likely(varonce41!=NULL)) {
7793 var42 = varonce41;
7794 } else {
7795 var43 = "if(likely(";
7796 var44 = standard___standard__NativeString___to_s_with_length(var43, 10l);
7797 var42 = var44;
7798 varonce41 = var42;
7799 }
7800 ((struct instance_standard__NativeArray*)var40)->values[0]=var42;
7801 if (likely(varonce45!=NULL)) {
7802 var46 = varonce45;
7803 } else {
7804 var47 = ")) {";
7805 var48 = standard___standard__NativeString___to_s_with_length(var47, 4l);
7806 var46 = var48;
7807 varonce45 = var46;
7808 }
7809 ((struct instance_standard__NativeArray*)var40)->values[2]=var46;
7810 } else {
7811 var40 = varonce;
7812 varonce = NULL;
7813 }
7814 {
7815 var49 = ((val*(*)(val* self))(var_set->class->vft[COLOR_standard__string__Object__to_s]))(var_set); /* to_s on <var_set:nullable Object(RuntimeVariable)>*/
7816 }
7817 ((struct instance_standard__NativeArray*)var40)->values[1]=var49;
7818 {
7819 var50 = ((val*(*)(val* self))(var40->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var40); /* native_to_s on <var40:NativeArray[String]>*/
7820 }
7821 varonce = var40;
7822 {
7823 nit___nit__AbstractCompilerVisitor___add(var_v, var50); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
7824 }
7825 {
7826 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:AAttrPropdef> */
7827 var53 = self->attrs[COLOR_nit__modelize_property__APropdef___mpropdef].val; /* _mpropdef on <self:AAttrPropdef> */
7828 var51 = var53;
7829 RET_LABEL52:(void)0;
7830 }
7831 }
7832 if (var51 == NULL) {
7833 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7834 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2469);
7835 fatal_exit(1);
7836 } else {
7837 { /* Inline model#MPropDef#mproperty (var51) on <var51:nullable MPropDef(nullable MAttributeDef)> */
7838 if (unlikely(var51 == NULL)) {
7839 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7840 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
7841 fatal_exit(1);
7842 }
7843 var56 = var51->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var51:nullable MPropDef(nullable MAttributeDef)> */
7844 if (unlikely(var56 == NULL)) {
7845 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
7846 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
7847 fatal_exit(1);
7848 }
7849 var54 = var56;
7850 RET_LABEL55:(void)0;
7851 }
7852 }
7853 {
7854 var57 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__read_attribute(var_v, var54, var_recv);
7855 }
7856 var_res = var57;
7857 if (likely(varonce58!=NULL)) {
7858 var59 = varonce58;
7859 } else {
7860 var60 = "} else {";
7861 var61 = standard___standard__NativeString___to_s_with_length(var60, 8l);
7862 var59 = var61;
7863 varonce58 = var59;
7864 }
7865 {
7866 nit___nit__AbstractCompilerVisitor___add(var_v, var59); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
7867 }
7868 {
7869 var62 = nit__abstract_compiler___AAttrPropdef___evaluate_expr(self, var_v, var_recv);
7870 }
7871 var_value = var62;
7872 {
7873 nit___nit__AbstractCompilerVisitor___assign(var_v, var_res, var_value); /* Direct call abstract_compiler#AbstractCompilerVisitor#assign on <var_v:AbstractCompilerVisitor>*/
7874 }
7875 var63 = !var_useiset;
7876 if (var63){
7877 {
7878 var64 = nit___nit__AbstractCompilerVisitor___bool_instance(var_v, 1);
7879 }
7880 var_true_v = var64;
7881 {
7882 var65 = standard___standard__SequenceRead___Collection__first(var_arguments);
7883 }
7884 {
7885 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__write_attribute(var_v, var_guard, var65, var_true_v); /* Direct call separate_compiler#SeparateCompilerVisitor#write_attribute on <var_v:AbstractCompilerVisitor>*/
7886 }
7887 } else {
7888 }
7889 if (likely(varonce66!=NULL)) {
7890 var67 = varonce66;
7891 } else {
7892 var68 = "}";
7893 var69 = standard___standard__NativeString___to_s_with_length(var68, 1l);
7894 var67 = var69;
7895 varonce66 = var67;
7896 }
7897 {
7898 nit___nit__AbstractCompilerVisitor___add(var_v, var67); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
7899 }
7900 } else {
7901 {
7902 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:AAttrPropdef> */
7903 var72 = self->attrs[COLOR_nit__modelize_property__APropdef___mpropdef].val; /* _mpropdef on <self:AAttrPropdef> */
7904 var70 = var72;
7905 RET_LABEL71:(void)0;
7906 }
7907 }
7908 if (var70 == NULL) {
7909 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7910 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2481);
7911 fatal_exit(1);
7912 } else {
7913 { /* Inline model#MPropDef#mproperty (var70) on <var70:nullable MPropDef(nullable MAttributeDef)> */
7914 if (unlikely(var70 == NULL)) {
7915 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7916 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
7917 fatal_exit(1);
7918 }
7919 var75 = var70->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var70:nullable MPropDef(nullable MAttributeDef)> */
7920 if (unlikely(var75 == NULL)) {
7921 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
7922 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
7923 fatal_exit(1);
7924 }
7925 var73 = var75;
7926 RET_LABEL74:(void)0;
7927 }
7928 }
7929 {
7930 var76 = standard___standard__SequenceRead___Collection__first(var_arguments);
7931 }
7932 {
7933 var77 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__read_attribute(var_v, var73, var76);
7934 }
7935 var_res = var77;
7936 }
7937 {
7938 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (var_v) on <var_v:AbstractCompilerVisitor> */
7939 var80 = var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <var_v:AbstractCompilerVisitor> */
7940 var78 = var80;
7941 RET_LABEL79:(void)0;
7942 }
7943 }
7944 if (var78 == NULL) {
7945 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7946 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2483);
7947 fatal_exit(1);
7948 } else {
7949 { /* Inline abstract_compiler#StaticFrame#returnvar (var78) on <var78:nullable StaticFrame> */
7950 if (unlikely(var78 == NULL)) {
7951 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7952 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1838);
7953 fatal_exit(1);
7954 }
7955 var83 = var78->attrs[COLOR_nit__abstract_compiler__StaticFrame___returnvar].val; /* _returnvar on <var78:nullable StaticFrame> */
7956 var81 = var83;
7957 RET_LABEL82:(void)0;
7958 }
7959 }
7960 if (unlikely(var81 == NULL)) {
7961 PRINT_ERROR("Runtime error: %s", "Cast failed");
7962 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2483);
7963 fatal_exit(1);
7964 }
7965 {
7966 nit___nit__AbstractCompilerVisitor___assign(var_v, var81, var_res); /* Direct call abstract_compiler#AbstractCompilerVisitor#assign on <var_v:AbstractCompilerVisitor>*/
7967 }
7968 } else {
7969 {
7970 { /* Inline modelize_property#AAttrPropdef#mwritepropdef (self) on <self:AAttrPropdef> */
7971 var86 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___mwritepropdef].val; /* _mwritepropdef on <self:AAttrPropdef> */
7972 var84 = var86;
7973 RET_LABEL85:(void)0;
7974 }
7975 }
7976 {
7977 { /* Inline kernel#Object#== (var_mpropdef,var84) on <var_mpropdef:MMethodDef> */
7978 var_other = var84;
7979 {
7980 { /* Inline kernel#Object#is_same_instance (var_mpropdef,var_other) on <var_mpropdef:MMethodDef> */
7981 var91 = var_mpropdef == var_other;
7982 var89 = var91;
7983 goto RET_LABEL90;
7984 RET_LABEL90:(void)0;
7985 }
7986 }
7987 var87 = var89;
7988 goto RET_LABEL88;
7989 RET_LABEL88:(void)0;
7990 }
7991 }
7992 if (var87){
7993 {
7994 { /* Inline array#AbstractArrayRead#length (var_arguments) on <var_arguments:Array[RuntimeVariable]> */
7995 var94 = var_arguments->attrs[COLOR_standard__array__AbstractArrayRead___length].l; /* _length on <var_arguments:Array[RuntimeVariable]> */
7996 var92 = var94;
7997 RET_LABEL93:(void)0;
7998 }
7999 }
8000 {
8001 { /* Inline kernel#Int#== (var92,2l) on <var92:Int> */
8002 var97 = var92 == 2l;
8003 var95 = var97;
8004 goto RET_LABEL96;
8005 RET_LABEL96:(void)0;
8006 }
8007 }
8008 if (unlikely(!var95)) {
8009 PRINT_ERROR("Runtime error: %s", "Assert failed");
8010 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2485);
8011 fatal_exit(1);
8012 }
8013 {
8014 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:AAttrPropdef> */
8015 var100 = self->attrs[COLOR_nit__modelize_property__APropdef___mpropdef].val; /* _mpropdef on <self:AAttrPropdef> */
8016 var98 = var100;
8017 RET_LABEL99:(void)0;
8018 }
8019 }
8020 if (var98 == NULL) {
8021 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8022 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2486);
8023 fatal_exit(1);
8024 } else {
8025 { /* Inline model#MPropDef#mproperty (var98) on <var98:nullable MPropDef(nullable MAttributeDef)> */
8026 if (unlikely(var98 == NULL)) {
8027 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8028 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
8029 fatal_exit(1);
8030 }
8031 var103 = var98->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var98:nullable MPropDef(nullable MAttributeDef)> */
8032 if (unlikely(var103 == NULL)) {
8033 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
8034 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
8035 fatal_exit(1);
8036 }
8037 var101 = var103;
8038 RET_LABEL102:(void)0;
8039 }
8040 }
8041 {
8042 var104 = standard___standard__SequenceRead___Collection__first(var_arguments);
8043 }
8044 {
8045 var105 = standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments, 1l);
8046 }
8047 {
8048 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__write_attribute(var_v, var101, var104, var105); /* Direct call separate_compiler#SeparateCompilerVisitor#write_attribute on <var_v:AbstractCompilerVisitor>*/
8049 }
8050 {
8051 { /* Inline modelize_property#AAttrPropdef#is_lazy (self) on <self:AAttrPropdef> */
8052 var108 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___is_lazy].s; /* _is_lazy on <self:AAttrPropdef> */
8053 var106 = var108;
8054 RET_LABEL107:(void)0;
8055 }
8056 }
8057 if (var106){
8058 {
8059 { /* Inline modelize_property#AAttrPropdef#mtype (self) on <self:AAttrPropdef> */
8060 var111 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___mtype].val; /* _mtype on <self:AAttrPropdef> */
8061 var109 = var111;
8062 RET_LABEL110:(void)0;
8063 }
8064 }
8065 var_ret112 = var109;
8066 if (var_ret112 == NULL) {
8067 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8068 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2489);
8069 fatal_exit(1);
8070 } else {
8071 var114 = ((short int(*)(val* self))(var_ret112->class->vft[COLOR_nit__abstract_compiler__MType__is_c_primitive]))(var_ret112); /* is_c_primitive on <var_ret112:nullable MType>*/
8072 }
8073 var115 = !var114;
8074 var_116 = var115;
8075 if (var115){
8076 /* <var_ret112:nullable MType> isa MNullableType */
8077 cltype118 = type_nit__MNullableType.color;
8078 idtype119 = type_nit__MNullableType.id;
8079 if(var_ret112 == NULL) {
8080 var117 = 0;
8081 } else {
8082 if(cltype118 >= var_ret112->type->table_size) {
8083 var117 = 0;
8084 } else {
8085 var117 = var_ret112->type->type_table[cltype118] == idtype119;
8086 }
8087 }
8088 var120 = !var117;
8089 var113 = var120;
8090 } else {
8091 var113 = var_116;
8092 }
8093 var_useiset121 = var113;
8094 var122 = !var_useiset121;
8095 if (var122){
8096 {
8097 { /* Inline modelize_property#AAttrPropdef#mlazypropdef (self) on <self:AAttrPropdef> */
8098 var125 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___mlazypropdef].val; /* _mlazypropdef on <self:AAttrPropdef> */
8099 var123 = var125;
8100 RET_LABEL124:(void)0;
8101 }
8102 }
8103 if (var123 == NULL) {
8104 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8105 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2491);
8106 fatal_exit(1);
8107 } else {
8108 { /* Inline model#MPropDef#mproperty (var123) on <var123:nullable MAttributeDef> */
8109 if (unlikely(var123 == NULL)) {
8110 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8111 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
8112 fatal_exit(1);
8113 }
8114 var128 = var123->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var123:nullable MAttributeDef> */
8115 if (unlikely(var128 == NULL)) {
8116 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
8117 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
8118 fatal_exit(1);
8119 }
8120 var126 = var128;
8121 RET_LABEL127:(void)0;
8122 }
8123 }
8124 {
8125 var129 = standard___standard__SequenceRead___Collection__first(var_arguments);
8126 }
8127 {
8128 var130 = nit___nit__AbstractCompilerVisitor___bool_instance(var_v, 1);
8129 }
8130 {
8131 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__write_attribute(var_v, var126, var129, var130); /* Direct call separate_compiler#SeparateCompilerVisitor#write_attribute on <var_v:AbstractCompilerVisitor>*/
8132 }
8133 } else {
8134 }
8135 } else {
8136 }
8137 } else {
8138 PRINT_ERROR("Runtime error: %s", "Aborted");
8139 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2495);
8140 fatal_exit(1);
8141 }
8142 }
8143 RET_LABEL:;
8144 }
8145 /* method abstract_compiler#AAttrPropdef#init_expr for (self: AAttrPropdef, AbstractCompilerVisitor, RuntimeVariable) */
8146 void nit__abstract_compiler___AAttrPropdef___init_expr(val* self, val* p0, val* p1) {
8147 val* var_v /* var v: AbstractCompilerVisitor */;
8148 val* var_recv /* var recv: RuntimeVariable */;
8149 short int var /* : Bool */;
8150 short int var1 /* : Bool */;
8151 short int var2 /* : Bool */;
8152 short int var4 /* : Bool */;
8153 short int var_ /* var : Bool */;
8154 short int var5 /* : Bool */;
8155 short int var7 /* : Bool */;
8156 short int var8 /* : Bool */;
8157 short int var_9 /* var : Bool */;
8158 val* var10 /* : nullable AExpr */;
8159 val* var12 /* : nullable AExpr */;
8160 short int var13 /* : Bool */;
8161 int cltype;
8162 int idtype;
8163 short int var14 /* : Bool */;
8164 val* var15 /* : RuntimeVariable */;
8165 var_v = p0;
8166 var_recv = p1;
8167 {
8168 { /* Inline modelize_property#AAttrPropdef#has_value (self) on <self:AAttrPropdef> */
8169 var4 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___has_value].s; /* _has_value on <self:AAttrPropdef> */
8170 var2 = var4;
8171 RET_LABEL3:(void)0;
8172 }
8173 }
8174 var_ = var2;
8175 if (var2){
8176 {
8177 { /* Inline modelize_property#AAttrPropdef#is_lazy (self) on <self:AAttrPropdef> */
8178 var7 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___is_lazy].s; /* _is_lazy on <self:AAttrPropdef> */
8179 var5 = var7;
8180 RET_LABEL6:(void)0;
8181 }
8182 }
8183 var8 = !var5;
8184 var1 = var8;
8185 } else {
8186 var1 = var_;
8187 }
8188 var_9 = var1;
8189 if (var1){
8190 {
8191 { /* Inline parser_nodes#AAttrPropdef#n_expr (self) on <self:AAttrPropdef> */
8192 var12 = self->attrs[COLOR_nit__parser_nodes__AAttrPropdef___n_expr].val; /* _n_expr on <self:AAttrPropdef> */
8193 var10 = var12;
8194 RET_LABEL11:(void)0;
8195 }
8196 }
8197 /* <var10:nullable AExpr> isa ANullExpr */
8198 cltype = type_nit__ANullExpr.color;
8199 idtype = type_nit__ANullExpr.id;
8200 if(var10 == NULL) {
8201 var13 = 0;
8202 } else {
8203 if(cltype >= var10->type->table_size) {
8204 var13 = 0;
8205 } else {
8206 var13 = var10->type->type_table[cltype] == idtype;
8207 }
8208 }
8209 var14 = !var13;
8210 var = var14;
8211 } else {
8212 var = var_9;
8213 }
8214 if (var){
8215 {
8216 var15 = nit__abstract_compiler___AAttrPropdef___evaluate_expr(self, var_v, var_recv);
8217 }
8218 } else {
8219 }
8220 RET_LABEL:;
8221 }
8222 /* method abstract_compiler#AAttrPropdef#evaluate_expr for (self: AAttrPropdef, AbstractCompilerVisitor, RuntimeVariable): RuntimeVariable */
8223 val* nit__abstract_compiler___AAttrPropdef___evaluate_expr(val* self, val* p0, val* p1) {
8224 val* var /* : RuntimeVariable */;
8225 val* var_v /* var v: AbstractCompilerVisitor */;
8226 val* var_recv /* var recv: RuntimeVariable */;
8227 val* var1 /* : nullable ANode */;
8228 val* var3 /* : nullable ANode */;
8229 val* var_oldnode /* var oldnode: nullable ANode */;
8230 val* var5 /* : nullable StaticFrame */;
8231 val* var7 /* : nullable StaticFrame */;
8232 val* var_old_frame /* var old_frame: nullable StaticFrame */;
8233 val* var8 /* : StaticFrame */;
8234 val* var9 /* : nullable MMethodDef */;
8235 val* var11 /* : nullable MMethodDef */;
8236 val* var12 /* : MType */;
8237 val* var14 /* : MType */;
8238 val* var15 /* : MType */;
8239 short int var16 /* : Bool */;
8240 int cltype;
8241 int idtype;
8242 const char* var_class_name;
8243 val* var17 /* : Array[RuntimeVariable] */;
8244 val* var_ /* var : Array[RuntimeVariable] */;
8245 val* var_frame /* var frame: StaticFrame */;
8246 val* var19 /* : nullable MType */;
8247 val* var21 /* : nullable MType */;
8248 val* var_mtype /* var mtype: nullable MType */;
8249 short int var22 /* : Bool */;
8250 short int var23 /* : Bool */;
8251 val* var_other /* var other: nullable Object */;
8252 short int var25 /* : Bool */;
8253 short int var26 /* : Bool */;
8254 val* var27 /* : nullable AExpr */;
8255 val* var29 /* : nullable AExpr */;
8256 val* var_nexpr /* var nexpr: nullable AExpr */;
8257 val* var30 /* : nullable AExpr */;
8258 val* var32 /* : nullable AExpr */;
8259 val* var_nblock /* var nblock: nullable AExpr */;
8260 short int var33 /* : Bool */;
8261 short int var34 /* : Bool */;
8262 short int var36 /* : Bool */;
8263 short int var37 /* : Bool */;
8264 val* var38 /* : RuntimeVariable */;
8265 val* var_value /* var value: nullable Object */;
8266 short int var39 /* : Bool */;
8267 short int var40 /* : Bool */;
8268 short int var42 /* : Bool */;
8269 short int var43 /* : Bool */;
8270 val* var44 /* : RuntimeVariable */;
8271 static val* varonce;
8272 val* var46 /* : String */;
8273 char* var47 /* : NativeString */;
8274 val* var48 /* : FlatString */;
8275 val* var49 /* : String */;
8276 static val* varonce51;
8277 val* var52 /* : String */;
8278 char* var53 /* : NativeString */;
8279 val* var54 /* : FlatString */;
8280 val* var56 /* : NativeArray[String] */;
8281 static val* varonce55;
8282 static val* varonce57;
8283 val* var58 /* : String */;
8284 char* var59 /* : NativeString */;
8285 val* var60 /* : FlatString */;
8286 val* var61 /* : nullable String */;
8287 val* var63 /* : nullable String */;
8288 val* var64 /* : String */;
8289 static val* varonce65;
8290 val* var66 /* : String */;
8291 char* var67 /* : NativeString */;
8292 val* var68 /* : FlatString */;
8293 val* var69 /* : nullable MPropDef */;
8294 val* var71 /* : nullable MPropDef */;
8295 val* var72 /* : MProperty */;
8296 val* var74 /* : MProperty */;
8297 var_v = p0;
8298 var_recv = p1;
8299 {
8300 { /* Inline abstract_compiler#AbstractCompilerVisitor#current_node (var_v) on <var_v:AbstractCompilerVisitor> */
8301 var3 = var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___current_node].val; /* _current_node on <var_v:AbstractCompilerVisitor> */
8302 var1 = var3;
8303 RET_LABEL2:(void)0;
8304 }
8305 }
8306 var_oldnode = var1;
8307 {
8308 { /* Inline abstract_compiler#AbstractCompilerVisitor#current_node= (var_v,self) on <var_v:AbstractCompilerVisitor> */
8309 var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___current_node].val = self; /* _current_node on <var_v:AbstractCompilerVisitor> */
8310 RET_LABEL4:(void)0;
8311 }
8312 }
8313 {
8314 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (var_v) on <var_v:AbstractCompilerVisitor> */
8315 var7 = var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <var_v:AbstractCompilerVisitor> */
8316 var5 = var7;
8317 RET_LABEL6:(void)0;
8318 }
8319 }
8320 var_old_frame = var5;
8321 var8 = NEW_nit__StaticFrame(&type_nit__StaticFrame);
8322 {
8323 { /* Inline modelize_property#AAttrPropdef#mreadpropdef (self) on <self:AAttrPropdef> */
8324 var11 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___mreadpropdef].val; /* _mreadpropdef on <self:AAttrPropdef> */
8325 var9 = var11;
8326 RET_LABEL10:(void)0;
8327 }
8328 }
8329 if (unlikely(var9 == NULL)) {
8330 PRINT_ERROR("Runtime error: %s", "Cast failed");
8331 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2510);
8332 fatal_exit(1);
8333 }
8334 {
8335 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_recv) on <var_recv:RuntimeVariable> */
8336 var14 = var_recv->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype].val; /* _mcasttype on <var_recv:RuntimeVariable> */
8337 if (unlikely(var14 == NULL)) {
8338 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
8339 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1787);
8340 fatal_exit(1);
8341 }
8342 var12 = var14;
8343 RET_LABEL13:(void)0;
8344 }
8345 }
8346 {
8347 var15 = ((val*(*)(val* self))(var12->class->vft[COLOR_nit__model__MType__undecorate]))(var12); /* undecorate on <var12:MType>*/
8348 }
8349 /* <var15:MType> isa MClassType */
8350 cltype = type_nit__MClassType.color;
8351 idtype = type_nit__MClassType.id;
8352 if(cltype >= var15->type->table_size) {
8353 var16 = 0;
8354 } else {
8355 var16 = var15->type->type_table[cltype] == idtype;
8356 }
8357 if (unlikely(!var16)) {
8358 var_class_name = var15 == NULL ? "null" : var15->type->name;
8359 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name);
8360 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2510);
8361 fatal_exit(1);
8362 }
8363 var17 = NEW_standard__Array(&type_standard__Array__nit__RuntimeVariable);
8364 {
8365 standard___standard__Array___with_capacity(var17, 1l); /* Direct call array#Array#with_capacity on <var17:Array[RuntimeVariable]>*/
8366 }
8367 var_ = var17;
8368 {
8369 standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(var_, var_recv); /* Direct call array#AbstractArray#push on <var_:Array[RuntimeVariable]>*/
8370 }
8371 {
8372 ((void(*)(val* self, val* p0))(var8->class->vft[COLOR_nit__abstract_compiler__StaticFrame__visitor_61d]))(var8, var_v); /* visitor= on <var8:StaticFrame>*/
8373 }
8374 {
8375 ((void(*)(val* self, val* p0))(var8->class->vft[COLOR_nit__abstract_compiler__StaticFrame__mpropdef_61d]))(var8, var9); /* mpropdef= on <var8:StaticFrame>*/
8376 }
8377 {
8378 ((void(*)(val* self, val* p0))(var8->class->vft[COLOR_nit__abstract_compiler__StaticFrame__receiver_61d]))(var8, var15); /* receiver= on <var8:StaticFrame>*/
8379 }
8380 {
8381 ((void(*)(val* self, val* p0))(var8->class->vft[COLOR_nit__abstract_compiler__StaticFrame__arguments_61d]))(var8, var_); /* arguments= on <var8:StaticFrame>*/
8382 }
8383 {
8384 ((void(*)(val* self))(var8->class->vft[COLOR_standard__kernel__Object__init]))(var8); /* init on <var8:StaticFrame>*/
8385 }
8386 var_frame = var8;
8387 {
8388 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame= (var_v,var_frame) on <var_v:AbstractCompilerVisitor> */
8389 var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val = var_frame; /* _frame on <var_v:AbstractCompilerVisitor> */
8390 RET_LABEL18:(void)0;
8391 }
8392 }
8393 {
8394 { /* Inline modelize_property#AAttrPropdef#mtype (self) on <self:AAttrPropdef> */
8395 var21 = self->attrs[COLOR_nit__modelize_property__AAttrPropdef___mtype].val; /* _mtype on <self:AAttrPropdef> */
8396 var19 = var21;
8397 RET_LABEL20:(void)0;
8398 }
8399 }
8400 var_mtype = var19;
8401 if (var_mtype == NULL) {
8402 var22 = 0; /* is null */
8403 } else {
8404 var22 = 1; /* arg is null and recv is not */
8405 }
8406 if (0) {
8407 { /* Inline kernel#Object#!= (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
8408 var_other = ((val*)NULL);
8409 {
8410 var25 = ((short int(*)(val* self, val* p0))(var_mtype->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_mtype, var_other); /* == on <var_mtype:nullable MType(MType)>*/
8411 }
8412 var26 = !var25;
8413 var23 = var26;
8414 goto RET_LABEL24;
8415 RET_LABEL24:(void)0;
8416 }
8417 var22 = var23;
8418 }
8419 if (unlikely(!var22)) {
8420 PRINT_ERROR("Runtime error: %s", "Assert failed");
8421 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2515);
8422 fatal_exit(1);
8423 }
8424 {
8425 { /* Inline parser_nodes#AAttrPropdef#n_expr (self) on <self:AAttrPropdef> */
8426 var29 = self->attrs[COLOR_nit__parser_nodes__AAttrPropdef___n_expr].val; /* _n_expr on <self:AAttrPropdef> */
8427 var27 = var29;
8428 RET_LABEL28:(void)0;
8429 }
8430 }
8431 var_nexpr = var27;
8432 {
8433 { /* Inline parser_nodes#AAttrPropdef#n_block (self) on <self:AAttrPropdef> */
8434 var32 = self->attrs[COLOR_nit__parser_nodes__AAttrPropdef___n_block].val; /* _n_block on <self:AAttrPropdef> */
8435 var30 = var32;
8436 RET_LABEL31:(void)0;
8437 }
8438 }
8439 var_nblock = var30;
8440 if (var_nexpr == NULL) {
8441 var33 = 0; /* is null */
8442 } else {
8443 var33 = 1; /* arg is null and recv is not */
8444 }
8445 if (0) {
8446 { /* Inline kernel#Object#!= (var_nexpr,((val*)NULL)) on <var_nexpr:nullable AExpr> */
8447 var_other = ((val*)NULL);
8448 {
8449 var36 = ((short int(*)(val* self, val* p0))(var_nexpr->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_nexpr, var_other); /* == on <var_nexpr:nullable AExpr(AExpr)>*/
8450 }
8451 var37 = !var36;
8452 var34 = var37;
8453 goto RET_LABEL35;
8454 RET_LABEL35:(void)0;
8455 }
8456 var33 = var34;
8457 }
8458 if (var33){
8459 {
8460 var38 = nit___nit__AbstractCompilerVisitor___expr(var_v, var_nexpr, var_mtype);
8461 }
8462 var_value = var38;
8463 } else {
8464 if (var_nblock == NULL) {
8465 var39 = 0; /* is null */
8466 } else {
8467 var39 = 1; /* arg is null and recv is not */
8468 }
8469 if (0) {
8470 { /* Inline kernel#Object#!= (var_nblock,((val*)NULL)) on <var_nblock:nullable AExpr> */
8471 var_other = ((val*)NULL);
8472 {
8473 var42 = ((short int(*)(val* self, val* p0))(var_nblock->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_nblock, var_other); /* == on <var_nblock:nullable AExpr(AExpr)>*/
8474 }
8475 var43 = !var42;
8476 var40 = var43;
8477 goto RET_LABEL41;
8478 RET_LABEL41:(void)0;
8479 }
8480 var39 = var40;
8481 }
8482 if (var39){
8483 {
8484 var44 = nit___nit__AbstractCompilerVisitor___new_var(var_v, var_mtype);
8485 }
8486 var_value = var44;
8487 {
8488 { /* Inline abstract_compiler#StaticFrame#returnvar= (var_frame,var_value) on <var_frame:StaticFrame> */
8489 var_frame->attrs[COLOR_nit__abstract_compiler__StaticFrame___returnvar].val = var_value; /* _returnvar on <var_frame:StaticFrame> */
8490 RET_LABEL45:(void)0;
8491 }
8492 }
8493 if (likely(varonce!=NULL)) {
8494 var46 = varonce;
8495 } else {
8496 var47 = "RET_LABEL";
8497 var48 = standard___standard__NativeString___to_s_with_length(var47, 9l);
8498 var46 = var48;
8499 varonce = var46;
8500 }
8501 {
8502 var49 = nit___nit__AbstractCompilerVisitor___get_name(var_v, var46);
8503 }
8504 {
8505 { /* Inline abstract_compiler#StaticFrame#returnlabel= (var_frame,var49) on <var_frame:StaticFrame> */
8506 var_frame->attrs[COLOR_nit__abstract_compiler__StaticFrame___returnlabel].val = var49; /* _returnlabel on <var_frame:StaticFrame> */
8507 RET_LABEL50:(void)0;
8508 }
8509 }
8510 if (likely(varonce51!=NULL)) {
8511 var52 = varonce51;
8512 } else {
8513 var53 = "{";
8514 var54 = standard___standard__NativeString___to_s_with_length(var53, 1l);
8515 var52 = var54;
8516 varonce51 = var52;
8517 }
8518 {
8519 nit___nit__AbstractCompilerVisitor___add(var_v, var52); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
8520 }
8521 {
8522 nit___nit__AbstractCompilerVisitor___stmt(var_v, var_nblock); /* Direct call abstract_compiler#AbstractCompilerVisitor#stmt on <var_v:AbstractCompilerVisitor>*/
8523 }
8524 if (unlikely(varonce55==NULL)) {
8525 var56 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String);
8526 if (likely(varonce57!=NULL)) {
8527 var58 = varonce57;
8528 } else {
8529 var59 = ":(void)0;";
8530 var60 = standard___standard__NativeString___to_s_with_length(var59, 9l);
8531 var58 = var60;
8532 varonce57 = var58;
8533 }
8534 ((struct instance_standard__NativeArray*)var56)->values[1]=var58;
8535 } else {
8536 var56 = varonce55;
8537 varonce55 = NULL;
8538 }
8539 {
8540 { /* Inline abstract_compiler#StaticFrame#returnlabel (var_frame) on <var_frame:StaticFrame> */
8541 var63 = var_frame->attrs[COLOR_nit__abstract_compiler__StaticFrame___returnlabel].val; /* _returnlabel on <var_frame:StaticFrame> */
8542 var61 = var63;
8543 RET_LABEL62:(void)0;
8544 }
8545 }
8546 if (unlikely(var61 == NULL)) {
8547 PRINT_ERROR("Runtime error: %s", "Cast failed");
8548 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2527);
8549 fatal_exit(1);
8550 }
8551 ((struct instance_standard__NativeArray*)var56)->values[0]=var61;
8552 {
8553 var64 = ((val*(*)(val* self))(var56->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var56); /* native_to_s on <var56:NativeArray[String]>*/
8554 }
8555 varonce55 = var56;
8556 {
8557 nit___nit__AbstractCompilerVisitor___add(var_v, var64); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
8558 }
8559 if (likely(varonce65!=NULL)) {
8560 var66 = varonce65;
8561 } else {
8562 var67 = "}";
8563 var68 = standard___standard__NativeString___to_s_with_length(var67, 1l);
8564 var66 = var68;
8565 varonce65 = var66;
8566 }
8567 {
8568 nit___nit__AbstractCompilerVisitor___add(var_v, var66); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
8569 }
8570 } else {
8571 PRINT_ERROR("Runtime error: %s", "Aborted");
8572 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2530);
8573 fatal_exit(1);
8574 }
8575 }
8576 {
8577 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:AAttrPropdef> */
8578 var71 = self->attrs[COLOR_nit__modelize_property__APropdef___mpropdef].val; /* _mpropdef on <self:AAttrPropdef> */
8579 var69 = var71;
8580 RET_LABEL70:(void)0;
8581 }
8582 }
8583 if (var69 == NULL) {
8584 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8585 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2533);
8586 fatal_exit(1);
8587 } else {
8588 { /* Inline model#MPropDef#mproperty (var69) on <var69:nullable MPropDef(nullable MAttributeDef)> */
8589 if (unlikely(var69 == NULL)) {
8590 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8591 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
8592 fatal_exit(1);
8593 }
8594 var74 = var69->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var69:nullable MPropDef(nullable MAttributeDef)> */
8595 if (unlikely(var74 == NULL)) {
8596 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
8597 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
8598 fatal_exit(1);
8599 }
8600 var72 = var74;
8601 RET_LABEL73:(void)0;
8602 }
8603 }
8604 {
8605 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__write_attribute(var_v, var72, var_recv, var_value); /* Direct call separate_compiler#SeparateCompilerVisitor#write_attribute on <var_v:AbstractCompilerVisitor>*/
8606 }
8607 {
8608 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame= (var_v,var_old_frame) on <var_v:AbstractCompilerVisitor> */
8609 var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val = var_old_frame; /* _frame on <var_v:AbstractCompilerVisitor> */
8610 RET_LABEL75:(void)0;
8611 }
8612 }
8613 {
8614 { /* Inline abstract_compiler#AbstractCompilerVisitor#current_node= (var_v,var_oldnode) on <var_v:AbstractCompilerVisitor> */
8615 var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___current_node].val = var_oldnode; /* _current_node on <var_v:AbstractCompilerVisitor> */
8616 RET_LABEL76:(void)0;
8617 }
8618 }
8619 var = var_value;
8620 goto RET_LABEL;
8621 RET_LABEL:;
8622 return var;
8623 }
8624 /* method abstract_compiler#AClassdef#compile_to_c for (self: AClassdef, AbstractCompilerVisitor, MMethodDef, Array[RuntimeVariable]) */
8625 void nit__abstract_compiler___AClassdef___compile_to_c(val* self, val* p0, val* p1, val* p2) {
8626 val* var_v /* var v: AbstractCompilerVisitor */;
8627 val* var_mpropdef /* var mpropdef: MMethodDef */;
8628 val* var_arguments /* var arguments: Array[RuntimeVariable] */;
8629 val* var /* : nullable MMethodDef */;
8630 val* var2 /* : nullable MMethodDef */;
8631 short int var3 /* : Bool */;
8632 val* var_other /* var other: nullable Object */;
8633 short int var5 /* : Bool */;
8634 short int var7 /* : Bool */;
8635 val* var8 /* : MProperty */;
8636 val* var10 /* : MProperty */;
8637 short int var11 /* : Bool */;
8638 short int var13 /* : Bool */;
8639 long var14 /* : Int */;
8640 long var16 /* : Int */;
8641 short int var17 /* : Bool */;
8642 short int var19 /* : Bool */;
8643 short int var20 /* : Bool */;
8644 short int var21 /* : Bool */;
8645 val* var22 /* : nullable Object */;
8646 val* var23 /* : MType */;
8647 val* var25 /* : MType */;
8648 short int var26 /* : Bool */;
8649 int cltype;
8650 int idtype;
8651 const char* var_class_name;
8652 val* var27 /* : nullable RuntimeVariable */;
8653 var_v = p0;
8654 var_mpropdef = p1;
8655 var_arguments = p2;
8656 {
8657 { /* Inline modelize_property#AClassdef#mfree_init (self) on <self:AClassdef> */
8658 var2 = self->attrs[COLOR_nit__modelize_property__AClassdef___mfree_init].val; /* _mfree_init on <self:AClassdef> */
8659 var = var2;
8660 RET_LABEL1:(void)0;
8661 }
8662 }
8663 {
8664 { /* Inline kernel#Object#== (var_mpropdef,var) on <var_mpropdef:MMethodDef> */
8665 var_other = var;
8666 {
8667 { /* Inline kernel#Object#is_same_instance (var_mpropdef,var_other) on <var_mpropdef:MMethodDef> */
8668 var7 = var_mpropdef == var_other;
8669 var5 = var7;
8670 goto RET_LABEL6;
8671 RET_LABEL6:(void)0;
8672 }
8673 }
8674 var3 = var5;
8675 goto RET_LABEL4;
8676 RET_LABEL4:(void)0;
8677 }
8678 }
8679 if (var3){
8680 {
8681 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
8682 var10 = var_mpropdef->attrs[COLOR_nit__model__MPropDef___mproperty].val; /* _mproperty on <var_mpropdef:MMethodDef> */
8683 if (unlikely(var10 == NULL)) {
8684 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
8685 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model, 2212);
8686 fatal_exit(1);
8687 }
8688 var8 = var10;
8689 RET_LABEL9:(void)0;
8690 }
8691 }
8692 {
8693 { /* Inline model#MMethod#is_root_init (var8) on <var8:MProperty(MMethod)> */
8694 var13 = var8->attrs[COLOR_nit__model__MMethod___is_root_init].s; /* _is_root_init on <var8:MProperty(MMethod)> */
8695 var11 = var13;
8696 RET_LABEL12:(void)0;
8697 }
8698 }
8699 if (unlikely(!var11)) {
8700 PRINT_ERROR("Runtime error: %s", "Assert failed");
8701 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2562);
8702 fatal_exit(1);
8703 }
8704 {
8705 { /* Inline array#AbstractArrayRead#length (var_arguments) on <var_arguments:Array[RuntimeVariable]> */
8706 var16 = var_arguments->attrs[COLOR_standard__array__AbstractArrayRead___length].l; /* _length on <var_arguments:Array[RuntimeVariable]> */
8707 var14 = var16;
8708 RET_LABEL15:(void)0;
8709 }
8710 }
8711 {
8712 { /* Inline kernel#Int#== (var14,1l) on <var14:Int> */
8713 var19 = var14 == 1l;
8714 var17 = var19;
8715 goto RET_LABEL18;
8716 RET_LABEL18:(void)0;
8717 }
8718 }
8719 if (unlikely(!var17)) {
8720 PRINT_ERROR("Runtime error: %s", "Assert failed");
8721 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2563);
8722 fatal_exit(1);
8723 }
8724 {
8725 var20 = nit___nit__MPropDef___is_intro(var_mpropdef);
8726 }
8727 var21 = !var20;
8728 if (var21){
8729 {
8730 var22 = standard___standard__SequenceRead___Collection__first(var_arguments);
8731 }
8732 {
8733 { /* Inline abstract_compiler#RuntimeVariable#mtype (var22) on <var22:nullable Object(RuntimeVariable)> */
8734 var25 = var22->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var22:nullable Object(RuntimeVariable)> */
8735 if (unlikely(var25 == NULL)) {
8736 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
8737 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
8738 fatal_exit(1);
8739 }
8740 var23 = var25;
8741 RET_LABEL24:(void)0;
8742 }
8743 }
8744 /* <var23:MType> isa MClassType */
8745 cltype = type_nit__MClassType.color;
8746 idtype = type_nit__MClassType.id;
8747 if(cltype >= var23->type->table_size) {
8748 var26 = 0;
8749 } else {
8750 var26 = var23->type->type_table[cltype] == idtype;
8751 }
8752 if (unlikely(!var26)) {
8753 var_class_name = var23 == NULL ? "null" : var23->type->name;
8754 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name);
8755 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2565);
8756 fatal_exit(1);
8757 }
8758 {
8759 var27 = nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__supercall(var_v, var_mpropdef, var23, var_arguments);
8760 }
8761 } else {
8762 }
8763 goto RET_LABEL;
8764 } else {
8765 PRINT_ERROR("Runtime error: %s", "Aborted");
8766 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2569);
8767 fatal_exit(1);
8768 }
8769 RET_LABEL:;
8770 }
8771 /* method abstract_compiler#AExpr#expr for (self: AExpr, AbstractCompilerVisitor): nullable RuntimeVariable */
8772 val* nit__abstract_compiler___AExpr___expr(val* self, val* p0) {
8773 val* var /* : nullable RuntimeVariable */;
8774 val* var_v /* var v: AbstractCompilerVisitor */;
8775 val* var1 /* : NativeArray[String] */;
8776 static val* varonce;
8777 static val* varonce2;
8778 val* var3 /* : String */;
8779 char* var4 /* : NativeString */;
8780 val* var5 /* : FlatString */;
8781 static val* varonce6;
8782 val* var7 /* : String */;
8783 char* var8 /* : NativeString */;
8784 val* var9 /* : FlatString */;
8785 static val* varonce10;
8786 val* var11 /* : String */;
8787 char* var12 /* : NativeString */;
8788 val* var13 /* : FlatString */;
8789 val* var14 /* : String */;
8790 val* var15 /* : Location */;
8791 val* var17 /* : Location */;
8792 val* var18 /* : String */;
8793 val* var19 /* : String */;
8794 val* var20 /* : nullable MType */;
8795 val* var_mtype /* var mtype: nullable MType */;
8796 short int var21 /* : Bool */;
8797 short int var22 /* : Bool */;
8798 val* var_other /* var other: nullable Object */;
8799 short int var24 /* : Bool */;
8800 short int var26 /* : Bool */;
8801 val* var27 /* : RuntimeVariable */;
8802 val* var_res /* var res: RuntimeVariable */;
8803 val* var29 /* : NativeArray[String] */;
8804 static val* varonce28;
8805 static val* varonce30;
8806 val* var31 /* : String */;
8807 char* var32 /* : NativeString */;
8808 val* var33 /* : FlatString */;
8809 static val* varonce34;
8810 val* var35 /* : String */;
8811 char* var36 /* : NativeString */;
8812 val* var37 /* : FlatString */;
8813 static val* varonce38;
8814 val* var39 /* : String */;
8815 char* var40 /* : NativeString */;
8816 val* var41 /* : FlatString */;
8817 val* var42 /* : String */;
8818 val* var43 /* : String */;
8819 val* var44 /* : String */;
8820 var_v = p0;
8821 if (unlikely(varonce==NULL)) {
8822 var1 = NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String);
8823 if (likely(varonce2!=NULL)) {
8824 var3 = varonce2;
8825 } else {
8826 var4 = "PRINT_ERROR(\"NOT YET IMPLEMENTED ";
8827 var5 = standard___standard__NativeString___to_s_with_length(var4, 33l);
8828 var3 = var5;
8829 varonce2 = var3;
8830 }
8831 ((struct instance_standard__NativeArray*)var1)->values[0]=var3;
8832 if (likely(varonce6!=NULL)) {
8833 var7 = varonce6;
8834 } else {
8835 var8 = ":";
8836 var9 = standard___standard__NativeString___to_s_with_length(var8, 1l);
8837 var7 = var9;
8838 varonce6 = var7;
8839 }
8840 ((struct instance_standard__NativeArray*)var1)->values[2]=var7;
8841 if (likely(varonce10!=NULL)) {
8842 var11 = varonce10;
8843 } else {
8844 var12 = "\\n\");";
8845 var13 = standard___standard__NativeString___to_s_with_length(var12, 5l);
8846 var11 = var13;
8847 varonce10 = var11;
8848 }
8849 ((struct instance_standard__NativeArray*)var1)->values[4]=var11;
8850 } else {
8851 var1 = varonce;
8852 varonce = NULL;
8853 }
8854 {
8855 var14 = standard__string___Object___class_name(self);
8856 }
8857 ((struct instance_standard__NativeArray*)var1)->values[1]=var14;
8858 {
8859 { /* Inline parser_nodes#ANode#location (self) on <self:AExpr> */
8860 var17 = self->attrs[COLOR_nit__parser_nodes__ANode___location].val; /* _location on <self:AExpr> */
8861 if (unlikely(var17 == NULL)) {
8862 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
8863 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 24);
8864 fatal_exit(1);
8865 }
8866 var15 = var17;
8867 RET_LABEL16:(void)0;
8868 }
8869 }
8870 {
8871 var18 = nit___nit__Location___standard__string__Object__to_s(var15);
8872 }
8873 ((struct instance_standard__NativeArray*)var1)->values[3]=var18;
8874 {
8875 var19 = ((val*(*)(val* self))(var1->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var1); /* native_to_s on <var1:NativeArray[String]>*/
8876 }
8877 varonce = var1;
8878 {
8879 nit___nit__AbstractCompilerVisitor___add(var_v, var19); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
8880 }
8881 {
8882 var20 = ((val*(*)(val* self))(self->class->vft[COLOR_nit__typing__AExpr__mtype]))(self); /* mtype on <self:AExpr>*/
8883 }
8884 var_mtype = var20;
8885 if (var_mtype == NULL) {
8886 var21 = 1; /* is null */
8887 } else {
8888 var21 = 0; /* arg is null but recv is not */
8889 }
8890 if (0) {
8891 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
8892 var_other = ((val*)NULL);
8893 {
8894 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on <var_mtype:nullable MType(MType)> */
8895 var26 = var_mtype == var_other;
8896 var24 = var26;
8897 goto RET_LABEL25;
8898 RET_LABEL25:(void)0;
8899 }
8900 }
8901 var22 = var24;
8902 goto RET_LABEL23;
8903 RET_LABEL23:(void)0;
8904 }
8905 var21 = var22;
8906 }
8907 if (var21){
8908 var = ((val*)NULL);
8909 goto RET_LABEL;
8910 } else {
8911 {
8912 var27 = nit___nit__AbstractCompilerVisitor___new_var(var_v, var_mtype);
8913 }
8914 var_res = var27;
8915 if (unlikely(varonce28==NULL)) {
8916 var29 = NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String);
8917 if (likely(varonce30!=NULL)) {
8918 var31 = varonce30;
8919 } else {
8920 var32 = "/* ";
8921 var33 = standard___standard__NativeString___to_s_with_length(var32, 3l);
8922 var31 = var33;
8923 varonce30 = var31;
8924 }
8925 ((struct instance_standard__NativeArray*)var29)->values[0]=var31;
8926 if (likely(varonce34!=NULL)) {
8927 var35 = varonce34;
8928 } else {
8929 var36 = " = NOT YET ";
8930 var37 = standard___standard__NativeString___to_s_with_length(var36, 11l);
8931 var35 = var37;
8932 varonce34 = var35;
8933 }
8934 ((struct instance_standard__NativeArray*)var29)->values[2]=var35;
8935 if (likely(varonce38!=NULL)) {
8936 var39 = varonce38;
8937 } else {
8938 var40 = " */";
8939 var41 = standard___standard__NativeString___to_s_with_length(var40, 3l);
8940 var39 = var41;
8941 varonce38 = var39;
8942 }
8943 ((struct instance_standard__NativeArray*)var29)->values[4]=var39;
8944 } else {
8945 var29 = varonce28;
8946 varonce28 = NULL;
8947 }
8948 {
8949 var42 = ((val*(*)(val* self))(var_res->class->vft[COLOR_standard__string__Object__to_s]))(var_res); /* to_s on <var_res:RuntimeVariable>*/
8950 }
8951 ((struct instance_standard__NativeArray*)var29)->values[1]=var42;
8952 {
8953 var43 = standard__string___Object___class_name(self);
8954 }
8955 ((struct instance_standard__NativeArray*)var29)->values[3]=var43;
8956 {
8957 var44 = ((val*(*)(val* self))(var29->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var29); /* native_to_s on <var29:NativeArray[String]>*/
8958 }
8959 varonce28 = var29;
8960 {
8961 nit___nit__AbstractCompilerVisitor___add(var_v, var44); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
8962 }
8963 var = var_res;
8964 goto RET_LABEL;
8965 }
8966 RET_LABEL:;
8967 return var;
8968 }
8969 /* method abstract_compiler#AExpr#stmt for (self: AExpr, AbstractCompilerVisitor) */
8970 void nit__abstract_compiler___AExpr___stmt(val* self, val* p0) {
8971 val* var_v /* var v: AbstractCompilerVisitor */;
8972 val* var /* : nullable RuntimeVariable */;
8973 var_v = p0;
8974 {
8975 var = ((val*(*)(val* self, val* p0))(self->class->vft[COLOR_nit__abstract_compiler__AExpr__expr]))(self, var_v); /* expr on <self:AExpr>*/
8976 }
8977 RET_LABEL:;
8978 }
8979 /* method abstract_compiler#ABlockExpr#stmt for (self: ABlockExpr, AbstractCompilerVisitor) */
8980 void nit__abstract_compiler___ABlockExpr___AExpr__stmt(val* self, val* p0) {
8981 val* var_v /* var v: AbstractCompilerVisitor */;
8982 val* var /* : ANodes[AExpr] */;
8983 val* var2 /* : ANodes[AExpr] */;
8984 val* var_ /* var : ANodes[AExpr] */;
8985 val* var3 /* : Iterator[ANode] */;
8986 val* var_4 /* var : Iterator[AExpr] */;
8987 short int var5 /* : Bool */;
8988 val* var6 /* : nullable Object */;
8989 val* var_e /* var e: AExpr */;
8990 var_v = p0;
8991 {
8992 { /* Inline parser_nodes#ABlockExpr#n_expr (self) on <self:ABlockExpr> */
8993 var2 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on <self:ABlockExpr> */
8994 if (unlikely(var2 == NULL)) {
8995 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
8996 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1758);
8997 fatal_exit(1);
8998 }
8999 var = var2;
9000 RET_LABEL1:(void)0;
9001 }
9002 }
9003 var_ = var;
9004 {
9005 var3 = nit___nit__ANodes___standard__abstract_collection__Collection__iterator(var_);
9006 }
9007 var_4 = var3;
9008 for(;;) {
9009 {
9010 var5 = ((short int(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_standard__abstract_collection__Iterator__is_ok]))(var_4); /* is_ok on <var_4:Iterator[AExpr]>*/
9011 }
9012 if (var5){
9013 {
9014 var6 = ((val*(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_4); /* item on <var_4:Iterator[AExpr]>*/
9015 }
9016 var_e = var6;
9017 {
9018 nit___nit__AbstractCompilerVisitor___stmt(var_v, var_e); /* Direct call abstract_compiler#AbstractCompilerVisitor#stmt on <var_v:AbstractCompilerVisitor>*/
9019 }
9020 {
9021 ((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_4); /* next on <var_4:Iterator[AExpr]>*/
9022 }
9023 } else {
9024 goto BREAK_label;
9025 }
9026 }
9027 BREAK_label: (void)0;
9028 {
9029 ((void(*)(val* self))((((long)var_4&3)?class_info[((long)var_4&3)]:var_4->class)->vft[COLOR_standard__abstract_collection__Iterator__finish]))(var_4); /* finish on <var_4:Iterator[AExpr]>*/
9030 }
9031 RET_LABEL:;
9032 }
9033 /* method abstract_compiler#ABlockExpr#expr for (self: ABlockExpr, AbstractCompilerVisitor): nullable RuntimeVariable */
9034 val* nit__abstract_compiler___ABlockExpr___AExpr__expr(val* self, val* p0) {
9035 val* var /* : nullable RuntimeVariable */;
9036 val* var_v /* var v: AbstractCompilerVisitor */;
9037 val* var1 /* : ANodes[AExpr] */;
9038 val* var3 /* : ANodes[AExpr] */;
9039 val* var4 /* : nullable Object */;
9040 val* var_last /* var last: AExpr */;
9041 val* var5 /* : ANodes[AExpr] */;
9042 val* var7 /* : ANodes[AExpr] */;
9043 val* var_ /* var : ANodes[AExpr] */;
9044 val* var8 /* : Iterator[ANode] */;
9045 val* var_9 /* var : Iterator[AExpr] */;
9046 short int var10 /* : Bool */;
9047 val* var11 /* : nullable Object */;
9048 val* var_e /* var e: AExpr */;
9049 short int var12 /* : Bool */;
9050 val* var_other /* var other: nullable Object */;
9051 short int var14 /* : Bool */;
9052 short int var16 /* : Bool */;
9053 val* var17 /* : RuntimeVariable */;
9054 var_v = p0;
9055 {
9056 { /* Inline parser_nodes#ABlockExpr#n_expr (self) on <self:ABlockExpr> */
9057 var3 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on <self:ABlockExpr> */
9058 if (unlikely(var3 == NULL)) {
9059 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
9060 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1758);
9061 fatal_exit(1);
9062 }
9063 var1 = var3;
9064 RET_LABEL2:(void)0;
9065 }
9066 }
9067 {
9068 var4 = standard___standard__SequenceRead___last(var1);
9069 }
9070 var_last = var4;
9071 {
9072 { /* Inline parser_nodes#ABlockExpr#n_expr (self) on <self:ABlockExpr> */
9073 var7 = self->attrs[COLOR_nit__parser_nodes__ABlockExpr___n_expr].val; /* _n_expr on <self:ABlockExpr> */
9074 if (unlikely(var7 == NULL)) {
9075 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
9076 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1758);
9077 fatal_exit(1);
9078 }
9079 var5 = var7;
9080 RET_LABEL6:(void)0;
9081 }
9082 }
9083 var_ = var5;
9084 {
9085 var8 = nit___nit__ANodes___standard__abstract_collection__Collection__iterator(var_);
9086 }
9087 var_9 = var8;
9088 for(;;) {
9089 {
9090 var10 = ((short int(*)(val* self))((((long)var_9&3)?class_info[((long)var_9&3)]:var_9->class)->vft[COLOR_standard__abstract_collection__Iterator__is_ok]))(var_9); /* is_ok on <var_9:Iterator[AExpr]>*/
9091 }
9092 if (var10){
9093 {
9094 var11 = ((val*(*)(val* self))((((long)var_9&3)?class_info[((long)var_9&3)]:var_9->class)->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_9); /* item on <var_9:Iterator[AExpr]>*/
9095 }
9096 var_e = var11;
9097 {
9098 { /* Inline kernel#Object#== (var_e,var_last) on <var_e:AExpr> */
9099 var_other = var_last;
9100 {
9101 { /* Inline kernel#Object#is_same_instance (var_e,var_other) on <var_e:AExpr> */
9102 var16 = var_e == var_other;
9103 var14 = var16;
9104 goto RET_LABEL15;
9105 RET_LABEL15:(void)0;
9106 }
9107 }
9108 var12 = var14;
9109 goto RET_LABEL13;
9110 RET_LABEL13:(void)0;
9111 }
9112 }
9113 if (var12){
9114 goto BREAK_label;
9115 } else {
9116 }
9117 {
9118 nit___nit__AbstractCompilerVisitor___stmt(var_v, var_e); /* Direct call abstract_compiler#AbstractCompilerVisitor#stmt on <var_v:AbstractCompilerVisitor>*/
9119 }
9120 {
9121 ((void(*)(val* self))((((long)var_9&3)?class_info[((long)var_9&3)]:var_9->class)->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_9); /* next on <var_9:Iterator[AExpr]>*/
9122 }
9123 } else {
9124 goto BREAK_label;
9125 }
9126 }
9127 BREAK_label: (void)0;
9128 {
9129 ((void(*)(val* self))((((long)var_9&3)?class_info[((long)var_9&3)]:var_9->class)->vft[COLOR_standard__abstract_collection__Iterator__finish]))(var_9); /* finish on <var_9:Iterator[AExpr]>*/
9130 }
9131 {
9132 var17 = nit___nit__AbstractCompilerVisitor___expr(var_v, var_last, ((val*)NULL));
9133 }
9134 var = var17;
9135 goto RET_LABEL;
9136 RET_LABEL:;
9137 return var;
9138 }
9139 /* method abstract_compiler#AVardeclExpr#stmt for (self: AVardeclExpr, AbstractCompilerVisitor) */
9140 void nit__abstract_compiler___AVardeclExpr___AExpr__stmt(val* self, val* p0) {
9141 val* var_v /* var v: AbstractCompilerVisitor */;
9142 val* var /* : nullable Variable */;
9143 val* var2 /* : nullable Variable */;
9144 val* var_variable /* var variable: Variable */;
9145 val* var3 /* : nullable AExpr */;
9146 val* var5 /* : nullable AExpr */;
9147 val* var_ne /* var ne: nullable AExpr */;
9148 short int var6 /* : Bool */;
9149 short int var7 /* : Bool */;
9150 val* var_other /* var other: nullable Object */;
9151 short int var9 /* : Bool */;
9152 short int var10 /* : Bool */;
9153 val* var11 /* : nullable MType */;
9154 val* var13 /* : nullable MType */;
9155 val* var14 /* : RuntimeVariable */;
9156 val* var_i /* var i: RuntimeVariable */;
9157 val* var15 /* : RuntimeVariable */;
9158 var_v = p0;
9159 {
9160 { /* Inline scope#AVardeclExpr#variable (self) on <self:AVardeclExpr> */
9161 var2 = self->attrs[COLOR_nit__scope__AVardeclExpr___variable].val; /* _variable on <self:AVardeclExpr> */
9162 var = var2;
9163 RET_LABEL1:(void)0;
9164 }
9165 }
9166 if (unlikely(var == NULL)) {
9167 PRINT_ERROR("Runtime error: %s", "Cast failed");
9168 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2617);
9169 fatal_exit(1);
9170 }
9171 var_variable = var;
9172 {
9173 { /* Inline parser_nodes#AVardeclExpr#n_expr (self) on <self:AVardeclExpr> */
9174 var5 = self->attrs[COLOR_nit__parser_nodes__AVardeclExpr___n_expr].val; /* _n_expr on <self:AVardeclExpr> */
9175 var3 = var5;
9176 RET_LABEL4:(void)0;
9177 }
9178 }
9179 var_ne = var3;
9180 if (var_ne == NULL) {
9181 var6 = 0; /* is null */
9182 } else {
9183 var6 = 1; /* arg is null and recv is not */
9184 }
9185 if (0) {
9186 { /* Inline kernel#Object#!= (var_ne,((val*)NULL)) on <var_ne:nullable AExpr> */
9187 var_other = ((val*)NULL);
9188 {
9189 var9 = ((short int(*)(val* self, val* p0))(var_ne->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_ne, var_other); /* == on <var_ne:nullable AExpr(AExpr)>*/
9190 }
9191 var10 = !var9;
9192 var7 = var10;
9193 goto RET_LABEL8;
9194 RET_LABEL8:(void)0;
9195 }
9196 var6 = var7;
9197 }
9198 if (var6){
9199 {
9200 { /* Inline typing#Variable#declared_type (var_variable) on <var_variable:Variable> */
9201 var13 = var_variable->attrs[COLOR_nit__typing__Variable___declared_type].val; /* _declared_type on <var_variable:Variable> */
9202 var11 = var13;
9203 RET_LABEL12:(void)0;
9204 }
9205 }
9206 {
9207 var14 = nit___nit__AbstractCompilerVisitor___expr(var_v, var_ne, var11);
9208 }
9209 var_i = var14;
9210 {
9211 var15 = nit___nit__AbstractCompilerVisitor___variable(var_v, var_variable);
9212 }
9213 {
9214 nit___nit__AbstractCompilerVisitor___assign(var_v, var15, var_i); /* Direct call abstract_compiler#AbstractCompilerVisitor#assign on <var_v:AbstractCompilerVisitor>*/
9215 }
9216 } else {
9217 }
9218 RET_LABEL:;
9219 }
9220 /* method abstract_compiler#AVarExpr#expr for (self: AVarExpr, AbstractCompilerVisitor): nullable RuntimeVariable */
9221 val* nit__abstract_compiler___AVarExpr___AExpr__expr(val* self, val* p0) {
9222 val* var /* : nullable RuntimeVariable */;
9223 val* var_v /* var v: AbstractCompilerVisitor */;
9224 val* var1 /* : nullable Variable */;
9225 val* var3 /* : nullable Variable */;
9226 val* var4 /* : RuntimeVariable */;
9227 val* var_res /* var res: RuntimeVariable */;
9228 val* var5 /* : nullable MType */;
9229 val* var7 /* : nullable MType */;
9230 val* var_mtype /* var mtype: MType */;
9231 val* var8 /* : RuntimeVariable */;
9232 var_v = p0;
9233 {
9234 { /* Inline scope#AVarFormExpr#variable (self) on <self:AVarExpr> */
9235 var3 = self->attrs[COLOR_nit__scope__AVarFormExpr___variable].val; /* _variable on <self:AVarExpr> */
9236 var1 = var3;
9237 RET_LABEL2:(void)0;
9238 }
9239 }
9240 if (unlikely(var1 == NULL)) {
9241 PRINT_ERROR("Runtime error: %s", "Cast failed");
9242 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2629);
9243 fatal_exit(1);
9244 }
9245 {
9246 var4 = nit___nit__AbstractCompilerVisitor___variable(var_v, var1);
9247 }
9248 var_res = var4;
9249 {
9250 { /* Inline typing#AExpr#mtype (self) on <self:AVarExpr> */
9251 var7 = self->attrs[COLOR_nit__typing__AExpr___mtype].val; /* _mtype on <self:AVarExpr> */
9252 var5 = var7;
9253 RET_LABEL6:(void)0;
9254 }
9255 }
9256 if (unlikely(var5 == NULL)) {
9257 PRINT_ERROR("Runtime error: %s", "Cast failed");
9258 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2630);
9259 fatal_exit(1);
9260 }
9261 var_mtype = var5;
9262 {
9263 var8 = nit___nit__AbstractCompilerVisitor___autoadapt(var_v, var_res, var_mtype);
9264 }
9265 var = var8;
9266 goto RET_LABEL;
9267 RET_LABEL:;
9268 return var;
9269 }
9270 /* method abstract_compiler#AVarAssignExpr#expr for (self: AVarAssignExpr, AbstractCompilerVisitor): nullable RuntimeVariable */
9271 val* nit__abstract_compiler___AVarAssignExpr___AExpr__expr(val* self, val* p0) {
9272 val* var /* : nullable RuntimeVariable */;
9273 val* var_v /* var v: AbstractCompilerVisitor */;
9274 val* var1 /* : nullable Variable */;
9275 val* var3 /* : nullable Variable */;
9276 val* var_variable /* var variable: Variable */;
9277 val* var4 /* : AExpr */;
9278 val* var6 /* : AExpr */;
9279 val* var7 /* : nullable MType */;
9280 val* var9 /* : nullable MType */;
9281 val* var10 /* : RuntimeVariable */;
9282 val* var_i /* var i: RuntimeVariable */;
9283 val* var11 /* : RuntimeVariable */;
9284 var_v = p0;
9285 {
9286 { /* Inline scope#AVarFormExpr#variable (self) on <self:AVarAssignExpr> */
9287 var3 = self->attrs[COLOR_nit__scope__AVarFormExpr___variable].val; /* _variable on <self:AVarAssignExpr> */
9288 var1 = var3;
9289 RET_LABEL2:(void)0;
9290 }
9291 }
9292 if (unlikely(var1 == NULL)) {
9293 PRINT_ERROR("Runtime error: %s", "Cast failed");
9294 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2638);
9295 fatal_exit(1);
9296 }
9297 var_variable = var1;
9298 {
9299 { /* Inline parser_nodes#AAssignFormExpr#n_value (self) on <self:AVarAssignExpr> */
9300 var6 = self->attrs[COLOR_nit__parser_nodes__AAssignFormExpr___n_value].val; /* _n_value on <self:AVarAssignExpr> */
9301 if (unlikely(var6 == NULL)) {
9302 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
9303 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1995);
9304 fatal_exit(1);
9305 }
9306 var4 = var6;
9307 RET_LABEL5:(void)0;
9308 }
9309 }
9310 {
9311 { /* Inline typing#Variable#declared_type (var_variable) on <var_variable:Variable> */
9312 var9 = var_variable->attrs[COLOR_nit__typing__Variable___declared_type].val; /* _declared_type on <var_variable:Variable> */
9313 var7 = var9;
9314 RET_LABEL8:(void)0;
9315 }
9316 }
9317 {
9318 var10 = nit___nit__AbstractCompilerVisitor___expr(var_v, var4, var7);
9319 }
9320 var_i = var10;
9321 {
9322 var11 = nit___nit__AbstractCompilerVisitor___variable(var_v, var_variable);
9323 }
9324 {
9325 nit___nit__AbstractCompilerVisitor___assign(var_v, var11, var_i); /* Direct call abstract_compiler#AbstractCompilerVisitor#assign on <var_v:AbstractCompilerVisitor>*/
9326 }
9327 var = var_i;
9328 goto RET_LABEL;
9329 RET_LABEL:;
9330 return var;
9331 }
9332 /* method abstract_compiler#AVarReassignExpr#stmt for (self: AVarReassignExpr, AbstractCompilerVisitor) */
9333 void nit__abstract_compiler___AVarReassignExpr___AExpr__stmt(val* self, val* p0) {
9334 val* var_v /* var v: AbstractCompilerVisitor */;
9335 val* var /* : nullable Variable */;
9336 val* var2 /* : nullable Variable */;
9337 val* var_variable /* var variable: Variable */;
9338 val* var3 /* : RuntimeVariable */;
9339 val* var_vari /* var vari: RuntimeVariable */;
9340 val* var4 /* : AExpr */;
9341 val* var6 /* : AExpr */;
9342 val* var7 /* : nullable MType */;
9343 val* var9 /* : nullable MType */;
9344 val* var10 /* : RuntimeVariable */;
9345 val* var_value /* var value: RuntimeVariable */;
9346 val* var11 /* : nullable CallSite */;
9347 val* var13 /* : nullable CallSite */;
9348 val* var14 /* : Array[RuntimeVariable] */;
9349 val* var_ /* var : Array[RuntimeVariable] */;
9350 val* var15 /* : nullable RuntimeVariable */;
9351 val* var_res /* var res: nullable RuntimeVariable */;
9352 short int var16 /* : Bool */;
9353 short int var17 /* : Bool */;
9354 val* var_other /* var other: nullable Object */;
9355 short int var19 /* : Bool */;
9356 short int var20 /* : Bool */;
9357 val* var21 /* : RuntimeVariable */;
9358 var_v = p0;
9359 {
9360 { /* Inline scope#AVarFormExpr#variable (self) on <self:AVarReassignExpr> */
9361 var2 = self->attrs[COLOR_nit__scope__AVarFormExpr___variable].val; /* _variable on <self:AVarReassignExpr> */
9362 var = var2;
9363 RET_LABEL1:(void)0;
9364 }
9365 }
9366 if (unlikely(var == NULL)) {
9367 PRINT_ERROR("Runtime error: %s", "Cast failed");
9368 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2648);
9369 fatal_exit(1);
9370 }
9371 var_variable = var;
9372 {
9373 var3 = nit___nit__AbstractCompilerVisitor___variable(var_v, var_variable);
9374 }
9375 var_vari = var3;
9376 {
9377 { /* Inline parser_nodes#AReassignFormExpr#n_value (self) on <self:AVarReassignExpr> */
9378 var6 = self->attrs[COLOR_nit__parser_nodes__AReassignFormExpr___n_value].val; /* _n_value on <self:AVarReassignExpr> */
9379 if (unlikely(var6 == NULL)) {
9380 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
9381 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 2006);
9382 fatal_exit(1);
9383 }
9384 var4 = var6;
9385 RET_LABEL5:(void)0;
9386 }
9387 }
9388 {
9389 { /* Inline typing#Variable#declared_type (var_variable) on <var_variable:Variable> */
9390 var9 = var_variable->attrs[COLOR_nit__typing__Variable___declared_type].val; /* _declared_type on <var_variable:Variable> */
9391 var7 = var9;
9392 RET_LABEL8:(void)0;
9393 }
9394 }
9395 {
9396 var10 = nit___nit__AbstractCompilerVisitor___expr(var_v, var4, var7);
9397 }
9398 var_value = var10;
9399 {
9400 { /* Inline typing#AReassignFormExpr#reassign_callsite (self) on <self:AVarReassignExpr> */
9401 var13 = self->attrs[COLOR_nit__typing__AReassignFormExpr___reassign_callsite].val; /* _reassign_callsite on <self:AVarReassignExpr> */
9402 var11 = var13;
9403 RET_LABEL12:(void)0;
9404 }
9405 }
9406 if (unlikely(var11 == NULL)) {
9407 PRINT_ERROR("Runtime error: %s", "Cast failed");
9408 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2651);
9409 fatal_exit(1);
9410 }
9411 var14 = NEW_standard__Array(&type_standard__Array__nit__RuntimeVariable);
9412 {
9413 standard___standard__Array___with_capacity(var14, 2l); /* Direct call array#Array#with_capacity on <var14:Array[RuntimeVariable]>*/
9414 }
9415 var_ = var14;
9416 {
9417 standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(var_, var_vari); /* Direct call array#AbstractArray#push on <var_:Array[RuntimeVariable]>*/
9418 }
9419 {
9420 standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(var_, var_value); /* Direct call array#AbstractArray#push on <var_:Array[RuntimeVariable]>*/
9421 }
9422 {
9423 var15 = ((val*(*)(val* self, val* p0, val* p1))(var_v->class->vft[COLOR_nit__abstract_compiler__AbstractCompilerVisitor__compile_callsite]))(var_v, var11, var_); /* compile_callsite on <var_v:AbstractCompilerVisitor>*/
9424 }
9425 var_res = var15;
9426 if (var_res == NULL) {
9427 var16 = 0; /* is null */
9428 } else {
9429 var16 = 1; /* arg is null and recv is not */
9430 }
9431 if (0) {
9432 { /* Inline kernel#Object#!= (var_res,((val*)NULL)) on <var_res:nullable RuntimeVariable> */
9433 var_other = ((val*)NULL);
9434 {
9435 var19 = ((short int(*)(val* self, val* p0))(var_res->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_res, var_other); /* == on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
9436 }
9437 var20 = !var19;
9438 var17 = var20;
9439 goto RET_LABEL18;
9440 RET_LABEL18:(void)0;
9441 }
9442 var16 = var17;
9443 }
9444 if (unlikely(!var16)) {
9445 PRINT_ERROR("Runtime error: %s", "Assert failed");
9446 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2652);
9447 fatal_exit(1);
9448 }
9449 {
9450 var21 = nit___nit__AbstractCompilerVisitor___variable(var_v, var_variable);
9451 }
9452 {
9453 nit___nit__AbstractCompilerVisitor___assign(var_v, var21, var_res); /* Direct call abstract_compiler#AbstractCompilerVisitor#assign on <var_v:AbstractCompilerVisitor>*/
9454 }
9455 RET_LABEL:;
9456 }
9457 /* method abstract_compiler#ASelfExpr#expr for (self: ASelfExpr, AbstractCompilerVisitor): nullable RuntimeVariable */
9458 val* nit__abstract_compiler___ASelfExpr___AExpr__expr(val* self, val* p0) {
9459 val* var /* : nullable RuntimeVariable */;
9460 val* var_v /* var v: AbstractCompilerVisitor */;
9461 val* var1 /* : nullable StaticFrame */;
9462 val* var3 /* : nullable StaticFrame */;
9463 val* var4 /* : Array[RuntimeVariable] */;
9464 val* var6 /* : Array[RuntimeVariable] */;
9465 val* var7 /* : nullable Object */;
9466 var_v = p0;
9467 {
9468 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (var_v) on <var_v:AbstractCompilerVisitor> */
9469 var3 = var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <var_v:AbstractCompilerVisitor> */
9470 var1 = var3;
9471 RET_LABEL2:(void)0;
9472 }
9473 }
9474 if (var1 == NULL) {
9475 PRINT_ERROR("Runtime error: %s", "Receiver is null");
9476 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2658);
9477 fatal_exit(1);
9478 } else {
9479 { /* Inline abstract_compiler#StaticFrame#arguments (var1) on <var1:nullable StaticFrame> */
9480 if (unlikely(var1 == NULL)) {
9481 PRINT_ERROR("Runtime error: %s", "Receiver is null");
9482 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1835);
9483 fatal_exit(1);
9484 }
9485 var6 = var1->attrs[COLOR_nit__abstract_compiler__StaticFrame___arguments].val; /* _arguments on <var1:nullable StaticFrame> */
9486 if (unlikely(var6 == NULL)) {
9487 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _arguments");
9488 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1835);
9489 fatal_exit(1);
9490 }
9491 var4 = var6;
9492 RET_LABEL5:(void)0;
9493 }
9494 }
9495 {
9496 var7 = standard___standard__SequenceRead___Collection__first(var4);
9497 }
9498 var = var7;
9499 goto RET_LABEL;
9500 RET_LABEL:;
9501 return var;
9502 }
9503 /* method abstract_compiler#AImplicitSelfExpr#expr for (self: AImplicitSelfExpr, AbstractCompilerVisitor): nullable RuntimeVariable */
9504 val* nit__abstract_compiler___AImplicitSelfExpr___AExpr__expr(val* self, val* p0) {
9505 val* var /* : nullable RuntimeVariable */;
9506 val* var_v /* var v: AbstractCompilerVisitor */;
9507 short int var1 /* : Bool */;
9508 short int var3 /* : Bool */;
9509 short int var4 /* : Bool */;
9510 val* var5 /* : nullable RuntimeVariable */;
9511 static val* varonce;
9512 val* var6 /* : String */;
9513 char* var7 /* : NativeString */;
9514 val* var8 /* : FlatString */;
9515 val* var9 /* : nullable MType */;
9516 val* var11 /* : nullable MType */;
9517 val* var12 /* : RuntimeVariable */;
9518 var_v = p0;
9519 {
9520 { /* Inline typing#AImplicitSelfExpr#is_sys (self) on <self:AImplicitSelfExpr> */
9521 var3 = self->attrs[COLOR_nit__typing__AImplicitSelfExpr___is_sys].s; /* _is_sys on <self:AImplicitSelfExpr> */
9522 var1 = var3;
9523 RET_LABEL2:(void)0;
9524 }
9525 }
9526 var4 = !var1;
9527 if (var4){
9528 {
9529 var5 = ((val*(*)(val* self, val* p0))(self->class->vft[COLOR_nit__abstract_compiler___AImplicitSelfExpr___AExpr__expr]))(self, p0); /* expr on <self:AImplicitSelfExpr>*/
9530 }
9531 var = var5;
9532 goto RET_LABEL;
9533 } else {
9534 }
9535 if (likely(varonce!=NULL)) {
9536 var6 = varonce;
9537 } else {
9538 var7 = "glob_sys";
9539 var8 = standard___standard__NativeString___to_s_with_length(var7, 8l);
9540 var6 = var8;
9541 varonce = var6;
9542 }
9543 {
9544 { /* Inline typing#AExpr#mtype (self) on <self:AImplicitSelfExpr> */
9545 var11 = self->attrs[COLOR_nit__typing__AExpr___mtype].val; /* _mtype on <self:AImplicitSelfExpr> */
9546 var9 = var11;
9547 RET_LABEL10:(void)0;
9548 }
9549 }
9550 if (unlikely(var9 == NULL)) {
9551 PRINT_ERROR("Runtime error: %s", "Cast failed");
9552 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2664);
9553 fatal_exit(1);
9554 }
9555 {
9556 var12 = nit___nit__AbstractCompilerVisitor___new_expr(var_v, var6, var9);
9557 }
9558 var = var12;
9559 goto RET_LABEL;
9560 RET_LABEL:;
9561 return var;
9562 }
9563 /* method abstract_compiler#AEscapeExpr#stmt for (self: AEscapeExpr, AbstractCompilerVisitor) */
9564 void nit__abstract_compiler___AEscapeExpr___AExpr__stmt(val* self, val* p0) {
9565 val* var_v /* var v: AbstractCompilerVisitor */;
9566 val* var /* : NativeArray[String] */;
9567 static val* varonce;
9568 static val* varonce1;
9569 val* var2 /* : String */;
9570 char* var3 /* : NativeString */;
9571 val* var4 /* : FlatString */;
9572 static val* varonce5;
9573 val* var6 /* : String */;
9574 char* var7 /* : NativeString */;
9575 val* var8 /* : FlatString */;
9576 val* var9 /* : nullable EscapeMark */;
9577 val* var11 /* : nullable EscapeMark */;
9578 val* var12 /* : String */;
9579 val* var13 /* : String */;
9580 var_v = p0;
9581 if (unlikely(varonce==NULL)) {
9582 var = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
9583 if (likely(varonce1!=NULL)) {
9584 var2 = varonce1;
9585 } else {
9586 var3 = "goto BREAK_";
9587 var4 = standard___standard__NativeString___to_s_with_length(var3, 11l);
9588 var2 = var4;
9589 varonce1 = var2;
9590 }
9591 ((struct instance_standard__NativeArray*)var)->values[0]=var2;
9592 if (likely(varonce5!=NULL)) {
9593 var6 = varonce5;
9594 } else {
9595 var7 = ";";
9596 var8 = standard___standard__NativeString___to_s_with_length(var7, 1l);
9597 var6 = var8;
9598 varonce5 = var6;
9599 }
9600 ((struct instance_standard__NativeArray*)var)->values[2]=var6;
9601 } else {
9602 var = varonce;
9603 varonce = NULL;
9604 }
9605 {
9606 { /* Inline scope#AEscapeExpr#escapemark (self) on <self:AEscapeExpr> */
9607 var11 = self->attrs[COLOR_nit__scope__AEscapeExpr___escapemark].val; /* _escapemark on <self:AEscapeExpr> */
9608 var9 = var11;
9609 RET_LABEL10:(void)0;
9610 }
9611 }
9612 {
9613 var12 = nit___nit__AbstractCompilerVisitor___escapemark_name(var_v, var9);
9614 }
9615 ((struct instance_standard__NativeArray*)var)->values[1]=var12;
9616 {
9617 var13 = ((val*(*)(val* self))(var->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var); /* native_to_s on <var:NativeArray[String]>*/
9618 }
9619 varonce = var;
9620 {
9621 nit___nit__AbstractCompilerVisitor___add(var_v, var13); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
9622 }
9623 RET_LABEL:;
9624 }
9625 /* method abstract_compiler#AReturnExpr#stmt for (self: AReturnExpr, AbstractCompilerVisitor) */
9626 void nit__abstract_compiler___AReturnExpr___AExpr__stmt(val* self, val* p0) {
9627 val* var_v /* var v: AbstractCompilerVisitor */;
9628 val* var /* : nullable AExpr */;
9629 val* var2 /* : nullable AExpr */;
9630 val* var_nexpr /* var nexpr: nullable AExpr */;
9631 short int var3 /* : Bool */;
9632 short int var4 /* : Bool */;
9633 val* var_other /* var other: nullable Object */;
9634 short int var6 /* : Bool */;
9635 short int var7 /* : Bool */;
9636 val* var8 /* : nullable StaticFrame */;
9637 val* var10 /* : nullable StaticFrame */;
9638 val* var11 /* : nullable RuntimeVariable */;
9639 val* var13 /* : nullable RuntimeVariable */;
9640 val* var_returnvar /* var returnvar: RuntimeVariable */;
9641 val* var14 /* : MType */;
9642 val* var16 /* : MType */;
9643 val* var17 /* : RuntimeVariable */;
9644 val* var_i /* var i: RuntimeVariable */;
9645 val* var18 /* : NativeArray[String] */;
9646 static val* varonce;
9647 static val* varonce19;
9648 val* var20 /* : String */;
9649 char* var21 /* : NativeString */;
9650 val* var22 /* : FlatString */;
9651 static val* varonce23;
9652 val* var24 /* : String */;
9653 char* var25 /* : NativeString */;
9654 val* var26 /* : FlatString */;
9655 val* var27 /* : nullable StaticFrame */;
9656 val* var29 /* : nullable StaticFrame */;
9657 val* var30 /* : nullable String */;
9658 val* var32 /* : nullable String */;
9659 val* var33 /* : String */;
9660 var_v = p0;
9661 {
9662 { /* Inline parser_nodes#AReturnExpr#n_expr (self) on <self:AReturnExpr> */
9663 var2 = self->attrs[COLOR_nit__parser_nodes__AReturnExpr___n_expr].val; /* _n_expr on <self:AReturnExpr> */
9664 var = var2;
9665 RET_LABEL1:(void)0;
9666 }
9667 }
9668 var_nexpr = var;
9669 if (var_nexpr == NULL) {
9670 var3 = 0; /* is null */
9671 } else {
9672 var3 = 1; /* arg is null and recv is not */
9673 }
9674 if (0) {
9675 { /* Inline kernel#Object#!= (var_nexpr,((val*)NULL)) on <var_nexpr:nullable AExpr> */
9676 var_other = ((val*)NULL);
9677 {
9678 var6 = ((short int(*)(val* self, val* p0))(var_nexpr->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var_nexpr, var_other); /* == on <var_nexpr:nullable AExpr(AExpr)>*/
9679 }
9680 var7 = !var6;
9681 var4 = var7;
9682 goto RET_LABEL5;
9683 RET_LABEL5:(void)0;
9684 }
9685 var3 = var4;
9686 }
9687 if (var3){
9688 {
9689 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (var_v) on <var_v:AbstractCompilerVisitor> */
9690 var10 = var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <var_v:AbstractCompilerVisitor> */
9691 var8 = var10;
9692 RET_LABEL9:(void)0;
9693 }
9694 }
9695 if (var8 == NULL) {
9696 PRINT_ERROR("Runtime error: %s", "Receiver is null");
9697 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2677);
9698 fatal_exit(1);
9699 } else {
9700 { /* Inline abstract_compiler#StaticFrame#returnvar (var8) on <var8:nullable StaticFrame> */
9701 if (unlikely(var8 == NULL)) {
9702 PRINT_ERROR("Runtime error: %s", "Receiver is null");
9703 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1838);
9704 fatal_exit(1);
9705 }
9706 var13 = var8->attrs[COLOR_nit__abstract_compiler__StaticFrame___returnvar].val; /* _returnvar on <var8:nullable StaticFrame> */
9707 var11 = var13;
9708 RET_LABEL12:(void)0;
9709 }
9710 }
9711 if (unlikely(var11 == NULL)) {
9712 PRINT_ERROR("Runtime error: %s", "Cast failed");
9713 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2677);
9714 fatal_exit(1);
9715 }
9716 var_returnvar = var11;
9717 {
9718 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_returnvar) on <var_returnvar:RuntimeVariable> */
9719 var16 = var_returnvar->attrs[COLOR_nit__abstract_compiler__RuntimeVariable___mtype].val; /* _mtype on <var_returnvar:RuntimeVariable> */
9720 if (unlikely(var16 == NULL)) {
9721 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
9722 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1784);
9723 fatal_exit(1);
9724 }
9725 var14 = var16;
9726 RET_LABEL15:(void)0;
9727 }
9728 }
9729 {
9730 var17 = nit___nit__AbstractCompilerVisitor___expr(var_v, var_nexpr, var14);
9731 }
9732 var_i = var17;
9733 {
9734 nit___nit__AbstractCompilerVisitor___assign(var_v, var_returnvar, var_i); /* Direct call abstract_compiler#AbstractCompilerVisitor#assign on <var_v:AbstractCompilerVisitor>*/
9735 }
9736 } else {
9737 }
9738 if (unlikely(varonce==NULL)) {
9739 var18 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
9740 if (likely(varonce19!=NULL)) {
9741 var20 = varonce19;
9742 } else {
9743 var21 = "goto ";
9744 var22 = standard___standard__NativeString___to_s_with_length(var21, 5l);
9745 var20 = var22;
9746 varonce19 = var20;
9747 }
9748 ((struct instance_standard__NativeArray*)var18)->values[0]=var20;
9749 if (likely(varonce23!=NULL)) {
9750 var24 = varonce23;
9751 } else {
9752 var25 = ";";
9753 var26 = standard___standard__NativeString___to_s_with_length(var25, 1l);
9754 var24 = var26;
9755 varonce23 = var24;
9756 }
9757 ((struct instance_standard__NativeArray*)var18)->values[2]=var24;
9758 } else {
9759 var18 = varonce;
9760 varonce = NULL;
9761 }
9762 {
9763 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (var_v) on <var_v:AbstractCompilerVisitor> */
9764 var29 = var_v->attrs[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame].val; /* _frame on <var_v:AbstractCompilerVisitor> */
9765 var27 = var29;
9766 RET_LABEL28:(void)0;
9767 }
9768 }
9769 if (var27 == NULL) {
9770 PRINT_ERROR("Runtime error: %s", "Receiver is null");
9771 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2681);
9772 fatal_exit(1);
9773 } else {
9774 { /* Inline abstract_compiler#StaticFrame#returnlabel (var27) on <var27:nullable StaticFrame> */
9775 if (unlikely(var27 == NULL)) {
9776 PRINT_ERROR("Runtime error: %s", "Receiver is null");
9777 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 1841);
9778 fatal_exit(1);
9779 }
9780 var32 = var27->attrs[COLOR_nit__abstract_compiler__StaticFrame___returnlabel].val; /* _returnlabel on <var27:nullable StaticFrame> */
9781 var30 = var32;
9782 RET_LABEL31:(void)0;
9783 }
9784 }
9785 if (unlikely(var30 == NULL)) {
9786 PRINT_ERROR("Runtime error: %s", "Cast failed");
9787 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler, 2681);
9788 fatal_exit(1);
9789 }
9790 ((struct instance_standard__NativeArray*)var18)->values[1]=var30;
9791 {
9792 var33 = ((val*(*)(val* self))(var18->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var18); /* native_to_s on <var18:NativeArray[String]>*/
9793 }
9794 varonce = var18;
9795 {
9796 nit___nit__AbstractCompilerVisitor___add(var_v, var33); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
9797 }
9798 RET_LABEL:;
9799 }
9800 /* method abstract_compiler#AAbortExpr#stmt for (self: AAbortExpr, AbstractCompilerVisitor) */
9801 void nit__abstract_compiler___AAbortExpr___AExpr__stmt(val* self, val* p0) {
9802 val* var_v /* var v: AbstractCompilerVisitor */;
9803 static val* varonce;
9804 val* var /* : String */;
9805 char* var1 /* : NativeString */;
9806 val* var2 /* : FlatString */;
9807 var_v = p0;
9808 if (likely(varonce!=NULL)) {
9809 var = varonce;
9810 } else {
9811 var1 = "Aborted";
9812 var2 = standard___standard__NativeString___to_s_with_length(var1, 7l);
9813 var = var2;
9814 varonce = var;
9815 }
9816 {
9817 nit___nit__AbstractCompilerVisitor___add_abort(var_v, var); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on <var_v:AbstractCompilerVisitor>*/
9818 }
9819 RET_LABEL:;
9820 }
9821 /* method abstract_compiler#AIfExpr#stmt for (self: AIfExpr, AbstractCompilerVisitor) */
9822 void nit__abstract_compiler___AIfExpr___AExpr__stmt(val* self, val* p0) {
9823 val* var_v /* var v: AbstractCompilerVisitor */;
9824 val* var /* : AExpr */;
9825 val* var2 /* : AExpr */;
9826 val* var3 /* : RuntimeVariable */;
9827 val* var_cond /* var cond: RuntimeVariable */;
9828 val* var4 /* : NativeArray[String] */;
9829 static val* varonce;
9830 static val* varonce5;
9831 val* var6 /* : String */;
9832 char* var7 /* : NativeString */;
9833 val* var8 /* : FlatString */;
9834 static val* varonce9;
9835 val* var10 /* : String */;
9836 char* var11 /* : NativeString */;
9837 val* var12 /* : FlatString */;
9838 val* var13 /* : String */;
9839 val* var14 /* : String */;
9840 val* var15 /* : nullable AExpr */;
9841 val* var17 /* : nullable AExpr */;
9842 static val* varonce18;
9843 val* var19 /* : String */;
9844 char* var20 /* : NativeString */;
9845 val* var21 /* : FlatString */;
9846 val* var22 /* : nullable AExpr */;
9847 val* var24 /* : nullable AExpr */;
9848 static val* varonce25;
9849 val* var26 /* : String */;
9850 char* var27 /* : NativeString */;
9851 val* var28 /* : FlatString */;
9852 var_v = p0;
9853 {
9854 { /* Inline parser_nodes#AIfExpr#n_expr (self) on <self:AIfExpr> */
9855 var2 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_expr].val; /* _n_expr on <self:AIfExpr> */
9856 if (unlikely(var2 == NULL)) {
9857 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
9858 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes, 1857);
9859 fatal_exit(1);
9860 }
9861 var = var2;
9862 RET_LABEL1:(void)0;
9863 }
9864 }
9865 {
9866 var3 = nit___nit__AbstractCompilerVisitor___expr_bool(var_v, var);
9867 }
9868 var_cond = var3;
9869 if (unlikely(varonce==NULL)) {
9870 var4 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String);
9871 if (likely(varonce5!=NULL)) {
9872 var6 = varonce5;
9873 } else {
9874 var7 = "if (";
9875 var8 = standard___standard__NativeString___to_s_with_length(var7, 4l);
9876 var6 = var8;
9877 varonce5 = var6;
9878 }
9879 ((struct instance_standard__NativeArray*)var4)->values[0]=var6;
9880 if (likely(varonce9!=NULL)) {
9881 var10 = varonce9;
9882 } else {
9883 var11 = "){";
9884 var12 = standard___standard__NativeString___to_s_with_length(var11, 2l);
9885 var10 = var12;
9886 varonce9 = var10;
9887 }
9888 ((struct instance_standard__NativeArray*)var4)->values[2]=var10;
9889 } else {
9890 var4 = varonce;
9891 varonce = NULL;
9892 }
9893 {
9894 var13 = ((val*(*)(val* self))(var_cond->class->vft[COLOR_standard__string__Object__to_s]))(var_cond); /* to_s on <var_cond:RuntimeVariable>*/
9895 }
9896 ((struct instance_standard__NativeArray*)var4)->values[1]=var13;
9897 {
9898 var14 = ((val*(*)(val* self))(var4->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var4); /* native_to_s on <var4:NativeArray[String]>*/
9899 }
9900 varonce = var4;
9901 {
9902 nit___nit__AbstractCompilerVisitor___add(var_v, var14); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
9903 }
9904 {
9905 { /* Inline parser_nodes#AIfExpr#n_then (self) on <self:AIfExpr> */
9906 var17 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_then].val; /* _n_then on <self:AIfExpr> */
9907 var15 = var17;
9908 RET_LABEL16:(void)0;
9909 }
9910 }
9911 {
9912 nit___nit__AbstractCompilerVisitor___stmt(var_v, var15); /* Direct call abstract_compiler#AbstractCompilerVisitor#stmt on <var_v:AbstractCompilerVisitor>*/
9913 }
9914 if (likely(varonce18!=NULL)) {
9915 var19 = varonce18;
9916 } else {
9917 var20 = "} else {";
9918 var21 = standard___standard__NativeString___to_s_with_length(var20, 8l);
9919 var19 = var21;
9920 varonce18 = var19;
9921 }
9922 {
9923 nit___nit__AbstractCompilerVisitor___add(var_v, var19); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
9924 }
9925 {
9926 { /* Inline parser_nodes#AIfExpr#n_else (self) on <self:AIfExpr> */
9927 var24 = self->attrs[COLOR_nit__parser_nodes__AIfExpr___n_else].val; /* _n_else on <self:AIfExpr> */
9928 var22 = var24;
9929 RET_LABEL23:(void)0;
9930 }
9931 }
9932 {
9933 nit___nit__AbstractCompilerVisitor___stmt(var_v, var22); /* Direct call abstract_compiler#AbstractCompilerVisitor#stmt on <var_v:AbstractCompilerVisitor>*/
9934 }
9935 if (likely(varonce25!=NULL)) {
9936 var26 = varonce25;
9937 } else {
9938 var27 = "}";
9939 var28 = standard___standard__NativeString___to_s_with_length(var27, 1l);
9940 var26 = var28;
9941 varonce25 = var26;
9942 }
9943 {
9944 nit___nit__AbstractCompilerVisitor___add(var_v, var26); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
9945 }
9946 RET_LABEL:;
9947 }