1 #include "nitc__abstract_compiler.sep.0.h"
2 /* method abstract_compiler#AbstractCompiler#compile_main_function for (self: AbstractCompiler) */
3 void nitc___nitc__AbstractCompiler___compile_main_function(val
* self
) {
4 val
* var
/* : AbstractCompilerVisitor */;
5 val
* var_v
/* var v: AbstractCompilerVisitor */;
7 val
* var1
/* : String */;
8 char* var2
/* : NativeString */;
9 val
* var3
/* : String */;
10 val
* var4
/* : Platform */;
11 val
* var6
/* : Platform */;
12 val
* var_platform
/* var platform: Platform */;
13 short int var7
/* : Bool */;
14 short int var8
/* : Bool */;
15 short int var_
/* var : Bool */;
16 val
* var9
/* : ModelBuilder */;
17 val
* var11
/* : ModelBuilder */;
18 val
* var12
/* : ToolContext */;
19 val
* var14
/* : ToolContext */;
20 val
* var15
/* : OptionBool */;
21 val
* var17
/* : OptionBool */;
22 val
* var18
/* : nullable Object */;
23 val
* var20
/* : nullable Object */;
24 short int var21
/* : Bool */;
25 short int var_no_main
/* var no_main: Bool */;
26 short int var22
/* : Bool */;
27 static val
* varonce23
;
28 val
* var24
/* : String */;
29 char* var25
/* : NativeString */;
30 val
* var26
/* : String */;
31 static val
* varonce27
;
32 val
* var28
/* : String */;
33 char* var29
/* : NativeString */;
34 val
* var30
/* : String */;
35 static val
* varonce31
;
36 val
* var32
/* : String */;
37 char* var33
/* : NativeString */;
38 val
* var34
/* : String */;
39 static val
* varonce35
;
40 val
* var36
/* : String */;
41 char* var37
/* : NativeString */;
42 val
* var38
/* : String */;
43 static val
* varonce39
;
44 val
* var40
/* : String */;
45 char* var41
/* : NativeString */;
46 val
* var42
/* : String */;
47 static val
* varonce43
;
48 val
* var44
/* : String */;
49 char* var45
/* : NativeString */;
50 val
* var46
/* : String */;
51 static val
* varonce47
;
52 val
* var48
/* : String */;
53 char* var49
/* : NativeString */;
54 val
* var50
/* : String */;
55 static val
* varonce51
;
56 val
* var52
/* : String */;
57 char* var53
/* : NativeString */;
58 val
* var54
/* : String */;
59 val
* var55
/* : ModelBuilder */;
60 val
* var57
/* : ModelBuilder */;
61 val
* var58
/* : ToolContext */;
62 val
* var60
/* : ToolContext */;
63 val
* var61
/* : OptionBool */;
64 val
* var63
/* : OptionBool */;
65 val
* var64
/* : nullable Object */;
66 val
* var66
/* : nullable Object */;
67 short int var67
/* : Bool */;
68 val
* var68
/* : Array[String] */;
69 val
* var70
/* : Array[String] */;
70 val
* var_71
/* var : Array[String] */;
71 val
* var72
/* : IndexedIterator[nullable Object] */;
72 val
* var_73
/* var : IndexedIterator[String] */;
73 short int var74
/* : Bool */;
74 val
* var75
/* : nullable Object */;
75 val
* var_tag
/* var tag: String */;
76 val
* var77
/* : NativeArray[String] */;
77 static val
* varonce76
;
78 static val
* varonce78
;
79 val
* var79
/* : String */;
80 char* var80
/* : NativeString */;
81 val
* var81
/* : String */;
82 static val
* varonce82
;
83 val
* var83
/* : String */;
84 char* var84
/* : NativeString */;
85 val
* var85
/* : String */;
86 val
* var86
/* : String */;
87 val
* var88
/* : NativeArray[String] */;
88 static val
* varonce87
;
89 static val
* varonce89
;
90 val
* var90
/* : String */;
91 char* var91
/* : NativeString */;
92 val
* var92
/* : String */;
93 static val
* varonce93
;
94 val
* var94
/* : String */;
95 char* var95
/* : NativeString */;
96 val
* var96
/* : String */;
97 val
* var97
/* : String */;
98 val
* var99
/* : NativeArray[String] */;
99 static val
* varonce98
;
100 static val
* varonce100
;
101 val
* var101
/* : String */;
102 char* var102
/* : NativeString */;
103 val
* var103
/* : String */;
104 static val
* varonce104
;
105 val
* var105
/* : String */;
106 char* var106
/* : NativeString */;
107 val
* var107
/* : String */;
108 val
* var108
/* : String */;
109 val
* var109
/* : AbstractCompiler */;
110 val
* var111
/* : AbstractCompiler */;
111 val
* var112
/* : CodeWriter */;
112 val
* var114
/* : CodeWriter */;
113 val
* var116
/* : NativeArray[String] */;
114 static val
* varonce115
;
115 static val
* varonce117
;
116 val
* var118
/* : String */;
117 char* var119
/* : NativeString */;
118 val
* var120
/* : String */;
119 static val
* varonce121
;
120 val
* var122
/* : String */;
121 char* var123
/* : NativeString */;
122 val
* var124
/* : String */;
123 val
* var125
/* : String */;
124 val
* var126
/* : AbstractCompiler */;
125 val
* var128
/* : AbstractCompiler */;
126 val
* var129
/* : CodeWriter */;
127 val
* var131
/* : CodeWriter */;
128 val
* var133
/* : NativeArray[String] */;
129 static val
* varonce132
;
130 static val
* varonce134
;
131 val
* var135
/* : String */;
132 char* var136
/* : NativeString */;
133 val
* var137
/* : String */;
134 static val
* varonce138
;
135 val
* var139
/* : String */;
136 char* var140
/* : NativeString */;
137 val
* var141
/* : String */;
138 val
* var142
/* : String */;
139 val
* var143
/* : AbstractCompiler */;
140 val
* var145
/* : AbstractCompiler */;
141 val
* var146
/* : CodeWriter */;
142 val
* var148
/* : CodeWriter */;
143 val
* var150
/* : NativeArray[String] */;
144 static val
* varonce149
;
145 static val
* varonce151
;
146 val
* var152
/* : String */;
147 char* var153
/* : NativeString */;
148 val
* var154
/* : String */;
149 static val
* varonce155
;
150 val
* var156
/* : String */;
151 char* var157
/* : NativeString */;
152 val
* var158
/* : String */;
153 val
* var159
/* : String */;
154 val
* var160
/* : ModelBuilder */;
155 val
* var162
/* : ModelBuilder */;
156 val
* var163
/* : ToolContext */;
157 val
* var165
/* : ToolContext */;
158 val
* var166
/* : OptionBool */;
159 val
* var168
/* : OptionBool */;
160 val
* var169
/* : nullable Object */;
161 val
* var171
/* : nullable Object */;
162 short int var172
/* : Bool */;
163 static val
* varonce173
;
164 val
* var174
/* : String */;
165 char* var175
/* : NativeString */;
166 val
* var176
/* : String */;
167 static val
* varonce177
;
168 val
* var178
/* : String */;
169 char* var179
/* : NativeString */;
170 val
* var180
/* : String */;
171 static val
* varonce181
;
172 val
* var182
/* : String */;
173 char* var183
/* : NativeString */;
174 val
* var184
/* : String */;
175 val
* var185
/* : AbstractCompiler */;
176 val
* var187
/* : AbstractCompiler */;
177 val
* var188
/* : CodeWriter */;
178 val
* var190
/* : CodeWriter */;
179 static val
* varonce191
;
180 val
* var192
/* : String */;
181 char* var193
/* : NativeString */;
182 val
* var194
/* : String */;
183 val
* var195
/* : AbstractCompiler */;
184 val
* var197
/* : AbstractCompiler */;
185 val
* var198
/* : CodeWriter */;
186 val
* var200
/* : CodeWriter */;
187 static val
* varonce201
;
188 val
* var202
/* : String */;
189 char* var203
/* : NativeString */;
190 val
* var204
/* : String */;
191 val
* var205
/* : AbstractCompiler */;
192 val
* var207
/* : AbstractCompiler */;
193 val
* var208
/* : CodeWriter */;
194 val
* var210
/* : CodeWriter */;
195 static val
* varonce211
;
196 val
* var212
/* : String */;
197 char* var213
/* : NativeString */;
198 val
* var214
/* : String */;
199 val
* var215
/* : ModelBuilder */;
200 val
* var217
/* : ModelBuilder */;
201 val
* var218
/* : ToolContext */;
202 val
* var220
/* : ToolContext */;
203 val
* var221
/* : OptionBool */;
204 val
* var223
/* : OptionBool */;
205 val
* var224
/* : nullable Object */;
206 val
* var226
/* : nullable Object */;
207 short int var227
/* : Bool */;
208 static val
* varonce228
;
209 val
* var229
/* : String */;
210 char* var230
/* : NativeString */;
211 val
* var231
/* : String */;
212 static val
* varonce232
;
213 val
* var233
/* : String */;
214 char* var234
/* : NativeString */;
215 val
* var235
/* : String */;
216 val
* var236
/* : AbstractCompiler */;
217 val
* var238
/* : AbstractCompiler */;
218 val
* var239
/* : CodeWriter */;
219 val
* var241
/* : CodeWriter */;
220 static val
* varonce242
;
221 val
* var243
/* : String */;
222 char* var244
/* : NativeString */;
223 val
* var245
/* : String */;
224 val
* var246
/* : AbstractCompiler */;
225 val
* var248
/* : AbstractCompiler */;
226 val
* var249
/* : CodeWriter */;
227 val
* var251
/* : CodeWriter */;
228 static val
* varonce252
;
229 val
* var253
/* : String */;
230 char* var254
/* : NativeString */;
231 val
* var255
/* : String */;
232 static val
* varonce256
;
233 val
* var257
/* : String */;
234 char* var258
/* : NativeString */;
235 val
* var259
/* : String */;
236 short int var260
/* : Bool */;
237 static val
* varonce261
;
238 val
* var262
/* : String */;
239 char* var263
/* : NativeString */;
240 val
* var264
/* : String */;
241 static val
* varonce265
;
242 val
* var266
/* : String */;
243 char* var267
/* : NativeString */;
244 val
* var268
/* : String */;
245 static val
* varonce269
;
246 val
* var270
/* : String */;
247 char* var271
/* : NativeString */;
248 val
* var272
/* : String */;
249 static val
* varonce273
;
250 val
* var274
/* : String */;
251 char* var275
/* : NativeString */;
252 val
* var276
/* : String */;
253 static val
* varonce277
;
254 val
* var278
/* : String */;
255 char* var279
/* : NativeString */;
256 val
* var280
/* : String */;
257 static val
* varonce281
;
258 val
* var282
/* : String */;
259 char* var283
/* : NativeString */;
260 val
* var284
/* : String */;
261 static val
* varonce285
;
262 val
* var286
/* : String */;
263 char* var287
/* : NativeString */;
264 val
* var288
/* : String */;
265 static val
* varonce289
;
266 val
* var290
/* : String */;
267 char* var291
/* : NativeString */;
268 val
* var292
/* : String */;
269 static val
* varonce293
;
270 val
* var294
/* : String */;
271 char* var295
/* : NativeString */;
272 val
* var296
/* : String */;
273 static val
* varonce297
;
274 val
* var298
/* : String */;
275 char* var299
/* : NativeString */;
276 val
* var300
/* : String */;
277 static val
* varonce301
;
278 val
* var302
/* : String */;
279 char* var303
/* : NativeString */;
280 val
* var304
/* : String */;
281 static val
* varonce305
;
282 val
* var306
/* : String */;
283 char* var307
/* : NativeString */;
284 val
* var308
/* : String */;
285 static val
* varonce309
;
286 val
* var310
/* : String */;
287 char* var311
/* : NativeString */;
288 val
* var312
/* : String */;
289 static val
* varonce313
;
290 val
* var314
/* : String */;
291 char* var315
/* : NativeString */;
292 val
* var316
/* : String */;
293 static val
* varonce317
;
294 val
* var318
/* : String */;
295 char* var319
/* : NativeString */;
296 val
* var320
/* : String */;
297 static val
* varonce321
;
298 val
* var322
/* : String */;
299 char* var323
/* : NativeString */;
300 val
* var324
/* : String */;
301 static val
* varonce325
;
302 val
* var326
/* : String */;
303 char* var327
/* : NativeString */;
304 val
* var328
/* : String */;
305 static val
* varonce329
;
306 val
* var330
/* : String */;
307 char* var331
/* : NativeString */;
308 val
* var332
/* : String */;
309 static val
* varonce333
;
310 val
* var334
/* : String */;
311 char* var335
/* : NativeString */;
312 val
* var336
/* : String */;
313 static val
* varonce337
;
314 val
* var338
/* : String */;
315 char* var339
/* : NativeString */;
316 val
* var340
/* : String */;
317 static val
* varonce341
;
318 val
* var342
/* : String */;
319 char* var343
/* : NativeString */;
320 val
* var344
/* : String */;
321 static val
* varonce345
;
322 val
* var346
/* : String */;
323 char* var347
/* : NativeString */;
324 val
* var348
/* : String */;
325 static val
* varonce349
;
326 val
* var350
/* : String */;
327 char* var351
/* : NativeString */;
328 val
* var352
/* : String */;
329 static val
* varonce353
;
330 val
* var354
/* : String */;
331 char* var355
/* : NativeString */;
332 val
* var356
/* : String */;
333 static val
* varonce357
;
334 val
* var358
/* : String */;
335 char* var359
/* : NativeString */;
336 val
* var360
/* : String */;
337 static val
* varonce361
;
338 val
* var362
/* : String */;
339 char* var363
/* : NativeString */;
340 val
* var364
/* : String */;
341 static val
* varonce365
;
342 val
* var366
/* : String */;
343 char* var367
/* : NativeString */;
344 val
* var368
/* : String */;
345 static val
* varonce369
;
346 val
* var370
/* : String */;
347 char* var371
/* : NativeString */;
348 val
* var372
/* : String */;
349 static val
* varonce373
;
350 val
* var374
/* : String */;
351 char* var375
/* : NativeString */;
352 val
* var376
/* : String */;
353 static val
* varonce377
;
354 val
* var378
/* : String */;
355 char* var379
/* : NativeString */;
356 val
* var380
/* : String */;
357 static val
* varonce381
;
358 val
* var382
/* : String */;
359 char* var383
/* : NativeString */;
360 val
* var384
/* : String */;
361 static val
* varonce385
;
362 val
* var386
/* : String */;
363 char* var387
/* : NativeString */;
364 val
* var388
/* : String */;
365 static val
* varonce389
;
366 val
* var390
/* : String */;
367 char* var391
/* : NativeString */;
368 val
* var392
/* : String */;
369 static val
* varonce393
;
370 val
* var394
/* : String */;
371 char* var395
/* : NativeString */;
372 val
* var396
/* : String */;
373 static val
* varonce397
;
374 val
* var398
/* : String */;
375 char* var399
/* : NativeString */;
376 val
* var400
/* : String */;
377 static val
* varonce401
;
378 val
* var402
/* : String */;
379 char* var403
/* : NativeString */;
380 val
* var404
/* : String */;
381 static val
* varonce405
;
382 val
* var406
/* : String */;
383 char* var407
/* : NativeString */;
384 val
* var408
/* : String */;
385 static val
* varonce409
;
386 val
* var410
/* : String */;
387 char* var411
/* : NativeString */;
388 val
* var412
/* : String */;
389 static val
* varonce413
;
390 val
* var414
/* : String */;
391 char* var415
/* : NativeString */;
392 val
* var416
/* : String */;
393 static val
* varonce417
;
394 val
* var418
/* : String */;
395 char* var419
/* : NativeString */;
396 val
* var420
/* : String */;
397 static val
* varonce421
;
398 val
* var422
/* : String */;
399 char* var423
/* : NativeString */;
400 val
* var424
/* : String */;
401 static val
* varonce425
;
402 val
* var426
/* : String */;
403 char* var427
/* : NativeString */;
404 val
* var428
/* : String */;
405 static val
* varonce429
;
406 val
* var430
/* : String */;
407 char* var431
/* : NativeString */;
408 val
* var432
/* : String */;
409 static val
* varonce433
;
410 val
* var434
/* : String */;
411 char* var435
/* : NativeString */;
412 val
* var436
/* : String */;
413 static val
* varonce437
;
414 val
* var438
/* : String */;
415 char* var439
/* : NativeString */;
416 val
* var440
/* : String */;
417 static val
* varonce441
;
418 val
* var442
/* : String */;
419 char* var443
/* : NativeString */;
420 val
* var444
/* : String */;
421 static val
* varonce445
;
422 val
* var446
/* : String */;
423 char* var447
/* : NativeString */;
424 val
* var448
/* : String */;
425 static val
* varonce449
;
426 val
* var450
/* : String */;
427 char* var451
/* : NativeString */;
428 val
* var452
/* : String */;
429 static val
* varonce453
;
430 val
* var454
/* : String */;
431 char* var455
/* : NativeString */;
432 val
* var456
/* : String */;
433 static val
* varonce457
;
434 val
* var458
/* : String */;
435 char* var459
/* : NativeString */;
436 val
* var460
/* : String */;
437 val
* var461
/* : MModule */;
438 val
* var463
/* : MModule */;
439 val
* var464
/* : nullable MClassType */;
440 val
* var_main_type
/* var main_type: nullable MClassType */;
441 short int var465
/* : Bool */;
442 short int var466
/* : Bool */;
443 val
* var_other
/* var other: nullable Object */;
444 short int var468
/* : Bool */;
445 short int var469
/* : Bool */;
446 val
* var470
/* : AbstractCompiler */;
447 val
* var472
/* : AbstractCompiler */;
448 val
* var473
/* : MModule */;
449 val
* var475
/* : MModule */;
450 val
* var_mainmodule
/* var mainmodule: MModule */;
451 val
* var476
/* : RuntimeVariable */;
452 val
* var_glob_sys
/* var glob_sys: RuntimeVariable */;
453 val
* var478
/* : NativeArray[String] */;
454 static val
* varonce477
;
455 static val
* varonce479
;
456 val
* var480
/* : String */;
457 char* var481
/* : NativeString */;
458 val
* var482
/* : String */;
459 static val
* varonce483
;
460 val
* var484
/* : String */;
461 char* var485
/* : NativeString */;
462 val
* var486
/* : String */;
463 val
* var487
/* : String */;
464 val
* var488
/* : String */;
465 static val
* varonce489
;
466 val
* var490
/* : String */;
467 char* var491
/* : NativeString */;
468 val
* var492
/* : String */;
469 val
* var493
/* : MClass */;
470 val
* var495
/* : MClass */;
471 val
* var496
/* : nullable MMethod */;
472 val
* var_main_init
/* var main_init: nullable MMethod */;
473 short int var497
/* : Bool */;
474 short int var498
/* : Bool */;
475 short int var500
/* : Bool */;
476 short int var501
/* : Bool */;
477 val
* var502
/* : Array[RuntimeVariable] */;
478 val
* var_503
/* var : Array[RuntimeVariable] */;
479 val
* var504
/* : nullable RuntimeVariable */;
480 val
* var505
/* : nullable MMethod */;
481 static val
* varonce506
;
482 val
* var507
/* : String */;
483 char* var508
/* : NativeString */;
484 val
* var509
/* : String */;
485 val
* var510
/* : MClass */;
486 val
* var512
/* : MClass */;
487 val
* var513
/* : nullable MMethod */;
488 static val
* varonce514
;
489 val
* var515
/* : String */;
490 char* var516
/* : NativeString */;
491 val
* var517
/* : String */;
492 val
* var518
/* : MClass */;
493 val
* var520
/* : MClass */;
494 val
* var521
/* : nullable MMethod */;
495 val
* var_main_method
/* var main_method: nullable MMethod */;
496 short int var522
/* : Bool */;
497 short int var523
/* : Bool */;
498 short int var525
/* : Bool */;
499 short int var526
/* : Bool */;
500 val
* var527
/* : Array[RuntimeVariable] */;
501 val
* var_528
/* var : Array[RuntimeVariable] */;
502 val
* var529
/* : nullable RuntimeVariable */;
503 val
* var530
/* : ModelBuilder */;
504 val
* var532
/* : ModelBuilder */;
505 val
* var533
/* : ToolContext */;
506 val
* var535
/* : ToolContext */;
507 val
* var536
/* : OptionBool */;
508 val
* var538
/* : OptionBool */;
509 val
* var539
/* : nullable Object */;
510 val
* var541
/* : nullable Object */;
511 short int var542
/* : Bool */;
512 static val
* varonce543
;
513 val
* var544
/* : String */;
514 char* var545
/* : NativeString */;
515 val
* var546
/* : String */;
516 static val
* varonce547
;
517 val
* var548
/* : String */;
518 char* var549
/* : NativeString */;
519 val
* var550
/* : String */;
520 static val
* varonce551
;
521 val
* var552
/* : String */;
522 char* var553
/* : NativeString */;
523 val
* var554
/* : String */;
524 static val
* varonce555
;
525 val
* var556
/* : String */;
526 char* var557
/* : NativeString */;
527 val
* var558
/* : String */;
528 val
* var559
/* : Array[String] */;
529 val
* var561
/* : Array[String] */;
530 val
* var_562
/* var : Array[String] */;
531 val
* var563
/* : IndexedIterator[nullable Object] */;
532 val
* var_564
/* var : IndexedIterator[String] */;
533 short int var565
/* : Bool */;
534 val
* var567
/* : nullable Object */;
535 val
* var_tag568
/* var tag: String */;
536 val
* var570
/* : NativeArray[String] */;
537 static val
* varonce569
;
538 static val
* varonce571
;
539 val
* var572
/* : String */;
540 char* var573
/* : NativeString */;
541 val
* var574
/* : String */;
542 static val
* varonce575
;
543 val
* var576
/* : String */;
544 char* var577
/* : NativeString */;
545 val
* var578
/* : String */;
546 val
* var579
/* : String */;
547 val
* var581
/* : NativeArray[String] */;
548 static val
* varonce580
;
549 static val
* varonce582
;
550 val
* var583
/* : String */;
551 char* var584
/* : NativeString */;
552 val
* var585
/* : String */;
553 static val
* varonce586
;
554 val
* var587
/* : String */;
555 char* var588
/* : NativeString */;
556 val
* var589
/* : String */;
557 static val
* varonce590
;
558 val
* var591
/* : String */;
559 char* var592
/* : NativeString */;
560 val
* var593
/* : String */;
561 static val
* varonce594
;
562 val
* var595
/* : String */;
563 char* var596
/* : NativeString */;
564 val
* var597
/* : String */;
565 static val
* varonce598
;
566 val
* var599
/* : String */;
567 char* var600
/* : NativeString */;
568 val
* var601
/* : String */;
569 val
* var602
/* : String */;
570 val
* var604
/* : NativeArray[String] */;
571 static val
* varonce603
;
572 static val
* varonce605
;
573 val
* var606
/* : String */;
574 char* var607
/* : NativeString */;
575 val
* var608
/* : String */;
576 static val
* varonce609
;
577 val
* var610
/* : String */;
578 char* var611
/* : NativeString */;
579 val
* var612
/* : String */;
580 val
* var613
/* : String */;
581 val
* var615
/* : NativeArray[String] */;
582 static val
* varonce614
;
583 static val
* varonce616
;
584 val
* var617
/* : String */;
585 char* var618
/* : NativeString */;
586 val
* var619
/* : String */;
587 static val
* varonce620
;
588 val
* var621
/* : String */;
589 char* var622
/* : NativeString */;
590 val
* var623
/* : String */;
591 val
* var624
/* : String */;
592 val
* var626
/* : NativeArray[String] */;
593 static val
* varonce625
;
594 static val
* varonce627
;
595 val
* var628
/* : String */;
596 char* var629
/* : NativeString */;
597 val
* var630
/* : String */;
598 static val
* varonce631
;
599 val
* var632
/* : String */;
600 char* var633
/* : NativeString */;
601 val
* var634
/* : String */;
602 val
* var635
/* : String */;
603 val
* var637
/* : NativeArray[String] */;
604 static val
* varonce636
;
605 static val
* varonce638
;
606 val
* var639
/* : String */;
607 char* var640
/* : NativeString */;
608 val
* var641
/* : String */;
609 static val
* varonce642
;
610 val
* var643
/* : String */;
611 char* var644
/* : NativeString */;
612 val
* var645
/* : String */;
613 val
* var646
/* : String */;
614 static val
* varonce647
;
615 val
* var648
/* : String */;
616 char* var649
/* : NativeString */;
617 val
* var650
/* : String */;
618 static val
* varonce651
;
619 val
* var652
/* : String */;
620 char* var653
/* : NativeString */;
621 val
* var654
/* : String */;
622 val
* var655
/* : Array[String] */;
623 val
* var657
/* : Array[String] */;
624 val
* var658
/* : Array[nullable Object] */;
625 val
* var_tags
/* var tags: Array[String] */;
626 static val
* varonce659
;
627 val
* var660
/* : String */;
628 char* var661
/* : NativeString */;
629 val
* var662
/* : String */;
630 val
* var_663
/* var : Array[String] */;
631 val
* var664
/* : IndexedIterator[nullable Object] */;
632 val
* var_665
/* var : IndexedIterator[String] */;
633 short int var666
/* : Bool */;
634 val
* var668
/* : nullable Object */;
635 val
* var_tag669
/* var tag: String */;
636 val
* var671
/* : NativeArray[String] */;
637 static val
* varonce670
;
638 static val
* varonce672
;
639 val
* var673
/* : String */;
640 char* var674
/* : NativeString */;
641 val
* var675
/* : String */;
642 static val
* varonce676
;
643 val
* var677
/* : String */;
644 char* var678
/* : NativeString */;
645 val
* var679
/* : String */;
646 val
* var680
/* : String */;
647 val
* var682
/* : NativeArray[String] */;
648 static val
* varonce681
;
649 static val
* varonce683
;
650 val
* var684
/* : String */;
651 char* var685
/* : NativeString */;
652 val
* var686
/* : String */;
653 static val
* varonce687
;
654 val
* var688
/* : String */;
655 char* var689
/* : NativeString */;
656 val
* var690
/* : String */;
657 static val
* varonce691
;
658 val
* var692
/* : String */;
659 char* var693
/* : NativeString */;
660 val
* var694
/* : String */;
661 val
* var695
/* : String */;
662 val
* var697
/* : NativeArray[String] */;
663 static val
* varonce696
;
664 static val
* varonce698
;
665 val
* var699
/* : String */;
666 char* var700
/* : NativeString */;
667 val
* var701
/* : String */;
668 static val
* varonce702
;
669 val
* var703
/* : String */;
670 char* var704
/* : NativeString */;
671 val
* var705
/* : String */;
672 static val
* varonce706
;
673 val
* var707
/* : String */;
674 char* var708
/* : NativeString */;
675 val
* var709
/* : String */;
676 val
* var710
/* : String */;
677 val
* var712
/* : NativeArray[String] */;
678 static val
* varonce711
;
679 static val
* varonce713
;
680 val
* var714
/* : String */;
681 char* var715
/* : NativeString */;
682 val
* var716
/* : String */;
683 static val
* varonce717
;
684 val
* var718
/* : String */;
685 char* var719
/* : NativeString */;
686 val
* var720
/* : String */;
687 static val
* varonce721
;
688 val
* var722
/* : String */;
689 char* var723
/* : NativeString */;
690 val
* var724
/* : String */;
691 val
* var725
/* : String */;
692 val
* var727
/* : NativeArray[String] */;
693 static val
* varonce726
;
694 static val
* varonce728
;
695 val
* var729
/* : String */;
696 char* var730
/* : NativeString */;
697 val
* var731
/* : String */;
698 static val
* varonce732
;
699 val
* var733
/* : String */;
700 char* var734
/* : NativeString */;
701 val
* var735
/* : String */;
702 static val
* varonce736
;
703 val
* var737
/* : String */;
704 char* var738
/* : NativeString */;
705 val
* var739
/* : String */;
706 val
* var740
/* : String */;
707 val
* var741
/* : ModelBuilder */;
708 val
* var743
/* : ModelBuilder */;
709 val
* var744
/* : ToolContext */;
710 val
* var746
/* : ToolContext */;
711 val
* var747
/* : OptionBool */;
712 val
* var749
/* : OptionBool */;
713 val
* var750
/* : nullable Object */;
714 val
* var752
/* : nullable Object */;
715 short int var753
/* : Bool */;
716 static val
* varonce754
;
717 val
* var755
/* : String */;
718 char* var756
/* : NativeString */;
719 val
* var757
/* : String */;
720 static val
* varonce758
;
721 val
* var759
/* : String */;
722 char* var760
/* : NativeString */;
723 val
* var761
/* : String */;
724 static val
* varonce762
;
725 val
* var763
/* : String */;
726 char* var764
/* : NativeString */;
727 val
* var765
/* : String */;
728 static val
* varonce766
;
729 val
* var767
/* : String */;
730 char* var768
/* : NativeString */;
731 val
* var769
/* : String */;
732 static val
* varonce770
;
733 val
* var771
/* : String */;
734 char* var772
/* : NativeString */;
735 val
* var773
/* : String */;
736 static val
* varonce774
;
737 val
* var775
/* : String */;
738 char* var776
/* : NativeString */;
739 val
* var777
/* : String */;
740 val
* var778
/* : ModelBuilder */;
741 val
* var780
/* : ModelBuilder */;
742 val
* var781
/* : ToolContext */;
743 val
* var783
/* : ToolContext */;
744 val
* var784
/* : OptionBool */;
745 val
* var786
/* : OptionBool */;
746 val
* var787
/* : nullable Object */;
747 val
* var789
/* : nullable Object */;
748 short int var790
/* : Bool */;
749 static val
* varonce791
;
750 val
* var792
/* : String */;
751 char* var793
/* : NativeString */;
752 val
* var794
/* : String */;
753 static val
* varonce795
;
754 val
* var796
/* : String */;
755 char* var797
/* : NativeString */;
756 val
* var798
/* : String */;
757 static val
* varonce799
;
758 val
* var800
/* : String */;
759 char* var801
/* : NativeString */;
760 val
* var802
/* : String */;
761 static val
* varonce803
;
762 val
* var804
/* : String */;
763 char* var805
/* : NativeString */;
764 val
* var806
/* : String */;
765 val
* var807
/* : MModule */;
766 val
* var809
/* : MModule */;
767 val
* var810
/* : POSetElement[MModule] */;
768 val
* var812
/* : POSetElement[MModule] */;
769 val
* var813
/* : Collection[nullable Object] */;
770 val
* var_814
/* var : Collection[MModule] */;
771 val
* var815
/* : Iterator[nullable Object] */;
772 val
* var_816
/* var : Iterator[MModule] */;
773 short int var817
/* : Bool */;
774 val
* var819
/* : nullable Object */;
775 val
* var_m
/* var m: MModule */;
776 static val
* varonce820
;
777 val
* var821
/* : String */;
778 char* var822
/* : NativeString */;
779 val
* var823
/* : String */;
780 val
* var824
/* : String */;
781 val
* var825
/* : String */;
782 val
* var_f
/* var f: String */;
783 val
* var827
/* : NativeArray[String] */;
784 static val
* varonce826
;
785 static val
* varonce828
;
786 val
* var829
/* : String */;
787 char* var830
/* : NativeString */;
788 val
* var831
/* : String */;
789 static val
* varonce832
;
790 val
* var833
/* : String */;
791 char* var834
/* : NativeString */;
792 val
* var835
/* : String */;
793 static val
* varonce836
;
794 val
* var837
/* : String */;
795 char* var838
/* : NativeString */;
796 val
* var839
/* : String */;
797 val
* var840
/* : Location */;
798 val
* var842
/* : Location */;
799 val
* var843
/* : nullable SourceFile */;
800 val
* var845
/* : nullable SourceFile */;
801 val
* var846
/* : String */;
802 val
* var848
/* : String */;
803 val
* var849
/* : String */;
804 val
* var850
/* : String */;
805 val
* var852
/* : NativeArray[String] */;
806 static val
* varonce851
;
807 static val
* varonce853
;
808 val
* var854
/* : String */;
809 char* var855
/* : NativeString */;
810 val
* var856
/* : String */;
811 static val
* varonce857
;
812 val
* var858
/* : String */;
813 char* var859
/* : NativeString */;
814 val
* var860
/* : String */;
815 val
* var861
/* : String */;
817 var
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__abstract_compiler__AbstractCompiler__new_visitor
]))(self
); /* new_visitor on <self:AbstractCompiler>*/
820 if (likely(varonce
!=NULL
)) {
823 var2
= "#include <signal.h>";
824 var3
= core__flat___NativeString___to_s_full(var2
, 19l, 19l);
829 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var1
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
832 { /* Inline abstract_compiler#AbstractCompiler#target_platform (self) on <self:AbstractCompiler> */
833 var6
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___target_platform
].val
; /* _target_platform on <self:AbstractCompiler> */
834 if (unlikely(var6
== NULL
)) {
835 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target_platform");
836 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 549);
845 var8
= nitc___nitc__Platform___no_main(var_platform
);
852 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on <self:AbstractCompiler> */
853 var11
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <self:AbstractCompiler> */
854 if (unlikely(var11
== NULL
)) {
855 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
856 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
864 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var9) on <var9:ModelBuilder> */
865 var14
= var9
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var9:ModelBuilder> */
866 if (unlikely(var14
== NULL
)) {
867 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
868 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
876 { /* Inline abstract_compiler#ToolContext#opt_no_main (var12) on <var12:ToolContext> */
877 var17
= var12
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_no_main
].val
; /* _opt_no_main on <var12:ToolContext> */
878 if (unlikely(var17
== NULL
)) {
879 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_main");
880 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 36);
888 { /* Inline opts#Option#value (var15) on <var15:OptionBool> */
889 var20
= var15
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var15:OptionBool> */
894 var21
= (short int)((long)(var18
)>>2);
899 var22
= nitc___nitc__Platform___supports_libunwind(var_platform
);
902 if (likely(varonce23
!=NULL
)) {
905 var25
= "#ifndef NO_STACKTRACE";
906 var26
= core__flat___NativeString___to_s_full(var25
, 21l, 21l);
911 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var24
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
913 if (likely(varonce27
!=NULL
)) {
916 var29
= "#define UNW_LOCAL_ONLY";
917 var30
= core__flat___NativeString___to_s_full(var29
, 22l, 22l);
922 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var28
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
924 if (likely(varonce31
!=NULL
)) {
927 var33
= "#include <libunwind.h>";
928 var34
= core__flat___NativeString___to_s_full(var33
, 22l, 22l);
933 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var32
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
935 if (likely(varonce35
!=NULL
)) {
938 var37
= "#include \"c_functions_hash.h\"";
939 var38
= core__flat___NativeString___to_s_full(var37
, 29l, 29l);
944 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var36
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
946 if (likely(varonce39
!=NULL
)) {
950 var42
= core__flat___NativeString___to_s_full(var41
, 6l, 6l);
955 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var40
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
959 if (likely(varonce43
!=NULL
)) {
962 var45
= "int glob_argc;";
963 var46
= core__flat___NativeString___to_s_full(var45
, 14l, 14l);
968 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var44
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
970 if (likely(varonce47
!=NULL
)) {
973 var49
= "char **glob_argv;";
974 var50
= core__flat___NativeString___to_s_full(var49
, 17l, 17l);
979 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var48
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
981 if (likely(varonce51
!=NULL
)) {
984 var53
= "val *glob_sys;";
985 var54
= core__flat___NativeString___to_s_full(var53
, 14l, 14l);
990 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var52
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
993 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on <self:AbstractCompiler> */
994 var57
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <self:AbstractCompiler> */
995 if (unlikely(var57
== NULL
)) {
996 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
997 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
1001 RET_LABEL56
:(void)0;
1005 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var55) on <var55:ModelBuilder> */
1006 var60
= var55
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var55:ModelBuilder> */
1007 if (unlikely(var60
== NULL
)) {
1008 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1009 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
1013 RET_LABEL59
:(void)0;
1017 { /* Inline abstract_compiler#ToolContext#opt_typing_test_metrics (var58) on <var58:ToolContext> */
1018 var63
= var58
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics
].val
; /* _opt_typing_test_metrics on <var58:ToolContext> */
1019 if (unlikely(var63
== NULL
)) {
1020 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
1021 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 60);
1025 RET_LABEL62
:(void)0;
1029 { /* Inline opts#Option#value (var61) on <var61:OptionBool> */
1030 var66
= var61
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var61:OptionBool> */
1032 RET_LABEL65
:(void)0;
1035 var67
= (short int)((long)(var64
)>>2);
1038 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_tags (self) on <self:AbstractCompiler> */
1039 var70
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_tags
].val
; /* _count_type_test_tags on <self:AbstractCompiler> */
1040 if (unlikely(var70
== NULL
)) {
1041 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_tags");
1042 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1045);
1046 RET_LABEL69
:(void)0;
1051 var72
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_71
);
1056 var74
= ((short int(*)(val
* self
))((((long)var_73
&3)?class_info
[((long)var_73
&3)]:var_73
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_73
); /* is_ok on <var_73:IndexedIterator[String]>*/
1063 var75
= ((val
*(*)(val
* self
))((((long)var_73
&3)?class_info
[((long)var_73
&3)]:var_73
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_73
); /* item on <var_73:IndexedIterator[String]>*/
1066 if (unlikely(varonce76
==NULL
)) {
1067 var77
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1068 if (likely(varonce78
!=NULL
)) {
1071 var80
= "long count_type_test_resolved_";
1072 var81
= core__flat___NativeString___to_s_full(var80
, 30l, 30l);
1076 ((struct instance_core__NativeArray
*)var77
)->values
[0]=var79
;
1077 if (likely(varonce82
!=NULL
)) {
1081 var85
= core__flat___NativeString___to_s_full(var84
, 1l, 1l);
1085 ((struct instance_core__NativeArray
*)var77
)->values
[2]=var83
;
1090 ((struct instance_core__NativeArray
*)var77
)->values
[1]=var_tag
;
1092 var86
= ((val
*(*)(val
* self
))(var77
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var77
); /* native_to_s on <var77:NativeArray[String]>*/
1096 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var86
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1098 if (unlikely(varonce87
==NULL
)) {
1099 var88
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1100 if (likely(varonce89
!=NULL
)) {
1103 var91
= "long count_type_test_unresolved_";
1104 var92
= core__flat___NativeString___to_s_full(var91
, 32l, 32l);
1108 ((struct instance_core__NativeArray
*)var88
)->values
[0]=var90
;
1109 if (likely(varonce93
!=NULL
)) {
1113 var96
= core__flat___NativeString___to_s_full(var95
, 1l, 1l);
1117 ((struct instance_core__NativeArray
*)var88
)->values
[2]=var94
;
1122 ((struct instance_core__NativeArray
*)var88
)->values
[1]=var_tag
;
1124 var97
= ((val
*(*)(val
* self
))(var88
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var88
); /* native_to_s on <var88:NativeArray[String]>*/
1128 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var97
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1130 if (unlikely(varonce98
==NULL
)) {
1131 var99
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1132 if (likely(varonce100
!=NULL
)) {
1133 var101
= varonce100
;
1135 var102
= "long count_type_test_skipped_";
1136 var103
= core__flat___NativeString___to_s_full(var102
, 29l, 29l);
1138 varonce100
= var101
;
1140 ((struct instance_core__NativeArray
*)var99
)->values
[0]=var101
;
1141 if (likely(varonce104
!=NULL
)) {
1142 var105
= varonce104
;
1145 var107
= core__flat___NativeString___to_s_full(var106
, 1l, 1l);
1147 varonce104
= var105
;
1149 ((struct instance_core__NativeArray
*)var99
)->values
[2]=var105
;
1154 ((struct instance_core__NativeArray
*)var99
)->values
[1]=var_tag
;
1156 var108
= ((val
*(*)(val
* self
))(var99
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var99
); /* native_to_s on <var99:NativeArray[String]>*/
1160 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var108
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1163 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
1164 var111
= var_v
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <var_v:AbstractCompilerVisitor> */
1165 if (unlikely(var111
== NULL
)) {
1166 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1167 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1171 RET_LABEL110
:(void)0;
1175 { /* Inline abstract_compiler#AbstractCompiler#header (var109) on <var109:AbstractCompiler> */
1176 var114
= var109
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___header
].val
; /* _header on <var109:AbstractCompiler> */
1177 if (unlikely(var114
== NULL
)) {
1178 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header");
1179 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 585);
1183 RET_LABEL113
:(void)0;
1186 if (unlikely(varonce115
==NULL
)) {
1187 var116
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1188 if (likely(varonce117
!=NULL
)) {
1189 var118
= varonce117
;
1191 var119
= "extern long count_type_test_resolved_";
1192 var120
= core__flat___NativeString___to_s_full(var119
, 37l, 37l);
1194 varonce117
= var118
;
1196 ((struct instance_core__NativeArray
*)var116
)->values
[0]=var118
;
1197 if (likely(varonce121
!=NULL
)) {
1198 var122
= varonce121
;
1201 var124
= core__flat___NativeString___to_s_full(var123
, 1l, 1l);
1203 varonce121
= var122
;
1205 ((struct instance_core__NativeArray
*)var116
)->values
[2]=var122
;
1207 var116
= varonce115
;
1210 ((struct instance_core__NativeArray
*)var116
)->values
[1]=var_tag
;
1212 var125
= ((val
*(*)(val
* self
))(var116
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var116
); /* native_to_s on <var116:NativeArray[String]>*/
1214 varonce115
= var116
;
1216 nitc___nitc__CodeWriter___add_decl(var112
, var125
); /* Direct call abstract_compiler#CodeWriter#add_decl on <var112:CodeWriter>*/
1219 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
1220 var128
= var_v
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <var_v:AbstractCompilerVisitor> */
1221 if (unlikely(var128
== NULL
)) {
1222 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1223 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1227 RET_LABEL127
:(void)0;
1231 { /* Inline abstract_compiler#AbstractCompiler#header (var126) on <var126:AbstractCompiler> */
1232 var131
= var126
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___header
].val
; /* _header on <var126:AbstractCompiler> */
1233 if (unlikely(var131
== NULL
)) {
1234 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header");
1235 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 585);
1239 RET_LABEL130
:(void)0;
1242 if (unlikely(varonce132
==NULL
)) {
1243 var133
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1244 if (likely(varonce134
!=NULL
)) {
1245 var135
= varonce134
;
1247 var136
= "extern long count_type_test_unresolved_";
1248 var137
= core__flat___NativeString___to_s_full(var136
, 39l, 39l);
1250 varonce134
= var135
;
1252 ((struct instance_core__NativeArray
*)var133
)->values
[0]=var135
;
1253 if (likely(varonce138
!=NULL
)) {
1254 var139
= varonce138
;
1257 var141
= core__flat___NativeString___to_s_full(var140
, 1l, 1l);
1259 varonce138
= var139
;
1261 ((struct instance_core__NativeArray
*)var133
)->values
[2]=var139
;
1263 var133
= varonce132
;
1266 ((struct instance_core__NativeArray
*)var133
)->values
[1]=var_tag
;
1268 var142
= ((val
*(*)(val
* self
))(var133
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var133
); /* native_to_s on <var133:NativeArray[String]>*/
1270 varonce132
= var133
;
1272 nitc___nitc__CodeWriter___add_decl(var129
, var142
); /* Direct call abstract_compiler#CodeWriter#add_decl on <var129:CodeWriter>*/
1275 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
1276 var145
= var_v
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <var_v:AbstractCompilerVisitor> */
1277 if (unlikely(var145
== NULL
)) {
1278 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1279 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1283 RET_LABEL144
:(void)0;
1287 { /* Inline abstract_compiler#AbstractCompiler#header (var143) on <var143:AbstractCompiler> */
1288 var148
= var143
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___header
].val
; /* _header on <var143:AbstractCompiler> */
1289 if (unlikely(var148
== NULL
)) {
1290 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header");
1291 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 585);
1295 RET_LABEL147
:(void)0;
1298 if (unlikely(varonce149
==NULL
)) {
1299 var150
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1300 if (likely(varonce151
!=NULL
)) {
1301 var152
= varonce151
;
1303 var153
= "extern long count_type_test_skipped_";
1304 var154
= core__flat___NativeString___to_s_full(var153
, 36l, 36l);
1306 varonce151
= var152
;
1308 ((struct instance_core__NativeArray
*)var150
)->values
[0]=var152
;
1309 if (likely(varonce155
!=NULL
)) {
1310 var156
= varonce155
;
1313 var158
= core__flat___NativeString___to_s_full(var157
, 1l, 1l);
1315 varonce155
= var156
;
1317 ((struct instance_core__NativeArray
*)var150
)->values
[2]=var156
;
1319 var150
= varonce149
;
1322 ((struct instance_core__NativeArray
*)var150
)->values
[1]=var_tag
;
1324 var159
= ((val
*(*)(val
* self
))(var150
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var150
); /* native_to_s on <var150:NativeArray[String]>*/
1326 varonce149
= var150
;
1328 nitc___nitc__CodeWriter___add_decl(var146
, var159
); /* Direct call abstract_compiler#CodeWriter#add_decl on <var146:CodeWriter>*/
1331 ((void(*)(val
* self
))((((long)var_73
&3)?class_info
[((long)var_73
&3)]:var_73
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_73
); /* next on <var_73:IndexedIterator[String]>*/
1334 BREAK_label
: (void)0;
1336 ((void(*)(val
* self
))((((long)var_73
&3)?class_info
[((long)var_73
&3)]:var_73
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_73
); /* finish on <var_73:IndexedIterator[String]>*/
1341 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on <self:AbstractCompiler> */
1342 var162
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <self:AbstractCompiler> */
1343 if (unlikely(var162
== NULL
)) {
1344 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
1345 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
1349 RET_LABEL161
:(void)0;
1353 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var160) on <var160:ModelBuilder> */
1354 var165
= var160
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var160:ModelBuilder> */
1355 if (unlikely(var165
== NULL
)) {
1356 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1357 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
1361 RET_LABEL164
:(void)0;
1365 { /* Inline abstract_compiler#ToolContext#opt_invocation_metrics (var163) on <var163:ToolContext> */
1366 var168
= var163
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_invocation_metrics
].val
; /* _opt_invocation_metrics on <var163:ToolContext> */
1367 if (unlikely(var168
== NULL
)) {
1368 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_invocation_metrics");
1369 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 62);
1373 RET_LABEL167
:(void)0;
1377 { /* Inline opts#Option#value (var166) on <var166:OptionBool> */
1378 var171
= var166
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var166:OptionBool> */
1380 RET_LABEL170
:(void)0;
1383 var172
= (short int)((long)(var169
)>>2);
1385 if (likely(varonce173
!=NULL
)) {
1386 var174
= varonce173
;
1388 var175
= "long count_invoke_by_tables;";
1389 var176
= core__flat___NativeString___to_s_full(var175
, 28l, 28l);
1391 varonce173
= var174
;
1394 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var174
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1396 if (likely(varonce177
!=NULL
)) {
1397 var178
= varonce177
;
1399 var179
= "long count_invoke_by_direct;";
1400 var180
= core__flat___NativeString___to_s_full(var179
, 28l, 28l);
1402 varonce177
= var178
;
1405 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var178
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1407 if (likely(varonce181
!=NULL
)) {
1408 var182
= varonce181
;
1410 var183
= "long count_invoke_by_inline;";
1411 var184
= core__flat___NativeString___to_s_full(var183
, 28l, 28l);
1413 varonce181
= var182
;
1416 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var182
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1419 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
1420 var187
= var_v
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <var_v:AbstractCompilerVisitor> */
1421 if (unlikely(var187
== NULL
)) {
1422 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1423 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1427 RET_LABEL186
:(void)0;
1431 { /* Inline abstract_compiler#AbstractCompiler#header (var185) on <var185:AbstractCompiler> */
1432 var190
= var185
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___header
].val
; /* _header on <var185:AbstractCompiler> */
1433 if (unlikely(var190
== NULL
)) {
1434 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header");
1435 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 585);
1439 RET_LABEL189
:(void)0;
1442 if (likely(varonce191
!=NULL
)) {
1443 var192
= varonce191
;
1445 var193
= "extern long count_invoke_by_tables;";
1446 var194
= core__flat___NativeString___to_s_full(var193
, 35l, 35l);
1448 varonce191
= var192
;
1451 nitc___nitc__CodeWriter___add_decl(var188
, var192
); /* Direct call abstract_compiler#CodeWriter#add_decl on <var188:CodeWriter>*/
1454 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
1455 var197
= var_v
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <var_v:AbstractCompilerVisitor> */
1456 if (unlikely(var197
== NULL
)) {
1457 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1458 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1462 RET_LABEL196
:(void)0;
1466 { /* Inline abstract_compiler#AbstractCompiler#header (var195) on <var195:AbstractCompiler> */
1467 var200
= var195
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___header
].val
; /* _header on <var195:AbstractCompiler> */
1468 if (unlikely(var200
== NULL
)) {
1469 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header");
1470 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 585);
1474 RET_LABEL199
:(void)0;
1477 if (likely(varonce201
!=NULL
)) {
1478 var202
= varonce201
;
1480 var203
= "extern long count_invoke_by_direct;";
1481 var204
= core__flat___NativeString___to_s_full(var203
, 35l, 35l);
1483 varonce201
= var202
;
1486 nitc___nitc__CodeWriter___add_decl(var198
, var202
); /* Direct call abstract_compiler#CodeWriter#add_decl on <var198:CodeWriter>*/
1489 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
1490 var207
= var_v
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <var_v:AbstractCompilerVisitor> */
1491 if (unlikely(var207
== NULL
)) {
1492 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1493 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1497 RET_LABEL206
:(void)0;
1501 { /* Inline abstract_compiler#AbstractCompiler#header (var205) on <var205:AbstractCompiler> */
1502 var210
= var205
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___header
].val
; /* _header on <var205:AbstractCompiler> */
1503 if (unlikely(var210
== NULL
)) {
1504 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header");
1505 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 585);
1509 RET_LABEL209
:(void)0;
1512 if (likely(varonce211
!=NULL
)) {
1513 var212
= varonce211
;
1515 var213
= "extern long count_invoke_by_inline;";
1516 var214
= core__flat___NativeString___to_s_full(var213
, 35l, 35l);
1518 varonce211
= var212
;
1521 nitc___nitc__CodeWriter___add_decl(var208
, var212
); /* Direct call abstract_compiler#CodeWriter#add_decl on <var208:CodeWriter>*/
1526 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on <self:AbstractCompiler> */
1527 var217
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <self:AbstractCompiler> */
1528 if (unlikely(var217
== NULL
)) {
1529 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
1530 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
1534 RET_LABEL216
:(void)0;
1538 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var215) on <var215:ModelBuilder> */
1539 var220
= var215
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var215:ModelBuilder> */
1540 if (unlikely(var220
== NULL
)) {
1541 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1542 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
1546 RET_LABEL219
:(void)0;
1550 { /* Inline abstract_compiler#ToolContext#opt_isset_checks_metrics (var218) on <var218:ToolContext> */
1551 var223
= var218
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_isset_checks_metrics
].val
; /* _opt_isset_checks_metrics on <var218:ToolContext> */
1552 if (unlikely(var223
== NULL
)) {
1553 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_isset_checks_metrics");
1554 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 64);
1558 RET_LABEL222
:(void)0;
1562 { /* Inline opts#Option#value (var221) on <var221:OptionBool> */
1563 var226
= var221
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var221:OptionBool> */
1565 RET_LABEL225
:(void)0;
1568 var227
= (short int)((long)(var224
)>>2);
1570 if (likely(varonce228
!=NULL
)) {
1571 var229
= varonce228
;
1573 var230
= "long count_attr_reads = 0;";
1574 var231
= core__flat___NativeString___to_s_full(var230
, 26l, 26l);
1576 varonce228
= var229
;
1579 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var229
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1581 if (likely(varonce232
!=NULL
)) {
1582 var233
= varonce232
;
1584 var234
= "long count_isset_checks = 0;";
1585 var235
= core__flat___NativeString___to_s_full(var234
, 28l, 28l);
1587 varonce232
= var233
;
1590 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var233
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1593 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
1594 var238
= var_v
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <var_v:AbstractCompilerVisitor> */
1595 if (unlikely(var238
== NULL
)) {
1596 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1597 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1601 RET_LABEL237
:(void)0;
1605 { /* Inline abstract_compiler#AbstractCompiler#header (var236) on <var236:AbstractCompiler> */
1606 var241
= var236
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___header
].val
; /* _header on <var236:AbstractCompiler> */
1607 if (unlikely(var241
== NULL
)) {
1608 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header");
1609 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 585);
1613 RET_LABEL240
:(void)0;
1616 if (likely(varonce242
!=NULL
)) {
1617 var243
= varonce242
;
1619 var244
= "extern long count_attr_reads;";
1620 var245
= core__flat___NativeString___to_s_full(var244
, 29l, 29l);
1622 varonce242
= var243
;
1625 nitc___nitc__CodeWriter___add_decl(var239
, var243
); /* Direct call abstract_compiler#CodeWriter#add_decl on <var239:CodeWriter>*/
1628 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
1629 var248
= var_v
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <var_v:AbstractCompilerVisitor> */
1630 if (unlikely(var248
== NULL
)) {
1631 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1632 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1636 RET_LABEL247
:(void)0;
1640 { /* Inline abstract_compiler#AbstractCompiler#header (var246) on <var246:AbstractCompiler> */
1641 var251
= var246
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___header
].val
; /* _header on <var246:AbstractCompiler> */
1642 if (unlikely(var251
== NULL
)) {
1643 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header");
1644 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 585);
1648 RET_LABEL250
:(void)0;
1651 if (likely(varonce252
!=NULL
)) {
1652 var253
= varonce252
;
1654 var254
= "extern long count_isset_checks;";
1655 var255
= core__flat___NativeString___to_s_full(var254
, 31l, 31l);
1657 varonce252
= var253
;
1660 nitc___nitc__CodeWriter___add_decl(var249
, var253
); /* Direct call abstract_compiler#CodeWriter#add_decl on <var249:CodeWriter>*/
1664 if (likely(varonce256
!=NULL
)) {
1665 var257
= varonce256
;
1667 var258
= "static void show_backtrace(void) {";
1668 var259
= core__flat___NativeString___to_s_full(var258
, 34l, 34l);
1670 varonce256
= var257
;
1673 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var257
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1676 var260
= nitc___nitc__Platform___supports_libunwind(var_platform
);
1679 if (likely(varonce261
!=NULL
)) {
1680 var262
= varonce261
;
1682 var263
= "#ifndef NO_STACKTRACE";
1683 var264
= core__flat___NativeString___to_s_full(var263
, 21l, 21l);
1685 varonce261
= var262
;
1688 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var262
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1690 if (likely(varonce265
!=NULL
)) {
1691 var266
= varonce265
;
1693 var267
= "char* opt = getenv(\"NIT_NO_STACK\");";
1694 var268
= core__flat___NativeString___to_s_full(var267
, 35l, 35l);
1696 varonce265
= var266
;
1699 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var266
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1701 if (likely(varonce269
!=NULL
)) {
1702 var270
= varonce269
;
1704 var271
= "unw_cursor_t cursor;";
1705 var272
= core__flat___NativeString___to_s_full(var271
, 20l, 20l);
1707 varonce269
= var270
;
1710 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var270
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1712 if (likely(varonce273
!=NULL
)) {
1713 var274
= varonce273
;
1715 var275
= "if(opt==NULL){";
1716 var276
= core__flat___NativeString___to_s_full(var275
, 14l, 14l);
1718 varonce273
= var274
;
1721 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var274
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1723 if (likely(varonce277
!=NULL
)) {
1724 var278
= varonce277
;
1726 var279
= "unw_context_t uc;";
1727 var280
= core__flat___NativeString___to_s_full(var279
, 17l, 17l);
1729 varonce277
= var278
;
1732 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var278
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1734 if (likely(varonce281
!=NULL
)) {
1735 var282
= varonce281
;
1737 var283
= "unw_word_t ip;";
1738 var284
= core__flat___NativeString___to_s_full(var283
, 14l, 14l);
1740 varonce281
= var282
;
1743 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var282
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1745 if (likely(varonce285
!=NULL
)) {
1746 var286
= varonce285
;
1748 var287
= "char* procname = malloc(sizeof(char) * 100);";
1749 var288
= core__flat___NativeString___to_s_full(var287
, 44l, 44l);
1751 varonce285
= var286
;
1754 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var286
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1756 if (likely(varonce289
!=NULL
)) {
1757 var290
= varonce289
;
1759 var291
= "unw_getcontext(&uc);";
1760 var292
= core__flat___NativeString___to_s_full(var291
, 20l, 20l);
1762 varonce289
= var290
;
1765 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var290
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1767 if (likely(varonce293
!=NULL
)) {
1768 var294
= varonce293
;
1770 var295
= "unw_init_local(&cursor, &uc);";
1771 var296
= core__flat___NativeString___to_s_full(var295
, 29l, 29l);
1773 varonce293
= var294
;
1776 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var294
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1778 if (likely(varonce297
!=NULL
)) {
1779 var298
= varonce297
;
1781 var299
= "PRINT_ERROR(\"-------------------------------------------------\\n\");";
1782 var300
= core__flat___NativeString___to_s_full(var299
, 67l, 67l);
1784 varonce297
= var298
;
1787 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var298
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1789 if (likely(varonce301
!=NULL
)) {
1790 var302
= varonce301
;
1792 var303
= "PRINT_ERROR(\"-- Stack Trace ------------------------------\\n\");";
1793 var304
= core__flat___NativeString___to_s_full(var303
, 67l, 67l);
1795 varonce301
= var302
;
1798 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var302
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1800 if (likely(varonce305
!=NULL
)) {
1801 var306
= varonce305
;
1803 var307
= "PRINT_ERROR(\"-------------------------------------------------\\n\");";
1804 var308
= core__flat___NativeString___to_s_full(var307
, 67l, 67l);
1806 varonce305
= var306
;
1809 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var306
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1811 if (likely(varonce309
!=NULL
)) {
1812 var310
= varonce309
;
1814 var311
= "while (unw_step(&cursor) > 0) {";
1815 var312
= core__flat___NativeString___to_s_full(var311
, 31l, 31l);
1817 varonce309
= var310
;
1820 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var310
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1822 if (likely(varonce313
!=NULL
)) {
1823 var314
= varonce313
;
1825 var315
= "\tunw_get_proc_name(&cursor, procname, 100, &ip);";
1826 var316
= core__flat___NativeString___to_s_full(var315
, 48l, 48l);
1828 varonce313
= var314
;
1831 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var314
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1833 if (likely(varonce317
!=NULL
)) {
1834 var318
= varonce317
;
1836 var319
= "\tconst char* recv = get_nit_name(procname, strlen(procname));";
1837 var320
= core__flat___NativeString___to_s_full(var319
, 61l, 61l);
1839 varonce317
= var318
;
1842 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var318
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1844 if (likely(varonce321
!=NULL
)) {
1845 var322
= varonce321
;
1847 var323
= "\tif (recv != NULL){";
1848 var324
= core__flat___NativeString___to_s_full(var323
, 19l, 19l);
1850 varonce321
= var322
;
1853 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var322
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1855 if (likely(varonce325
!=NULL
)) {
1856 var326
= varonce325
;
1858 var327
= "\t\tPRINT_ERROR(\"` %s\\n\", recv);";
1859 var328
= core__flat___NativeString___to_s_full(var327
, 30l, 30l);
1861 varonce325
= var326
;
1864 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var326
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1866 if (likely(varonce329
!=NULL
)) {
1867 var330
= varonce329
;
1869 var331
= "\t}else{";
1870 var332
= core__flat___NativeString___to_s_full(var331
, 7l, 7l);
1872 varonce329
= var330
;
1875 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var330
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1877 if (likely(varonce333
!=NULL
)) {
1878 var334
= varonce333
;
1880 var335
= "\t\tPRINT_ERROR(\"` %s\\n\", procname);";
1881 var336
= core__flat___NativeString___to_s_full(var335
, 34l, 34l);
1883 varonce333
= var334
;
1886 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var334
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1888 if (likely(varonce337
!=NULL
)) {
1889 var338
= varonce337
;
1892 var340
= core__flat___NativeString___to_s_full(var339
, 2l, 2l);
1894 varonce337
= var338
;
1897 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var338
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1899 if (likely(varonce341
!=NULL
)) {
1900 var342
= varonce341
;
1903 var344
= core__flat___NativeString___to_s_full(var343
, 1l, 1l);
1905 varonce341
= var342
;
1908 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var342
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1910 if (likely(varonce345
!=NULL
)) {
1911 var346
= varonce345
;
1913 var347
= "PRINT_ERROR(\"-------------------------------------------------\\n\");";
1914 var348
= core__flat___NativeString___to_s_full(var347
, 67l, 67l);
1916 varonce345
= var346
;
1919 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var346
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1921 if (likely(varonce349
!=NULL
)) {
1922 var350
= varonce349
;
1924 var351
= "free(procname);";
1925 var352
= core__flat___NativeString___to_s_full(var351
, 15l, 15l);
1927 varonce349
= var350
;
1930 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var350
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1932 if (likely(varonce353
!=NULL
)) {
1933 var354
= varonce353
;
1936 var356
= core__flat___NativeString___to_s_full(var355
, 1l, 1l);
1938 varonce353
= var354
;
1941 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var354
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1943 if (likely(varonce357
!=NULL
)) {
1944 var358
= varonce357
;
1946 var359
= "#endif /* NO_STACKTRACE */";
1947 var360
= core__flat___NativeString___to_s_full(var359
, 26l, 26l);
1949 varonce357
= var358
;
1952 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var358
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1956 if (likely(varonce361
!=NULL
)) {
1957 var362
= varonce361
;
1960 var364
= core__flat___NativeString___to_s_full(var363
, 1l, 1l);
1962 varonce361
= var362
;
1965 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var362
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1967 if (likely(varonce365
!=NULL
)) {
1968 var366
= varonce365
;
1970 var367
= "void sig_handler(int signo){";
1971 var368
= core__flat___NativeString___to_s_full(var367
, 28l, 28l);
1973 varonce365
= var366
;
1976 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var366
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1978 if (likely(varonce369
!=NULL
)) {
1979 var370
= varonce369
;
1981 var371
= "PRINT_ERROR(\"Caught signal : %s\\n\", strsignal(signo));";
1982 var372
= core__flat___NativeString___to_s_full(var371
, 54l, 54l);
1984 varonce369
= var370
;
1987 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var370
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
1989 if (likely(varonce373
!=NULL
)) {
1990 var374
= varonce373
;
1992 var375
= "show_backtrace();";
1993 var376
= core__flat___NativeString___to_s_full(var375
, 17l, 17l);
1995 varonce373
= var374
;
1998 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var374
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2000 if (likely(varonce377
!=NULL
)) {
2001 var378
= varonce377
;
2003 var379
= "signal(signo, SIG_DFL);";
2004 var380
= core__flat___NativeString___to_s_full(var379
, 23l, 23l);
2006 varonce377
= var378
;
2009 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var378
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2011 if (likely(varonce381
!=NULL
)) {
2012 var382
= varonce381
;
2014 var383
= "kill(getpid(), signo);";
2015 var384
= core__flat___NativeString___to_s_full(var383
, 22l, 22l);
2017 varonce381
= var382
;
2020 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var382
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2022 if (likely(varonce385
!=NULL
)) {
2023 var386
= varonce385
;
2026 var388
= core__flat___NativeString___to_s_full(var387
, 1l, 1l);
2028 varonce385
= var386
;
2031 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var386
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2033 if (likely(varonce389
!=NULL
)) {
2034 var390
= varonce389
;
2036 var391
= "void fatal_exit(int status) {";
2037 var392
= core__flat___NativeString___to_s_full(var391
, 29l, 29l);
2039 varonce389
= var390
;
2042 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var390
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2044 if (likely(varonce393
!=NULL
)) {
2045 var394
= varonce393
;
2047 var395
= "show_backtrace();";
2048 var396
= core__flat___NativeString___to_s_full(var395
, 17l, 17l);
2050 varonce393
= var394
;
2053 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var394
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2055 if (likely(varonce397
!=NULL
)) {
2056 var398
= varonce397
;
2058 var399
= "exit(status);";
2059 var400
= core__flat___NativeString___to_s_full(var399
, 13l, 13l);
2061 varonce397
= var398
;
2064 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var398
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2066 if (likely(varonce401
!=NULL
)) {
2067 var402
= varonce401
;
2070 var404
= core__flat___NativeString___to_s_full(var403
, 1l, 1l);
2072 varonce401
= var402
;
2075 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var402
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2078 if (likely(varonce405
!=NULL
)) {
2079 var406
= varonce405
;
2081 var407
= "int nit_main(int argc, char** argv) {";
2082 var408
= core__flat___NativeString___to_s_full(var407
, 37l, 37l);
2084 varonce405
= var406
;
2087 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var406
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2090 if (likely(varonce409
!=NULL
)) {
2091 var410
= varonce409
;
2093 var411
= "int main(int argc, char** argv) {";
2094 var412
= core__flat___NativeString___to_s_full(var411
, 33l, 33l);
2096 varonce409
= var410
;
2099 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var410
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2102 if (likely(varonce413
!=NULL
)) {
2103 var414
= varonce413
;
2105 var415
= "#ifndef ANDROID";
2106 var416
= core__flat___NativeString___to_s_full(var415
, 15l, 15l);
2108 varonce413
= var414
;
2111 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var414
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2113 if (likely(varonce417
!=NULL
)) {
2114 var418
= varonce417
;
2116 var419
= "signal(SIGABRT, sig_handler);";
2117 var420
= core__flat___NativeString___to_s_full(var419
, 29l, 29l);
2119 varonce417
= var418
;
2122 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var418
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2124 if (likely(varonce421
!=NULL
)) {
2125 var422
= varonce421
;
2127 var423
= "signal(SIGFPE, sig_handler);";
2128 var424
= core__flat___NativeString___to_s_full(var423
, 28l, 28l);
2130 varonce421
= var422
;
2133 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var422
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2135 if (likely(varonce425
!=NULL
)) {
2136 var426
= varonce425
;
2138 var427
= "signal(SIGILL, sig_handler);";
2139 var428
= core__flat___NativeString___to_s_full(var427
, 28l, 28l);
2141 varonce425
= var426
;
2144 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var426
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2146 if (likely(varonce429
!=NULL
)) {
2147 var430
= varonce429
;
2149 var431
= "signal(SIGINT, sig_handler);";
2150 var432
= core__flat___NativeString___to_s_full(var431
, 28l, 28l);
2152 varonce429
= var430
;
2155 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var430
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2157 if (likely(varonce433
!=NULL
)) {
2158 var434
= varonce433
;
2160 var435
= "signal(SIGTERM, sig_handler);";
2161 var436
= core__flat___NativeString___to_s_full(var435
, 29l, 29l);
2163 varonce433
= var434
;
2166 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var434
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2168 if (likely(varonce437
!=NULL
)) {
2169 var438
= varonce437
;
2171 var439
= "signal(SIGSEGV, sig_handler);";
2172 var440
= core__flat___NativeString___to_s_full(var439
, 29l, 29l);
2174 varonce437
= var438
;
2177 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var438
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2179 if (likely(varonce441
!=NULL
)) {
2180 var442
= varonce441
;
2183 var444
= core__flat___NativeString___to_s_full(var443
, 6l, 6l);
2185 varonce441
= var442
;
2188 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var442
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2190 if (likely(varonce445
!=NULL
)) {
2191 var446
= varonce445
;
2193 var447
= "signal(SIGPIPE, SIG_IGN);";
2194 var448
= core__flat___NativeString___to_s_full(var447
, 25l, 25l);
2196 varonce445
= var446
;
2199 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var446
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2201 if (likely(varonce449
!=NULL
)) {
2202 var450
= varonce449
;
2204 var451
= "glob_argc = argc; glob_argv = argv;";
2205 var452
= core__flat___NativeString___to_s_full(var451
, 35l, 35l);
2207 varonce449
= var450
;
2210 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var450
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2212 if (likely(varonce453
!=NULL
)) {
2213 var454
= varonce453
;
2215 var455
= "initialize_gc_option();";
2216 var456
= core__flat___NativeString___to_s_full(var455
, 23l, 23l);
2218 varonce453
= var454
;
2221 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var454
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2223 if (likely(varonce457
!=NULL
)) {
2224 var458
= varonce457
;
2226 var459
= "initialize_nitni_global_refs();";
2227 var460
= core__flat___NativeString___to_s_full(var459
, 31l, 31l);
2229 varonce457
= var458
;
2232 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var458
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2235 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on <self:AbstractCompiler> */
2236 var463
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <self:AbstractCompiler> */
2237 if (unlikely(var463
== NULL
)) {
2238 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
2239 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
2243 RET_LABEL462
:(void)0;
2247 var464
= nitc__model___MModule___sys_type(var461
);
2249 var_main_type
= var464
;
2250 if (var_main_type
== NULL
) {
2251 var465
= 0; /* is null */
2253 var465
= 1; /* arg is null and recv is not */
2256 { /* Inline kernel#Object#!= (var_main_type,((val*)NULL)) on <var_main_type:nullable MClassType> */
2257 var_other
= ((val
*)NULL
);
2259 var468
= ((short int(*)(val
* self
, val
* p0
))(var_main_type
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_main_type
, var_other
); /* == on <var_main_type:nullable MClassType(MClassType)>*/
2264 RET_LABEL467
:(void)0;
2270 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
2271 var472
= var_v
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <var_v:AbstractCompilerVisitor> */
2272 if (unlikely(var472
== NULL
)) {
2273 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
2274 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
2278 RET_LABEL471
:(void)0;
2282 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var470) on <var470:AbstractCompiler> */
2283 var475
= var470
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var470:AbstractCompiler> */
2284 if (unlikely(var475
== NULL
)) {
2285 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
2286 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
2290 RET_LABEL474
:(void)0;
2293 var_mainmodule
= var473
;
2295 var476
= ((val
*(*)(val
* self
, val
* p0
))(var_v
->class->vft
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor__init_instance
]))(var_v
, var_main_type
); /* init_instance on <var_v:AbstractCompilerVisitor>*/
2297 var_glob_sys
= var476
;
2298 if (unlikely(varonce477
==NULL
)) {
2299 var478
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2300 if (likely(varonce479
!=NULL
)) {
2301 var480
= varonce479
;
2303 var481
= "glob_sys = ";
2304 var482
= core__flat___NativeString___to_s_full(var481
, 11l, 11l);
2306 varonce479
= var480
;
2308 ((struct instance_core__NativeArray
*)var478
)->values
[0]=var480
;
2309 if (likely(varonce483
!=NULL
)) {
2310 var484
= varonce483
;
2313 var486
= core__flat___NativeString___to_s_full(var485
, 1l, 1l);
2315 varonce483
= var484
;
2317 ((struct instance_core__NativeArray
*)var478
)->values
[2]=var484
;
2319 var478
= varonce477
;
2323 var487
= ((val
*(*)(val
* self
))(var_glob_sys
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_glob_sys
); /* to_s on <var_glob_sys:RuntimeVariable>*/
2325 ((struct instance_core__NativeArray
*)var478
)->values
[1]=var487
;
2327 var488
= ((val
*(*)(val
* self
))(var478
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var478
); /* native_to_s on <var478:NativeArray[String]>*/
2329 varonce477
= var478
;
2331 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var488
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2333 if (likely(varonce489
!=NULL
)) {
2334 var490
= varonce489
;
2337 var492
= core__flat___NativeString___to_s_full(var491
, 4l, 4l);
2339 varonce489
= var490
;
2342 { /* Inline model#MClassType#mclass (var_main_type) on <var_main_type:nullable MClassType(MClassType)> */
2343 var495
= var_main_type
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_main_type:nullable MClassType(MClassType)> */
2344 if (unlikely(var495
== NULL
)) {
2345 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
2346 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
2350 RET_LABEL494
:(void)0;
2354 var496
= nitc__model___MModule___try_get_primitive_method(var_mainmodule
, var490
, var493
);
2356 var_main_init
= var496
;
2357 if (var_main_init
== NULL
) {
2358 var497
= 0; /* is null */
2360 var497
= 1; /* arg is null and recv is not */
2363 { /* Inline kernel#Object#!= (var_main_init,((val*)NULL)) on <var_main_init:nullable MMethod> */
2364 var_other
= ((val
*)NULL
);
2366 var500
= ((short int(*)(val
* self
, val
* p0
))(var_main_init
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_main_init
, var_other
); /* == on <var_main_init:nullable MMethod(MMethod)>*/
2371 RET_LABEL499
:(void)0;
2376 var502
= NEW_core__Array(&type_core__Array__nitc__RuntimeVariable
);
2378 core___core__Array___with_capacity(var502
, 1l); /* Direct call array#Array#with_capacity on <var502:Array[RuntimeVariable]>*/
2382 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_503
, var_glob_sys
); /* Direct call array#AbstractArray#push on <var_503:Array[RuntimeVariable]>*/
2385 var504
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__send(var_v
, var_main_init
, var_503
);
2389 if (likely(varonce506
!=NULL
)) {
2390 var507
= varonce506
;
2393 var509
= core__flat___NativeString___to_s_full(var508
, 3l, 3l);
2395 varonce506
= var507
;
2398 { /* Inline model#MClassType#mclass (var_main_type) on <var_main_type:nullable MClassType(MClassType)> */
2399 var512
= var_main_type
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_main_type:nullable MClassType(MClassType)> */
2400 if (unlikely(var512
== NULL
)) {
2401 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
2402 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
2406 RET_LABEL511
:(void)0;
2410 var513
= nitc__model___MModule___try_get_primitive_method(var_mainmodule
, var507
, var510
);
2415 if (likely(varonce514
!=NULL
)) {
2416 var515
= varonce514
;
2419 var517
= core__flat___NativeString___to_s_full(var516
, 4l, 4l);
2421 varonce514
= var515
;
2424 { /* Inline model#MClassType#mclass (var_main_type) on <var_main_type:nullable MClassType(MClassType)> */
2425 var520
= var_main_type
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_main_type:nullable MClassType(MClassType)> */
2426 if (unlikely(var520
== NULL
)) {
2427 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
2428 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
2432 RET_LABEL519
:(void)0;
2436 var521
= nitc__model___MModule___try_get_primitive_method(var_mainmodule
, var515
, var518
);
2440 var_main_method
= var505
;
2441 if (var_main_method
== NULL
) {
2442 var522
= 0; /* is null */
2444 var522
= 1; /* arg is null and recv is not */
2447 { /* Inline kernel#Object#!= (var_main_method,((val*)NULL)) on <var_main_method:nullable MMethod> */
2448 var_other
= ((val
*)NULL
);
2450 var525
= ((short int(*)(val
* self
, val
* p0
))(var_main_method
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_main_method
, var_other
); /* == on <var_main_method:nullable MMethod(MMethod)>*/
2455 RET_LABEL524
:(void)0;
2460 var527
= NEW_core__Array(&type_core__Array__nitc__RuntimeVariable
);
2462 core___core__Array___with_capacity(var527
, 1l); /* Direct call array#Array#with_capacity on <var527:Array[RuntimeVariable]>*/
2466 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_528
, var_glob_sys
); /* Direct call array#AbstractArray#push on <var_528:Array[RuntimeVariable]>*/
2469 var529
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__send(var_v
, var_main_method
, var_528
);
2476 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on <self:AbstractCompiler> */
2477 var532
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <self:AbstractCompiler> */
2478 if (unlikely(var532
== NULL
)) {
2479 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
2480 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
2484 RET_LABEL531
:(void)0;
2488 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var530) on <var530:ModelBuilder> */
2489 var535
= var530
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var530:ModelBuilder> */
2490 if (unlikely(var535
== NULL
)) {
2491 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
2492 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
2496 RET_LABEL534
:(void)0;
2500 { /* Inline abstract_compiler#ToolContext#opt_typing_test_metrics (var533) on <var533:ToolContext> */
2501 var538
= var533
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics
].val
; /* _opt_typing_test_metrics on <var533:ToolContext> */
2502 if (unlikely(var538
== NULL
)) {
2503 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
2504 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 60);
2508 RET_LABEL537
:(void)0;
2512 { /* Inline opts#Option#value (var536) on <var536:OptionBool> */
2513 var541
= var536
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var536:OptionBool> */
2515 RET_LABEL540
:(void)0;
2518 var542
= (short int)((long)(var539
)>>2);
2520 if (likely(varonce543
!=NULL
)) {
2521 var544
= varonce543
;
2523 var545
= "long count_type_test_resolved_total = 0;";
2524 var546
= core__flat___NativeString___to_s_full(var545
, 40l, 40l);
2526 varonce543
= var544
;
2529 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var544
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2531 if (likely(varonce547
!=NULL
)) {
2532 var548
= varonce547
;
2534 var549
= "long count_type_test_unresolved_total = 0;";
2535 var550
= core__flat___NativeString___to_s_full(var549
, 42l, 42l);
2537 varonce547
= var548
;
2540 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var548
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2542 if (likely(varonce551
!=NULL
)) {
2543 var552
= varonce551
;
2545 var553
= "long count_type_test_skipped_total = 0;";
2546 var554
= core__flat___NativeString___to_s_full(var553
, 39l, 39l);
2548 varonce551
= var552
;
2551 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var552
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2553 if (likely(varonce555
!=NULL
)) {
2554 var556
= varonce555
;
2556 var557
= "long count_type_test_total_total = 0;";
2557 var558
= core__flat___NativeString___to_s_full(var557
, 37l, 37l);
2559 varonce555
= var556
;
2562 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var556
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2565 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_tags (self) on <self:AbstractCompiler> */
2566 var561
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_tags
].val
; /* _count_type_test_tags on <self:AbstractCompiler> */
2567 if (unlikely(var561
== NULL
)) {
2568 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_tags");
2569 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1045);
2573 RET_LABEL560
:(void)0;
2578 var563
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_562
);
2583 var565
= ((short int(*)(val
* self
))((((long)var_564
&3)?class_info
[((long)var_564
&3)]:var_564
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_564
); /* is_ok on <var_564:IndexedIterator[String]>*/
2587 goto BREAK_label566
;
2590 var567
= ((val
*(*)(val
* self
))((((long)var_564
&3)?class_info
[((long)var_564
&3)]:var_564
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_564
); /* item on <var_564:IndexedIterator[String]>*/
2592 var_tag568
= var567
;
2593 if (unlikely(varonce569
==NULL
)) {
2594 var570
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2595 if (likely(varonce571
!=NULL
)) {
2596 var572
= varonce571
;
2598 var573
= "long count_type_test_total_";
2599 var574
= core__flat___NativeString___to_s_full(var573
, 27l, 27l);
2601 varonce571
= var572
;
2603 ((struct instance_core__NativeArray
*)var570
)->values
[0]=var572
;
2604 if (likely(varonce575
!=NULL
)) {
2605 var576
= varonce575
;
2608 var578
= core__flat___NativeString___to_s_full(var577
, 1l, 1l);
2610 varonce575
= var576
;
2612 ((struct instance_core__NativeArray
*)var570
)->values
[2]=var576
;
2614 var570
= varonce569
;
2617 ((struct instance_core__NativeArray
*)var570
)->values
[1]=var_tag568
;
2619 var579
= ((val
*(*)(val
* self
))(var570
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var570
); /* native_to_s on <var570:NativeArray[String]>*/
2621 varonce569
= var570
;
2623 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var579
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
2625 if (unlikely(varonce580
==NULL
)) {
2626 var581
= NEW_core__NativeArray(9l, &type_core__NativeArray__core__String
);
2627 if (likely(varonce582
!=NULL
)) {
2628 var583
= varonce582
;
2630 var584
= "count_type_test_total_";
2631 var585
= core__flat___NativeString___to_s_full(var584
, 22l, 22l);
2633 varonce582
= var583
;
2635 ((struct instance_core__NativeArray
*)var581
)->values
[0]=var583
;
2636 if (likely(varonce586
!=NULL
)) {
2637 var587
= varonce586
;
2639 var588
= " = count_type_test_resolved_";
2640 var589
= core__flat___NativeString___to_s_full(var588
, 28l, 28l);
2642 varonce586
= var587
;
2644 ((struct instance_core__NativeArray
*)var581
)->values
[2]=var587
;
2645 if (likely(varonce590
!=NULL
)) {
2646 var591
= varonce590
;
2648 var592
= " + count_type_test_unresolved_";
2649 var593
= core__flat___NativeString___to_s_full(var592
, 30l, 30l);
2651 varonce590
= var591
;
2653 ((struct instance_core__NativeArray
*)var581
)->values
[4]=var591
;
2654 if (likely(varonce594
!=NULL
)) {
2655 var595
= varonce594
;
2657 var596
= " + count_type_test_skipped_";
2658 var597
= core__flat___NativeString___to_s_full(var596
, 27l, 27l);
2660 varonce594
= var595
;
2662 ((struct instance_core__NativeArray
*)var581
)->values
[6]=var595
;
2663 if (likely(varonce598
!=NULL
)) {
2664 var599
= varonce598
;
2667 var601
= core__flat___NativeString___to_s_full(var600
, 1l, 1l);
2669 varonce598
= var599
;
2671 ((struct instance_core__NativeArray
*)var581
)->values
[8]=var599
;
2673 var581
= varonce580
;
2676 ((struct instance_core__NativeArray
*)var581
)->values
[1]=var_tag568
;
2677 ((struct instance_core__NativeArray
*)var581
)->values
[3]=var_tag568
;
2678 ((struct instance_core__NativeArray
*)var581
)->values
[5]=var_tag568
;
2679 ((struct instance_core__NativeArray
*)var581
)->values
[7]=var_tag568
;
2681 var602
= ((val
*(*)(val
* self
))(var581
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var581
); /* native_to_s on <var581:NativeArray[String]>*/
2683 varonce580
= var581
;
2685 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var602
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2687 if (unlikely(varonce603
==NULL
)) {
2688 var604
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2689 if (likely(varonce605
!=NULL
)) {
2690 var606
= varonce605
;
2692 var607
= "count_type_test_resolved_total += count_type_test_resolved_";
2693 var608
= core__flat___NativeString___to_s_full(var607
, 59l, 59l);
2695 varonce605
= var606
;
2697 ((struct instance_core__NativeArray
*)var604
)->values
[0]=var606
;
2698 if (likely(varonce609
!=NULL
)) {
2699 var610
= varonce609
;
2702 var612
= core__flat___NativeString___to_s_full(var611
, 1l, 1l);
2704 varonce609
= var610
;
2706 ((struct instance_core__NativeArray
*)var604
)->values
[2]=var610
;
2708 var604
= varonce603
;
2711 ((struct instance_core__NativeArray
*)var604
)->values
[1]=var_tag568
;
2713 var613
= ((val
*(*)(val
* self
))(var604
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var604
); /* native_to_s on <var604:NativeArray[String]>*/
2715 varonce603
= var604
;
2717 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var613
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2719 if (unlikely(varonce614
==NULL
)) {
2720 var615
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2721 if (likely(varonce616
!=NULL
)) {
2722 var617
= varonce616
;
2724 var618
= "count_type_test_unresolved_total += count_type_test_unresolved_";
2725 var619
= core__flat___NativeString___to_s_full(var618
, 63l, 63l);
2727 varonce616
= var617
;
2729 ((struct instance_core__NativeArray
*)var615
)->values
[0]=var617
;
2730 if (likely(varonce620
!=NULL
)) {
2731 var621
= varonce620
;
2734 var623
= core__flat___NativeString___to_s_full(var622
, 1l, 1l);
2736 varonce620
= var621
;
2738 ((struct instance_core__NativeArray
*)var615
)->values
[2]=var621
;
2740 var615
= varonce614
;
2743 ((struct instance_core__NativeArray
*)var615
)->values
[1]=var_tag568
;
2745 var624
= ((val
*(*)(val
* self
))(var615
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var615
); /* native_to_s on <var615:NativeArray[String]>*/
2747 varonce614
= var615
;
2749 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var624
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2751 if (unlikely(varonce625
==NULL
)) {
2752 var626
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2753 if (likely(varonce627
!=NULL
)) {
2754 var628
= varonce627
;
2756 var629
= "count_type_test_skipped_total += count_type_test_skipped_";
2757 var630
= core__flat___NativeString___to_s_full(var629
, 57l, 57l);
2759 varonce627
= var628
;
2761 ((struct instance_core__NativeArray
*)var626
)->values
[0]=var628
;
2762 if (likely(varonce631
!=NULL
)) {
2763 var632
= varonce631
;
2766 var634
= core__flat___NativeString___to_s_full(var633
, 1l, 1l);
2768 varonce631
= var632
;
2770 ((struct instance_core__NativeArray
*)var626
)->values
[2]=var632
;
2772 var626
= varonce625
;
2775 ((struct instance_core__NativeArray
*)var626
)->values
[1]=var_tag568
;
2777 var635
= ((val
*(*)(val
* self
))(var626
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var626
); /* native_to_s on <var626:NativeArray[String]>*/
2779 varonce625
= var626
;
2781 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var635
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2783 if (unlikely(varonce636
==NULL
)) {
2784 var637
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2785 if (likely(varonce638
!=NULL
)) {
2786 var639
= varonce638
;
2788 var640
= "count_type_test_total_total += count_type_test_total_";
2789 var641
= core__flat___NativeString___to_s_full(var640
, 53l, 53l);
2791 varonce638
= var639
;
2793 ((struct instance_core__NativeArray
*)var637
)->values
[0]=var639
;
2794 if (likely(varonce642
!=NULL
)) {
2795 var643
= varonce642
;
2798 var645
= core__flat___NativeString___to_s_full(var644
, 1l, 1l);
2800 varonce642
= var643
;
2802 ((struct instance_core__NativeArray
*)var637
)->values
[2]=var643
;
2804 var637
= varonce636
;
2807 ((struct instance_core__NativeArray
*)var637
)->values
[1]=var_tag568
;
2809 var646
= ((val
*(*)(val
* self
))(var637
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var637
); /* native_to_s on <var637:NativeArray[String]>*/
2811 varonce636
= var637
;
2813 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var646
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2816 ((void(*)(val
* self
))((((long)var_564
&3)?class_info
[((long)var_564
&3)]:var_564
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_564
); /* next on <var_564:IndexedIterator[String]>*/
2819 BREAK_label566
: (void)0;
2821 ((void(*)(val
* self
))((((long)var_564
&3)?class_info
[((long)var_564
&3)]:var_564
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_564
); /* finish on <var_564:IndexedIterator[String]>*/
2823 if (likely(varonce647
!=NULL
)) {
2824 var648
= varonce647
;
2826 var649
= "printf(\"# dynamic count_type_test: total %l\\n\");";
2827 var650
= core__flat___NativeString___to_s_full(var649
, 48l, 48l);
2829 varonce647
= var648
;
2832 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var648
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2834 if (likely(varonce651
!=NULL
)) {
2835 var652
= varonce651
;
2837 var653
= "printf(\"\\tresolved\\tunresolved\\tskipped\\ttotal\\n\");";
2838 var654
= core__flat___NativeString___to_s_full(var653
, 51l, 51l);
2840 varonce651
= var652
;
2843 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var652
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2846 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_tags (self) on <self:AbstractCompiler> */
2847 var657
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_tags
].val
; /* _count_type_test_tags on <self:AbstractCompiler> */
2848 if (unlikely(var657
== NULL
)) {
2849 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_tags");
2850 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1045);
2854 RET_LABEL656
:(void)0;
2858 var658
= core__array___Collection___to_a(var655
);
2861 if (likely(varonce659
!=NULL
)) {
2862 var660
= varonce659
;
2865 var662
= core__flat___NativeString___to_s_full(var661
, 5l, 5l);
2867 varonce659
= var660
;
2870 core___core__Array___core__abstract_collection__SimpleCollection__add(var_tags
, var660
); /* Direct call array#Array#add on <var_tags:Array[String]>*/
2874 var664
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_663
);
2879 var666
= ((short int(*)(val
* self
))((((long)var_665
&3)?class_info
[((long)var_665
&3)]:var_665
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_665
); /* is_ok on <var_665:IndexedIterator[String]>*/
2883 goto BREAK_label667
;
2886 var668
= ((val
*(*)(val
* self
))((((long)var_665
&3)?class_info
[((long)var_665
&3)]:var_665
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_665
); /* item on <var_665:IndexedIterator[String]>*/
2888 var_tag669
= var668
;
2889 if (unlikely(varonce670
==NULL
)) {
2890 var671
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2891 if (likely(varonce672
!=NULL
)) {
2892 var673
= varonce672
;
2894 var674
= "printf(\"";
2895 var675
= core__flat___NativeString___to_s_full(var674
, 8l, 8l);
2897 varonce672
= var673
;
2899 ((struct instance_core__NativeArray
*)var671
)->values
[0]=var673
;
2900 if (likely(varonce676
!=NULL
)) {
2901 var677
= varonce676
;
2904 var679
= core__flat___NativeString___to_s_full(var678
, 3l, 3l);
2906 varonce676
= var677
;
2908 ((struct instance_core__NativeArray
*)var671
)->values
[2]=var677
;
2910 var671
= varonce670
;
2913 ((struct instance_core__NativeArray
*)var671
)->values
[1]=var_tag669
;
2915 var680
= ((val
*(*)(val
* self
))(var671
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var671
); /* native_to_s on <var671:NativeArray[String]>*/
2917 varonce670
= var671
;
2919 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var680
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2921 if (unlikely(varonce681
==NULL
)) {
2922 var682
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
2923 if (likely(varonce683
!=NULL
)) {
2924 var684
= varonce683
;
2926 var685
= "printf(\"\\t%ld (%.2f%%)\", count_type_test_resolved_";
2927 var686
= core__flat___NativeString___to_s_full(var685
, 50l, 50l);
2929 varonce683
= var684
;
2931 ((struct instance_core__NativeArray
*)var682
)->values
[0]=var684
;
2932 if (likely(varonce687
!=NULL
)) {
2933 var688
= varonce687
;
2935 var689
= ", 100.0*count_type_test_resolved_";
2936 var690
= core__flat___NativeString___to_s_full(var689
, 33l, 33l);
2938 varonce687
= var688
;
2940 ((struct instance_core__NativeArray
*)var682
)->values
[2]=var688
;
2941 if (likely(varonce691
!=NULL
)) {
2942 var692
= varonce691
;
2944 var693
= "/count_type_test_total_total);";
2945 var694
= core__flat___NativeString___to_s_full(var693
, 30l, 30l);
2947 varonce691
= var692
;
2949 ((struct instance_core__NativeArray
*)var682
)->values
[4]=var692
;
2951 var682
= varonce681
;
2954 ((struct instance_core__NativeArray
*)var682
)->values
[1]=var_tag669
;
2955 ((struct instance_core__NativeArray
*)var682
)->values
[3]=var_tag669
;
2957 var695
= ((val
*(*)(val
* self
))(var682
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var682
); /* native_to_s on <var682:NativeArray[String]>*/
2959 varonce681
= var682
;
2961 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var695
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
2963 if (unlikely(varonce696
==NULL
)) {
2964 var697
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
2965 if (likely(varonce698
!=NULL
)) {
2966 var699
= varonce698
;
2968 var700
= "printf(\"\\t%ld (%.2f%%)\", count_type_test_unresolved_";
2969 var701
= core__flat___NativeString___to_s_full(var700
, 52l, 52l);
2971 varonce698
= var699
;
2973 ((struct instance_core__NativeArray
*)var697
)->values
[0]=var699
;
2974 if (likely(varonce702
!=NULL
)) {
2975 var703
= varonce702
;
2977 var704
= ", 100.0*count_type_test_unresolved_";
2978 var705
= core__flat___NativeString___to_s_full(var704
, 35l, 35l);
2980 varonce702
= var703
;
2982 ((struct instance_core__NativeArray
*)var697
)->values
[2]=var703
;
2983 if (likely(varonce706
!=NULL
)) {
2984 var707
= varonce706
;
2986 var708
= "/count_type_test_total_total);";
2987 var709
= core__flat___NativeString___to_s_full(var708
, 30l, 30l);
2989 varonce706
= var707
;
2991 ((struct instance_core__NativeArray
*)var697
)->values
[4]=var707
;
2993 var697
= varonce696
;
2996 ((struct instance_core__NativeArray
*)var697
)->values
[1]=var_tag669
;
2997 ((struct instance_core__NativeArray
*)var697
)->values
[3]=var_tag669
;
2999 var710
= ((val
*(*)(val
* self
))(var697
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var697
); /* native_to_s on <var697:NativeArray[String]>*/
3001 varonce696
= var697
;
3003 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var710
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3005 if (unlikely(varonce711
==NULL
)) {
3006 var712
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
3007 if (likely(varonce713
!=NULL
)) {
3008 var714
= varonce713
;
3010 var715
= "printf(\"\\t%ld (%.2f%%)\", count_type_test_skipped_";
3011 var716
= core__flat___NativeString___to_s_full(var715
, 49l, 49l);
3013 varonce713
= var714
;
3015 ((struct instance_core__NativeArray
*)var712
)->values
[0]=var714
;
3016 if (likely(varonce717
!=NULL
)) {
3017 var718
= varonce717
;
3019 var719
= ", 100.0*count_type_test_skipped_";
3020 var720
= core__flat___NativeString___to_s_full(var719
, 32l, 32l);
3022 varonce717
= var718
;
3024 ((struct instance_core__NativeArray
*)var712
)->values
[2]=var718
;
3025 if (likely(varonce721
!=NULL
)) {
3026 var722
= varonce721
;
3028 var723
= "/count_type_test_total_total);";
3029 var724
= core__flat___NativeString___to_s_full(var723
, 30l, 30l);
3031 varonce721
= var722
;
3033 ((struct instance_core__NativeArray
*)var712
)->values
[4]=var722
;
3035 var712
= varonce711
;
3038 ((struct instance_core__NativeArray
*)var712
)->values
[1]=var_tag669
;
3039 ((struct instance_core__NativeArray
*)var712
)->values
[3]=var_tag669
;
3041 var725
= ((val
*(*)(val
* self
))(var712
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var712
); /* native_to_s on <var712:NativeArray[String]>*/
3043 varonce711
= var712
;
3045 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var725
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3047 if (unlikely(varonce726
==NULL
)) {
3048 var727
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
3049 if (likely(varonce728
!=NULL
)) {
3050 var729
= varonce728
;
3052 var730
= "printf(\"\\t%ld (%.2f%%)\\n\", count_type_test_total_";
3053 var731
= core__flat___NativeString___to_s_full(var730
, 49l, 49l);
3055 varonce728
= var729
;
3057 ((struct instance_core__NativeArray
*)var727
)->values
[0]=var729
;
3058 if (likely(varonce732
!=NULL
)) {
3059 var733
= varonce732
;
3061 var734
= ", 100.0*count_type_test_total_";
3062 var735
= core__flat___NativeString___to_s_full(var734
, 30l, 30l);
3064 varonce732
= var733
;
3066 ((struct instance_core__NativeArray
*)var727
)->values
[2]=var733
;
3067 if (likely(varonce736
!=NULL
)) {
3068 var737
= varonce736
;
3070 var738
= "/count_type_test_total_total);";
3071 var739
= core__flat___NativeString___to_s_full(var738
, 30l, 30l);
3073 varonce736
= var737
;
3075 ((struct instance_core__NativeArray
*)var727
)->values
[4]=var737
;
3077 var727
= varonce726
;
3080 ((struct instance_core__NativeArray
*)var727
)->values
[1]=var_tag669
;
3081 ((struct instance_core__NativeArray
*)var727
)->values
[3]=var_tag669
;
3083 var740
= ((val
*(*)(val
* self
))(var727
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var727
); /* native_to_s on <var727:NativeArray[String]>*/
3085 varonce726
= var727
;
3087 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var740
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3090 ((void(*)(val
* self
))((((long)var_665
&3)?class_info
[((long)var_665
&3)]:var_665
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_665
); /* next on <var_665:IndexedIterator[String]>*/
3093 BREAK_label667
: (void)0;
3095 ((void(*)(val
* self
))((((long)var_665
&3)?class_info
[((long)var_665
&3)]:var_665
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_665
); /* finish on <var_665:IndexedIterator[String]>*/
3100 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on <self:AbstractCompiler> */
3101 var743
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <self:AbstractCompiler> */
3102 if (unlikely(var743
== NULL
)) {
3103 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
3104 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
3108 RET_LABEL742
:(void)0;
3112 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var741) on <var741:ModelBuilder> */
3113 var746
= var741
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var741:ModelBuilder> */
3114 if (unlikely(var746
== NULL
)) {
3115 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3116 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
3120 RET_LABEL745
:(void)0;
3124 { /* Inline abstract_compiler#ToolContext#opt_invocation_metrics (var744) on <var744:ToolContext> */
3125 var749
= var744
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_invocation_metrics
].val
; /* _opt_invocation_metrics on <var744:ToolContext> */
3126 if (unlikely(var749
== NULL
)) {
3127 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_invocation_metrics");
3128 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 62);
3132 RET_LABEL748
:(void)0;
3136 { /* Inline opts#Option#value (var747) on <var747:OptionBool> */
3137 var752
= var747
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var747:OptionBool> */
3139 RET_LABEL751
:(void)0;
3142 var753
= (short int)((long)(var750
)>>2);
3144 if (likely(varonce754
!=NULL
)) {
3145 var755
= varonce754
;
3147 var756
= "long count_invoke_total;";
3148 var757
= core__flat___NativeString___to_s_full(var756
, 24l, 24l);
3150 varonce754
= var755
;
3153 nitc___nitc__AbstractCompilerVisitor___add_decl(var_v
, var755
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
3155 if (likely(varonce758
!=NULL
)) {
3156 var759
= varonce758
;
3158 var760
= "count_invoke_total = count_invoke_by_tables + count_invoke_by_direct + count_invoke_by_inline;";
3159 var761
= core__flat___NativeString___to_s_full(var760
, 94l, 94l);
3161 varonce758
= var759
;
3164 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var759
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3166 if (likely(varonce762
!=NULL
)) {
3167 var763
= varonce762
;
3169 var764
= "printf(\"# dynamic count_invocation: total %ld\\n\", count_invoke_total);";
3170 var765
= core__flat___NativeString___to_s_full(var764
, 70l, 70l);
3172 varonce762
= var763
;
3175 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var763
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3177 if (likely(varonce766
!=NULL
)) {
3178 var767
= varonce766
;
3180 var768
= "printf(\"by table: %ld (%.2f%%)\\n\", count_invoke_by_tables, 100.0*count_invoke_by_tables/count_invoke_total);";
3181 var769
= core__flat___NativeString___to_s_full(var768
, 108l, 108l);
3183 varonce766
= var767
;
3186 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var767
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3188 if (likely(varonce770
!=NULL
)) {
3189 var771
= varonce770
;
3191 var772
= "printf(\"direct: %ld (%.2f%%)\\n\", count_invoke_by_direct, 100.0*count_invoke_by_direct/count_invoke_total);";
3192 var773
= core__flat___NativeString___to_s_full(var772
, 108l, 108l);
3194 varonce770
= var771
;
3197 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var771
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3199 if (likely(varonce774
!=NULL
)) {
3200 var775
= varonce774
;
3202 var776
= "printf(\"inlined: %ld (%.2f%%)\\n\", count_invoke_by_inline, 100.0*count_invoke_by_inline/count_invoke_total);";
3203 var777
= core__flat___NativeString___to_s_full(var776
, 108l, 108l);
3205 varonce774
= var775
;
3208 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var775
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3213 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on <self:AbstractCompiler> */
3214 var780
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <self:AbstractCompiler> */
3215 if (unlikely(var780
== NULL
)) {
3216 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
3217 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
3221 RET_LABEL779
:(void)0;
3225 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var778) on <var778:ModelBuilder> */
3226 var783
= var778
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var778:ModelBuilder> */
3227 if (unlikely(var783
== NULL
)) {
3228 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3229 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
3233 RET_LABEL782
:(void)0;
3237 { /* Inline abstract_compiler#ToolContext#opt_isset_checks_metrics (var781) on <var781:ToolContext> */
3238 var786
= var781
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_isset_checks_metrics
].val
; /* _opt_isset_checks_metrics on <var781:ToolContext> */
3239 if (unlikely(var786
== NULL
)) {
3240 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_isset_checks_metrics");
3241 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 64);
3245 RET_LABEL785
:(void)0;
3249 { /* Inline opts#Option#value (var784) on <var784:OptionBool> */
3250 var789
= var784
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var784:OptionBool> */
3252 RET_LABEL788
:(void)0;
3255 var790
= (short int)((long)(var787
)>>2);
3257 if (likely(varonce791
!=NULL
)) {
3258 var792
= varonce791
;
3260 var793
= "printf(\"# dynamic attribute reads: %ld\\n\", count_attr_reads);";
3261 var794
= core__flat___NativeString___to_s_full(var793
, 61l, 61l);
3263 varonce791
= var792
;
3266 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var792
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3268 if (likely(varonce795
!=NULL
)) {
3269 var796
= varonce795
;
3271 var797
= "printf(\"# dynamic isset checks: %ld\\n\", count_isset_checks);";
3272 var798
= core__flat___NativeString___to_s_full(var797
, 60l, 60l);
3274 varonce795
= var796
;
3277 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var796
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3281 if (likely(varonce799
!=NULL
)) {
3282 var800
= varonce799
;
3284 var801
= "return 0;";
3285 var802
= core__flat___NativeString___to_s_full(var801
, 9l, 9l);
3287 varonce799
= var800
;
3290 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var800
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3292 if (likely(varonce803
!=NULL
)) {
3293 var804
= varonce803
;
3296 var806
= core__flat___NativeString___to_s_full(var805
, 1l, 1l);
3298 varonce803
= var804
;
3301 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var804
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3304 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on <self:AbstractCompiler> */
3305 var809
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <self:AbstractCompiler> */
3306 if (unlikely(var809
== NULL
)) {
3307 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
3308 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
3312 RET_LABEL808
:(void)0;
3316 { /* Inline mmodule#MModule#in_importation (var807) on <var807:MModule> */
3317 var812
= var807
->attrs
[COLOR_nitc__mmodule__MModule___in_importation
].val
; /* _in_importation on <var807:MModule> */
3318 if (unlikely(var812
== NULL
)) {
3319 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_importation");
3320 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule
, 104);
3324 RET_LABEL811
:(void)0;
3328 var813
= poset___poset__POSetElement___greaters(var810
);
3332 var815
= ((val
*(*)(val
* self
))((((long)var_814
&3)?class_info
[((long)var_814
&3)]:var_814
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_814
); /* iterator on <var_814:Collection[MModule]>*/
3337 var817
= ((short int(*)(val
* self
))((((long)var_816
&3)?class_info
[((long)var_816
&3)]:var_816
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_816
); /* is_ok on <var_816:Iterator[MModule]>*/
3341 goto BREAK_label818
;
3344 var819
= ((val
*(*)(val
* self
))((((long)var_816
&3)?class_info
[((long)var_816
&3)]:var_816
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_816
); /* item on <var_816:Iterator[MModule]>*/
3347 if (likely(varonce820
!=NULL
)) {
3348 var821
= varonce820
;
3351 var823
= core__flat___NativeString___to_s_full(var822
, 5l, 5l);
3353 varonce820
= var821
;
3356 var824
= nitc___nitc__MModule___nitc__model_base__MEntity__c_name(var_m
);
3359 var825
= ((val
*(*)(val
* self
, val
* p0
))(var821
->class->vft
[COLOR_core__abstract_text__String___43d
]))(var821
, var824
); /* + on <var821:String>*/
3362 if (unlikely(varonce826
==NULL
)) {
3363 var827
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
3364 if (likely(varonce828
!=NULL
)) {
3365 var829
= varonce828
;
3367 var830
= "const char ";
3368 var831
= core__flat___NativeString___to_s_full(var830
, 11l, 11l);
3370 varonce828
= var829
;
3372 ((struct instance_core__NativeArray
*)var827
)->values
[0]=var829
;
3373 if (likely(varonce832
!=NULL
)) {
3374 var833
= varonce832
;
3377 var835
= core__flat___NativeString___to_s_full(var834
, 6l, 6l);
3379 varonce832
= var833
;
3381 ((struct instance_core__NativeArray
*)var827
)->values
[2]=var833
;
3382 if (likely(varonce836
!=NULL
)) {
3383 var837
= varonce836
;
3386 var839
= core__flat___NativeString___to_s_full(var838
, 2l, 2l);
3388 varonce836
= var837
;
3390 ((struct instance_core__NativeArray
*)var827
)->values
[4]=var837
;
3392 var827
= varonce826
;
3395 ((struct instance_core__NativeArray
*)var827
)->values
[1]=var_f
;
3397 { /* Inline mmodule#MModule#location (var_m) on <var_m:MModule> */
3398 var842
= var_m
->attrs
[COLOR_nitc__mmodule__MModule___location
].val
; /* _location on <var_m:MModule> */
3399 if (unlikely(var842
== NULL
)) {
3400 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
3401 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule
, 98);
3405 RET_LABEL841
:(void)0;
3409 { /* Inline location#Location#file (var840) on <var840:Location> */
3410 var845
= var840
->attrs
[COLOR_nitc__location__Location___file
].val
; /* _file on <var840:Location> */
3412 RET_LABEL844
:(void)0;
3415 if (var843
== NULL
) {
3416 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3417 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 944);
3420 { /* Inline location#SourceFile#filename (var843) on <var843:nullable SourceFile> */
3421 if (unlikely(var843
== NULL
)) {
3422 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3423 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__location
, 22);
3426 var848
= var843
->attrs
[COLOR_nitc__location__SourceFile___filename
].val
; /* _filename on <var843:nullable SourceFile> */
3427 if (unlikely(var848
== NULL
)) {
3428 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
3429 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__location
, 22);
3433 RET_LABEL847
:(void)0;
3437 var849
= ((val
*(*)(val
* self
))(var846
->class->vft
[COLOR_core__abstract_text__Text__escape_to_c
]))(var846
); /* escape_to_c on <var846:String>*/
3439 ((struct instance_core__NativeArray
*)var827
)->values
[3]=var849
;
3441 var850
= ((val
*(*)(val
* self
))(var827
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var827
); /* native_to_s on <var827:NativeArray[String]>*/
3443 varonce826
= var827
;
3445 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var850
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3447 if (unlikely(varonce851
==NULL
)) {
3448 var852
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
3449 if (likely(varonce853
!=NULL
)) {
3450 var854
= varonce853
;
3452 var855
= "extern const char ";
3453 var856
= core__flat___NativeString___to_s_full(var855
, 18l, 18l);
3455 varonce853
= var854
;
3457 ((struct instance_core__NativeArray
*)var852
)->values
[0]=var854
;
3458 if (likely(varonce857
!=NULL
)) {
3459 var858
= varonce857
;
3462 var860
= core__flat___NativeString___to_s_full(var859
, 3l, 3l);
3464 varonce857
= var858
;
3466 ((struct instance_core__NativeArray
*)var852
)->values
[2]=var858
;
3468 var852
= varonce851
;
3471 ((struct instance_core__NativeArray
*)var852
)->values
[1]=var_f
;
3473 var861
= ((val
*(*)(val
* self
))(var852
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var852
); /* native_to_s on <var852:NativeArray[String]>*/
3475 varonce851
= var852
;
3477 nitc___nitc__AbstractCompiler___provide_declaration(self
, var_f
, var861
); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on <self:AbstractCompiler>*/
3480 ((void(*)(val
* self
))((((long)var_816
&3)?class_info
[((long)var_816
&3)]:var_816
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_816
); /* next on <var_816:Iterator[MModule]>*/
3483 BREAK_label818
: (void)0;
3485 ((void(*)(val
* self
))((((long)var_816
&3)?class_info
[((long)var_816
&3)]:var_816
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_816
); /* finish on <var_816:Iterator[MModule]>*/
3489 /* method abstract_compiler#AbstractCompiler#compile_nitni_global_ref_functions for (self: AbstractCompiler) */
3490 void nitc___nitc__AbstractCompiler___compile_nitni_global_ref_functions(val
* self
) {
3491 val
* var
/* : AbstractCompilerVisitor */;
3492 val
* var_v
/* var v: AbstractCompilerVisitor */;
3493 static val
* varonce
;
3494 val
* var1
/* : String */;
3495 char* var2
/* : NativeString */;
3496 val
* var3
/* : String */;
3498 var
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__abstract_compiler__AbstractCompiler__new_visitor
]))(self
); /* new_visitor on <self:AbstractCompiler>*/
3501 if (likely(varonce
!=NULL
)) {
3504 var2
= "struct nitni_global_ref_list_t *nitni_global_ref_list;\nvoid initialize_nitni_global_refs() {\n\tnitni_global_ref_list = (struct nitni_global_ref_list_t*)nit_alloc(sizeof(struct nitni_global_ref_list_t));\n\tnitni_global_ref_list->head = NULL;\n\tnitni_global_ref_list->tail = NULL;\n}\n\nvoid nitni_global_ref_add( struct nitni_ref *ref ) {\n\tif ( nitni_global_ref_list->head == NULL ) {\n\t\tnitni_global_ref_list->head = ref;\n\t\tref->prev = NULL;\n\t} else {\n\t\tnitni_global_ref_list->tail->next = ref;\n\t\tref->prev = nitni_global_ref_list->tail;\n\t}\n\tnitni_global_ref_list->tail = ref;\n\n\tref->next = NULL;\n}\n\nvoid nitni_global_ref_remove( struct nitni_ref *ref ) {\n\tif ( ref->prev == NULL ) {\n\t\tnitni_global_ref_list->head = ref->next;\n\t} else {\n\t\tref->prev->next = ref->next;\n\t}\n\n\tif ( ref->next == NULL ) {\n\t\tnitni_global_ref_list->tail = ref->prev;\n\t} else {\n\t\tref->next->prev = ref->prev;\n\t}\n}\n\nextern void nitni_global_ref_incr( struct nitni_ref *ref ) {\n\tif ( ref->count == 0 ) /* not registered */\n\t{\n\t\t/* add to list */\n\t\tnitni_global_ref_add( ref );\n\t}\n\n\tref->count ++;\n}\n\nextern void nitni_global_ref_decr( struct nitni_ref *ref ) {\n\tif ( ref->count == 1 ) /* was last reference */\n\t{\n\t\t/* remove from list */\n\t\tnitni_global_ref_remove( ref );\n\t}\n\n\tref->count --;\n}\n";
3505 var3
= core__flat___NativeString___to_s_full(var2
, 1260l, 1260l);
3510 nitc___nitc__AbstractCompilerVisitor___add(var_v
, var1
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
3514 /* method abstract_compiler#AbstractCompiler#extern_bodies for (self: AbstractCompiler): Array[ExternFile] */
3515 val
* nitc___nitc__AbstractCompiler___extern_bodies(val
* self
) {
3516 val
* var
/* : Array[ExternFile] */;
3517 val
* var1
/* : Array[ExternFile] */;
3518 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___extern_bodies
].val
; /* _extern_bodies on <self:AbstractCompiler> */
3519 if (unlikely(var1
== NULL
)) {
3520 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _extern_bodies");
3521 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1010);
3528 /* method abstract_compiler#AbstractCompiler#files_to_copy for (self: AbstractCompiler): Array[String] */
3529 val
* nitc___nitc__AbstractCompiler___files_to_copy(val
* self
) {
3530 val
* var
/* : Array[String] */;
3531 val
* var1
/* : Array[String] */;
3532 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___files_to_copy
].val
; /* _files_to_copy on <self:AbstractCompiler> */
3533 if (unlikely(var1
== NULL
)) {
3534 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _files_to_copy");
3535 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1013);
3542 /* method abstract_compiler#AbstractCompiler#seen_extern for (self: AbstractCompiler): ArraySet[String] */
3543 val
* nitc___nitc__AbstractCompiler___seen_extern(val
* self
) {
3544 val
* var
/* : ArraySet[String] */;
3545 val
* var1
/* : ArraySet[String] */;
3546 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___seen_extern
].val
; /* _seen_extern on <self:AbstractCompiler> */
3547 if (unlikely(var1
== NULL
)) {
3548 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _seen_extern");
3549 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1016);
3556 /* method abstract_compiler#AbstractCompiler#generate_init_attr for (self: AbstractCompiler, AbstractCompilerVisitor, RuntimeVariable, MClassType) */
3557 void nitc___nitc__AbstractCompiler___generate_init_attr(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
3558 short int var
/* : Bool */;
3561 const struct type
* type_struct
;
3562 const char* var_class_name
;
3563 val
* var_v
/* var v: AbstractCompilerVisitor */;
3564 val
* var_recv
/* var recv: RuntimeVariable */;
3565 val
* var_mtype
/* var mtype: MClassType */;
3566 val
* var1
/* : MModule */;
3567 val
* var3
/* : MModule */;
3568 val
* var4
/* : Set[MClassDef] */;
3569 val
* var5
/* : Array[nullable Object] */;
3570 val
* var_cds
/* var cds: Array[MClassDef] */;
3571 val
* var6
/* : MModule */;
3572 val
* var8
/* : MModule */;
3573 val
* var_
/* var : Array[MClassDef] */;
3574 val
* var9
/* : IndexedIterator[nullable Object] */;
3575 val
* var_10
/* var : IndexedIterator[MClassDef] */;
3576 short int var11
/* : Bool */;
3577 val
* var12
/* : nullable Object */;
3578 val
* var_cd
/* var cd: MClassDef */;
3579 val
* var13
/* : ModelBuilder */;
3580 val
* var15
/* : ModelBuilder */;
3581 val
* var16
/* : Array[AAttrPropdef] */;
3582 val
* var_17
/* var : Array[AAttrPropdef] */;
3583 val
* var18
/* : IndexedIterator[nullable Object] */;
3584 val
* var_19
/* var : IndexedIterator[AAttrPropdef] */;
3585 short int var20
/* : Bool */;
3586 val
* var22
/* : nullable Object */;
3587 val
* var_npropdef
/* var npropdef: AAttrPropdef */;
3588 /* Covariant cast for argument 0 (v) <p0:AbstractCompilerVisitor> isa VISITOR */
3589 /* <p0:AbstractCompilerVisitor> isa VISITOR */
3590 type_struct
= self
->type
->resolution_table
->types
[COLOR_nitc__abstract_compiler__AbstractCompiler__VISITOR
];
3591 cltype
= type_struct
->color
;
3592 idtype
= type_struct
->id
;
3593 if(cltype
>= p0
->type
->table_size
) {
3596 var
= p0
->type
->type_table
[cltype
] == idtype
;
3598 if (unlikely(!var
)) {
3599 var_class_name
= p0
== NULL ?
"null" : p0
->type
->name
;
3600 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "VISITOR", var_class_name
);
3601 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1019);
3608 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on <self:AbstractCompiler> */
3609 var3
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <self:AbstractCompiler> */
3610 if (unlikely(var3
== NULL
)) {
3611 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
3612 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
3620 var4
= nitc___nitc__MClassType___MType__collect_mclassdefs(var_mtype
, var1
);
3623 var5
= core__array___Collection___to_a(var4
);
3627 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (self) on <self:AbstractCompiler> */
3628 var8
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <self:AbstractCompiler> */
3629 if (unlikely(var8
== NULL
)) {
3630 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
3631 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
3639 nitc__model___MModule___linearize_mclassdefs(var6
, var_cds
); /* Direct call model#MModule#linearize_mclassdefs on <var6:MModule>*/
3643 var9
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_
);
3648 var11
= ((short int(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_10
); /* is_ok on <var_10:IndexedIterator[MClassDef]>*/
3655 var12
= ((val
*(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_10
); /* item on <var_10:IndexedIterator[MClassDef]>*/
3659 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on <self:AbstractCompiler> */
3660 var15
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <self:AbstractCompiler> */
3661 if (unlikely(var15
== NULL
)) {
3662 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
3663 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
3667 RET_LABEL14
:(void)0;
3671 var16
= nitc__modelize_property___ModelBuilder___collect_attr_propdef(var13
, var_cd
);
3675 var18
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_17
);
3680 var20
= ((short int(*)(val
* self
))((((long)var_19
&3)?class_info
[((long)var_19
&3)]:var_19
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_19
); /* is_ok on <var_19:IndexedIterator[AAttrPropdef]>*/
3687 var22
= ((val
*(*)(val
* self
))((((long)var_19
&3)?class_info
[((long)var_19
&3)]:var_19
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_19
); /* item on <var_19:IndexedIterator[AAttrPropdef]>*/
3689 var_npropdef
= var22
;
3691 nitc__separate_compiler___AAttrPropdef___init_expr(var_npropdef
, var_v
, var_recv
); /* Direct call separate_compiler#AAttrPropdef#init_expr on <var_npropdef:AAttrPropdef>*/
3694 ((void(*)(val
* self
))((((long)var_19
&3)?class_info
[((long)var_19
&3)]:var_19
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_19
); /* next on <var_19:IndexedIterator[AAttrPropdef]>*/
3697 BREAK_label21
: (void)0;
3699 ((void(*)(val
* self
))((((long)var_19
&3)?class_info
[((long)var_19
&3)]:var_19
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_19
); /* finish on <var_19:IndexedIterator[AAttrPropdef]>*/
3702 ((void(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_10
); /* next on <var_10:IndexedIterator[MClassDef]>*/
3705 BREAK_label
: (void)0;
3707 ((void(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_10
); /* finish on <var_10:IndexedIterator[MClassDef]>*/
3711 /* method abstract_compiler#AbstractCompiler#count_type_test_tags for (self: AbstractCompiler): Array[String] */
3712 val
* nitc___nitc__AbstractCompiler___count_type_test_tags(val
* self
) {
3713 val
* var
/* : Array[String] */;
3714 val
* var1
/* : Array[String] */;
3715 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_tags
].val
; /* _count_type_test_tags on <self:AbstractCompiler> */
3716 if (unlikely(var1
== NULL
)) {
3717 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_tags");
3718 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1045);
3725 /* method abstract_compiler#AbstractCompiler#count_type_test_resolved for (self: AbstractCompiler): HashMap[String, Int] */
3726 val
* nitc___nitc__AbstractCompiler___count_type_test_resolved(val
* self
) {
3727 val
* var
/* : HashMap[String, Int] */;
3728 val
* var1
/* : HashMap[String, Int] */;
3729 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_resolved
].val
; /* _count_type_test_resolved on <self:AbstractCompiler> */
3730 if (unlikely(var1
== NULL
)) {
3731 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_resolved");
3732 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1046);
3739 /* method abstract_compiler#AbstractCompiler#count_type_test_unresolved for (self: AbstractCompiler): HashMap[String, Int] */
3740 val
* nitc___nitc__AbstractCompiler___count_type_test_unresolved(val
* self
) {
3741 val
* var
/* : HashMap[String, Int] */;
3742 val
* var1
/* : HashMap[String, Int] */;
3743 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_unresolved
].val
; /* _count_type_test_unresolved on <self:AbstractCompiler> */
3744 if (unlikely(var1
== NULL
)) {
3745 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_unresolved");
3746 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1047);
3753 /* method abstract_compiler#AbstractCompiler#count_type_test_skipped for (self: AbstractCompiler): HashMap[String, Int] */
3754 val
* nitc___nitc__AbstractCompiler___count_type_test_skipped(val
* self
) {
3755 val
* var
/* : HashMap[String, Int] */;
3756 val
* var1
/* : HashMap[String, Int] */;
3757 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_skipped
].val
; /* _count_type_test_skipped on <self:AbstractCompiler> */
3758 if (unlikely(var1
== NULL
)) {
3759 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_skipped");
3760 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1048);
3767 /* method abstract_compiler#AbstractCompiler#init_count_type_test_tags for (self: AbstractCompiler): HashMap[String, Int] */
3768 val
* nitc___nitc__AbstractCompiler___init_count_type_test_tags(val
* self
) {
3769 val
* var
/* : HashMap[String, Int] */;
3770 val
* var1
/* : HashMap[String, Int] */;
3771 val
* var_res
/* var res: HashMap[String, Int] */;
3772 val
* var2
/* : Array[String] */;
3773 val
* var4
/* : Array[String] */;
3774 val
* var_
/* var : Array[String] */;
3775 val
* var5
/* : IndexedIterator[nullable Object] */;
3776 val
* var_6
/* var : IndexedIterator[String] */;
3777 short int var7
/* : Bool */;
3778 val
* var8
/* : nullable Object */;
3779 val
* var_tag
/* var tag: String */;
3780 val
* var9
/* : nullable Object */;
3781 var1
= NEW_core__HashMap(&type_core__HashMap__core__String__core__Int
);
3783 core___core__HashMap___core__kernel__Object__init(var1
); /* Direct call hash_collection#HashMap#init on <var1:HashMap[String, Int]>*/
3787 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_tags (self) on <self:AbstractCompiler> */
3788 var4
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_tags
].val
; /* _count_type_test_tags on <self:AbstractCompiler> */
3789 if (unlikely(var4
== NULL
)) {
3790 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_tags");
3791 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1045);
3800 var5
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_
);
3805 var7
= ((short int(*)(val
* self
))((((long)var_6
&3)?class_info
[((long)var_6
&3)]:var_6
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_6
); /* is_ok on <var_6:IndexedIterator[String]>*/
3812 var8
= ((val
*(*)(val
* self
))((((long)var_6
&3)?class_info
[((long)var_6
&3)]:var_6
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_6
); /* item on <var_6:IndexedIterator[String]>*/
3816 var9
= (val
*)(0l<<2|1);
3817 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_res
, var_tag
, var9
); /* Direct call hash_collection#HashMap#[]= on <var_res:HashMap[String, Int]>*/
3820 ((void(*)(val
* self
))((((long)var_6
&3)?class_info
[((long)var_6
&3)]:var_6
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_6
); /* next on <var_6:IndexedIterator[String]>*/
3823 BREAK_label
: (void)0;
3825 ((void(*)(val
* self
))((((long)var_6
&3)?class_info
[((long)var_6
&3)]:var_6
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_6
); /* finish on <var_6:IndexedIterator[String]>*/
3832 /* method abstract_compiler#AbstractCompiler#display_stats for (self: AbstractCompiler) */
3833 void nitc___nitc__AbstractCompiler___display_stats(val
* self
) {
3834 val
* var
/* : ModelBuilder */;
3835 val
* var2
/* : ModelBuilder */;
3836 val
* var3
/* : ToolContext */;
3837 val
* var5
/* : ToolContext */;
3838 val
* var6
/* : OptionBool */;
3839 val
* var8
/* : OptionBool */;
3840 val
* var9
/* : nullable Object */;
3841 val
* var11
/* : nullable Object */;
3842 short int var12
/* : Bool */;
3843 val
* var13
/* : Sys */;
3844 static val
* varonce
;
3845 val
* var14
/* : String */;
3846 char* var15
/* : NativeString */;
3847 val
* var16
/* : String */;
3848 val
* var17
/* : Sys */;
3849 static val
* varonce18
;
3850 val
* var19
/* : String */;
3851 char* var20
/* : NativeString */;
3852 val
* var21
/* : String */;
3853 val
* var22
/* : HashMap[String, Int] */;
3854 val
* var_count_type_test_total
/* var count_type_test_total: HashMap[String, Int] */;
3855 val
* var23
/* : HashMap[String, Int] */;
3856 val
* var25
/* : HashMap[String, Int] */;
3857 static val
* varonce26
;
3858 val
* var27
/* : String */;
3859 char* var28
/* : NativeString */;
3860 val
* var29
/* : String */;
3861 val
* var30
/* : nullable Object */;
3862 val
* var31
/* : HashMap[String, Int] */;
3863 val
* var33
/* : HashMap[String, Int] */;
3864 static val
* varonce34
;
3865 val
* var35
/* : String */;
3866 char* var36
/* : NativeString */;
3867 val
* var37
/* : String */;
3868 val
* var38
/* : nullable Object */;
3869 val
* var39
/* : HashMap[String, Int] */;
3870 val
* var41
/* : HashMap[String, Int] */;
3871 static val
* varonce42
;
3872 val
* var43
/* : String */;
3873 char* var44
/* : NativeString */;
3874 val
* var45
/* : String */;
3875 val
* var46
/* : nullable Object */;
3876 static val
* varonce47
;
3877 val
* var48
/* : String */;
3878 char* var49
/* : NativeString */;
3879 val
* var50
/* : String */;
3880 val
* var51
/* : nullable Object */;
3881 val
* var52
/* : Array[String] */;
3882 val
* var54
/* : Array[String] */;
3883 val
* var_
/* var : Array[String] */;
3884 val
* var55
/* : IndexedIterator[nullable Object] */;
3885 val
* var_56
/* var : IndexedIterator[String] */;
3886 short int var57
/* : Bool */;
3887 val
* var58
/* : nullable Object */;
3888 val
* var_tag
/* var tag: String */;
3889 val
* var59
/* : HashMap[String, Int] */;
3890 val
* var61
/* : HashMap[String, Int] */;
3891 val
* var62
/* : nullable Object */;
3892 val
* var63
/* : HashMap[String, Int] */;
3893 val
* var65
/* : HashMap[String, Int] */;
3894 val
* var66
/* : nullable Object */;
3895 long var67
/* : Int */;
3896 short int var69
/* : Bool */;
3899 const char* var_class_name
;
3900 long var70
/* : Int */;
3901 long var71
/* : Int */;
3902 long var72
/* : Int */;
3903 val
* var73
/* : HashMap[String, Int] */;
3904 val
* var75
/* : HashMap[String, Int] */;
3905 val
* var76
/* : nullable Object */;
3906 long var77
/* : Int */;
3907 short int var79
/* : Bool */;
3910 const char* var_class_name82
;
3911 long var83
/* : Int */;
3912 long var84
/* : Int */;
3913 val
* var85
/* : nullable Object */;
3914 val
* var86
/* : HashMap[String, Int] */;
3915 val
* var88
/* : HashMap[String, Int] */;
3916 val
* var_89
/* var : HashMap[String, Int] */;
3917 static val
* varonce90
;
3918 val
* var91
/* : String */;
3919 char* var92
/* : NativeString */;
3920 val
* var93
/* : String */;
3921 val
* var_94
/* var : String */;
3922 val
* var95
/* : nullable Object */;
3923 val
* var96
/* : HashMap[String, Int] */;
3924 val
* var98
/* : HashMap[String, Int] */;
3925 val
* var99
/* : nullable Object */;
3926 long var100
/* : Int */;
3927 short int var102
/* : Bool */;
3930 const char* var_class_name105
;
3931 long var106
/* : Int */;
3932 long var107
/* : Int */;
3933 long var108
/* : Int */;
3934 val
* var109
/* : nullable Object */;
3935 val
* var110
/* : HashMap[String, Int] */;
3936 val
* var112
/* : HashMap[String, Int] */;
3937 val
* var_113
/* var : HashMap[String, Int] */;
3938 static val
* varonce114
;
3939 val
* var115
/* : String */;
3940 char* var116
/* : NativeString */;
3941 val
* var117
/* : String */;
3942 val
* var_118
/* var : String */;
3943 val
* var119
/* : nullable Object */;
3944 val
* var120
/* : HashMap[String, Int] */;
3945 val
* var122
/* : HashMap[String, Int] */;
3946 val
* var123
/* : nullable Object */;
3947 long var124
/* : Int */;
3948 short int var126
/* : Bool */;
3951 const char* var_class_name129
;
3952 long var130
/* : Int */;
3953 long var131
/* : Int */;
3954 long var132
/* : Int */;
3955 val
* var133
/* : nullable Object */;
3956 val
* var134
/* : HashMap[String, Int] */;
3957 val
* var136
/* : HashMap[String, Int] */;
3958 val
* var_137
/* var : HashMap[String, Int] */;
3959 static val
* varonce138
;
3960 val
* var139
/* : String */;
3961 char* var140
/* : NativeString */;
3962 val
* var141
/* : String */;
3963 val
* var_142
/* var : String */;
3964 val
* var143
/* : nullable Object */;
3965 val
* var144
/* : HashMap[String, Int] */;
3966 val
* var146
/* : HashMap[String, Int] */;
3967 val
* var147
/* : nullable Object */;
3968 long var148
/* : Int */;
3969 short int var150
/* : Bool */;
3972 const char* var_class_name153
;
3973 long var154
/* : Int */;
3974 long var155
/* : Int */;
3975 long var156
/* : Int */;
3976 val
* var157
/* : nullable Object */;
3977 val
* var_158
/* var : HashMap[String, Int] */;
3978 static val
* varonce159
;
3979 val
* var160
/* : String */;
3980 char* var161
/* : NativeString */;
3981 val
* var162
/* : String */;
3982 val
* var_163
/* var : String */;
3983 val
* var164
/* : nullable Object */;
3984 val
* var165
/* : nullable Object */;
3985 long var166
/* : Int */;
3986 short int var168
/* : Bool */;
3989 const char* var_class_name171
;
3990 long var172
/* : Int */;
3991 long var173
/* : Int */;
3992 long var174
/* : Int */;
3993 val
* var175
/* : nullable Object */;
3994 static val
* varonce176
;
3995 val
* var177
/* : String */;
3996 char* var178
/* : NativeString */;
3997 val
* var179
/* : String */;
3998 val
* var180
/* : nullable Object */;
3999 long var181
/* : Int */;
4000 long var_count_type_test
/* var count_type_test: Int */;
4001 val
* var182
/* : Array[String] */;
4002 val
* var184
/* : Array[String] */;
4003 val
* var185
/* : Array[nullable Object] */;
4004 val
* var_tags
/* var tags: Array[String] */;
4005 static val
* varonce186
;
4006 val
* var187
/* : String */;
4007 char* var188
/* : NativeString */;
4008 val
* var189
/* : String */;
4009 val
* var_190
/* var : Array[String] */;
4010 val
* var191
/* : IndexedIterator[nullable Object] */;
4011 val
* var_192
/* var : IndexedIterator[String] */;
4012 short int var193
/* : Bool */;
4013 val
* var195
/* : nullable Object */;
4014 val
* var_tag196
/* var tag: String */;
4015 val
* var197
/* : Sys */;
4016 val
* var198
/* : Array[Object] */;
4017 val
* var199
/* : NativeArray[Object] */;
4018 val
* var200
/* : Sys */;
4019 val
* var202
/* : NativeArray[String] */;
4020 static val
* varonce201
;
4021 static val
* varonce203
;
4022 val
* var204
/* : String */;
4023 char* var205
/* : NativeString */;
4024 val
* var206
/* : String */;
4025 static val
* varonce207
;
4026 val
* var208
/* : String */;
4027 char* var209
/* : NativeString */;
4028 val
* var210
/* : String */;
4029 static val
* varonce211
;
4030 val
* var212
/* : String */;
4031 char* var213
/* : NativeString */;
4032 val
* var214
/* : String */;
4033 val
* var215
/* : HashMap[String, Int] */;
4034 val
* var217
/* : HashMap[String, Int] */;
4035 val
* var218
/* : nullable Object */;
4036 val
* var219
/* : String */;
4037 long var220
/* : Int */;
4038 val
* var221
/* : Sys */;
4039 val
* var222
/* : HashMap[String, Int] */;
4040 val
* var224
/* : HashMap[String, Int] */;
4041 val
* var225
/* : nullable Object */;
4042 val
* var226
/* : String */;
4043 long var227
/* : Int */;
4044 val
* var228
/* : String */;
4045 val
* var229
/* : Array[Object] */;
4046 val
* var230
/* : NativeArray[Object] */;
4047 val
* var231
/* : Sys */;
4048 val
* var233
/* : NativeArray[String] */;
4049 static val
* varonce232
;
4050 static val
* varonce234
;
4051 val
* var235
/* : String */;
4052 char* var236
/* : NativeString */;
4053 val
* var237
/* : String */;
4054 static val
* varonce238
;
4055 val
* var239
/* : String */;
4056 char* var240
/* : NativeString */;
4057 val
* var241
/* : String */;
4058 static val
* varonce242
;
4059 val
* var243
/* : String */;
4060 char* var244
/* : NativeString */;
4061 val
* var245
/* : String */;
4062 val
* var246
/* : HashMap[String, Int] */;
4063 val
* var248
/* : HashMap[String, Int] */;
4064 val
* var249
/* : nullable Object */;
4065 val
* var250
/* : String */;
4066 long var251
/* : Int */;
4067 val
* var252
/* : Sys */;
4068 val
* var253
/* : HashMap[String, Int] */;
4069 val
* var255
/* : HashMap[String, Int] */;
4070 val
* var256
/* : nullable Object */;
4071 val
* var257
/* : String */;
4072 long var258
/* : Int */;
4073 val
* var259
/* : String */;
4074 val
* var260
/* : Array[Object] */;
4075 val
* var261
/* : NativeArray[Object] */;
4076 val
* var262
/* : Sys */;
4077 val
* var264
/* : NativeArray[String] */;
4078 static val
* varonce263
;
4079 static val
* varonce265
;
4080 val
* var266
/* : String */;
4081 char* var267
/* : NativeString */;
4082 val
* var268
/* : String */;
4083 static val
* varonce269
;
4084 val
* var270
/* : String */;
4085 char* var271
/* : NativeString */;
4086 val
* var272
/* : String */;
4087 static val
* varonce273
;
4088 val
* var274
/* : String */;
4089 char* var275
/* : NativeString */;
4090 val
* var276
/* : String */;
4091 val
* var277
/* : HashMap[String, Int] */;
4092 val
* var279
/* : HashMap[String, Int] */;
4093 val
* var280
/* : nullable Object */;
4094 val
* var281
/* : String */;
4095 long var282
/* : Int */;
4096 val
* var283
/* : Sys */;
4097 val
* var284
/* : HashMap[String, Int] */;
4098 val
* var286
/* : HashMap[String, Int] */;
4099 val
* var287
/* : nullable Object */;
4100 val
* var288
/* : String */;
4101 long var289
/* : Int */;
4102 val
* var290
/* : String */;
4103 val
* var291
/* : Array[Object] */;
4104 val
* var292
/* : NativeArray[Object] */;
4105 val
* var293
/* : Sys */;
4106 val
* var295
/* : NativeArray[String] */;
4107 static val
* varonce294
;
4108 static val
* varonce296
;
4109 val
* var297
/* : String */;
4110 char* var298
/* : NativeString */;
4111 val
* var299
/* : String */;
4112 static val
* varonce300
;
4113 val
* var301
/* : String */;
4114 char* var302
/* : NativeString */;
4115 val
* var303
/* : String */;
4116 static val
* varonce304
;
4117 val
* var305
/* : String */;
4118 char* var306
/* : NativeString */;
4119 val
* var307
/* : String */;
4120 val
* var308
/* : nullable Object */;
4121 val
* var309
/* : String */;
4122 long var310
/* : Int */;
4123 val
* var311
/* : Sys */;
4124 val
* var312
/* : nullable Object */;
4125 val
* var313
/* : String */;
4126 long var314
/* : Int */;
4127 val
* var315
/* : String */;
4128 val
* var316
/* : Array[Object] */;
4129 val
* var317
/* : NativeArray[Object] */;
4130 val
* var318
/* : Sys */;
4131 static val
* varonce319
;
4132 val
* var320
/* : String */;
4133 char* var321
/* : NativeString */;
4134 val
* var322
/* : String */;
4136 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (self) on <self:AbstractCompiler> */
4137 var2
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <self:AbstractCompiler> */
4138 if (unlikely(var2
== NULL
)) {
4139 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
4140 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
4148 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var) on <var:ModelBuilder> */
4149 var5
= var
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var:ModelBuilder> */
4150 if (unlikely(var5
== NULL
)) {
4151 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
4152 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
4160 { /* Inline abstract_compiler#ToolContext#opt_typing_test_metrics (var3) on <var3:ToolContext> */
4161 var8
= var3
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics
].val
; /* _opt_typing_test_metrics on <var3:ToolContext> */
4162 if (unlikely(var8
== NULL
)) {
4163 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
4164 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 60);
4172 { /* Inline opts#Option#value (var6) on <var6:OptionBool> */
4173 var11
= var6
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var6:OptionBool> */
4175 RET_LABEL10
:(void)0;
4178 var12
= (short int)((long)(var9
)>>2);
4181 if (likely(varonce
!=NULL
)) {
4184 var15
= "# static count_type_test";
4185 var16
= core__flat___NativeString___to_s_full(var15
, 24l, 24l);
4190 core__file___Sys___print(var13
, var14
); /* Direct call file#Sys#print on <var13:Sys>*/
4193 if (likely(varonce18
!=NULL
)) {
4196 var20
= "\tresolved:\tunresolved\tskipped\ttotal";
4197 var21
= core__flat___NativeString___to_s_full(var20
, 35l, 35l);
4202 core__file___Sys___print(var17
, var19
); /* Direct call file#Sys#print on <var17:Sys>*/
4205 var22
= nitc___nitc__AbstractCompiler___init_count_type_test_tags(self
);
4207 var_count_type_test_total
= var22
;
4209 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_resolved (self) on <self:AbstractCompiler> */
4210 var25
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_resolved
].val
; /* _count_type_test_resolved on <self:AbstractCompiler> */
4211 if (unlikely(var25
== NULL
)) {
4212 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_resolved");
4213 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1046);
4217 RET_LABEL24
:(void)0;
4220 if (likely(varonce26
!=NULL
)) {
4224 var29
= core__flat___NativeString___to_s_full(var28
, 5l, 5l);
4229 var30
= (val
*)(0l<<2|1);
4230 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var23
, var27
, var30
); /* Direct call hash_collection#HashMap#[]= on <var23:HashMap[String, Int]>*/
4233 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_unresolved (self) on <self:AbstractCompiler> */
4234 var33
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_unresolved
].val
; /* _count_type_test_unresolved on <self:AbstractCompiler> */
4235 if (unlikely(var33
== NULL
)) {
4236 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_unresolved");
4237 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1047);
4241 RET_LABEL32
:(void)0;
4244 if (likely(varonce34
!=NULL
)) {
4248 var37
= core__flat___NativeString___to_s_full(var36
, 5l, 5l);
4253 var38
= (val
*)(0l<<2|1);
4254 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var31
, var35
, var38
); /* Direct call hash_collection#HashMap#[]= on <var31:HashMap[String, Int]>*/
4257 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_skipped (self) on <self:AbstractCompiler> */
4258 var41
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_skipped
].val
; /* _count_type_test_skipped on <self:AbstractCompiler> */
4259 if (unlikely(var41
== NULL
)) {
4260 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_skipped");
4261 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1048);
4265 RET_LABEL40
:(void)0;
4268 if (likely(varonce42
!=NULL
)) {
4272 var45
= core__flat___NativeString___to_s_full(var44
, 5l, 5l);
4277 var46
= (val
*)(0l<<2|1);
4278 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var39
, var43
, var46
); /* Direct call hash_collection#HashMap#[]= on <var39:HashMap[String, Int]>*/
4280 if (likely(varonce47
!=NULL
)) {
4284 var50
= core__flat___NativeString___to_s_full(var49
, 5l, 5l);
4289 var51
= (val
*)(0l<<2|1);
4290 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_count_type_test_total
, var48
, var51
); /* Direct call hash_collection#HashMap#[]= on <var_count_type_test_total:HashMap[String, Int]>*/
4293 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_tags (self) on <self:AbstractCompiler> */
4294 var54
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_tags
].val
; /* _count_type_test_tags on <self:AbstractCompiler> */
4295 if (unlikely(var54
== NULL
)) {
4296 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_tags");
4297 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1045);
4301 RET_LABEL53
:(void)0;
4306 var55
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_
);
4311 var57
= ((short int(*)(val
* self
))((((long)var_56
&3)?class_info
[((long)var_56
&3)]:var_56
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_56
); /* is_ok on <var_56:IndexedIterator[String]>*/
4318 var58
= ((val
*(*)(val
* self
))((((long)var_56
&3)?class_info
[((long)var_56
&3)]:var_56
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_56
); /* item on <var_56:IndexedIterator[String]>*/
4322 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_resolved (self) on <self:AbstractCompiler> */
4323 var61
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_resolved
].val
; /* _count_type_test_resolved on <self:AbstractCompiler> */
4324 if (unlikely(var61
== NULL
)) {
4325 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_resolved");
4326 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1046);
4330 RET_LABEL60
:(void)0;
4334 var62
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var59
, var_tag
);
4337 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_unresolved (self) on <self:AbstractCompiler> */
4338 var65
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_unresolved
].val
; /* _count_type_test_unresolved on <self:AbstractCompiler> */
4339 if (unlikely(var65
== NULL
)) {
4340 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_unresolved");
4341 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1047);
4345 RET_LABEL64
:(void)0;
4349 var66
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var63
, var_tag
);
4352 { /* Inline kernel#Int#+ (var62,var66) on <var62:nullable Object(Int)> */
4353 /* Covariant cast for argument 0 (i) <var66:nullable Object(Int)> isa OTHER */
4354 /* <var66:nullable Object(Int)> isa OTHER */
4355 var69
= 1; /* easy <var66:nullable Object(Int)> isa OTHER*/
4356 if (unlikely(!var69
)) {
4357 var_class_name
= var66
== NULL ?
"null" : (((long)var66
&3)?type_info
[((long)var66
&3)]:var66
->type
)->name
;
4358 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
4359 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
4362 var70
= (long)(var62
)>>2;
4363 var71
= (long)(var66
)>>2;
4364 var72
= var70
+ var71
;
4367 RET_LABEL68
:(void)0;
4371 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_skipped (self) on <self:AbstractCompiler> */
4372 var75
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_skipped
].val
; /* _count_type_test_skipped on <self:AbstractCompiler> */
4373 if (unlikely(var75
== NULL
)) {
4374 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_skipped");
4375 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1048);
4379 RET_LABEL74
:(void)0;
4383 var76
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var73
, var_tag
);
4386 { /* Inline kernel#Int#+ (var67,var76) on <var67:Int> */
4387 /* Covariant cast for argument 0 (i) <var76:nullable Object(Int)> isa OTHER */
4388 /* <var76:nullable Object(Int)> isa OTHER */
4389 var79
= 1; /* easy <var76:nullable Object(Int)> isa OTHER*/
4390 if (unlikely(!var79
)) {
4391 var_class_name82
= var76
== NULL ?
"null" : (((long)var76
&3)?type_info
[((long)var76
&3)]:var76
->type
)->name
;
4392 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name82
);
4393 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
4396 var83
= (long)(var76
)>>2;
4397 var84
= var67
+ var83
;
4400 RET_LABEL78
:(void)0;
4404 var85
= (val
*)(var77
<<2|1);
4405 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_count_type_test_total
, var_tag
, var85
); /* Direct call hash_collection#HashMap#[]= on <var_count_type_test_total:HashMap[String, Int]>*/
4408 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_resolved (self) on <self:AbstractCompiler> */
4409 var88
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_resolved
].val
; /* _count_type_test_resolved on <self:AbstractCompiler> */
4410 if (unlikely(var88
== NULL
)) {
4411 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_resolved");
4412 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1046);
4416 RET_LABEL87
:(void)0;
4420 if (likely(varonce90
!=NULL
)) {
4424 var93
= core__flat___NativeString___to_s_full(var92
, 5l, 5l);
4430 var95
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_89
, var_94
);
4433 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_resolved (self) on <self:AbstractCompiler> */
4434 var98
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_resolved
].val
; /* _count_type_test_resolved on <self:AbstractCompiler> */
4435 if (unlikely(var98
== NULL
)) {
4436 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_resolved");
4437 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1046);
4441 RET_LABEL97
:(void)0;
4445 var99
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var96
, var_tag
);
4448 { /* Inline kernel#Int#+ (var95,var99) on <var95:nullable Object(Int)> */
4449 /* Covariant cast for argument 0 (i) <var99:nullable Object(Int)> isa OTHER */
4450 /* <var99:nullable Object(Int)> isa OTHER */
4451 var102
= 1; /* easy <var99:nullable Object(Int)> isa OTHER*/
4452 if (unlikely(!var102
)) {
4453 var_class_name105
= var99
== NULL ?
"null" : (((long)var99
&3)?type_info
[((long)var99
&3)]:var99
->type
)->name
;
4454 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name105
);
4455 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
4458 var106
= (long)(var95
)>>2;
4459 var107
= (long)(var99
)>>2;
4460 var108
= var106
+ var107
;
4463 RET_LABEL101
:(void)0;
4467 var109
= (val
*)(var100
<<2|1);
4468 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_89
, var_94
, var109
); /* Direct call hash_collection#HashMap#[]= on <var_89:HashMap[String, Int]>*/
4471 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_unresolved (self) on <self:AbstractCompiler> */
4472 var112
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_unresolved
].val
; /* _count_type_test_unresolved on <self:AbstractCompiler> */
4473 if (unlikely(var112
== NULL
)) {
4474 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_unresolved");
4475 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1047);
4479 RET_LABEL111
:(void)0;
4483 if (likely(varonce114
!=NULL
)) {
4484 var115
= varonce114
;
4487 var117
= core__flat___NativeString___to_s_full(var116
, 5l, 5l);
4489 varonce114
= var115
;
4493 var119
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_113
, var_118
);
4496 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_unresolved (self) on <self:AbstractCompiler> */
4497 var122
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_unresolved
].val
; /* _count_type_test_unresolved on <self:AbstractCompiler> */
4498 if (unlikely(var122
== NULL
)) {
4499 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_unresolved");
4500 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1047);
4504 RET_LABEL121
:(void)0;
4508 var123
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var120
, var_tag
);
4511 { /* Inline kernel#Int#+ (var119,var123) on <var119:nullable Object(Int)> */
4512 /* Covariant cast for argument 0 (i) <var123:nullable Object(Int)> isa OTHER */
4513 /* <var123:nullable Object(Int)> isa OTHER */
4514 var126
= 1; /* easy <var123:nullable Object(Int)> isa OTHER*/
4515 if (unlikely(!var126
)) {
4516 var_class_name129
= var123
== NULL ?
"null" : (((long)var123
&3)?type_info
[((long)var123
&3)]:var123
->type
)->name
;
4517 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name129
);
4518 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
4521 var130
= (long)(var119
)>>2;
4522 var131
= (long)(var123
)>>2;
4523 var132
= var130
+ var131
;
4526 RET_LABEL125
:(void)0;
4530 var133
= (val
*)(var124
<<2|1);
4531 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_113
, var_118
, var133
); /* Direct call hash_collection#HashMap#[]= on <var_113:HashMap[String, Int]>*/
4534 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_skipped (self) on <self:AbstractCompiler> */
4535 var136
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_skipped
].val
; /* _count_type_test_skipped on <self:AbstractCompiler> */
4536 if (unlikely(var136
== NULL
)) {
4537 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_skipped");
4538 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1048);
4542 RET_LABEL135
:(void)0;
4546 if (likely(varonce138
!=NULL
)) {
4547 var139
= varonce138
;
4550 var141
= core__flat___NativeString___to_s_full(var140
, 5l, 5l);
4552 varonce138
= var139
;
4556 var143
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_137
, var_142
);
4559 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_skipped (self) on <self:AbstractCompiler> */
4560 var146
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_skipped
].val
; /* _count_type_test_skipped on <self:AbstractCompiler> */
4561 if (unlikely(var146
== NULL
)) {
4562 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_skipped");
4563 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1048);
4567 RET_LABEL145
:(void)0;
4571 var147
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var144
, var_tag
);
4574 { /* Inline kernel#Int#+ (var143,var147) on <var143:nullable Object(Int)> */
4575 /* Covariant cast for argument 0 (i) <var147:nullable Object(Int)> isa OTHER */
4576 /* <var147:nullable Object(Int)> isa OTHER */
4577 var150
= 1; /* easy <var147:nullable Object(Int)> isa OTHER*/
4578 if (unlikely(!var150
)) {
4579 var_class_name153
= var147
== NULL ?
"null" : (((long)var147
&3)?type_info
[((long)var147
&3)]:var147
->type
)->name
;
4580 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name153
);
4581 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
4584 var154
= (long)(var143
)>>2;
4585 var155
= (long)(var147
)>>2;
4586 var156
= var154
+ var155
;
4589 RET_LABEL149
:(void)0;
4593 var157
= (val
*)(var148
<<2|1);
4594 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_137
, var_142
, var157
); /* Direct call hash_collection#HashMap#[]= on <var_137:HashMap[String, Int]>*/
4596 var_158
= var_count_type_test_total
;
4597 if (likely(varonce159
!=NULL
)) {
4598 var160
= varonce159
;
4601 var162
= core__flat___NativeString___to_s_full(var161
, 5l, 5l);
4603 varonce159
= var160
;
4607 var164
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_158
, var_163
);
4610 var165
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_count_type_test_total
, var_tag
);
4613 { /* Inline kernel#Int#+ (var164,var165) on <var164:nullable Object(Int)> */
4614 /* Covariant cast for argument 0 (i) <var165:nullable Object(Int)> isa OTHER */
4615 /* <var165:nullable Object(Int)> isa OTHER */
4616 var168
= 1; /* easy <var165:nullable Object(Int)> isa OTHER*/
4617 if (unlikely(!var168
)) {
4618 var_class_name171
= var165
== NULL ?
"null" : (((long)var165
&3)?type_info
[((long)var165
&3)]:var165
->type
)->name
;
4619 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name171
);
4620 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
4623 var172
= (long)(var164
)>>2;
4624 var173
= (long)(var165
)>>2;
4625 var174
= var172
+ var173
;
4628 RET_LABEL167
:(void)0;
4632 var175
= (val
*)(var166
<<2|1);
4633 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_158
, var_163
, var175
); /* Direct call hash_collection#HashMap#[]= on <var_158:HashMap[String, Int]>*/
4636 ((void(*)(val
* self
))((((long)var_56
&3)?class_info
[((long)var_56
&3)]:var_56
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_56
); /* next on <var_56:IndexedIterator[String]>*/
4639 BREAK_label
: (void)0;
4641 ((void(*)(val
* self
))((((long)var_56
&3)?class_info
[((long)var_56
&3)]:var_56
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_56
); /* finish on <var_56:IndexedIterator[String]>*/
4643 if (likely(varonce176
!=NULL
)) {
4644 var177
= varonce176
;
4647 var179
= core__flat___NativeString___to_s_full(var178
, 5l, 5l);
4649 varonce176
= var177
;
4652 var180
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_count_type_test_total
, var177
);
4654 var181
= (long)(var180
)>>2;
4655 var_count_type_test
= var181
;
4657 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_tags (self) on <self:AbstractCompiler> */
4658 var184
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_tags
].val
; /* _count_type_test_tags on <self:AbstractCompiler> */
4659 if (unlikely(var184
== NULL
)) {
4660 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_tags");
4661 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1045);
4665 RET_LABEL183
:(void)0;
4669 var185
= core__array___Collection___to_a(var182
);
4672 if (likely(varonce186
!=NULL
)) {
4673 var187
= varonce186
;
4676 var189
= core__flat___NativeString___to_s_full(var188
, 5l, 5l);
4678 varonce186
= var187
;
4681 core___core__Array___core__abstract_collection__SimpleCollection__add(var_tags
, var187
); /* Direct call array#Array#add on <var_tags:Array[String]>*/
4685 var191
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_190
);
4690 var193
= ((short int(*)(val
* self
))((((long)var_192
&3)?class_info
[((long)var_192
&3)]:var_192
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_192
); /* is_ok on <var_192:IndexedIterator[String]>*/
4694 goto BREAK_label194
;
4697 var195
= ((val
*(*)(val
* self
))((((long)var_192
&3)?class_info
[((long)var_192
&3)]:var_192
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_192
); /* item on <var_192:IndexedIterator[String]>*/
4699 var_tag196
= var195
;
4701 var198
= NEW_core__Array(&type_core__Array__core__Object
);
4702 { /* var198 = array_instance Array[Object] */
4703 var199
= NEW_core__NativeArray(1l, &type_core__NativeArray__core__Object
);
4704 ((struct instance_core__NativeArray
*)var199
)->values
[0] = (val
*) var_tag196
;
4706 ((void(*)(val
* self
, val
* p0
, long p1
))(var198
->class->vft
[COLOR_core__array__Array__with_native
]))(var198
, var199
, 1l); /* with_native on <var198:Array[Object]>*/
4710 core__file___Sys___printn(var197
, var198
); /* Direct call file#Sys#printn on <var197:Sys>*/
4713 if (unlikely(varonce201
==NULL
)) {
4714 var202
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
4715 if (likely(varonce203
!=NULL
)) {
4716 var204
= varonce203
;
4719 var206
= core__flat___NativeString___to_s_full(var205
, 1l, 1l);
4721 varonce203
= var204
;
4723 ((struct instance_core__NativeArray
*)var202
)->values
[0]=var204
;
4724 if (likely(varonce207
!=NULL
)) {
4725 var208
= varonce207
;
4728 var210
= core__flat___NativeString___to_s_full(var209
, 2l, 2l);
4730 varonce207
= var208
;
4732 ((struct instance_core__NativeArray
*)var202
)->values
[2]=var208
;
4733 if (likely(varonce211
!=NULL
)) {
4734 var212
= varonce211
;
4737 var214
= core__flat___NativeString___to_s_full(var213
, 2l, 2l);
4739 varonce211
= var212
;
4741 ((struct instance_core__NativeArray
*)var202
)->values
[4]=var212
;
4743 var202
= varonce201
;
4747 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_resolved (self) on <self:AbstractCompiler> */
4748 var217
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_resolved
].val
; /* _count_type_test_resolved on <self:AbstractCompiler> */
4749 if (unlikely(var217
== NULL
)) {
4750 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_resolved");
4751 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1046);
4755 RET_LABEL216
:(void)0;
4759 var218
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var215
, var_tag196
);
4761 var220
= (long)(var218
)>>2;
4762 var219
= core__flat___Int___core__abstract_text__Object__to_s(var220
);
4763 ((struct instance_core__NativeArray
*)var202
)->values
[1]=var219
;
4766 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_resolved (self) on <self:AbstractCompiler> */
4767 var224
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_resolved
].val
; /* _count_type_test_resolved on <self:AbstractCompiler> */
4768 if (unlikely(var224
== NULL
)) {
4769 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_resolved");
4770 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1046);
4774 RET_LABEL223
:(void)0;
4778 var225
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var222
, var_tag196
);
4781 var227
= (long)(var225
)>>2;
4782 var226
= counter___core__Sys___div(var221
, var227
, var_count_type_test
);
4784 ((struct instance_core__NativeArray
*)var202
)->values
[3]=var226
;
4786 var228
= ((val
*(*)(val
* self
))(var202
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var202
); /* native_to_s on <var202:NativeArray[String]>*/
4788 varonce201
= var202
;
4789 var229
= NEW_core__Array(&type_core__Array__core__Object
);
4790 { /* var229 = array_instance Array[Object] */
4791 var230
= NEW_core__NativeArray(1l, &type_core__NativeArray__core__Object
);
4792 ((struct instance_core__NativeArray
*)var230
)->values
[0] = (val
*) var228
;
4794 ((void(*)(val
* self
, val
* p0
, long p1
))(var229
->class->vft
[COLOR_core__array__Array__with_native
]))(var229
, var230
, 1l); /* with_native on <var229:Array[Object]>*/
4798 core__file___Sys___printn(var200
, var229
); /* Direct call file#Sys#printn on <var200:Sys>*/
4801 if (unlikely(varonce232
==NULL
)) {
4802 var233
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
4803 if (likely(varonce234
!=NULL
)) {
4804 var235
= varonce234
;
4807 var237
= core__flat___NativeString___to_s_full(var236
, 1l, 1l);
4809 varonce234
= var235
;
4811 ((struct instance_core__NativeArray
*)var233
)->values
[0]=var235
;
4812 if (likely(varonce238
!=NULL
)) {
4813 var239
= varonce238
;
4816 var241
= core__flat___NativeString___to_s_full(var240
, 2l, 2l);
4818 varonce238
= var239
;
4820 ((struct instance_core__NativeArray
*)var233
)->values
[2]=var239
;
4821 if (likely(varonce242
!=NULL
)) {
4822 var243
= varonce242
;
4825 var245
= core__flat___NativeString___to_s_full(var244
, 2l, 2l);
4827 varonce242
= var243
;
4829 ((struct instance_core__NativeArray
*)var233
)->values
[4]=var243
;
4831 var233
= varonce232
;
4835 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_unresolved (self) on <self:AbstractCompiler> */
4836 var248
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_unresolved
].val
; /* _count_type_test_unresolved on <self:AbstractCompiler> */
4837 if (unlikely(var248
== NULL
)) {
4838 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_unresolved");
4839 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1047);
4843 RET_LABEL247
:(void)0;
4847 var249
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var246
, var_tag196
);
4849 var251
= (long)(var249
)>>2;
4850 var250
= core__flat___Int___core__abstract_text__Object__to_s(var251
);
4851 ((struct instance_core__NativeArray
*)var233
)->values
[1]=var250
;
4854 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_unresolved (self) on <self:AbstractCompiler> */
4855 var255
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_unresolved
].val
; /* _count_type_test_unresolved on <self:AbstractCompiler> */
4856 if (unlikely(var255
== NULL
)) {
4857 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_unresolved");
4858 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1047);
4862 RET_LABEL254
:(void)0;
4866 var256
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var253
, var_tag196
);
4869 var258
= (long)(var256
)>>2;
4870 var257
= counter___core__Sys___div(var252
, var258
, var_count_type_test
);
4872 ((struct instance_core__NativeArray
*)var233
)->values
[3]=var257
;
4874 var259
= ((val
*(*)(val
* self
))(var233
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var233
); /* native_to_s on <var233:NativeArray[String]>*/
4876 varonce232
= var233
;
4877 var260
= NEW_core__Array(&type_core__Array__core__Object
);
4878 { /* var260 = array_instance Array[Object] */
4879 var261
= NEW_core__NativeArray(1l, &type_core__NativeArray__core__Object
);
4880 ((struct instance_core__NativeArray
*)var261
)->values
[0] = (val
*) var259
;
4882 ((void(*)(val
* self
, val
* p0
, long p1
))(var260
->class->vft
[COLOR_core__array__Array__with_native
]))(var260
, var261
, 1l); /* with_native on <var260:Array[Object]>*/
4886 core__file___Sys___printn(var231
, var260
); /* Direct call file#Sys#printn on <var231:Sys>*/
4889 if (unlikely(varonce263
==NULL
)) {
4890 var264
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
4891 if (likely(varonce265
!=NULL
)) {
4892 var266
= varonce265
;
4895 var268
= core__flat___NativeString___to_s_full(var267
, 1l, 1l);
4897 varonce265
= var266
;
4899 ((struct instance_core__NativeArray
*)var264
)->values
[0]=var266
;
4900 if (likely(varonce269
!=NULL
)) {
4901 var270
= varonce269
;
4904 var272
= core__flat___NativeString___to_s_full(var271
, 2l, 2l);
4906 varonce269
= var270
;
4908 ((struct instance_core__NativeArray
*)var264
)->values
[2]=var270
;
4909 if (likely(varonce273
!=NULL
)) {
4910 var274
= varonce273
;
4913 var276
= core__flat___NativeString___to_s_full(var275
, 2l, 2l);
4915 varonce273
= var274
;
4917 ((struct instance_core__NativeArray
*)var264
)->values
[4]=var274
;
4919 var264
= varonce263
;
4923 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_skipped (self) on <self:AbstractCompiler> */
4924 var279
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_skipped
].val
; /* _count_type_test_skipped on <self:AbstractCompiler> */
4925 if (unlikely(var279
== NULL
)) {
4926 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_skipped");
4927 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1048);
4931 RET_LABEL278
:(void)0;
4935 var280
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var277
, var_tag196
);
4937 var282
= (long)(var280
)>>2;
4938 var281
= core__flat___Int___core__abstract_text__Object__to_s(var282
);
4939 ((struct instance_core__NativeArray
*)var264
)->values
[1]=var281
;
4942 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_skipped (self) on <self:AbstractCompiler> */
4943 var286
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_skipped
].val
; /* _count_type_test_skipped on <self:AbstractCompiler> */
4944 if (unlikely(var286
== NULL
)) {
4945 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_skipped");
4946 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1048);
4950 RET_LABEL285
:(void)0;
4954 var287
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var284
, var_tag196
);
4957 var289
= (long)(var287
)>>2;
4958 var288
= counter___core__Sys___div(var283
, var289
, var_count_type_test
);
4960 ((struct instance_core__NativeArray
*)var264
)->values
[3]=var288
;
4962 var290
= ((val
*(*)(val
* self
))(var264
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var264
); /* native_to_s on <var264:NativeArray[String]>*/
4964 varonce263
= var264
;
4965 var291
= NEW_core__Array(&type_core__Array__core__Object
);
4966 { /* var291 = array_instance Array[Object] */
4967 var292
= NEW_core__NativeArray(1l, &type_core__NativeArray__core__Object
);
4968 ((struct instance_core__NativeArray
*)var292
)->values
[0] = (val
*) var290
;
4970 ((void(*)(val
* self
, val
* p0
, long p1
))(var291
->class->vft
[COLOR_core__array__Array__with_native
]))(var291
, var292
, 1l); /* with_native on <var291:Array[Object]>*/
4974 core__file___Sys___printn(var262
, var291
); /* Direct call file#Sys#printn on <var262:Sys>*/
4977 if (unlikely(varonce294
==NULL
)) {
4978 var295
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
4979 if (likely(varonce296
!=NULL
)) {
4980 var297
= varonce296
;
4983 var299
= core__flat___NativeString___to_s_full(var298
, 1l, 1l);
4985 varonce296
= var297
;
4987 ((struct instance_core__NativeArray
*)var295
)->values
[0]=var297
;
4988 if (likely(varonce300
!=NULL
)) {
4989 var301
= varonce300
;
4992 var303
= core__flat___NativeString___to_s_full(var302
, 2l, 2l);
4994 varonce300
= var301
;
4996 ((struct instance_core__NativeArray
*)var295
)->values
[2]=var301
;
4997 if (likely(varonce304
!=NULL
)) {
4998 var305
= varonce304
;
5001 var307
= core__flat___NativeString___to_s_full(var306
, 2l, 2l);
5003 varonce304
= var305
;
5005 ((struct instance_core__NativeArray
*)var295
)->values
[4]=var305
;
5007 var295
= varonce294
;
5011 var308
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_count_type_test_total
, var_tag196
);
5013 var310
= (long)(var308
)>>2;
5014 var309
= core__flat___Int___core__abstract_text__Object__to_s(var310
);
5015 ((struct instance_core__NativeArray
*)var295
)->values
[1]=var309
;
5018 var312
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_count_type_test_total
, var_tag196
);
5021 var314
= (long)(var312
)>>2;
5022 var313
= counter___core__Sys___div(var311
, var314
, var_count_type_test
);
5024 ((struct instance_core__NativeArray
*)var295
)->values
[3]=var313
;
5026 var315
= ((val
*(*)(val
* self
))(var295
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var295
); /* native_to_s on <var295:NativeArray[String]>*/
5028 varonce294
= var295
;
5029 var316
= NEW_core__Array(&type_core__Array__core__Object
);
5030 { /* var316 = array_instance Array[Object] */
5031 var317
= NEW_core__NativeArray(1l, &type_core__NativeArray__core__Object
);
5032 ((struct instance_core__NativeArray
*)var317
)->values
[0] = (val
*) var315
;
5034 ((void(*)(val
* self
, val
* p0
, long p1
))(var316
->class->vft
[COLOR_core__array__Array__with_native
]))(var316
, var317
, 1l); /* with_native on <var316:Array[Object]>*/
5038 core__file___Sys___printn(var293
, var316
); /* Direct call file#Sys#printn on <var293:Sys>*/
5041 if (likely(varonce319
!=NULL
)) {
5042 var320
= varonce319
;
5045 var322
= core__flat___NativeString___to_s_full(var321
, 0l, 0l);
5047 varonce319
= var320
;
5050 core__file___Sys___print(var318
, var320
); /* Direct call file#Sys#print on <var318:Sys>*/
5053 ((void(*)(val
* self
))((((long)var_192
&3)?class_info
[((long)var_192
&3)]:var_192
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_192
); /* next on <var_192:IndexedIterator[String]>*/
5056 BREAK_label194
: (void)0;
5058 ((void(*)(val
* self
))((((long)var_192
&3)?class_info
[((long)var_192
&3)]:var_192
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_192
); /* finish on <var_192:IndexedIterator[String]>*/
5064 /* method abstract_compiler#AbstractCompiler#finalize_ffi_for_module for (self: AbstractCompiler, MModule) */
5065 void nitc___nitc__AbstractCompiler___finalize_ffi_for_module(val
* self
, val
* p0
) {
5066 val
* var_mmodule
/* var mmodule: MModule */;
5069 nitc__light___MModule___finalize_ffi(var_mmodule
, self
); /* Direct call light#MModule#finalize_ffi on <var_mmodule:MModule>*/
5073 /* method abstract_compiler#CodeFile#name for (self: CodeFile): String */
5074 val
* nitc___nitc__CodeFile___name(val
* self
) {
5075 val
* var
/* : String */;
5076 val
* var1
/* : String */;
5077 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__CodeFile___name
].val
; /* _name on <self:CodeFile> */
5078 if (unlikely(var1
== NULL
)) {
5079 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
5080 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1104);
5087 /* method abstract_compiler#CodeFile#name= for (self: CodeFile, String) */
5088 void nitc___nitc__CodeFile___name_61d(val
* self
, val
* p0
) {
5089 self
->attrs
[COLOR_nitc__abstract_compiler__CodeFile___name
].val
= p0
; /* _name on <self:CodeFile> */
5092 /* method abstract_compiler#CodeFile#writers for (self: CodeFile): Array[CodeWriter] */
5093 val
* nitc___nitc__CodeFile___writers(val
* self
) {
5094 val
* var
/* : Array[CodeWriter] */;
5095 val
* var1
/* : Array[CodeWriter] */;
5096 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__CodeFile___writers
].val
; /* _writers on <self:CodeFile> */
5097 if (unlikely(var1
== NULL
)) {
5098 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _writers");
5099 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1105);
5106 /* method abstract_compiler#CodeFile#required_declarations for (self: CodeFile): HashSet[String] */
5107 val
* nitc___nitc__CodeFile___required_declarations(val
* self
) {
5108 val
* var
/* : HashSet[String] */;
5109 val
* var1
/* : HashSet[String] */;
5110 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__CodeFile___required_declarations
].val
; /* _required_declarations on <self:CodeFile> */
5111 if (unlikely(var1
== NULL
)) {
5112 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _required_declarations");
5113 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1106);
5120 /* method abstract_compiler#CodeFile#init for (self: CodeFile) */
5121 void nitc___nitc__CodeFile___core__kernel__Object__init(val
* self
) {
5123 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc___nitc__CodeFile___core__kernel__Object__init
]))(self
); /* init on <self:CodeFile>*/
5127 /* method abstract_compiler#CodeWriter#file for (self: CodeWriter): CodeFile */
5128 val
* nitc___nitc__CodeWriter___file(val
* self
) {
5129 val
* var
/* : CodeFile */;
5130 val
* var1
/* : CodeFile */;
5131 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__CodeWriter___file
].val
; /* _file on <self:CodeWriter> */
5132 if (unlikely(var1
== NULL
)) {
5133 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _file");
5134 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1111);
5141 /* method abstract_compiler#CodeWriter#file= for (self: CodeWriter, CodeFile) */
5142 void nitc___nitc__CodeWriter___file_61d(val
* self
, val
* p0
) {
5143 self
->attrs
[COLOR_nitc__abstract_compiler__CodeWriter___file
].val
= p0
; /* _file on <self:CodeWriter> */
5146 /* method abstract_compiler#CodeWriter#lines for (self: CodeWriter): List[String] */
5147 val
* nitc___nitc__CodeWriter___lines(val
* self
) {
5148 val
* var
/* : List[String] */;
5149 val
* var1
/* : List[String] */;
5150 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__CodeWriter___lines
].val
; /* _lines on <self:CodeWriter> */
5151 if (unlikely(var1
== NULL
)) {
5152 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _lines");
5153 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1112);
5160 /* method abstract_compiler#CodeWriter#decl_lines for (self: CodeWriter): List[String] */
5161 val
* nitc___nitc__CodeWriter___decl_lines(val
* self
) {
5162 val
* var
/* : List[String] */;
5163 val
* var1
/* : List[String] */;
5164 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__CodeWriter___decl_lines
].val
; /* _decl_lines on <self:CodeWriter> */
5165 if (unlikely(var1
== NULL
)) {
5166 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _decl_lines");
5167 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1113);
5174 /* method abstract_compiler#CodeWriter#add_decl for (self: CodeWriter, String) */
5175 void nitc___nitc__CodeWriter___add_decl(val
* self
, val
* p0
) {
5176 val
* var_s
/* var s: String */;
5177 val
* var
/* : List[String] */;
5178 val
* var2
/* : List[String] */;
5181 { /* Inline abstract_compiler#CodeWriter#decl_lines (self) on <self:CodeWriter> */
5182 var2
= self
->attrs
[COLOR_nitc__abstract_compiler__CodeWriter___decl_lines
].val
; /* _decl_lines on <self:CodeWriter> */
5183 if (unlikely(var2
== NULL
)) {
5184 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _decl_lines");
5185 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1113);
5193 core___core__Sequence___SimpleCollection__add(var
, var_s
); /* Direct call abstract_collection#Sequence#add on <var:List[String]>*/
5197 /* method abstract_compiler#CodeWriter#init for (self: CodeWriter) */
5198 void nitc___nitc__CodeWriter___core__kernel__Object__init(val
* self
) {
5199 val
* var
/* : CodeFile */;
5200 val
* var2
/* : CodeFile */;
5201 val
* var3
/* : Array[CodeWriter] */;
5202 val
* var5
/* : Array[CodeWriter] */;
5204 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc___nitc__CodeWriter___core__kernel__Object__init
]))(self
); /* init on <self:CodeWriter>*/
5207 { /* Inline abstract_compiler#CodeWriter#file (self) on <self:CodeWriter> */
5208 var2
= self
->attrs
[COLOR_nitc__abstract_compiler__CodeWriter___file
].val
; /* _file on <self:CodeWriter> */
5209 if (unlikely(var2
== NULL
)) {
5210 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _file");
5211 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1111);
5219 { /* Inline abstract_compiler#CodeFile#writers (var) on <var:CodeFile> */
5220 var5
= var
->attrs
[COLOR_nitc__abstract_compiler__CodeFile___writers
].val
; /* _writers on <var:CodeFile> */
5221 if (unlikely(var5
== NULL
)) {
5222 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _writers");
5223 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1105);
5231 core___core__Array___core__abstract_collection__SimpleCollection__add(var3
, self
); /* Direct call array#Array#add on <var3:Array[CodeWriter]>*/
5235 /* method abstract_compiler#AbstractCompilerVisitor#compiler for (self: AbstractCompilerVisitor): AbstractCompiler */
5236 val
* nitc___nitc__AbstractCompilerVisitor___compiler(val
* self
) {
5237 val
* var
/* : AbstractCompiler */;
5238 val
* var1
/* : AbstractCompiler */;
5239 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
5240 if (unlikely(var1
== NULL
)) {
5241 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5242 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
5249 /* method abstract_compiler#AbstractCompilerVisitor#compiler= for (self: AbstractCompilerVisitor, AbstractCompiler) */
5250 void nitc___nitc__AbstractCompilerVisitor___compiler_61d(val
* self
, val
* p0
) {
5251 short int var
/* : Bool */;
5254 const struct type
* type_struct
;
5255 const char* var_class_name
;
5256 /* Covariant cast for argument 0 (compiler) <p0:AbstractCompiler> isa COMPILER */
5257 /* <p0:AbstractCompiler> isa COMPILER */
5258 type_struct
= self
->type
->resolution_table
->types
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor__COMPILER
];
5259 cltype
= type_struct
->color
;
5260 idtype
= type_struct
->id
;
5261 if(cltype
>= p0
->type
->table_size
) {
5264 var
= p0
->type
->type_table
[cltype
] == idtype
;
5266 if (unlikely(!var
)) {
5267 var_class_name
= p0
== NULL ?
"null" : p0
->type
->name
;
5268 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "COMPILER", var_class_name
);
5269 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
5272 self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
= p0
; /* _compiler on <self:AbstractCompilerVisitor> */
5275 /* method abstract_compiler#AbstractCompilerVisitor#current_node for (self: AbstractCompilerVisitor): nullable ANode */
5276 val
* nitc___nitc__AbstractCompilerVisitor___current_node(val
* self
) {
5277 val
* var
/* : nullable ANode */;
5278 val
* var1
/* : nullable ANode */;
5279 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___current_node
].val
; /* _current_node on <self:AbstractCompilerVisitor> */
5284 /* method abstract_compiler#AbstractCompilerVisitor#current_node= for (self: AbstractCompilerVisitor, nullable ANode) */
5285 void nitc___nitc__AbstractCompilerVisitor___current_node_61d(val
* self
, val
* p0
) {
5286 self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___current_node
].val
= p0
; /* _current_node on <self:AbstractCompilerVisitor> */
5289 /* method abstract_compiler#AbstractCompilerVisitor#frame for (self: AbstractCompilerVisitor): nullable StaticFrame */
5290 val
* nitc___nitc__AbstractCompilerVisitor___frame(val
* self
) {
5291 val
* var
/* : nullable StaticFrame */;
5292 val
* var1
/* : nullable StaticFrame */;
5293 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:AbstractCompilerVisitor> */
5298 /* method abstract_compiler#AbstractCompilerVisitor#frame= for (self: AbstractCompilerVisitor, nullable StaticFrame) */
5299 void nitc___nitc__AbstractCompilerVisitor___frame_61d(val
* self
, val
* p0
) {
5300 self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
= p0
; /* _frame on <self:AbstractCompilerVisitor> */
5303 /* method abstract_compiler#AbstractCompilerVisitor#object_type for (self: AbstractCompilerVisitor): MClassType */
5304 val
* nitc___nitc__AbstractCompilerVisitor___object_type(val
* self
) {
5305 val
* var
/* : MClassType */;
5306 val
* var1
/* : AbstractCompiler */;
5307 val
* var3
/* : AbstractCompiler */;
5308 val
* var4
/* : MModule */;
5309 val
* var6
/* : MModule */;
5310 val
* var7
/* : MClassType */;
5312 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
5313 var3
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
5314 if (unlikely(var3
== NULL
)) {
5315 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5316 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
5324 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var1) on <var1:AbstractCompiler> */
5325 var6
= var1
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var1:AbstractCompiler> */
5326 if (unlikely(var6
== NULL
)) {
5327 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
5328 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
5336 var7
= nitc__model___MModule___object_type(var4
);
5343 /* method abstract_compiler#AbstractCompilerVisitor#bool_type for (self: AbstractCompilerVisitor): MClassType */
5344 val
* nitc___nitc__AbstractCompilerVisitor___bool_type(val
* self
) {
5345 val
* var
/* : MClassType */;
5346 val
* var1
/* : AbstractCompiler */;
5347 val
* var3
/* : AbstractCompiler */;
5348 val
* var4
/* : MModule */;
5349 val
* var6
/* : MModule */;
5350 val
* var7
/* : MClassType */;
5352 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
5353 var3
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
5354 if (unlikely(var3
== NULL
)) {
5355 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5356 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
5364 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var1) on <var1:AbstractCompiler> */
5365 var6
= var1
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var1:AbstractCompiler> */
5366 if (unlikely(var6
== NULL
)) {
5367 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
5368 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
5376 var7
= nitc__model___MModule___bool_type(var4
);
5383 /* method abstract_compiler#AbstractCompilerVisitor#writer for (self: AbstractCompilerVisitor): CodeWriter */
5384 val
* nitc___nitc__AbstractCompilerVisitor___writer(val
* self
) {
5385 val
* var
/* : CodeWriter */;
5386 val
* var1
/* : CodeWriter */;
5387 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___writer
].val
; /* _writer on <self:AbstractCompilerVisitor> */
5388 if (unlikely(var1
== NULL
)) {
5389 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _writer");
5390 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1148);
5397 /* method abstract_compiler#AbstractCompilerVisitor#writer= for (self: AbstractCompilerVisitor, CodeWriter) */
5398 void nitc___nitc__AbstractCompilerVisitor___writer_61d(val
* self
, val
* p0
) {
5399 self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___writer
].val
= p0
; /* _writer on <self:AbstractCompilerVisitor> */
5402 /* method abstract_compiler#AbstractCompilerVisitor#init for (self: AbstractCompilerVisitor) */
5403 void nitc___nitc__AbstractCompilerVisitor___core__kernel__Object__init(val
* self
) {
5404 val
* var
/* : CodeWriter */;
5405 val
* var1
/* : AbstractCompiler */;
5406 val
* var3
/* : AbstractCompiler */;
5407 val
* var4
/* : List[CodeFile] */;
5408 val
* var6
/* : List[CodeFile] */;
5409 val
* var7
/* : nullable Object */;
5411 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc___nitc__AbstractCompilerVisitor___core__kernel__Object__init
]))(self
); /* init on <self:AbstractCompilerVisitor>*/
5413 var
= NEW_nitc__CodeWriter(&type_nitc__CodeWriter
);
5415 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
5416 var3
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
5417 if (unlikely(var3
== NULL
)) {
5418 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5419 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
5427 { /* Inline abstract_compiler#AbstractCompiler#files (var1) on <var1:AbstractCompiler> */
5428 var6
= var1
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___files
].val
; /* _files on <var1:AbstractCompiler> */
5429 if (unlikely(var6
== NULL
)) {
5430 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _files");
5431 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 578);
5439 var7
= core___core__List___core__abstract_collection__SequenceRead__last(var4
);
5442 ((void(*)(val
* self
, val
* p0
))(var
->class->vft
[COLOR_nitc__abstract_compiler__CodeWriter__file_61d
]))(var
, var7
); /* file= on <var:CodeWriter>*/
5445 ((void(*)(val
* self
))(var
->class->vft
[COLOR_core__kernel__Object__init
]))(var
); /* init on <var:CodeWriter>*/
5448 { /* Inline abstract_compiler#AbstractCompilerVisitor#writer= (self,var) on <self:AbstractCompilerVisitor> */
5449 self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___writer
].val
= var
; /* _writer on <self:AbstractCompilerVisitor> */
5455 /* method abstract_compiler#AbstractCompilerVisitor#get_property for (self: AbstractCompilerVisitor, String, MType): MMethod */
5456 val
* nitc___nitc__AbstractCompilerVisitor___get_property(val
* self
, val
* p0
, val
* p1
) {
5457 val
* var
/* : MMethod */;
5458 val
* var_name
/* var name: String */;
5459 val
* var_recv
/* var recv: MType */;
5460 short int var1
/* : Bool */;
5463 val
* var2
/* : AbstractCompiler */;
5464 val
* var4
/* : AbstractCompiler */;
5465 val
* var5
/* : ModelBuilder */;
5466 val
* var7
/* : ModelBuilder */;
5467 val
* var8
/* : nullable ANode */;
5468 val
* var10
/* : nullable ANode */;
5469 val
* var11
/* : MClass */;
5470 val
* var13
/* : MClass */;
5471 val
* var14
/* : AbstractCompiler */;
5472 val
* var16
/* : AbstractCompiler */;
5473 val
* var17
/* : MModule */;
5474 val
* var19
/* : MModule */;
5475 val
* var20
/* : MMethod */;
5478 /* <var_recv:MType> isa MClassType */
5479 cltype
= type_nitc__MClassType
.color
;
5480 idtype
= type_nitc__MClassType
.id
;
5481 if(cltype
>= var_recv
->type
->table_size
) {
5484 var1
= var_recv
->type
->type_table
[cltype
] == idtype
;
5486 if (unlikely(!var1
)) {
5487 PRINT_ERROR("Runtime error: %s", "Assert failed");
5488 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1158);
5492 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
5493 var4
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
5494 if (unlikely(var4
== NULL
)) {
5495 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5496 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
5504 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var2) on <var2:AbstractCompiler> */
5505 var7
= var2
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var2:AbstractCompiler> */
5506 if (unlikely(var7
== NULL
)) {
5507 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
5508 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
5516 { /* Inline abstract_compiler#AbstractCompilerVisitor#current_node (self) on <self:AbstractCompilerVisitor> */
5517 var10
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___current_node
].val
; /* _current_node on <self:AbstractCompilerVisitor> */
5523 { /* Inline model#MClassType#mclass (var_recv) on <var_recv:MType(MClassType)> */
5524 var13
= var_recv
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_recv:MType(MClassType)> */
5525 if (unlikely(var13
== NULL
)) {
5526 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
5527 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
5531 RET_LABEL12
:(void)0;
5535 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
5536 var16
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
5537 if (unlikely(var16
== NULL
)) {
5538 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5539 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
5543 RET_LABEL15
:(void)0;
5547 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var14) on <var14:AbstractCompiler> */
5548 var19
= var14
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var14:AbstractCompiler> */
5549 if (unlikely(var19
== NULL
)) {
5550 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
5551 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
5555 RET_LABEL18
:(void)0;
5559 var20
= nitc___nitc__ModelBuilder___force_get_primitive_method(var5
, var8
, var_name
, var11
, var17
);
5566 /* method abstract_compiler#AbstractCompilerVisitor#compile_callsite for (self: AbstractCompilerVisitor, CallSite, Array[RuntimeVariable]): nullable RuntimeVariable */
5567 val
* nitc___nitc__AbstractCompilerVisitor___compile_callsite(val
* self
, val
* p0
, val
* p1
) {
5568 val
* var
/* : nullable RuntimeVariable */;
5569 val
* var_callsite
/* var callsite: CallSite */;
5570 val
* var_arguments
/* var arguments: Array[RuntimeVariable] */;
5571 short int var1
/* : Bool */;
5572 short int var3
/* : Bool */;
5573 val
* var4
/* : MMethodDef */;
5574 val
* var6
/* : MMethodDef */;
5575 val
* var7
/* : Array[MProperty] */;
5576 val
* var9
/* : Array[MProperty] */;
5577 val
* var_initializers
/* var initializers: Array[MProperty] */;
5578 short int var10
/* : Bool */;
5579 short int var11
/* : Bool */;
5580 val
* var12
/* : nullable Object */;
5581 val
* var_recv
/* var recv: RuntimeVariable */;
5582 long var_i
/* var i: Int */;
5583 val
* var_
/* var : Array[MProperty] */;
5584 val
* var13
/* : IndexedIterator[nullable Object] */;
5585 val
* var_14
/* var : IndexedIterator[MProperty] */;
5586 short int var15
/* : Bool */;
5587 val
* var16
/* : nullable Object */;
5588 val
* var_p
/* var p: MProperty */;
5589 short int var17
/* : Bool */;
5592 val
* var18
/* : Array[RuntimeVariable] */;
5593 val
* var_19
/* var : Array[RuntimeVariable] */;
5594 val
* var_args
/* var args: Array[RuntimeVariable] */;
5595 val
* var20
/* : MPropDef */;
5596 val
* var22
/* : MPropDef */;
5597 val
* var23
/* : nullable MSignature */;
5598 val
* var25
/* : nullable MSignature */;
5599 val
* var26
/* : Array[MParameter] */;
5600 val
* var28
/* : Array[MParameter] */;
5601 val
* var_29
/* var : Array[MParameter] */;
5602 val
* var30
/* : IndexedIterator[nullable Object] */;
5603 val
* var_31
/* var : IndexedIterator[MParameter] */;
5604 short int var32
/* : Bool */;
5605 val
* var34
/* : nullable Object */;
5606 val
* var_x
/* var x: MParameter */;
5607 val
* var35
/* : nullable Object */;
5608 long var36
/* : Int */;
5609 short int var38
/* : Bool */;
5612 const char* var_class_name
;
5613 long var41
/* : Int */;
5614 val
* var42
/* : nullable RuntimeVariable */;
5615 short int var43
/* : Bool */;
5618 val
* var46
/* : nullable Object */;
5619 long var47
/* : Int */;
5620 short int var49
/* : Bool */;
5623 const char* var_class_name52
;
5624 long var53
/* : Int */;
5625 long var54
/* : Int */;
5626 long var56
/* : Int */;
5627 short int var57
/* : Bool */;
5628 short int var59
/* : Bool */;
5629 val
* var60
/* : MMethod */;
5630 val
* var62
/* : MMethod */;
5631 val
* var63
/* : Array[RuntimeVariable] */;
5632 val
* var_64
/* var : Array[RuntimeVariable] */;
5633 val
* var65
/* : nullable RuntimeVariable */;
5634 val
* var66
/* : MMethod */;
5635 val
* var68
/* : MMethod */;
5636 val
* var69
/* : nullable RuntimeVariable */;
5640 { /* Inline model_base#MEntity#is_broken (var_callsite) on <var_callsite:CallSite> */
5641 var3
= var_callsite
->attrs
[COLOR_nitc__model_base__MEntity___is_broken
].s
; /* _is_broken on <var_callsite:CallSite> */
5652 { /* Inline typing#CallSite#mpropdef (var_callsite) on <var_callsite:CallSite> */
5653 var6
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___mpropdef
].val
; /* _mpropdef on <var_callsite:CallSite> */
5654 if (unlikely(var6
== NULL
)) {
5655 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
5656 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 656);
5664 { /* Inline model#MMethodDef#initializers (var4) on <var4:MMethodDef> */
5665 var9
= var4
->attrs
[COLOR_nitc__model__MMethodDef___initializers
].val
; /* _initializers on <var4:MMethodDef> */
5666 if (unlikely(var9
== NULL
)) {
5667 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers");
5668 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2363);
5675 var_initializers
= var7
;
5677 var10
= core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var_initializers
);
5682 var12
= core___core__SequenceRead___Collection__first(var_arguments
);
5686 var_
= var_initializers
;
5688 var13
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_
);
5693 var15
= ((short int(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_14
); /* is_ok on <var_14:IndexedIterator[MProperty]>*/
5700 var16
= ((val
*(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_14
); /* item on <var_14:IndexedIterator[MProperty]>*/
5703 /* <var_p:MProperty> isa MMethod */
5704 cltype
= type_nitc__MMethod
.color
;
5705 idtype
= type_nitc__MMethod
.id
;
5706 if(cltype
>= var_p
->type
->table_size
) {
5709 var17
= var_p
->type
->type_table
[cltype
] == idtype
;
5712 var18
= NEW_core__Array(&type_core__Array__nitc__RuntimeVariable
);
5714 core___core__Array___with_capacity(var18
, 1l); /* Direct call array#Array#with_capacity on <var18:Array[RuntimeVariable]>*/
5718 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_19
, var_recv
); /* Direct call array#AbstractArray#push on <var_19:Array[RuntimeVariable]>*/
5722 { /* Inline model#MProperty#intro (var_p) on <var_p:MProperty(MMethod)> */
5723 var22
= var_p
->attrs
[COLOR_nitc__model__MProperty___intro
].val
; /* _intro on <var_p:MProperty(MMethod)> */
5724 if (unlikely(var22
== NULL
)) {
5725 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
5726 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1986);
5730 RET_LABEL21
:(void)0;
5734 { /* Inline model#MMethodDef#msignature (var20) on <var20:MPropDef(MMethodDef)> */
5735 var25
= var20
->attrs
[COLOR_nitc__model__MMethodDef___msignature
].val
; /* _msignature on <var20:MPropDef(MMethodDef)> */
5737 RET_LABEL24
:(void)0;
5740 if (var23
== NULL
) {
5741 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5742 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1173);
5745 { /* Inline model#MSignature#mparameters (var23) on <var23:nullable MSignature> */
5746 if (unlikely(var23
== NULL
)) {
5747 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5748 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1783);
5751 var28
= var23
->attrs
[COLOR_nitc__model__MSignature___mparameters
].val
; /* _mparameters on <var23:nullable MSignature> */
5752 if (unlikely(var28
== NULL
)) {
5753 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
5754 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1783);
5758 RET_LABEL27
:(void)0;
5763 var30
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_29
);
5768 var32
= ((short int(*)(val
* self
))((((long)var_31
&3)?class_info
[((long)var_31
&3)]:var_31
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_31
); /* is_ok on <var_31:IndexedIterator[MParameter]>*/
5775 var34
= ((val
*(*)(val
* self
))((((long)var_31
&3)?class_info
[((long)var_31
&3)]:var_31
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_31
); /* item on <var_31:IndexedIterator[MParameter]>*/
5779 var35
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_arguments
, var_i
);
5782 core___core__Array___core__abstract_collection__SimpleCollection__add(var_args
, var35
); /* Direct call array#Array#add on <var_args:Array[RuntimeVariable]>*/
5785 { /* Inline kernel#Int#+ (var_i,1l) on <var_i:Int> */
5786 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
5787 /* <1l:Int> isa OTHER */
5788 var38
= 1; /* easy <1l:Int> isa OTHER*/
5789 if (unlikely(!var38
)) {
5790 var_class_name
= type_core__Int
.name
;
5791 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
5792 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
5798 RET_LABEL37
:(void)0;
5803 ((void(*)(val
* self
))((((long)var_31
&3)?class_info
[((long)var_31
&3)]:var_31
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_31
); /* next on <var_31:IndexedIterator[MParameter]>*/
5806 BREAK_label33
: (void)0;
5808 ((void(*)(val
* self
))((((long)var_31
&3)?class_info
[((long)var_31
&3)]:var_31
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_31
); /* finish on <var_31:IndexedIterator[MParameter]>*/
5811 var42
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__send(self
, var_p
, var_args
);
5814 /* <var_p:MProperty> isa MAttribute */
5815 cltype44
= type_nitc__MAttribute
.color
;
5816 idtype45
= type_nitc__MAttribute
.id
;
5817 if(cltype44
>= var_p
->type
->table_size
) {
5820 var43
= var_p
->type
->type_table
[cltype44
] == idtype45
;
5824 var46
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_arguments
, var_i
);
5827 nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__write_attribute(self
, var_p
, var_recv
, var46
); /* Direct call separate_compiler#SeparateCompilerVisitor#write_attribute on <self:AbstractCompilerVisitor>*/
5830 { /* Inline kernel#Int#+ (var_i,1l) on <var_i:Int> */
5831 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
5832 /* <1l:Int> isa OTHER */
5833 var49
= 1; /* easy <1l:Int> isa OTHER*/
5834 if (unlikely(!var49
)) {
5835 var_class_name52
= type_core__Int
.name
;
5836 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name52
);
5837 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
5843 RET_LABEL48
:(void)0;
5848 PRINT_ERROR("Runtime error: %s", "Aborted");
5849 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1181);
5854 ((void(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_14
); /* next on <var_14:IndexedIterator[MProperty]>*/
5857 BREAK_label
: (void)0;
5859 ((void(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_14
); /* finish on <var_14:IndexedIterator[MProperty]>*/
5862 { /* Inline array#AbstractArrayRead#length (var_arguments) on <var_arguments:Array[RuntimeVariable]> */
5863 var56
= var_arguments
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_arguments:Array[RuntimeVariable]> */
5865 RET_LABEL55
:(void)0;
5869 { /* Inline kernel#Int#== (var_i,var54) on <var_i:Int> */
5870 var59
= var_i
== var54
;
5873 RET_LABEL58
:(void)0;
5876 if (unlikely(!var57
)) {
5877 PRINT_ERROR("Runtime error: %s", "Assert failed");
5878 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1183);
5882 { /* Inline typing#CallSite#mproperty (var_callsite) on <var_callsite:CallSite> */
5883 var62
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___mproperty
].val
; /* _mproperty on <var_callsite:CallSite> */
5884 if (unlikely(var62
== NULL
)) {
5885 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
5886 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 653);
5890 RET_LABEL61
:(void)0;
5893 var63
= NEW_core__Array(&type_core__Array__nitc__RuntimeVariable
);
5895 core___core__Array___with_capacity(var63
, 1l); /* Direct call array#Array#with_capacity on <var63:Array[RuntimeVariable]>*/
5899 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_64
, var_recv
); /* Direct call array#AbstractArray#push on <var_64:Array[RuntimeVariable]>*/
5902 var65
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__send(self
, var60
, var_64
);
5909 { /* Inline typing#CallSite#mproperty (var_callsite) on <var_callsite:CallSite> */
5910 var68
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___mproperty
].val
; /* _mproperty on <var_callsite:CallSite> */
5911 if (unlikely(var68
== NULL
)) {
5912 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
5913 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 653);
5917 RET_LABEL67
:(void)0;
5921 var69
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__send(self
, var66
, var_arguments
);
5928 /* method abstract_compiler#AbstractCompilerVisitor#calloc_array for (self: AbstractCompilerVisitor, MType, Array[RuntimeVariable]) */
5929 void nitc___nitc__AbstractCompilerVisitor___calloc_array(val
* self
, val
* p0
, val
* p1
) {
5930 const char* var_class_name
;
5931 var_class_name
= self
== NULL ?
"null" : self
->type
->name
;
5932 PRINT_ERROR("Runtime error: Abstract method `%s` called on `%s`", "calloc_array", var_class_name
);
5933 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1193);
5937 /* method abstract_compiler#AbstractCompilerVisitor#varargize for (self: AbstractCompilerVisitor, MMethodDef, nullable SignatureMap, RuntimeVariable, SequenceRead[AExpr]): Array[RuntimeVariable] */
5938 val
* nitc___nitc__AbstractCompilerVisitor___varargize(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
5939 val
* var
/* : Array[RuntimeVariable] */;
5940 val
* var_mpropdef
/* var mpropdef: MMethodDef */;
5941 val
* var_map
/* var map: nullable SignatureMap */;
5942 val
* var_recv
/* var recv: RuntimeVariable */;
5943 val
* var_args
/* var args: SequenceRead[AExpr] */;
5944 val
* var1
/* : MSignature */;
5945 val
* var2
/* : nullable MSignature */;
5946 val
* var4
/* : nullable MSignature */;
5947 val
* var5
/* : nullable MSignature */;
5948 val
* var7
/* : nullable MSignature */;
5949 val
* var_msignature
/* var msignature: MSignature */;
5950 val
* var8
/* : Array[RuntimeVariable] */;
5951 val
* var_res
/* var res: Array[RuntimeVariable] */;
5952 long var9
/* : Int */;
5953 short int var10
/* : Bool */;
5954 short int var12
/* : Bool */;
5955 short int var13
/* : Bool */;
5956 short int var14
/* : Bool */;
5957 val
* var_other
/* var other: nullable Object */;
5958 short int var16
/* : Bool */;
5959 short int var18
/* : Bool */;
5960 long var19
/* : Int */;
5961 long var20
/* : Int */;
5962 short int var21
/* : Bool */;
5963 short int var23
/* : Bool */;
5964 val
* var_
/* var : SequenceRead[AExpr] */;
5965 val
* var24
/* : Iterator[nullable Object] */;
5966 val
* var_25
/* var : IndexedIterator[AExpr] */;
5967 short int var26
/* : Bool */;
5968 val
* var27
/* : nullable Object */;
5969 val
* var_ne
/* var ne: AExpr */;
5970 val
* var28
/* : RuntimeVariable */;
5971 val
* var29
/* : Array[RuntimeVariable] */;
5972 long var30
/* : Int */;
5973 val
* var_exprs
/* var exprs: Array[RuntimeVariable] */;
5974 val
* var_31
/* var : SequenceRead[AExpr] */;
5975 val
* var32
/* : Iterator[nullable Object] */;
5976 val
* var_33
/* var : IndexedIterator[AExpr] */;
5977 short int var34
/* : Bool */;
5978 val
* var36
/* : nullable Object */;
5979 val
* var_ne37
/* var ne: AExpr */;
5980 val
* var38
/* : RuntimeVariable */;
5981 long var_i
/* var i: Int */;
5982 long var39
/* : Int */;
5983 long var_40
/* var : Int */;
5984 short int var41
/* : Bool */;
5985 short int var43
/* : Bool */;
5988 const char* var_class_name
;
5989 short int var44
/* : Bool */;
5990 val
* var46
/* : Array[MParameter] */;
5991 val
* var48
/* : Array[MParameter] */;
5992 val
* var49
/* : nullable Object */;
5993 val
* var_param
/* var param: MParameter */;
5994 val
* var50
/* : ArrayMap[Int, Int] */;
5995 val
* var52
/* : ArrayMap[Int, Int] */;
5996 val
* var53
/* : nullable Object */;
5997 val
* var54
/* : nullable Object */;
5998 val
* var_j
/* var j: nullable Int */;
5999 short int var55
/* : Bool */;
6000 short int var56
/* : Bool */;
6001 short int var58
/* : Bool */;
6002 val
* var59
/* : RuntimeVariable */;
6003 short int var61
/* : Bool */;
6004 short int var62
/* : Bool */;
6005 short int var64
/* : Bool */;
6006 short int var_65
/* var : Bool */;
6007 val
* var66
/* : nullable Object */;
6008 long var67
/* : Int */;
6009 long var69
/* : Int */;
6010 short int var70
/* : Bool */;
6011 short int var72
/* : Bool */;
6014 const char* var_class_name75
;
6015 short int var76
/* : Bool */;
6016 val
* var77
/* : nullable Object */;
6017 long var78
/* : Int */;
6018 long var80
/* : Int */;
6019 val
* var81
/* : Array[nullable Object] */;
6020 long var82
/* : Int */;
6021 val
* var_vararg
/* var vararg: Array[RuntimeVariable] */;
6022 val
* var83
/* : MType */;
6023 val
* var85
/* : MType */;
6024 val
* var_elttype
/* var elttype: MType */;
6025 val
* var86
/* : RuntimeVariable */;
6026 val
* var_arg
/* var arg: RuntimeVariable */;
6027 val
* var87
/* : nullable Object */;
6028 long var88
/* : Int */;
6029 long var89
/* : Int */;
6035 { /* Inline model#MMethodDef#new_msignature (var_mpropdef) on <var_mpropdef:MMethodDef> */
6036 var4
= var_mpropdef
->attrs
[COLOR_nitc__model__MMethodDef___new_msignature
].val
; /* _new_msignature on <var_mpropdef:MMethodDef> */
6045 { /* Inline model#MMethodDef#msignature (var_mpropdef) on <var_mpropdef:MMethodDef> */
6046 var7
= var_mpropdef
->attrs
[COLOR_nitc__model__MMethodDef___msignature
].val
; /* _msignature on <var_mpropdef:MMethodDef> */
6051 if (unlikely(var5
== NULL
)) {
6052 PRINT_ERROR("Runtime error: %s", "Cast failed");
6053 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1210);
6058 var_msignature
= var1
;
6059 var8
= NEW_core__Array(&type_core__Array__nitc__RuntimeVariable
);
6061 core___core__Array___core__kernel__Object__init(var8
); /* Direct call array#Array#init on <var8:Array[RuntimeVariable]>*/
6065 core___core__Array___core__abstract_collection__SimpleCollection__add(var_res
, var_recv
); /* Direct call array#Array#add on <var_res:Array[RuntimeVariable]>*/
6068 var9
= nitc___nitc__MSignature___arity(var_msignature
);
6071 { /* Inline kernel#Int#== (var9,0l) on <var9:Int> */
6075 RET_LABEL11
:(void)0;
6083 if (var_map
== NULL
) {
6084 var13
= 1; /* is null */
6086 var13
= 0; /* arg is null but recv is not */
6089 { /* Inline kernel#Object#== (var_map,((val*)NULL)) on <var_map:nullable SignatureMap> */
6090 var_other
= ((val
*)NULL
);
6092 { /* Inline kernel#Object#is_same_instance (var_map,var_other) on <var_map:nullable SignatureMap(SignatureMap)> */
6093 var18
= var_map
== var_other
;
6096 RET_LABEL17
:(void)0;
6101 RET_LABEL15
:(void)0;
6107 var19
= ((long(*)(val
* self
))((((long)var_args
&3)?class_info
[((long)var_args
&3)]:var_args
->class)->vft
[COLOR_core__abstract_collection__Collection__length
]))(var_args
); /* length on <var_args:SequenceRead[AExpr]>*/
6110 var20
= nitc___nitc__MSignature___arity(var_msignature
);
6113 { /* Inline kernel#Int#== (var19,var20) on <var19:Int> */
6114 var23
= var19
== var20
;
6117 RET_LABEL22
:(void)0;
6120 if (unlikely(!var21
)) {
6121 PRINT_ERROR("Runtime error: %s", "Assert failed");
6122 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1217);
6127 var24
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:SequenceRead[AExpr]>*/
6132 var26
= ((short int(*)(val
* self
))((((long)var_25
&3)?class_info
[((long)var_25
&3)]:var_25
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_25
); /* is_ok on <var_25:IndexedIterator[AExpr]>*/
6139 var27
= ((val
*(*)(val
* self
))((((long)var_25
&3)?class_info
[((long)var_25
&3)]:var_25
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_25
); /* item on <var_25:IndexedIterator[AExpr]>*/
6143 var28
= nitc___nitc__AbstractCompilerVisitor___expr(self
, var_ne
, ((val
*)NULL
));
6146 core___core__Array___core__abstract_collection__SimpleCollection__add(var_res
, var28
); /* Direct call array#Array#add on <var_res:Array[RuntimeVariable]>*/
6149 ((void(*)(val
* self
))((((long)var_25
&3)?class_info
[((long)var_25
&3)]:var_25
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_25
); /* next on <var_25:IndexedIterator[AExpr]>*/
6152 BREAK_label
: (void)0;
6154 ((void(*)(val
* self
))((((long)var_25
&3)?class_info
[((long)var_25
&3)]:var_25
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_25
); /* finish on <var_25:IndexedIterator[AExpr]>*/
6160 var29
= NEW_core__Array(&type_core__Array__nitc__RuntimeVariable
);
6162 var30
= ((long(*)(val
* self
))((((long)var_args
&3)?class_info
[((long)var_args
&3)]:var_args
->class)->vft
[COLOR_core__abstract_collection__Collection__length
]))(var_args
); /* length on <var_args:SequenceRead[AExpr]>*/
6165 core___core__Array___with_capacity(var29
, var30
); /* Direct call array#Array#with_capacity on <var29:Array[RuntimeVariable]>*/
6170 var32
= ((val
*(*)(val
* self
))((((long)var_31
&3)?class_info
[((long)var_31
&3)]:var_31
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_31
); /* iterator on <var_31:SequenceRead[AExpr]>*/
6175 var34
= ((short int(*)(val
* self
))((((long)var_33
&3)?class_info
[((long)var_33
&3)]:var_33
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_33
); /* is_ok on <var_33:IndexedIterator[AExpr]>*/
6182 var36
= ((val
*(*)(val
* self
))((((long)var_33
&3)?class_info
[((long)var_33
&3)]:var_33
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_33
); /* item on <var_33:IndexedIterator[AExpr]>*/
6186 var38
= nitc___nitc__AbstractCompilerVisitor___expr(self
, var_ne37
, ((val
*)NULL
));
6189 core___core__Array___core__abstract_collection__SimpleCollection__add(var_exprs
, var38
); /* Direct call array#Array#add on <var_exprs:Array[RuntimeVariable]>*/
6192 ((void(*)(val
* self
))((((long)var_33
&3)?class_info
[((long)var_33
&3)]:var_33
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_33
); /* next on <var_33:IndexedIterator[AExpr]>*/
6195 BREAK_label35
: (void)0;
6197 ((void(*)(val
* self
))((((long)var_33
&3)?class_info
[((long)var_33
&3)]:var_33
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_33
); /* finish on <var_33:IndexedIterator[AExpr]>*/
6201 var39
= nitc___nitc__MSignature___arity(var_msignature
);
6206 { /* Inline kernel#Int#< (var_i,var_40) on <var_i:Int> */
6207 /* Covariant cast for argument 0 (i) <var_40:Int> isa OTHER */
6208 /* <var_40:Int> isa OTHER */
6209 var43
= 1; /* easy <var_40:Int> isa OTHER*/
6210 if (unlikely(!var43
)) {
6211 var_class_name
= type_core__Int
.name
;
6212 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
6213 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
6216 var44
= var_i
< var_40
;
6219 RET_LABEL42
:(void)0;
6227 { /* Inline model#MSignature#mparameters (var_msignature) on <var_msignature:MSignature> */
6228 var48
= var_msignature
->attrs
[COLOR_nitc__model__MSignature___mparameters
].val
; /* _mparameters on <var_msignature:MSignature> */
6229 if (unlikely(var48
== NULL
)) {
6230 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
6231 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1783);
6235 RET_LABEL47
:(void)0;
6239 var49
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var46
, var_i
);
6243 { /* Inline typing#SignatureMap#map (var_map) on <var_map:nullable SignatureMap(SignatureMap)> */
6244 var52
= var_map
->attrs
[COLOR_nitc__typing__SignatureMap___map
].val
; /* _map on <var_map:nullable SignatureMap(SignatureMap)> */
6245 if (unlikely(var52
== NULL
)) {
6246 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _map");
6247 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 628);
6251 RET_LABEL51
:(void)0;
6255 var54
= (val
*)(var_i
<<2|1);
6256 var53
= core___core__MapRead___get_or_null(var50
, var54
);
6259 if (var_j
== NULL
) {
6260 var55
= 1; /* is null */
6262 var55
= 0; /* arg is null but recv is not */
6265 { /* Inline kernel#Int#== (var_j,((val*)NULL)) on <var_j:nullable Int> */
6266 var58
= 0; /* incompatible types Int vs. null; cannot be NULL */
6269 RET_LABEL57
:(void)0;
6275 var59
= nitc___nitc__AbstractCompilerVisitor___null_instance(self
);
6278 core___core__Array___core__abstract_collection__SimpleCollection__add(var_res
, var59
); /* Direct call array#Array#add on <var_res:Array[RuntimeVariable]>*/
6284 { /* Inline model#MParameter#is_vararg (var_param) on <var_param:MParameter> */
6285 var64
= var_param
->attrs
[COLOR_nitc__model__MParameter___is_vararg
].s
; /* _is_vararg on <var_param:MParameter> */
6287 RET_LABEL63
:(void)0;
6293 var66
= ((val
*(*)(val
* self
, long p0
))((((long)var_args
&3)?class_info
[((long)var_args
&3)]:var_args
->class)->vft
[COLOR_core__abstract_collection__SequenceRead___91d_93d
]))(var_args
, var_i
); /* [] on <var_args:SequenceRead[AExpr]>*/
6296 { /* Inline typing#AExpr#vararg_decl (var66) on <var66:nullable Object(AExpr)> */
6297 var69
= var66
->attrs
[COLOR_nitc__typing__AExpr___vararg_decl
].l
; /* _vararg_decl on <var66:nullable Object(AExpr)> */
6299 RET_LABEL68
:(void)0;
6303 { /* Inline kernel#Int#> (var67,0l) on <var67:Int> */
6304 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
6305 /* <0l:Int> isa OTHER */
6306 var72
= 1; /* easy <0l:Int> isa OTHER*/
6307 if (unlikely(!var72
)) {
6308 var_class_name75
= type_core__Int
.name
;
6309 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name75
);
6310 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 730);
6316 RET_LABEL71
:(void)0;
6325 var77
= ((val
*(*)(val
* self
, long p0
))((((long)var_args
&3)?class_info
[((long)var_args
&3)]:var_args
->class)->vft
[COLOR_core__abstract_collection__SequenceRead___91d_93d
]))(var_args
, var_i
); /* [] on <var_args:SequenceRead[AExpr]>*/
6328 { /* Inline typing#AExpr#vararg_decl (var77) on <var77:nullable Object(AExpr)> */
6329 var80
= var77
->attrs
[COLOR_nitc__typing__AExpr___vararg_decl
].l
; /* _vararg_decl on <var77:nullable Object(AExpr)> */
6331 RET_LABEL79
:(void)0;
6335 var82
= (long)(var_j
)>>2;
6336 var81
= core___core__AbstractArrayRead___sub(var_exprs
, var82
, var78
);
6340 { /* Inline model#MParameter#mtype (var_param) on <var_param:MParameter> */
6341 var85
= var_param
->attrs
[COLOR_nitc__model__MParameter___mtype
].val
; /* _mtype on <var_param:MParameter> */
6342 if (unlikely(var85
== NULL
)) {
6343 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6344 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1900);
6348 RET_LABEL84
:(void)0;
6351 var_elttype
= var83
;
6353 var86
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__vararg_instance(self
, var_mpropdef
, var_recv
, var_vararg
, var_elttype
);
6357 core___core__Array___core__abstract_collection__SimpleCollection__add(var_res
, var_arg
); /* Direct call array#Array#add on <var_res:Array[RuntimeVariable]>*/
6363 var88
= (long)(var_j
)>>2;
6364 var87
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_exprs
, var88
);
6367 core___core__Array___core__abstract_collection__SimpleCollection__add(var_res
, var87
); /* Direct call array#Array#add on <var_res:Array[RuntimeVariable]>*/
6369 BREAK_label60
: (void)0;
6371 var89
= core___core__Int___Discrete__successor(var_i
, 1l);
6375 BREAK_label45
: (void)0;
6381 /* method abstract_compiler#AbstractCompilerVisitor#anchor for (self: AbstractCompilerVisitor, MType): MType */
6382 val
* nitc___nitc__AbstractCompilerVisitor___anchor(val
* self
, val
* p0
) {
6383 val
* var
/* : MType */;
6384 val
* var_mtype
/* var mtype: MType */;
6385 short int var1
/* : Bool */;
6386 short int var2
/* : Bool */;
6387 val
* var3
/* : AbstractCompiler */;
6388 val
* var5
/* : AbstractCompiler */;
6389 val
* var6
/* : MModule */;
6390 val
* var8
/* : MModule */;
6391 val
* var9
/* : nullable StaticFrame */;
6392 val
* var11
/* : nullable StaticFrame */;
6393 val
* var12
/* : MClassType */;
6394 val
* var14
/* : MClassType */;
6395 val
* var15
/* : MType */;
6398 var1
= ((short int(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model__MType__need_anchor
]))(var_mtype
); /* need_anchor on <var_mtype:MType>*/
6407 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
6408 var5
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
6409 if (unlikely(var5
== NULL
)) {
6410 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6411 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
6419 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var3) on <var3:AbstractCompiler> */
6420 var8
= var3
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var3:AbstractCompiler> */
6421 if (unlikely(var8
== NULL
)) {
6422 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
6423 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
6431 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:AbstractCompilerVisitor> */
6432 var11
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:AbstractCompilerVisitor> */
6434 RET_LABEL10
:(void)0;
6438 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6439 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1257);
6442 { /* Inline abstract_compiler#StaticFrame#receiver (var9) on <var9:nullable StaticFrame> */
6443 if (unlikely(var9
== NULL
)) {
6444 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6445 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1918);
6448 var14
= var9
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___receiver
].val
; /* _receiver on <var9:nullable StaticFrame> */
6449 if (unlikely(var14
== NULL
)) {
6450 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _receiver");
6451 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1918);
6455 RET_LABEL13
:(void)0;
6459 var15
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
))(var_mtype
->class->vft
[COLOR_nitc__model__MType__anchor_to
]))(var_mtype
, var6
, var12
); /* anchor_to on <var_mtype:MType>*/
6466 /* method abstract_compiler#AbstractCompilerVisitor#resolve_for for (self: AbstractCompilerVisitor, MType, RuntimeVariable): MType */
6467 val
* nitc___nitc__AbstractCompilerVisitor___resolve_for(val
* self
, val
* p0
, val
* p1
) {
6468 val
* var
/* : MType */;
6469 val
* var_mtype
/* var mtype: MType */;
6470 val
* var_recv
/* var recv: RuntimeVariable */;
6471 short int var1
/* : Bool */;
6472 short int var2
/* : Bool */;
6473 val
* var3
/* : MType */;
6474 val
* var5
/* : MType */;
6475 val
* var6
/* : nullable StaticFrame */;
6476 val
* var8
/* : nullable StaticFrame */;
6477 val
* var9
/* : MClassType */;
6478 val
* var11
/* : MClassType */;
6479 val
* var12
/* : AbstractCompiler */;
6480 val
* var14
/* : AbstractCompiler */;
6481 val
* var15
/* : MModule */;
6482 val
* var17
/* : MModule */;
6483 val
* var18
/* : MType */;
6487 var1
= ((short int(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model__MType__need_anchor
]))(var_mtype
); /* need_anchor on <var_mtype:MType>*/
6496 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_recv) on <var_recv:RuntimeVariable> */
6497 var5
= var_recv
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_recv:RuntimeVariable> */
6498 if (unlikely(var5
== NULL
)) {
6499 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
6500 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
6508 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:AbstractCompilerVisitor> */
6509 var8
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:AbstractCompilerVisitor> */
6515 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6516 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1263);
6519 { /* Inline abstract_compiler#StaticFrame#receiver (var6) on <var6:nullable StaticFrame> */
6520 if (unlikely(var6
== NULL
)) {
6521 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6522 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1918);
6525 var11
= var6
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___receiver
].val
; /* _receiver on <var6:nullable StaticFrame> */
6526 if (unlikely(var11
== NULL
)) {
6527 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _receiver");
6528 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1918);
6532 RET_LABEL10
:(void)0;
6536 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
6537 var14
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
6538 if (unlikely(var14
== NULL
)) {
6539 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6540 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
6544 RET_LABEL13
:(void)0;
6548 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var12) on <var12:AbstractCompiler> */
6549 var17
= var12
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var12:AbstractCompiler> */
6550 if (unlikely(var17
== NULL
)) {
6551 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
6552 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
6556 RET_LABEL16
:(void)0;
6560 var18
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
, val
* p2
, short int p3
))(var_mtype
->class->vft
[COLOR_nitc__model__MType__resolve_for
]))(var_mtype
, var3
, var9
, var15
, 1); /* resolve_for on <var_mtype:MType>*/
6567 /* method abstract_compiler#AbstractCompilerVisitor#autoadapt for (self: AbstractCompilerVisitor, RuntimeVariable, MType): RuntimeVariable */
6568 val
* nitc___nitc__AbstractCompilerVisitor___autoadapt(val
* self
, val
* p0
, val
* p1
) {
6569 val
* var
/* : RuntimeVariable */;
6570 val
* var_value
/* var value: RuntimeVariable */;
6571 val
* var_mtype
/* var mtype: MType */;
6572 val
* var1
/* : MType */;
6573 val
* var2
/* : MType */;
6574 val
* var4
/* : MType */;
6575 val
* var_valmtype
/* var valmtype: MType */;
6576 val
* var5
/* : AbstractCompiler */;
6577 val
* var7
/* : AbstractCompiler */;
6578 val
* var8
/* : MModule */;
6579 val
* var10
/* : MModule */;
6580 short int var11
/* : Bool */;
6581 short int var12
/* : Bool */;
6582 short int var13
/* : Bool */;
6585 short int var_
/* var : Bool */;
6586 val
* var14
/* : MType */;
6587 val
* var16
/* : MType */;
6588 val
* var17
/* : AbstractCompiler */;
6589 val
* var19
/* : AbstractCompiler */;
6590 val
* var20
/* : MModule */;
6591 val
* var22
/* : MModule */;
6592 short int var23
/* : Bool */;
6593 val
* var24
/* : RuntimeVariable */;
6594 val
* var25
/* : String */;
6595 val
* var27
/* : String */;
6596 val
* var28
/* : MType */;
6597 val
* var30
/* : MType */;
6598 val
* var_res
/* var res: RuntimeVariable */;
6599 val
* var31
/* : RuntimeVariable */;
6600 val
* var32
/* : String */;
6601 val
* var34
/* : String */;
6602 val
* var_res35
/* var res: RuntimeVariable */;
6606 var1
= nitc___nitc__AbstractCompilerVisitor___anchor(self
, var_mtype
);
6610 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_value) on <var_value:RuntimeVariable> */
6611 var4
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_value:RuntimeVariable> */
6612 if (unlikely(var4
== NULL
)) {
6613 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
6614 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
6621 var_valmtype
= var2
;
6623 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
6624 var7
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
6625 if (unlikely(var7
== NULL
)) {
6626 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6627 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
6635 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var5) on <var5:AbstractCompiler> */
6636 var10
= var5
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var5:AbstractCompiler> */
6637 if (unlikely(var10
== NULL
)) {
6638 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
6639 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
6647 var11
= nitc___nitc__MType___is_subtype(var_valmtype
, var8
, ((val
*)NULL
), var_mtype
);
6654 /* <var_valmtype:MType> isa MNullableType */
6655 cltype
= type_nitc__MNullableType
.color
;
6656 idtype
= type_nitc__MNullableType
.id
;
6657 if(cltype
>= var_valmtype
->type
->table_size
) {
6660 var13
= var_valmtype
->type
->type_table
[cltype
] == idtype
;
6665 { /* Inline model#MProxyType#mtype (var_valmtype) on <var_valmtype:MType(MNullableType)> */
6666 var16
= var_valmtype
->attrs
[COLOR_nitc__model__MProxyType___mtype
].val
; /* _mtype on <var_valmtype:MType(MNullableType)> */
6667 if (unlikely(var16
== NULL
)) {
6668 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6669 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1625);
6673 RET_LABEL15
:(void)0;
6677 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
6678 var19
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
6679 if (unlikely(var19
== NULL
)) {
6680 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6681 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
6685 RET_LABEL18
:(void)0;
6689 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var17) on <var17:AbstractCompiler> */
6690 var22
= var17
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var17:AbstractCompiler> */
6691 if (unlikely(var22
== NULL
)) {
6692 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
6693 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
6697 RET_LABEL21
:(void)0;
6701 var23
= nitc___nitc__MType___is_subtype(var14
, var20
, ((val
*)NULL
), var_mtype
);
6708 var24
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
6710 { /* Inline abstract_compiler#RuntimeVariable#name (var_value) on <var_value:RuntimeVariable> */
6711 var27
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___name
].val
; /* _name on <var_value:RuntimeVariable> */
6712 if (unlikely(var27
== NULL
)) {
6713 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
6714 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1867);
6718 RET_LABEL26
:(void)0;
6722 { /* Inline model#MProxyType#mtype (var_valmtype) on <var_valmtype:MType(MNullableType)> */
6723 var30
= var_valmtype
->attrs
[COLOR_nitc__model__MProxyType___mtype
].val
; /* _mtype on <var_valmtype:MType(MNullableType)> */
6724 if (unlikely(var30
== NULL
)) {
6725 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6726 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1625);
6730 RET_LABEL29
:(void)0;
6734 ((void(*)(val
* self
, val
* p0
))(var24
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var24
, var25
); /* name= on <var24:RuntimeVariable>*/
6737 ((void(*)(val
* self
, val
* p0
))(var24
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var24
, var_valmtype
); /* mtype= on <var24:RuntimeVariable>*/
6740 ((void(*)(val
* self
, val
* p0
))(var24
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var24
, var28
); /* mcasttype= on <var24:RuntimeVariable>*/
6743 ((void(*)(val
* self
))(var24
->class->vft
[COLOR_core__kernel__Object__init
]))(var24
); /* init on <var24:RuntimeVariable>*/
6749 var31
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
6751 { /* Inline abstract_compiler#RuntimeVariable#name (var_value) on <var_value:RuntimeVariable> */
6752 var34
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___name
].val
; /* _name on <var_value:RuntimeVariable> */
6753 if (unlikely(var34
== NULL
)) {
6754 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
6755 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1867);
6759 RET_LABEL33
:(void)0;
6763 ((void(*)(val
* self
, val
* p0
))(var31
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var31
, var32
); /* name= on <var31:RuntimeVariable>*/
6766 ((void(*)(val
* self
, val
* p0
))(var31
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var31
, var_valmtype
); /* mtype= on <var31:RuntimeVariable>*/
6769 ((void(*)(val
* self
, val
* p0
))(var31
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var31
, var_mtype
); /* mcasttype= on <var31:RuntimeVariable>*/
6772 ((void(*)(val
* self
))(var31
->class->vft
[COLOR_core__kernel__Object__init
]))(var31
); /* init on <var31:RuntimeVariable>*/
6781 /* method abstract_compiler#AbstractCompilerVisitor#monomorphic_send for (self: AbstractCompilerVisitor, MMethod, MType, Array[RuntimeVariable]): nullable RuntimeVariable */
6782 val
* nitc___nitc__AbstractCompilerVisitor___monomorphic_send(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
6783 val
* var
/* : nullable RuntimeVariable */;
6784 val
* var_m
/* var m: MMethod */;
6785 val
* var_t
/* var t: MType */;
6786 val
* var_args
/* var args: Array[RuntimeVariable] */;
6787 short int var1
/* : Bool */;
6790 val
* var2
/* : AbstractCompiler */;
6791 val
* var4
/* : AbstractCompiler */;
6792 val
* var5
/* : MModule */;
6793 val
* var7
/* : MModule */;
6794 val
* var8
/* : MPropDef */;
6795 val
* var_propdef
/* var propdef: MMethodDef */;
6796 val
* var9
/* : nullable RuntimeVariable */;
6800 /* <var_t:MType> isa MClassType */
6801 cltype
= type_nitc__MClassType
.color
;
6802 idtype
= type_nitc__MClassType
.id
;
6803 if(cltype
>= var_t
->type
->table_size
) {
6806 var1
= var_t
->type
->type_table
[cltype
] == idtype
;
6808 if (unlikely(!var1
)) {
6809 PRINT_ERROR("Runtime error: %s", "Assert failed");
6810 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1326);
6814 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
6815 var4
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
6816 if (unlikely(var4
== NULL
)) {
6817 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6818 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
6826 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var2) on <var2:AbstractCompiler> */
6827 var7
= var2
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var2:AbstractCompiler> */
6828 if (unlikely(var7
== NULL
)) {
6829 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
6830 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
6838 var8
= nitc___nitc__MProperty___lookup_first_definition(var_m
, var5
, var_t
);
6842 var9
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__call(self
, var_propdef
, var_t
, var_args
);
6849 /* method abstract_compiler#AbstractCompilerVisitor#monomorphic_super_send for (self: AbstractCompilerVisitor, MMethodDef, MType, Array[RuntimeVariable]): nullable RuntimeVariable */
6850 val
* nitc___nitc__AbstractCompilerVisitor___monomorphic_super_send(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
6851 val
* var
/* : nullable RuntimeVariable */;
6852 val
* var_m
/* var m: MMethodDef */;
6853 val
* var_t
/* var t: MType */;
6854 val
* var_args
/* var args: Array[RuntimeVariable] */;
6855 short int var1
/* : Bool */;
6858 val
* var2
/* : AbstractCompiler */;
6859 val
* var4
/* : AbstractCompiler */;
6860 val
* var5
/* : MModule */;
6861 val
* var7
/* : MModule */;
6862 val
* var8
/* : MPropDef */;
6863 val
* var9
/* : nullable RuntimeVariable */;
6867 /* <var_t:MType> isa MClassType */
6868 cltype
= type_nitc__MClassType
.color
;
6869 idtype
= type_nitc__MClassType
.id
;
6870 if(cltype
>= var_t
->type
->table_size
) {
6873 var1
= var_t
->type
->type_table
[cltype
] == idtype
;
6875 if (unlikely(!var1
)) {
6876 PRINT_ERROR("Runtime error: %s", "Assert failed");
6877 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1334);
6881 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
6882 var4
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
6883 if (unlikely(var4
== NULL
)) {
6884 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6885 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
6893 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var2) on <var2:AbstractCompiler> */
6894 var7
= var2
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var2:AbstractCompiler> */
6895 if (unlikely(var7
== NULL
)) {
6896 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
6897 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
6905 var8
= nitc___nitc__MPropDef___lookup_next_definition(var_m
, var5
, var_t
);
6909 var9
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__call(self
, var_m
, var_t
, var_args
);
6916 /* method abstract_compiler#AbstractCompilerVisitor#check_recv_notnull for (self: AbstractCompilerVisitor, RuntimeVariable) */
6917 void nitc___nitc__AbstractCompilerVisitor___check_recv_notnull(val
* self
, val
* p0
) {
6918 val
* var_recv
/* var recv: RuntimeVariable */;
6919 val
* var
/* : AbstractCompiler */;
6920 val
* var2
/* : AbstractCompiler */;
6921 val
* var3
/* : ModelBuilder */;
6922 val
* var5
/* : ModelBuilder */;
6923 val
* var6
/* : ToolContext */;
6924 val
* var8
/* : ToolContext */;
6925 val
* var9
/* : OptionBool */;
6926 val
* var11
/* : OptionBool */;
6927 val
* var12
/* : nullable Object */;
6928 val
* var14
/* : nullable Object */;
6929 short int var15
/* : Bool */;
6930 short int var16
/* : Bool */;
6931 val
* var17
/* : MType */;
6932 val
* var19
/* : MType */;
6933 short int var20
/* : Bool */;
6936 short int var_
/* var : Bool */;
6937 val
* var21
/* : MType */;
6938 val
* var23
/* : MType */;
6939 short int var24
/* : Bool */;
6942 short int var_maybenull
/* var maybenull: Bool */;
6943 val
* var27
/* : NativeArray[String] */;
6944 static val
* varonce
;
6945 static val
* varonce28
;
6946 val
* var29
/* : String */;
6947 char* var30
/* : NativeString */;
6948 val
* var31
/* : String */;
6949 static val
* varonce32
;
6950 val
* var33
/* : String */;
6951 char* var34
/* : NativeString */;
6952 val
* var35
/* : String */;
6953 val
* var36
/* : String */;
6954 val
* var37
/* : String */;
6955 static val
* varonce38
;
6956 val
* var39
/* : String */;
6957 char* var40
/* : NativeString */;
6958 val
* var41
/* : String */;
6959 static val
* varonce42
;
6960 val
* var43
/* : String */;
6961 char* var44
/* : NativeString */;
6962 val
* var45
/* : String */;
6965 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
6966 var2
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
6967 if (unlikely(var2
== NULL
)) {
6968 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6969 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
6977 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var) on <var:AbstractCompiler> */
6978 var5
= var
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var:AbstractCompiler> */
6979 if (unlikely(var5
== NULL
)) {
6980 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
6981 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
6989 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var3) on <var3:ModelBuilder> */
6990 var8
= var3
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var3:ModelBuilder> */
6991 if (unlikely(var8
== NULL
)) {
6992 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
6993 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
7001 { /* Inline abstract_compiler#ToolContext#opt_no_check_null (var6) on <var6:ToolContext> */
7002 var11
= var6
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_no_check_null
].val
; /* _opt_no_check_null on <var6:ToolContext> */
7003 if (unlikely(var11
== NULL
)) {
7004 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_check_null");
7005 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 56);
7009 RET_LABEL10
:(void)0;
7013 { /* Inline opts#Option#value (var9) on <var9:OptionBool> */
7014 var14
= var9
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var9:OptionBool> */
7016 RET_LABEL13
:(void)0;
7019 var15
= (short int)((long)(var12
)>>2);
7025 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_recv) on <var_recv:RuntimeVariable> */
7026 var19
= var_recv
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_recv:RuntimeVariable> */
7027 if (unlikely(var19
== NULL
)) {
7028 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
7029 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
7033 RET_LABEL18
:(void)0;
7036 /* <var17:MType> isa MNullableType */
7037 cltype
= type_nitc__MNullableType
.color
;
7038 idtype
= type_nitc__MNullableType
.id
;
7039 if(cltype
>= var17
->type
->table_size
) {
7042 var20
= var17
->type
->type_table
[cltype
] == idtype
;
7049 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_recv) on <var_recv:RuntimeVariable> */
7050 var23
= var_recv
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_recv:RuntimeVariable> */
7051 if (unlikely(var23
== NULL
)) {
7052 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
7053 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
7057 RET_LABEL22
:(void)0;
7060 /* <var21:MType> isa MNullType */
7061 cltype25
= type_nitc__MNullType
.color
;
7062 idtype26
= type_nitc__MNullType
.id
;
7063 if(cltype25
>= var21
->type
->table_size
) {
7066 var24
= var21
->type
->type_table
[cltype25
] == idtype26
;
7070 var_maybenull
= var16
;
7072 if (unlikely(varonce
==NULL
)) {
7073 var27
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
7074 if (likely(varonce28
!=NULL
)) {
7077 var30
= "if (unlikely(";
7078 var31
= core__flat___NativeString___to_s_full(var30
, 13l, 13l);
7082 ((struct instance_core__NativeArray
*)var27
)->values
[0]=var29
;
7083 if (likely(varonce32
!=NULL
)) {
7086 var34
= " == NULL)) {";
7087 var35
= core__flat___NativeString___to_s_full(var34
, 12l, 12l);
7091 ((struct instance_core__NativeArray
*)var27
)->values
[2]=var33
;
7097 var36
= ((val
*(*)(val
* self
))(var_recv
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_recv
); /* to_s on <var_recv:RuntimeVariable>*/
7099 ((struct instance_core__NativeArray
*)var27
)->values
[1]=var36
;
7101 var37
= ((val
*(*)(val
* self
))(var27
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var27
); /* native_to_s on <var27:NativeArray[String]>*/
7105 nitc___nitc__AbstractCompilerVisitor___add(self
, var37
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
7107 if (likely(varonce38
!=NULL
)) {
7110 var40
= "Receiver is null";
7111 var41
= core__flat___NativeString___to_s_full(var40
, 16l, 16l);
7116 nitc___nitc__AbstractCompilerVisitor___add_abort(self
, var39
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on <self:AbstractCompilerVisitor>*/
7118 if (likely(varonce42
!=NULL
)) {
7122 var45
= core__flat___NativeString___to_s_full(var44
, 1l, 1l);
7127 nitc___nitc__AbstractCompilerVisitor___add(self
, var43
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
7133 /* method abstract_compiler#AbstractCompilerVisitor#names for (self: AbstractCompilerVisitor): HashSet[String] */
7134 val
* nitc___nitc__AbstractCompilerVisitor___names(val
* self
) {
7135 val
* var
/* : HashSet[String] */;
7136 val
* var1
/* : HashSet[String] */;
7137 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___names
].val
; /* _names on <self:AbstractCompilerVisitor> */
7138 if (unlikely(var1
== NULL
)) {
7139 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
7140 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1367);
7147 /* method abstract_compiler#AbstractCompilerVisitor#last for (self: AbstractCompilerVisitor): Int */
7148 long nitc___nitc__AbstractCompilerVisitor___last(val
* self
) {
7149 long var
/* : Int */;
7150 long var1
/* : Int */;
7151 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___last
].l
; /* _last on <self:AbstractCompilerVisitor> */
7156 /* method abstract_compiler#AbstractCompilerVisitor#last= for (self: AbstractCompilerVisitor, Int) */
7157 void nitc___nitc__AbstractCompilerVisitor___last_61d(val
* self
, long p0
) {
7158 self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___last
].l
= p0
; /* _last on <self:AbstractCompilerVisitor> */
7161 /* method abstract_compiler#AbstractCompilerVisitor#get_name for (self: AbstractCompilerVisitor, String): String */
7162 val
* nitc___nitc__AbstractCompilerVisitor___get_name(val
* self
, val
* p0
) {
7163 val
* var
/* : String */;
7164 val
* var_s
/* var s: String */;
7165 val
* var1
/* : HashSet[String] */;
7166 val
* var3
/* : HashSet[String] */;
7167 short int var4
/* : Bool */;
7168 short int var5
/* : Bool */;
7169 val
* var6
/* : HashSet[String] */;
7170 val
* var8
/* : HashSet[String] */;
7171 long var9
/* : Int */;
7172 long var11
/* : Int */;
7173 long var12
/* : Int */;
7174 short int var14
/* : Bool */;
7177 const char* var_class_name
;
7178 long var15
/* : Int */;
7179 long var_i
/* var i: Int */;
7180 val
* var16
/* : String */;
7181 val
* var17
/* : String */;
7182 val
* var_s2
/* var s2: String */;
7183 val
* var18
/* : HashSet[String] */;
7184 val
* var20
/* : HashSet[String] */;
7185 short int var21
/* : Bool */;
7186 short int var22
/* : Bool */;
7187 val
* var24
/* : HashSet[String] */;
7188 val
* var26
/* : HashSet[String] */;
7189 long var27
/* : Int */;
7190 short int var29
/* : Bool */;
7193 const char* var_class_name32
;
7194 long var33
/* : Int */;
7197 { /* Inline abstract_compiler#AbstractCompilerVisitor#names (self) on <self:AbstractCompilerVisitor> */
7198 var3
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___names
].val
; /* _names on <self:AbstractCompilerVisitor> */
7199 if (unlikely(var3
== NULL
)) {
7200 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
7201 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1367);
7209 var4
= core___core__HashSet___core__abstract_collection__Collection__has(var1
, var_s
);
7214 { /* Inline abstract_compiler#AbstractCompilerVisitor#names (self) on <self:AbstractCompilerVisitor> */
7215 var8
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___names
].val
; /* _names on <self:AbstractCompilerVisitor> */
7216 if (unlikely(var8
== NULL
)) {
7217 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
7218 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1367);
7226 core___core__HashSet___core__abstract_collection__SimpleCollection__add(var6
, var_s
); /* Direct call hash_collection#HashSet#add on <var6:HashSet[String]>*/
7233 { /* Inline abstract_compiler#AbstractCompilerVisitor#last (self) on <self:AbstractCompilerVisitor> */
7234 var11
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___last
].l
; /* _last on <self:AbstractCompilerVisitor> */
7236 RET_LABEL10
:(void)0;
7240 { /* Inline kernel#Int#+ (var9,1l) on <var9:Int> */
7241 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
7242 /* <1l:Int> isa OTHER */
7243 var14
= 1; /* easy <1l:Int> isa OTHER*/
7244 if (unlikely(!var14
)) {
7245 var_class_name
= type_core__Int
.name
;
7246 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
7247 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
7253 RET_LABEL13
:(void)0;
7259 var16
= core__flat___Int___core__abstract_text__Object__to_s(var_i
);
7262 var17
= ((val
*(*)(val
* self
, val
* p0
))(var_s
->class->vft
[COLOR_core__abstract_text__String___43d
]))(var_s
, var16
); /* + on <var_s:String>*/
7266 { /* Inline abstract_compiler#AbstractCompilerVisitor#names (self) on <self:AbstractCompilerVisitor> */
7267 var20
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___names
].val
; /* _names on <self:AbstractCompilerVisitor> */
7268 if (unlikely(var20
== NULL
)) {
7269 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
7270 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1367);
7274 RET_LABEL19
:(void)0;
7278 var21
= core___core__HashSet___core__abstract_collection__Collection__has(var18
, var_s2
);
7283 { /* Inline abstract_compiler#AbstractCompilerVisitor#last= (self,var_i) on <self:AbstractCompilerVisitor> */
7284 self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___last
].l
= var_i
; /* _last on <self:AbstractCompilerVisitor> */
7285 RET_LABEL23
:(void)0;
7289 { /* Inline abstract_compiler#AbstractCompilerVisitor#names (self) on <self:AbstractCompilerVisitor> */
7290 var26
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___names
].val
; /* _names on <self:AbstractCompilerVisitor> */
7291 if (unlikely(var26
== NULL
)) {
7292 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
7293 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1367);
7297 RET_LABEL25
:(void)0;
7301 core___core__HashSet___core__abstract_collection__SimpleCollection__add(var24
, var_s2
); /* Direct call hash_collection#HashSet#add on <var24:HashSet[String]>*/
7308 { /* Inline kernel#Int#+ (var_i,1l) on <var_i:Int> */
7309 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
7310 /* <1l:Int> isa OTHER */
7311 var29
= 1; /* easy <1l:Int> isa OTHER*/
7312 if (unlikely(!var29
)) {
7313 var_class_name32
= type_core__Int
.name
;
7314 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name32
);
7315 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
7321 RET_LABEL28
:(void)0;
7329 /* method abstract_compiler#AbstractCompilerVisitor#escapemark_name for (self: AbstractCompilerVisitor, nullable EscapeMark): String */
7330 val
* nitc___nitc__AbstractCompilerVisitor___escapemark_name(val
* self
, val
* p0
) {
7331 val
* var
/* : String */;
7332 val
* var_e
/* var e: nullable EscapeMark */;
7333 short int var1
/* : Bool */;
7334 short int var2
/* : Bool */;
7335 val
* var_other
/* var other: nullable Object */;
7336 short int var4
/* : Bool */;
7337 short int var5
/* : Bool */;
7338 val
* var6
/* : nullable StaticFrame */;
7339 val
* var8
/* : nullable StaticFrame */;
7340 val
* var9
/* : HashMap[EscapeMark, String] */;
7341 val
* var11
/* : HashMap[EscapeMark, String] */;
7342 short int var12
/* : Bool */;
7343 val
* var13
/* : nullable StaticFrame */;
7344 val
* var15
/* : nullable StaticFrame */;
7345 val
* var16
/* : HashMap[EscapeMark, String] */;
7346 val
* var18
/* : HashMap[EscapeMark, String] */;
7347 val
* var19
/* : nullable Object */;
7348 val
* var20
/* : nullable String */;
7349 val
* var22
/* : nullable String */;
7350 val
* var_name
/* var name: nullable String */;
7351 short int var23
/* : Bool */;
7352 short int var24
/* : Bool */;
7353 static val
* varonce
;
7354 val
* var25
/* : String */;
7355 char* var26
/* : NativeString */;
7356 val
* var27
/* : String */;
7357 val
* var28
/* : String */;
7358 val
* var29
/* : nullable StaticFrame */;
7359 val
* var31
/* : nullable StaticFrame */;
7360 val
* var32
/* : HashMap[EscapeMark, String] */;
7361 val
* var34
/* : HashMap[EscapeMark, String] */;
7363 if (var_e
== NULL
) {
7364 var1
= 0; /* is null */
7366 var1
= 1; /* arg is null and recv is not */
7369 { /* Inline kernel#Object#!= (var_e,((val*)NULL)) on <var_e:nullable EscapeMark> */
7370 var_other
= ((val
*)NULL
);
7372 var4
= ((short int(*)(val
* self
, val
* p0
))(var_e
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_e
, var_other
); /* == on <var_e:nullable EscapeMark(EscapeMark)>*/
7381 if (unlikely(!var1
)) {
7382 PRINT_ERROR("Runtime error: %s", "Assert failed");
7383 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1392);
7387 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:AbstractCompilerVisitor> */
7388 var8
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:AbstractCompilerVisitor> */
7394 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7395 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1393);
7398 { /* Inline abstract_compiler#StaticFrame#escapemark_names (var6) on <var6:nullable StaticFrame> */
7399 if (unlikely(var6
== NULL
)) {
7400 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7401 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1930);
7404 var11
= var6
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___escapemark_names
].val
; /* _escapemark_names on <var6:nullable StaticFrame> */
7405 if (unlikely(var11
== NULL
)) {
7406 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _escapemark_names");
7407 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1930);
7411 RET_LABEL10
:(void)0;
7415 var12
= core___core__HashMap___core__abstract_collection__MapRead__has_key(var9
, var_e
);
7419 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:AbstractCompilerVisitor> */
7420 var15
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:AbstractCompilerVisitor> */
7422 RET_LABEL14
:(void)0;
7425 if (var13
== NULL
) {
7426 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7427 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1393);
7430 { /* Inline abstract_compiler#StaticFrame#escapemark_names (var13) on <var13:nullable StaticFrame> */
7431 if (unlikely(var13
== NULL
)) {
7432 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7433 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1930);
7436 var18
= var13
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___escapemark_names
].val
; /* _escapemark_names on <var13:nullable StaticFrame> */
7437 if (unlikely(var18
== NULL
)) {
7438 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _escapemark_names");
7439 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1930);
7443 RET_LABEL17
:(void)0;
7447 var19
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var16
, var_e
);
7454 { /* Inline scope#EscapeMark#name (var_e) on <var_e:nullable EscapeMark(EscapeMark)> */
7455 var22
= var_e
->attrs
[COLOR_nitc__scope__EscapeMark___name
].val
; /* _name on <var_e:nullable EscapeMark(EscapeMark)> */
7457 RET_LABEL21
:(void)0;
7461 if (var_name
== NULL
) {
7462 var23
= 1; /* is null */
7464 var23
= 0; /* arg is null but recv is not */
7467 var24
= ((short int(*)(val
* self
, val
* p0
))(var_name
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_name
, ((val
*)NULL
)); /* == on <var_name:nullable String>*/
7471 if (likely(varonce
!=NULL
)) {
7475 var27
= core__flat___NativeString___to_s_full(var26
, 5l, 5l);
7483 var28
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var_name
);
7487 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:AbstractCompilerVisitor> */
7488 var31
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:AbstractCompilerVisitor> */
7490 RET_LABEL30
:(void)0;
7493 if (var29
== NULL
) {
7494 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7495 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1397);
7498 { /* Inline abstract_compiler#StaticFrame#escapemark_names (var29) on <var29:nullable StaticFrame> */
7499 if (unlikely(var29
== NULL
)) {
7500 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7501 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1930);
7504 var34
= var29
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___escapemark_names
].val
; /* _escapemark_names on <var29:nullable StaticFrame> */
7505 if (unlikely(var34
== NULL
)) {
7506 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _escapemark_names");
7507 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1930);
7511 RET_LABEL33
:(void)0;
7515 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var32
, var_e
, var_name
); /* Direct call hash_collection#HashMap#[]= on <var32:HashMap[EscapeMark, String]>*/
7522 /* method abstract_compiler#AbstractCompilerVisitor#add_escape_label for (self: AbstractCompilerVisitor, nullable EscapeMark) */
7523 void nitc___nitc__AbstractCompilerVisitor___add_escape_label(val
* self
, val
* p0
) {
7524 val
* var_e
/* var e: nullable EscapeMark */;
7525 short int var
/* : Bool */;
7526 short int var1
/* : Bool */;
7527 val
* var_other
/* var other: nullable Object */;
7528 short int var3
/* : Bool */;
7529 short int var5
/* : Bool */;
7530 val
* var6
/* : Array[AEscapeExpr] */;
7531 val
* var8
/* : Array[AEscapeExpr] */;
7532 short int var9
/* : Bool */;
7533 val
* var10
/* : NativeArray[String] */;
7534 static val
* varonce
;
7535 static val
* varonce11
;
7536 val
* var12
/* : String */;
7537 char* var13
/* : NativeString */;
7538 val
* var14
/* : String */;
7539 static val
* varonce15
;
7540 val
* var16
/* : String */;
7541 char* var17
/* : NativeString */;
7542 val
* var18
/* : String */;
7543 val
* var19
/* : String */;
7544 val
* var20
/* : String */;
7546 if (var_e
== NULL
) {
7547 var
= 1; /* is null */
7549 var
= 0; /* arg is null but recv is not */
7552 { /* Inline kernel#Object#== (var_e,((val*)NULL)) on <var_e:nullable EscapeMark> */
7553 var_other
= ((val
*)NULL
);
7555 { /* Inline kernel#Object#is_same_instance (var_e,var_other) on <var_e:nullable EscapeMark(EscapeMark)> */
7556 var5
= var_e
== var_other
;
7573 { /* Inline scope#EscapeMark#escapes (var_e) on <var_e:nullable EscapeMark(EscapeMark)> */
7574 var8
= var_e
->attrs
[COLOR_nitc__scope__EscapeMark___escapes
].val
; /* _escapes on <var_e:nullable EscapeMark(EscapeMark)> */
7575 if (unlikely(var8
== NULL
)) {
7576 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _escapes");
7577 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__scope
, 59);
7585 var9
= core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var6
);
7591 if (unlikely(varonce
==NULL
)) {
7592 var10
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
7593 if (likely(varonce11
!=NULL
)) {
7597 var14
= core__flat___NativeString___to_s_full(var13
, 6l, 6l);
7601 ((struct instance_core__NativeArray
*)var10
)->values
[0]=var12
;
7602 if (likely(varonce15
!=NULL
)) {
7605 var17
= ": (void)0;";
7606 var18
= core__flat___NativeString___to_s_full(var17
, 10l, 10l);
7610 ((struct instance_core__NativeArray
*)var10
)->values
[2]=var16
;
7616 var19
= nitc___nitc__AbstractCompilerVisitor___escapemark_name(self
, var_e
);
7618 ((struct instance_core__NativeArray
*)var10
)->values
[1]=var19
;
7620 var20
= ((val
*(*)(val
* self
))(var10
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var10
); /* native_to_s on <var10:NativeArray[String]>*/
7624 nitc___nitc__AbstractCompilerVisitor___add(self
, var20
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
7628 /* method abstract_compiler#AbstractCompilerVisitor#variables for (self: AbstractCompilerVisitor): HashMap[Variable, RuntimeVariable] */
7629 val
* nitc___nitc__AbstractCompilerVisitor___variables(val
* self
) {
7630 val
* var
/* : HashMap[Variable, RuntimeVariable] */;
7631 val
* var1
/* : HashMap[Variable, RuntimeVariable] */;
7632 var1
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___variables
].val
; /* _variables on <self:AbstractCompilerVisitor> */
7633 if (unlikely(var1
== NULL
)) {
7634 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _variables");
7635 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1415);
7642 /* method abstract_compiler#AbstractCompilerVisitor#variable for (self: AbstractCompilerVisitor, Variable): RuntimeVariable */
7643 val
* nitc___nitc__AbstractCompilerVisitor___variable(val
* self
, val
* p0
) {
7644 val
* var
/* : RuntimeVariable */;
7645 val
* var_variable
/* var variable: Variable */;
7646 val
* var1
/* : HashMap[Variable, RuntimeVariable] */;
7647 val
* var3
/* : HashMap[Variable, RuntimeVariable] */;
7648 short int var4
/* : Bool */;
7649 val
* var5
/* : HashMap[Variable, RuntimeVariable] */;
7650 val
* var7
/* : HashMap[Variable, RuntimeVariable] */;
7651 val
* var8
/* : nullable Object */;
7652 val
* var9
/* : NativeArray[String] */;
7653 static val
* varonce
;
7654 static val
* varonce10
;
7655 val
* var11
/* : String */;
7656 char* var12
/* : NativeString */;
7657 val
* var13
/* : String */;
7658 val
* var14
/* : String */;
7659 val
* var16
/* : String */;
7660 val
* var17
/* : String */;
7661 val
* var18
/* : String */;
7662 val
* var_name
/* var name: String */;
7663 val
* var19
/* : nullable MType */;
7664 val
* var21
/* : nullable MType */;
7665 val
* var_mtype
/* var mtype: MType */;
7666 val
* var22
/* : MType */;
7667 val
* var23
/* : RuntimeVariable */;
7668 val
* var_res
/* var res: RuntimeVariable */;
7669 val
* var25
/* : NativeArray[String] */;
7670 static val
* varonce24
;
7671 static val
* varonce26
;
7672 val
* var27
/* : String */;
7673 char* var28
/* : NativeString */;
7674 val
* var29
/* : String */;
7675 static val
* varonce30
;
7676 val
* var31
/* : String */;
7677 char* var32
/* : NativeString */;
7678 val
* var33
/* : String */;
7679 static val
* varonce34
;
7680 val
* var35
/* : String */;
7681 char* var36
/* : NativeString */;
7682 val
* var37
/* : String */;
7683 static val
* varonce38
;
7684 val
* var39
/* : String */;
7685 char* var40
/* : NativeString */;
7686 val
* var41
/* : String */;
7687 val
* var42
/* : String */;
7688 val
* var43
/* : String */;
7689 val
* var44
/* : String */;
7690 val
* var45
/* : String */;
7691 val
* var46
/* : HashMap[Variable, RuntimeVariable] */;
7692 val
* var48
/* : HashMap[Variable, RuntimeVariable] */;
7695 { /* Inline abstract_compiler#AbstractCompilerVisitor#variables (self) on <self:AbstractCompilerVisitor> */
7696 var3
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___variables
].val
; /* _variables on <self:AbstractCompilerVisitor> */
7697 if (unlikely(var3
== NULL
)) {
7698 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _variables");
7699 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1415);
7707 var4
= core___core__HashMap___core__abstract_collection__MapRead__has_key(var1
, var_variable
);
7711 { /* Inline abstract_compiler#AbstractCompilerVisitor#variables (self) on <self:AbstractCompilerVisitor> */
7712 var7
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___variables
].val
; /* _variables on <self:AbstractCompilerVisitor> */
7713 if (unlikely(var7
== NULL
)) {
7714 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _variables");
7715 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1415);
7723 var8
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var5
, var_variable
);
7728 if (unlikely(varonce
==NULL
)) {
7729 var9
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
7730 if (likely(varonce10
!=NULL
)) {
7734 var13
= core__flat___NativeString___to_s_full(var12
, 4l, 4l);
7738 ((struct instance_core__NativeArray
*)var9
)->values
[0]=var11
;
7744 { /* Inline scope#Variable#name (var_variable) on <var_variable:Variable> */
7745 var16
= var_variable
->attrs
[COLOR_nitc__scope__Variable___name
].val
; /* _name on <var_variable:Variable> */
7746 if (unlikely(var16
== NULL
)) {
7747 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
7748 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__scope
, 36);
7752 RET_LABEL15
:(void)0;
7755 ((struct instance_core__NativeArray
*)var9
)->values
[1]=var14
;
7757 var17
= ((val
*(*)(val
* self
))(var9
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var9
); /* native_to_s on <var9:NativeArray[String]>*/
7761 var18
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var17
);
7765 { /* Inline typing#Variable#declared_type (var_variable) on <var_variable:Variable> */
7766 var21
= var_variable
->attrs
[COLOR_nitc__typing__Variable___declared_type
].val
; /* _declared_type on <var_variable:Variable> */
7768 RET_LABEL20
:(void)0;
7771 if (unlikely(var19
== NULL
)) {
7772 PRINT_ERROR("Runtime error: %s", "Cast failed");
7773 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1424);
7778 var22
= nitc___nitc__AbstractCompilerVisitor___anchor(self
, var_mtype
);
7781 var23
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
7783 ((void(*)(val
* self
, val
* p0
))(var23
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var23
, var_name
); /* name= on <var23:RuntimeVariable>*/
7786 ((void(*)(val
* self
, val
* p0
))(var23
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var23
, var_mtype
); /* mtype= on <var23:RuntimeVariable>*/
7789 ((void(*)(val
* self
, val
* p0
))(var23
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var23
, var_mtype
); /* mcasttype= on <var23:RuntimeVariable>*/
7792 ((void(*)(val
* self
))(var23
->class->vft
[COLOR_core__kernel__Object__init
]))(var23
); /* init on <var23:RuntimeVariable>*/
7795 if (unlikely(varonce24
==NULL
)) {
7796 var25
= NEW_core__NativeArray(8l, &type_core__NativeArray__core__String
);
7797 if (likely(varonce26
!=NULL
)) {
7801 var29
= core__flat___NativeString___to_s_full(var28
, 1l, 1l);
7805 ((struct instance_core__NativeArray
*)var25
)->values
[1]=var27
;
7806 if (likely(varonce30
!=NULL
)) {
7810 var33
= core__flat___NativeString___to_s_full(var32
, 8l, 8l);
7814 ((struct instance_core__NativeArray
*)var25
)->values
[3]=var31
;
7815 if (likely(varonce34
!=NULL
)) {
7819 var37
= core__flat___NativeString___to_s_full(var36
, 2l, 2l);
7823 ((struct instance_core__NativeArray
*)var25
)->values
[5]=var35
;
7824 if (likely(varonce38
!=NULL
)) {
7828 var41
= core__flat___NativeString___to_s_full(var40
, 4l, 4l);
7832 ((struct instance_core__NativeArray
*)var25
)->values
[7]=var39
;
7838 var42
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__abstract_compiler__MType__ctype
]))(var_mtype
); /* ctype on <var_mtype:MType>*/
7840 ((struct instance_core__NativeArray
*)var25
)->values
[0]=var42
;
7841 ((struct instance_core__NativeArray
*)var25
)->values
[2]=var_name
;
7843 var43
= ((val
*(*)(val
* self
))(var_variable
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_variable
); /* to_s on <var_variable:Variable>*/
7845 ((struct instance_core__NativeArray
*)var25
)->values
[4]=var43
;
7847 var44
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
7849 ((struct instance_core__NativeArray
*)var25
)->values
[6]=var44
;
7851 var45
= ((val
*(*)(val
* self
))(var25
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var25
); /* native_to_s on <var25:NativeArray[String]>*/
7855 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var45
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:AbstractCompilerVisitor>*/
7858 { /* Inline abstract_compiler#AbstractCompilerVisitor#variables (self) on <self:AbstractCompilerVisitor> */
7859 var48
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___variables
].val
; /* _variables on <self:AbstractCompilerVisitor> */
7860 if (unlikely(var48
== NULL
)) {
7861 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _variables");
7862 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1415);
7866 RET_LABEL47
:(void)0;
7870 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var46
, var_variable
, var_res
); /* Direct call hash_collection#HashMap#[]= on <var46:HashMap[Variable, RuntimeVariable]>*/
7878 /* method abstract_compiler#AbstractCompilerVisitor#new_var for (self: AbstractCompilerVisitor, MType): RuntimeVariable */
7879 val
* nitc___nitc__AbstractCompilerVisitor___new_var(val
* self
, val
* p0
) {
7880 val
* var
/* : RuntimeVariable */;
7881 val
* var_mtype
/* var mtype: MType */;
7882 val
* var1
/* : MType */;
7883 static val
* varonce
;
7884 val
* var2
/* : String */;
7885 char* var3
/* : NativeString */;
7886 val
* var4
/* : String */;
7887 val
* var5
/* : String */;
7888 val
* var_name
/* var name: String */;
7889 val
* var6
/* : RuntimeVariable */;
7890 val
* var_res
/* var res: RuntimeVariable */;
7891 val
* var8
/* : NativeArray[String] */;
7892 static val
* varonce7
;
7893 static val
* varonce9
;
7894 val
* var10
/* : String */;
7895 char* var11
/* : NativeString */;
7896 val
* var12
/* : String */;
7897 static val
* varonce13
;
7898 val
* var14
/* : String */;
7899 char* var15
/* : NativeString */;
7900 val
* var16
/* : String */;
7901 static val
* varonce17
;
7902 val
* var18
/* : String */;
7903 char* var19
/* : NativeString */;
7904 val
* var20
/* : String */;
7905 val
* var21
/* : String */;
7906 val
* var22
/* : String */;
7907 val
* var23
/* : String */;
7910 var1
= nitc___nitc__AbstractCompilerVisitor___anchor(self
, var_mtype
);
7913 if (likely(varonce
!=NULL
)) {
7917 var4
= core__flat___NativeString___to_s_full(var3
, 3l, 3l);
7922 var5
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var2
);
7925 var6
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
7927 ((void(*)(val
* self
, val
* p0
))(var6
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var6
, var_name
); /* name= on <var6:RuntimeVariable>*/
7930 ((void(*)(val
* self
, val
* p0
))(var6
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var6
, var_mtype
); /* mtype= on <var6:RuntimeVariable>*/
7933 ((void(*)(val
* self
, val
* p0
))(var6
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var6
, var_mtype
); /* mcasttype= on <var6:RuntimeVariable>*/
7936 ((void(*)(val
* self
))(var6
->class->vft
[COLOR_core__kernel__Object__init
]))(var6
); /* init on <var6:RuntimeVariable>*/
7939 if (unlikely(varonce7
==NULL
)) {
7940 var8
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
7941 if (likely(varonce9
!=NULL
)) {
7945 var12
= core__flat___NativeString___to_s_full(var11
, 1l, 1l);
7949 ((struct instance_core__NativeArray
*)var8
)->values
[1]=var10
;
7950 if (likely(varonce13
!=NULL
)) {
7954 var16
= core__flat___NativeString___to_s_full(var15
, 6l, 6l);
7958 ((struct instance_core__NativeArray
*)var8
)->values
[3]=var14
;
7959 if (likely(varonce17
!=NULL
)) {
7963 var20
= core__flat___NativeString___to_s_full(var19
, 4l, 4l);
7967 ((struct instance_core__NativeArray
*)var8
)->values
[5]=var18
;
7973 var21
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__abstract_compiler__MType__ctype
]))(var_mtype
); /* ctype on <var_mtype:MType>*/
7975 ((struct instance_core__NativeArray
*)var8
)->values
[0]=var21
;
7976 ((struct instance_core__NativeArray
*)var8
)->values
[2]=var_name
;
7978 var22
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
7980 ((struct instance_core__NativeArray
*)var8
)->values
[4]=var22
;
7982 var23
= ((val
*(*)(val
* self
))(var8
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var8
); /* native_to_s on <var8:NativeArray[String]>*/
7986 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var23
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:AbstractCompilerVisitor>*/
7993 /* method abstract_compiler#AbstractCompilerVisitor#new_var_extern for (self: AbstractCompilerVisitor, MType): RuntimeVariable */
7994 val
* nitc___nitc__AbstractCompilerVisitor___new_var_extern(val
* self
, val
* p0
) {
7995 val
* var
/* : RuntimeVariable */;
7996 val
* var_mtype
/* var mtype: MType */;
7997 val
* var1
/* : MType */;
7998 static val
* varonce
;
7999 val
* var2
/* : String */;
8000 char* var3
/* : NativeString */;
8001 val
* var4
/* : String */;
8002 val
* var5
/* : String */;
8003 val
* var_name
/* var name: String */;
8004 val
* var6
/* : RuntimeVariable */;
8005 val
* var_res
/* var res: RuntimeVariable */;
8006 val
* var8
/* : NativeArray[String] */;
8007 static val
* varonce7
;
8008 static val
* varonce9
;
8009 val
* var10
/* : String */;
8010 char* var11
/* : NativeString */;
8011 val
* var12
/* : String */;
8012 static val
* varonce13
;
8013 val
* var14
/* : String */;
8014 char* var15
/* : NativeString */;
8015 val
* var16
/* : String */;
8016 static val
* varonce17
;
8017 val
* var18
/* : String */;
8018 char* var19
/* : NativeString */;
8019 val
* var20
/* : String */;
8020 val
* var21
/* : String */;
8021 val
* var22
/* : String */;
8022 val
* var23
/* : String */;
8025 var1
= nitc___nitc__AbstractCompilerVisitor___anchor(self
, var_mtype
);
8028 if (likely(varonce
!=NULL
)) {
8032 var4
= core__flat___NativeString___to_s_full(var3
, 3l, 3l);
8037 var5
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var2
);
8040 var6
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
8042 ((void(*)(val
* self
, val
* p0
))(var6
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var6
, var_name
); /* name= on <var6:RuntimeVariable>*/
8045 ((void(*)(val
* self
, val
* p0
))(var6
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var6
, var_mtype
); /* mtype= on <var6:RuntimeVariable>*/
8048 ((void(*)(val
* self
, val
* p0
))(var6
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var6
, var_mtype
); /* mcasttype= on <var6:RuntimeVariable>*/
8051 ((void(*)(val
* self
))(var6
->class->vft
[COLOR_core__kernel__Object__init
]))(var6
); /* init on <var6:RuntimeVariable>*/
8054 if (unlikely(varonce7
==NULL
)) {
8055 var8
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
8056 if (likely(varonce9
!=NULL
)) {
8060 var12
= core__flat___NativeString___to_s_full(var11
, 1l, 1l);
8064 ((struct instance_core__NativeArray
*)var8
)->values
[1]=var10
;
8065 if (likely(varonce13
!=NULL
)) {
8069 var16
= core__flat___NativeString___to_s_full(var15
, 6l, 6l);
8073 ((struct instance_core__NativeArray
*)var8
)->values
[3]=var14
;
8074 if (likely(varonce17
!=NULL
)) {
8077 var19
= " for extern */;";
8078 var20
= core__flat___NativeString___to_s_full(var19
, 15l, 15l);
8082 ((struct instance_core__NativeArray
*)var8
)->values
[5]=var18
;
8088 var21
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__abstract_compiler__MType__ctype_extern
]))(var_mtype
); /* ctype_extern on <var_mtype:MType>*/
8090 ((struct instance_core__NativeArray
*)var8
)->values
[0]=var21
;
8091 ((struct instance_core__NativeArray
*)var8
)->values
[2]=var_name
;
8093 var22
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
8095 ((struct instance_core__NativeArray
*)var8
)->values
[4]=var22
;
8097 var23
= ((val
*(*)(val
* self
))(var8
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var8
); /* native_to_s on <var8:NativeArray[String]>*/
8101 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var23
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:AbstractCompilerVisitor>*/
8108 /* method abstract_compiler#AbstractCompilerVisitor#new_named_var for (self: AbstractCompilerVisitor, MType, String): RuntimeVariable */
8109 val
* nitc___nitc__AbstractCompilerVisitor___new_named_var(val
* self
, val
* p0
, val
* p1
) {
8110 val
* var
/* : RuntimeVariable */;
8111 val
* var_mtype
/* var mtype: MType */;
8112 val
* var_name
/* var name: String */;
8113 val
* var1
/* : MType */;
8114 val
* var2
/* : RuntimeVariable */;
8115 val
* var_res
/* var res: RuntimeVariable */;
8116 val
* var3
/* : NativeArray[String] */;
8117 static val
* varonce
;
8118 static val
* varonce4
;
8119 val
* var5
/* : String */;
8120 char* var6
/* : NativeString */;
8121 val
* var7
/* : String */;
8122 static val
* varonce8
;
8123 val
* var9
/* : String */;
8124 char* var10
/* : NativeString */;
8125 val
* var11
/* : String */;
8126 static val
* varonce12
;
8127 val
* var13
/* : String */;
8128 char* var14
/* : NativeString */;
8129 val
* var15
/* : String */;
8130 val
* var16
/* : String */;
8131 val
* var17
/* : String */;
8132 val
* var18
/* : String */;
8136 var1
= nitc___nitc__AbstractCompilerVisitor___anchor(self
, var_mtype
);
8139 var2
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
8141 ((void(*)(val
* self
, val
* p0
))(var2
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var2
, var_name
); /* name= on <var2:RuntimeVariable>*/
8144 ((void(*)(val
* self
, val
* p0
))(var2
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var2
, var_mtype
); /* mtype= on <var2:RuntimeVariable>*/
8147 ((void(*)(val
* self
, val
* p0
))(var2
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var2
, var_mtype
); /* mcasttype= on <var2:RuntimeVariable>*/
8150 ((void(*)(val
* self
))(var2
->class->vft
[COLOR_core__kernel__Object__init
]))(var2
); /* init on <var2:RuntimeVariable>*/
8153 if (unlikely(varonce
==NULL
)) {
8154 var3
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
8155 if (likely(varonce4
!=NULL
)) {
8159 var7
= core__flat___NativeString___to_s_full(var6
, 1l, 1l);
8163 ((struct instance_core__NativeArray
*)var3
)->values
[1]=var5
;
8164 if (likely(varonce8
!=NULL
)) {
8168 var11
= core__flat___NativeString___to_s_full(var10
, 6l, 6l);
8172 ((struct instance_core__NativeArray
*)var3
)->values
[3]=var9
;
8173 if (likely(varonce12
!=NULL
)) {
8177 var15
= core__flat___NativeString___to_s_full(var14
, 4l, 4l);
8181 ((struct instance_core__NativeArray
*)var3
)->values
[5]=var13
;
8187 var16
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__abstract_compiler__MType__ctype
]))(var_mtype
); /* ctype on <var_mtype:MType>*/
8189 ((struct instance_core__NativeArray
*)var3
)->values
[0]=var16
;
8190 ((struct instance_core__NativeArray
*)var3
)->values
[2]=var_name
;
8192 var17
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
8194 ((struct instance_core__NativeArray
*)var3
)->values
[4]=var17
;
8196 var18
= ((val
*(*)(val
* self
))(var3
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var3
); /* native_to_s on <var3:NativeArray[String]>*/
8200 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var18
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:AbstractCompilerVisitor>*/
8207 /* method abstract_compiler#AbstractCompilerVisitor#assign for (self: AbstractCompilerVisitor, RuntimeVariable, RuntimeVariable) */
8208 void nitc___nitc__AbstractCompilerVisitor___assign(val
* self
, val
* p0
, val
* p1
) {
8209 val
* var_left
/* var left: RuntimeVariable */;
8210 val
* var_right
/* var right: RuntimeVariable */;
8211 val
* var
/* : MType */;
8212 val
* var2
/* : MType */;
8213 val
* var3
/* : RuntimeVariable */;
8214 val
* var4
/* : NativeArray[String] */;
8215 static val
* varonce
;
8216 static val
* varonce5
;
8217 val
* var6
/* : String */;
8218 char* var7
/* : NativeString */;
8219 val
* var8
/* : String */;
8220 static val
* varonce9
;
8221 val
* var10
/* : String */;
8222 char* var11
/* : NativeString */;
8223 val
* var12
/* : String */;
8224 val
* var13
/* : String */;
8225 val
* var14
/* : String */;
8226 val
* var15
/* : String */;
8230 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_left) on <var_left:RuntimeVariable> */
8231 var2
= var_left
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_left:RuntimeVariable> */
8232 if (unlikely(var2
== NULL
)) {
8233 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
8234 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
8242 var3
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__autobox(self
, var_right
, var
);
8245 if (unlikely(varonce
==NULL
)) {
8246 var4
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
8247 if (likely(varonce5
!=NULL
)) {
8251 var8
= core__flat___NativeString___to_s_full(var7
, 3l, 3l);
8255 ((struct instance_core__NativeArray
*)var4
)->values
[1]=var6
;
8256 if (likely(varonce9
!=NULL
)) {
8260 var12
= core__flat___NativeString___to_s_full(var11
, 1l, 1l);
8264 ((struct instance_core__NativeArray
*)var4
)->values
[3]=var10
;
8270 var13
= ((val
*(*)(val
* self
))(var_left
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_left
); /* to_s on <var_left:RuntimeVariable>*/
8272 ((struct instance_core__NativeArray
*)var4
)->values
[0]=var13
;
8274 var14
= ((val
*(*)(val
* self
))(var_right
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_right
); /* to_s on <var_right:RuntimeVariable>*/
8276 ((struct instance_core__NativeArray
*)var4
)->values
[2]=var14
;
8278 var15
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var4
); /* native_to_s on <var4:NativeArray[String]>*/
8282 nitc___nitc__AbstractCompilerVisitor___add(self
, var15
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
8286 /* method abstract_compiler#AbstractCompilerVisitor#init_instance_or_extern for (self: AbstractCompilerVisitor, MClassType): RuntimeVariable */
8287 val
* nitc___nitc__AbstractCompilerVisitor___init_instance_or_extern(val
* self
, val
* p0
) {
8288 val
* var
/* : RuntimeVariable */;
8289 val
* var_mtype
/* var mtype: MClassType */;
8290 val
* var1
/* : String */;
8291 val
* var_ctype
/* var ctype: String */;
8292 val
* var2
/* : MClass */;
8293 val
* var4
/* : MClass */;
8294 val
* var5
/* : String */;
8295 val
* var7
/* : String */;
8296 static val
* varonce
;
8297 val
* var8
/* : String */;
8298 char* var9
/* : NativeString */;
8299 val
* var10
/* : String */;
8300 short int var11
/* : Bool */;
8301 val
* var_other
/* var other: nullable Object */;
8302 short int var13
/* : Bool */;
8303 short int var14
/* : Bool */;
8304 short int var15
/* : Bool */;
8305 short int var16
/* : Bool */;
8306 val
* var17
/* : RuntimeVariable */;
8307 val
* var_recv
/* var recv: nullable Object */;
8308 static val
* varonce18
;
8309 val
* var19
/* : String */;
8310 char* var20
/* : NativeString */;
8311 val
* var21
/* : String */;
8312 short int var22
/* : Bool */;
8313 static val
* varonce23
;
8314 val
* var24
/* : String */;
8315 char* var25
/* : NativeString */;
8316 val
* var26
/* : String */;
8317 val
* var27
/* : RuntimeVariable */;
8318 val
* var29
/* : NativeArray[String] */;
8319 static val
* varonce28
;
8320 static val
* varonce30
;
8321 val
* var31
/* : String */;
8322 char* var32
/* : NativeString */;
8323 val
* var33
/* : String */;
8324 static val
* varonce34
;
8325 val
* var35
/* : String */;
8326 char* var36
/* : NativeString */;
8327 val
* var37
/* : String */;
8328 val
* var38
/* : String */;
8329 val
* var39
/* : RuntimeVariable */;
8332 var1
= nitc__abstract_compiler___MClassType___MType__ctype(var_mtype
);
8336 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MClassType> */
8337 var4
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MClassType> */
8338 if (unlikely(var4
== NULL
)) {
8339 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
8340 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
8348 { /* Inline model#MClass#name (var2) on <var2:MClass> */
8349 var7
= var2
->attrs
[COLOR_nitc__model__MClass___name
].val
; /* _name on <var2:MClass> */
8350 if (unlikely(var7
== NULL
)) {
8351 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
8352 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 385);
8359 if (likely(varonce
!=NULL
)) {
8362 var9
= "NativeArray";
8363 var10
= core__flat___NativeString___to_s_full(var9
, 11l, 11l);
8368 { /* Inline kernel#Object#!= (var5,var8) on <var5:String> */
8371 var13
= ((short int(*)(val
* self
, val
* p0
))(var5
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var5
, var_other
); /* == on <var5:String>*/
8376 RET_LABEL12
:(void)0;
8379 if (unlikely(!var11
)) {
8380 PRINT_ERROR("Runtime error: %s", "Assert failed");
8381 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1482);
8385 var15
= nitc__abstract_compiler___MClassType___MType__is_c_primitive(var_mtype
);
8390 var17
= ((val
*(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor__init_instance
]))(self
, var_mtype
); /* init_instance on <self:AbstractCompilerVisitor>*/
8394 if (likely(varonce18
!=NULL
)) {
8398 var21
= core__flat___NativeString___to_s_full(var20
, 5l, 5l);
8403 var22
= ((short int(*)(val
* self
, val
* p0
))(var_ctype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_ctype
, var19
); /* == on <var_ctype:String>*/
8406 if (likely(varonce23
!=NULL
)) {
8409 var25
= "NULL/*special!*/";
8410 var26
= core__flat___NativeString___to_s_full(var25
, 16l, 16l);
8415 var27
= nitc___nitc__AbstractCompilerVisitor___new_expr(self
, var24
, var_mtype
);
8419 if (unlikely(varonce28
==NULL
)) {
8420 var29
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
8421 if (likely(varonce30
!=NULL
)) {
8425 var33
= core__flat___NativeString___to_s_full(var32
, 1l, 1l);
8429 ((struct instance_core__NativeArray
*)var29
)->values
[0]=var31
;
8430 if (likely(varonce34
!=NULL
)) {
8433 var36
= ")0/*special!*/";
8434 var37
= core__flat___NativeString___to_s_full(var36
, 14l, 14l);
8438 ((struct instance_core__NativeArray
*)var29
)->values
[2]=var35
;
8443 ((struct instance_core__NativeArray
*)var29
)->values
[1]=var_ctype
;
8445 var38
= ((val
*(*)(val
* self
))(var29
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var29
); /* native_to_s on <var29:NativeArray[String]>*/
8449 var39
= nitc___nitc__AbstractCompilerVisitor___new_expr(self
, var38
, var_mtype
);
8459 /* method abstract_compiler#AbstractCompilerVisitor#set_finalizer for (self: AbstractCompilerVisitor, RuntimeVariable) */
8460 void nitc___nitc__AbstractCompilerVisitor___set_finalizer(val
* self
, val
* p0
) {
8461 val
* var_recv
/* var recv: RuntimeVariable */;
8462 val
* var
/* : MType */;
8463 val
* var2
/* : MType */;
8464 val
* var_mtype
/* var mtype: MType */;
8465 val
* var3
/* : AbstractCompiler */;
8466 val
* var5
/* : AbstractCompiler */;
8467 val
* var6
/* : MModule */;
8468 val
* var8
/* : MModule */;
8469 val
* var9
/* : nullable MClassType */;
8470 val
* var_finalizable_type
/* var finalizable_type: nullable MClassType */;
8471 short int var10
/* : Bool */;
8472 short int var11
/* : Bool */;
8473 short int var12
/* : Bool */;
8474 short int var13
/* : Bool */;
8475 val
* var_other
/* var other: nullable Object */;
8476 short int var15
/* : Bool */;
8477 short int var16
/* : Bool */;
8478 short int var_
/* var : Bool */;
8479 short int var17
/* : Bool */;
8480 short int var18
/* : Bool */;
8481 short int var_19
/* var : Bool */;
8482 val
* var20
/* : AbstractCompiler */;
8483 val
* var22
/* : AbstractCompiler */;
8484 val
* var23
/* : MModule */;
8485 val
* var25
/* : MModule */;
8486 short int var26
/* : Bool */;
8487 val
* var27
/* : NativeArray[String] */;
8488 static val
* varonce
;
8489 static val
* varonce28
;
8490 val
* var29
/* : String */;
8491 char* var30
/* : NativeString */;
8492 val
* var31
/* : String */;
8493 static val
* varonce32
;
8494 val
* var33
/* : String */;
8495 char* var34
/* : NativeString */;
8496 val
* var35
/* : String */;
8497 val
* var36
/* : String */;
8498 val
* var37
/* : String */;
8501 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_recv) on <var_recv:RuntimeVariable> */
8502 var2
= var_recv
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_recv:RuntimeVariable> */
8503 if (unlikely(var2
== NULL
)) {
8504 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
8505 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
8514 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
8515 var5
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
8516 if (unlikely(var5
== NULL
)) {
8517 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8518 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
8526 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var3) on <var3:AbstractCompiler> */
8527 var8
= var3
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var3:AbstractCompiler> */
8528 if (unlikely(var8
== NULL
)) {
8529 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
8530 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
8538 var9
= nitc__model___MModule___finalizable_type(var6
);
8540 var_finalizable_type
= var9
;
8541 if (var_finalizable_type
== NULL
) {
8542 var12
= 0; /* is null */
8544 var12
= 1; /* arg is null and recv is not */
8547 { /* Inline kernel#Object#!= (var_finalizable_type,((val*)NULL)) on <var_finalizable_type:nullable MClassType> */
8548 var_other
= ((val
*)NULL
);
8550 var15
= ((short int(*)(val
* self
, val
* p0
))(var_finalizable_type
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_finalizable_type
, var_other
); /* == on <var_finalizable_type:nullable MClassType(MClassType)>*/
8555 RET_LABEL14
:(void)0;
8562 var17
= ((short int(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model__MType__need_anchor
]))(var_mtype
); /* need_anchor on <var_mtype:MType>*/
8572 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
8573 var22
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
8574 if (unlikely(var22
== NULL
)) {
8575 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8576 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
8580 RET_LABEL21
:(void)0;
8584 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var20) on <var20:AbstractCompiler> */
8585 var25
= var20
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var20:AbstractCompiler> */
8586 if (unlikely(var25
== NULL
)) {
8587 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
8588 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
8592 RET_LABEL24
:(void)0;
8596 var26
= nitc___nitc__MType___is_subtype(var_mtype
, var23
, ((val
*)NULL
), var_finalizable_type
);
8603 if (unlikely(varonce
==NULL
)) {
8604 var27
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
8605 if (likely(varonce28
!=NULL
)) {
8608 var30
= "gc_register_finalizer(";
8609 var31
= core__flat___NativeString___to_s_full(var30
, 22l, 22l);
8613 ((struct instance_core__NativeArray
*)var27
)->values
[0]=var29
;
8614 if (likely(varonce32
!=NULL
)) {
8618 var35
= core__flat___NativeString___to_s_full(var34
, 2l, 2l);
8622 ((struct instance_core__NativeArray
*)var27
)->values
[2]=var33
;
8628 var36
= ((val
*(*)(val
* self
))(var_recv
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_recv
); /* to_s on <var_recv:RuntimeVariable>*/
8630 ((struct instance_core__NativeArray
*)var27
)->values
[1]=var36
;
8632 var37
= ((val
*(*)(val
* self
))(var27
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var27
); /* native_to_s on <var27:NativeArray[String]>*/
8636 nitc___nitc__AbstractCompilerVisitor___add(self
, var37
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:AbstractCompilerVisitor>*/
8642 /* method abstract_compiler#AbstractCompilerVisitor#mmodule for (self: AbstractCompilerVisitor): MModule */
8643 val
* nitc___nitc__AbstractCompilerVisitor___mmodule(val
* self
) {
8644 val
* var
/* : MModule */;
8645 val
* var1
/* : AbstractCompiler */;
8646 val
* var3
/* : AbstractCompiler */;
8647 val
* var4
/* : MModule */;
8648 val
* var6
/* : MModule */;
8650 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
8651 var3
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
8652 if (unlikely(var3
== NULL
)) {
8653 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8654 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
8662 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var1) on <var1:AbstractCompiler> */
8663 var6
= var1
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var1:AbstractCompiler> */
8664 if (unlikely(var6
== NULL
)) {
8665 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
8666 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
8678 /* method abstract_compiler#AbstractCompilerVisitor#int_instance for (self: AbstractCompilerVisitor, Int): RuntimeVariable */
8679 val
* nitc___nitc__AbstractCompilerVisitor___int_instance(val
* self
, long p0
) {
8680 val
* var
/* : RuntimeVariable */;
8681 long var_value
/* var value: Int */;
8682 val
* var1
/* : MModule */;
8683 val
* var2
/* : MClassType */;
8684 val
* var_t
/* var t: MClassType */;
8685 val
* var3
/* : RuntimeVariable */;
8686 val
* var4
/* : NativeArray[String] */;
8687 static val
* varonce
;
8688 static val
* varonce5
;
8689 val
* var6
/* : String */;
8690 char* var7
/* : NativeString */;
8691 val
* var8
/* : String */;
8692 val
* var9
/* : String */;
8693 val
* var10
/* : String */;
8694 val
* var_res
/* var res: RuntimeVariable */;
8697 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
8700 var2
= nitc__model___MModule___int_type(var1
);
8703 var3
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
8704 if (unlikely(varonce
==NULL
)) {
8705 var4
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
8706 if (likely(varonce5
!=NULL
)) {
8710 var8
= core__flat___NativeString___to_s_full(var7
, 1l, 1l);
8714 ((struct instance_core__NativeArray
*)var4
)->values
[1]=var6
;
8720 var9
= core__flat___Int___core__abstract_text__Object__to_s(var_value
);
8722 ((struct instance_core__NativeArray
*)var4
)->values
[0]=var9
;
8724 var10
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var4
); /* native_to_s on <var4:NativeArray[String]>*/
8728 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var3
, var10
); /* name= on <var3:RuntimeVariable>*/
8731 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var3
, var_t
); /* mtype= on <var3:RuntimeVariable>*/
8734 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var3
, var_t
); /* mcasttype= on <var3:RuntimeVariable>*/
8737 ((void(*)(val
* self
))(var3
->class->vft
[COLOR_core__kernel__Object__init
]))(var3
); /* init on <var3:RuntimeVariable>*/
8745 /* method abstract_compiler#AbstractCompilerVisitor#byte_instance for (self: AbstractCompilerVisitor, Byte): RuntimeVariable */
8746 val
* nitc___nitc__AbstractCompilerVisitor___byte_instance(val
* self
, unsigned char p0
) {
8747 val
* var
/* : RuntimeVariable */;
8748 unsigned char var_value
/* var value: Byte */;
8749 val
* var1
/* : MModule */;
8750 val
* var2
/* : MClassType */;
8751 val
* var_t
/* var t: MClassType */;
8752 val
* var3
/* : RuntimeVariable */;
8753 val
* var4
/* : NativeArray[String] */;
8754 static val
* varonce
;
8755 static val
* varonce5
;
8756 val
* var6
/* : String */;
8757 char* var7
/* : NativeString */;
8758 val
* var8
/* : String */;
8759 static val
* varonce9
;
8760 val
* var10
/* : String */;
8761 char* var11
/* : NativeString */;
8762 val
* var12
/* : String */;
8763 val
* var13
/* : String */;
8764 val
* var14
/* : String */;
8765 val
* var_res
/* var res: RuntimeVariable */;
8768 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
8771 var2
= nitc__model___MModule___byte_type(var1
);
8774 var3
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
8775 if (unlikely(varonce
==NULL
)) {
8776 var4
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
8777 if (likely(varonce5
!=NULL
)) {
8780 var7
= "((unsigned char)";
8781 var8
= core__flat___NativeString___to_s_full(var7
, 16l, 16l);
8785 ((struct instance_core__NativeArray
*)var4
)->values
[0]=var6
;
8786 if (likely(varonce9
!=NULL
)) {
8790 var12
= core__flat___NativeString___to_s_full(var11
, 1l, 1l);
8794 ((struct instance_core__NativeArray
*)var4
)->values
[2]=var10
;
8800 var13
= core__abstract_text___Byte___Object__to_s(var_value
);
8802 ((struct instance_core__NativeArray
*)var4
)->values
[1]=var13
;
8804 var14
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var4
); /* native_to_s on <var4:NativeArray[String]>*/
8808 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var3
, var14
); /* name= on <var3:RuntimeVariable>*/
8811 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var3
, var_t
); /* mtype= on <var3:RuntimeVariable>*/
8814 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var3
, var_t
); /* mcasttype= on <var3:RuntimeVariable>*/
8817 ((void(*)(val
* self
))(var3
->class->vft
[COLOR_core__kernel__Object__init
]))(var3
); /* init on <var3:RuntimeVariable>*/
8825 /* method abstract_compiler#AbstractCompilerVisitor#int8_instance for (self: AbstractCompilerVisitor, Int8): RuntimeVariable */
8826 val
* nitc___nitc__AbstractCompilerVisitor___int8_instance(val
* self
, int8_t p0
) {
8827 val
* var
/* : RuntimeVariable */;
8828 int8_t var_value
/* var value: Int8 */;
8829 val
* var1
/* : MModule */;
8830 val
* var2
/* : MClassType */;
8831 val
* var_t
/* var t: MClassType */;
8832 val
* var3
/* : RuntimeVariable */;
8833 val
* var4
/* : NativeArray[String] */;
8834 static val
* varonce
;
8835 static val
* varonce5
;
8836 val
* var6
/* : String */;
8837 char* var7
/* : NativeString */;
8838 val
* var8
/* : String */;
8839 static val
* varonce9
;
8840 val
* var10
/* : String */;
8841 char* var11
/* : NativeString */;
8842 val
* var12
/* : String */;
8843 val
* var13
/* : String */;
8844 val
* var14
/* : String */;
8845 val
* var_res
/* var res: RuntimeVariable */;
8848 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
8851 var2
= nitc__model___MModule___int8_type(var1
);
8854 var3
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
8855 if (unlikely(varonce
==NULL
)) {
8856 var4
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
8857 if (likely(varonce5
!=NULL
)) {
8861 var8
= core__flat___NativeString___to_s_full(var7
, 9l, 9l);
8865 ((struct instance_core__NativeArray
*)var4
)->values
[0]=var6
;
8866 if (likely(varonce9
!=NULL
)) {
8870 var12
= core__flat___NativeString___to_s_full(var11
, 1l, 1l);
8874 ((struct instance_core__NativeArray
*)var4
)->values
[2]=var10
;
8880 var13
= core___core__Int8___core__abstract_text__Object__to_s(var_value
);
8882 ((struct instance_core__NativeArray
*)var4
)->values
[1]=var13
;
8884 var14
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var4
); /* native_to_s on <var4:NativeArray[String]>*/
8888 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var3
, var14
); /* name= on <var3:RuntimeVariable>*/
8891 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var3
, var_t
); /* mtype= on <var3:RuntimeVariable>*/
8894 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var3
, var_t
); /* mcasttype= on <var3:RuntimeVariable>*/
8897 ((void(*)(val
* self
))(var3
->class->vft
[COLOR_core__kernel__Object__init
]))(var3
); /* init on <var3:RuntimeVariable>*/
8905 /* method abstract_compiler#AbstractCompilerVisitor#int16_instance for (self: AbstractCompilerVisitor, Int16): RuntimeVariable */
8906 val
* nitc___nitc__AbstractCompilerVisitor___int16_instance(val
* self
, int16_t p0
) {
8907 val
* var
/* : RuntimeVariable */;
8908 int16_t var_value
/* var value: Int16 */;
8909 val
* var1
/* : MModule */;
8910 val
* var2
/* : MClassType */;
8911 val
* var_t
/* var t: MClassType */;
8912 val
* var3
/* : RuntimeVariable */;
8913 val
* var4
/* : NativeArray[String] */;
8914 static val
* varonce
;
8915 static val
* varonce5
;
8916 val
* var6
/* : String */;
8917 char* var7
/* : NativeString */;
8918 val
* var8
/* : String */;
8919 static val
* varonce9
;
8920 val
* var10
/* : String */;
8921 char* var11
/* : NativeString */;
8922 val
* var12
/* : String */;
8923 val
* var13
/* : String */;
8924 val
* var14
/* : String */;
8925 val
* var_res
/* var res: RuntimeVariable */;
8928 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
8931 var2
= nitc__model___MModule___int16_type(var1
);
8934 var3
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
8935 if (unlikely(varonce
==NULL
)) {
8936 var4
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
8937 if (likely(varonce5
!=NULL
)) {
8940 var7
= "((int16_t)";
8941 var8
= core__flat___NativeString___to_s_full(var7
, 10l, 10l);
8945 ((struct instance_core__NativeArray
*)var4
)->values
[0]=var6
;
8946 if (likely(varonce9
!=NULL
)) {
8950 var12
= core__flat___NativeString___to_s_full(var11
, 1l, 1l);
8954 ((struct instance_core__NativeArray
*)var4
)->values
[2]=var10
;
8960 var13
= core___core__Int16___core__abstract_text__Object__to_s(var_value
);
8962 ((struct instance_core__NativeArray
*)var4
)->values
[1]=var13
;
8964 var14
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var4
); /* native_to_s on <var4:NativeArray[String]>*/
8968 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var3
, var14
); /* name= on <var3:RuntimeVariable>*/
8971 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var3
, var_t
); /* mtype= on <var3:RuntimeVariable>*/
8974 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var3
, var_t
); /* mcasttype= on <var3:RuntimeVariable>*/
8977 ((void(*)(val
* self
))(var3
->class->vft
[COLOR_core__kernel__Object__init
]))(var3
); /* init on <var3:RuntimeVariable>*/
8985 /* method abstract_compiler#AbstractCompilerVisitor#uint16_instance for (self: AbstractCompilerVisitor, UInt16): RuntimeVariable */
8986 val
* nitc___nitc__AbstractCompilerVisitor___uint16_instance(val
* self
, uint16_t p0
) {
8987 val
* var
/* : RuntimeVariable */;
8988 uint16_t var_value
/* var value: UInt16 */;
8989 val
* var1
/* : MModule */;
8990 val
* var2
/* : MClassType */;
8991 val
* var_t
/* var t: MClassType */;
8992 val
* var3
/* : RuntimeVariable */;
8993 val
* var4
/* : NativeArray[String] */;
8994 static val
* varonce
;
8995 static val
* varonce5
;
8996 val
* var6
/* : String */;
8997 char* var7
/* : NativeString */;
8998 val
* var8
/* : String */;
8999 static val
* varonce9
;
9000 val
* var10
/* : String */;
9001 char* var11
/* : NativeString */;
9002 val
* var12
/* : String */;
9003 val
* var13
/* : String */;
9004 val
* var14
/* : String */;
9005 val
* var_res
/* var res: RuntimeVariable */;
9008 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
9011 var2
= nitc__model___MModule___uint16_type(var1
);
9014 var3
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
9015 if (unlikely(varonce
==NULL
)) {
9016 var4
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
9017 if (likely(varonce5
!=NULL
)) {
9020 var7
= "((uint16_t)";
9021 var8
= core__flat___NativeString___to_s_full(var7
, 11l, 11l);
9025 ((struct instance_core__NativeArray
*)var4
)->values
[0]=var6
;
9026 if (likely(varonce9
!=NULL
)) {
9030 var12
= core__flat___NativeString___to_s_full(var11
, 1l, 1l);
9034 ((struct instance_core__NativeArray
*)var4
)->values
[2]=var10
;
9040 var13
= core___core__UInt16___core__abstract_text__Object__to_s(var_value
);
9042 ((struct instance_core__NativeArray
*)var4
)->values
[1]=var13
;
9044 var14
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var4
); /* native_to_s on <var4:NativeArray[String]>*/
9048 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var3
, var14
); /* name= on <var3:RuntimeVariable>*/
9051 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var3
, var_t
); /* mtype= on <var3:RuntimeVariable>*/
9054 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var3
, var_t
); /* mcasttype= on <var3:RuntimeVariable>*/
9057 ((void(*)(val
* self
))(var3
->class->vft
[COLOR_core__kernel__Object__init
]))(var3
); /* init on <var3:RuntimeVariable>*/
9065 /* method abstract_compiler#AbstractCompilerVisitor#int32_instance for (self: AbstractCompilerVisitor, Int32): RuntimeVariable */
9066 val
* nitc___nitc__AbstractCompilerVisitor___int32_instance(val
* self
, int32_t p0
) {
9067 val
* var
/* : RuntimeVariable */;
9068 int32_t var_value
/* var value: Int32 */;
9069 val
* var1
/* : MModule */;
9070 val
* var2
/* : MClassType */;
9071 val
* var_t
/* var t: MClassType */;
9072 val
* var3
/* : RuntimeVariable */;
9073 val
* var4
/* : NativeArray[String] */;
9074 static val
* varonce
;
9075 static val
* varonce5
;
9076 val
* var6
/* : String */;
9077 char* var7
/* : NativeString */;
9078 val
* var8
/* : String */;
9079 static val
* varonce9
;
9080 val
* var10
/* : String */;
9081 char* var11
/* : NativeString */;
9082 val
* var12
/* : String */;
9083 val
* var13
/* : String */;
9084 val
* var14
/* : String */;
9085 val
* var_res
/* var res: RuntimeVariable */;
9088 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
9091 var2
= nitc__model___MModule___int32_type(var1
);
9094 var3
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
9095 if (unlikely(varonce
==NULL
)) {
9096 var4
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
9097 if (likely(varonce5
!=NULL
)) {
9100 var7
= "((int32_t)";
9101 var8
= core__flat___NativeString___to_s_full(var7
, 10l, 10l);
9105 ((struct instance_core__NativeArray
*)var4
)->values
[0]=var6
;
9106 if (likely(varonce9
!=NULL
)) {
9110 var12
= core__flat___NativeString___to_s_full(var11
, 1l, 1l);
9114 ((struct instance_core__NativeArray
*)var4
)->values
[2]=var10
;
9120 var13
= core___core__Int32___core__abstract_text__Object__to_s(var_value
);
9122 ((struct instance_core__NativeArray
*)var4
)->values
[1]=var13
;
9124 var14
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var4
); /* native_to_s on <var4:NativeArray[String]>*/
9128 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var3
, var14
); /* name= on <var3:RuntimeVariable>*/
9131 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var3
, var_t
); /* mtype= on <var3:RuntimeVariable>*/
9134 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var3
, var_t
); /* mcasttype= on <var3:RuntimeVariable>*/
9137 ((void(*)(val
* self
))(var3
->class->vft
[COLOR_core__kernel__Object__init
]))(var3
); /* init on <var3:RuntimeVariable>*/
9145 /* method abstract_compiler#AbstractCompilerVisitor#uint32_instance for (self: AbstractCompilerVisitor, UInt32): RuntimeVariable */
9146 val
* nitc___nitc__AbstractCompilerVisitor___uint32_instance(val
* self
, uint32_t p0
) {
9147 val
* var
/* : RuntimeVariable */;
9148 uint32_t var_value
/* var value: UInt32 */;
9149 val
* var1
/* : MModule */;
9150 val
* var2
/* : MClassType */;
9151 val
* var_t
/* var t: MClassType */;
9152 val
* var3
/* : RuntimeVariable */;
9153 val
* var4
/* : NativeArray[String] */;
9154 static val
* varonce
;
9155 static val
* varonce5
;
9156 val
* var6
/* : String */;
9157 char* var7
/* : NativeString */;
9158 val
* var8
/* : String */;
9159 static val
* varonce9
;
9160 val
* var10
/* : String */;
9161 char* var11
/* : NativeString */;
9162 val
* var12
/* : String */;
9163 val
* var13
/* : String */;
9164 val
* var14
/* : String */;
9165 val
* var_res
/* var res: RuntimeVariable */;
9168 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
9171 var2
= nitc__model___MModule___uint32_type(var1
);
9174 var3
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
9175 if (unlikely(varonce
==NULL
)) {
9176 var4
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
9177 if (likely(varonce5
!=NULL
)) {
9180 var7
= "((uint32_t)";
9181 var8
= core__flat___NativeString___to_s_full(var7
, 11l, 11l);
9185 ((struct instance_core__NativeArray
*)var4
)->values
[0]=var6
;
9186 if (likely(varonce9
!=NULL
)) {
9190 var12
= core__flat___NativeString___to_s_full(var11
, 1l, 1l);
9194 ((struct instance_core__NativeArray
*)var4
)->values
[2]=var10
;
9200 var13
= core___core__UInt32___core__abstract_text__Object__to_s(var_value
);
9202 ((struct instance_core__NativeArray
*)var4
)->values
[1]=var13
;
9204 var14
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var4
); /* native_to_s on <var4:NativeArray[String]>*/
9208 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var3
, var14
); /* name= on <var3:RuntimeVariable>*/
9211 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var3
, var_t
); /* mtype= on <var3:RuntimeVariable>*/
9214 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var3
, var_t
); /* mcasttype= on <var3:RuntimeVariable>*/
9217 ((void(*)(val
* self
))(var3
->class->vft
[COLOR_core__kernel__Object__init
]))(var3
); /* init on <var3:RuntimeVariable>*/
9225 /* method abstract_compiler#AbstractCompilerVisitor#char_instance for (self: AbstractCompilerVisitor, Char): RuntimeVariable */
9226 val
* nitc___nitc__AbstractCompilerVisitor___char_instance(val
* self
, uint32_t p0
) {
9227 val
* var
/* : RuntimeVariable */;
9228 uint32_t var_value
/* var value: Char */;
9229 val
* var1
/* : MModule */;
9230 val
* var2
/* : MClassType */;
9231 val
* var_t
/* var t: MClassType */;
9232 long var3
/* : Int */;
9233 long var5
/* : Int */;
9234 short int var6
/* : Bool */;
9235 short int var8
/* : Bool */;
9238 const char* var_class_name
;
9239 short int var9
/* : Bool */;
9240 val
* var10
/* : RuntimeVariable */;
9241 val
* var11
/* : NativeArray[String] */;
9242 static val
* varonce
;
9243 static val
* varonce12
;
9244 val
* var13
/* : String */;
9245 char* var14
/* : NativeString */;
9246 val
* var15
/* : String */;
9247 static val
* varonce16
;
9248 val
* var17
/* : String */;
9249 char* var18
/* : NativeString */;
9250 val
* var19
/* : String */;
9251 val
* var20
/* : String */;
9252 val
* var21
/* : String */;
9253 val
* var22
/* : String */;
9254 val
* var23
/* : RuntimeVariable */;
9255 val
* var25
/* : NativeArray[String] */;
9256 static val
* varonce24
;
9257 long var26
/* : Int */;
9258 long var28
/* : Int */;
9259 val
* var29
/* : String */;
9260 val
* var30
/* : String */;
9263 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
9266 var2
= nitc__model___MModule___char_type(var1
);
9270 { /* Inline kernel#Char#code_point (var_value) on <var_value:Char> */
9271 var5
= (long)var_value
;
9278 { /* Inline kernel#Int#< (var3,128l) on <var3:Int> */
9279 /* Covariant cast for argument 0 (i) <128l:Int> isa OTHER */
9280 /* <128l:Int> isa OTHER */
9281 var8
= 1; /* easy <128l:Int> isa OTHER*/
9282 if (unlikely(!var8
)) {
9283 var_class_name
= type_core__Int
.name
;
9284 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
9285 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
9295 var10
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
9296 if (unlikely(varonce
==NULL
)) {
9297 var11
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
9298 if (likely(varonce12
!=NULL
)) {
9302 var15
= core__flat___NativeString___to_s_full(var14
, 1l, 1l);
9306 ((struct instance_core__NativeArray
*)var11
)->values
[0]=var13
;
9307 if (likely(varonce16
!=NULL
)) {
9311 var19
= core__flat___NativeString___to_s_full(var18
, 1l, 1l);
9315 ((struct instance_core__NativeArray
*)var11
)->values
[2]=var17
;
9321 var20
= core__abstract_text___Char___Object__to_s(var_value
);
9324 var21
= ((val
*(*)(val
* self
))(var20
->class->vft
[COLOR_core__abstract_text__Text__escape_to_c
]))(var20
); /* escape_to_c on <var20:String>*/
9326 ((struct instance_core__NativeArray
*)var11
)->values
[1]=var21
;
9328 var22
= ((val
*(*)(val
* self
))(var11
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var11
); /* native_to_s on <var11:NativeArray[String]>*/
9332 ((void(*)(val
* self
, val
* p0
))(var10
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var10
, var22
); /* name= on <var10:RuntimeVariable>*/
9335 ((void(*)(val
* self
, val
* p0
))(var10
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var10
, var_t
); /* mtype= on <var10:RuntimeVariable>*/
9338 ((void(*)(val
* self
, val
* p0
))(var10
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var10
, var_t
); /* mcasttype= on <var10:RuntimeVariable>*/
9341 ((void(*)(val
* self
))(var10
->class->vft
[COLOR_core__kernel__Object__init
]))(var10
); /* init on <var10:RuntimeVariable>*/
9346 var23
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
9347 if (unlikely(varonce24
==NULL
)) {
9348 var25
= NEW_core__NativeArray(1l, &type_core__NativeArray__core__String
);
9354 { /* Inline kernel#Char#code_point (var_value) on <var_value:Char> */
9355 var28
= (long)var_value
;
9358 RET_LABEL27
:(void)0;
9361 var29
= core__flat___Int___core__abstract_text__Object__to_s(var26
);
9362 ((struct instance_core__NativeArray
*)var25
)->values
[0]=var29
;
9364 var30
= ((val
*(*)(val
* self
))(var25
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var25
); /* native_to_s on <var25:NativeArray[String]>*/
9368 ((void(*)(val
* self
, val
* p0
))(var23
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var23
, var30
); /* name= on <var23:RuntimeVariable>*/
9371 ((void(*)(val
* self
, val
* p0
))(var23
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var23
, var_t
); /* mtype= on <var23:RuntimeVariable>*/
9374 ((void(*)(val
* self
, val
* p0
))(var23
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var23
, var_t
); /* mcasttype= on <var23:RuntimeVariable>*/
9377 ((void(*)(val
* self
))(var23
->class->vft
[COLOR_core__kernel__Object__init
]))(var23
); /* init on <var23:RuntimeVariable>*/
9385 /* method abstract_compiler#AbstractCompilerVisitor#float_instance for (self: AbstractCompilerVisitor, String): RuntimeVariable */
9386 val
* nitc___nitc__AbstractCompilerVisitor___float_instance(val
* self
, val
* p0
) {
9387 val
* var
/* : RuntimeVariable */;
9388 val
* var_value
/* var value: String */;
9389 val
* var1
/* : MModule */;
9390 val
* var2
/* : MClassType */;
9391 val
* var_t
/* var t: MClassType */;
9392 val
* var3
/* : RuntimeVariable */;
9393 val
* var4
/* : NativeArray[String] */;
9394 static val
* varonce
;
9395 val
* var5
/* : String */;
9396 val
* var_res
/* var res: RuntimeVariable */;
9399 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
9402 var2
= nitc__model___MModule___float_type(var1
);
9405 var3
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
9406 if (unlikely(varonce
==NULL
)) {
9407 var4
= NEW_core__NativeArray(1l, &type_core__NativeArray__core__String
);
9412 ((struct instance_core__NativeArray
*)var4
)->values
[0]=var_value
;
9414 var5
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var4
); /* native_to_s on <var4:NativeArray[String]>*/
9418 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var3
, var5
); /* name= on <var3:RuntimeVariable>*/
9421 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var3
, var_t
); /* mtype= on <var3:RuntimeVariable>*/
9424 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var3
, var_t
); /* mcasttype= on <var3:RuntimeVariable>*/
9427 ((void(*)(val
* self
))(var3
->class->vft
[COLOR_core__kernel__Object__init
]))(var3
); /* init on <var3:RuntimeVariable>*/
9435 /* method abstract_compiler#AbstractCompilerVisitor#bool_instance for (self: AbstractCompilerVisitor, Bool): RuntimeVariable */
9436 val
* nitc___nitc__AbstractCompilerVisitor___bool_instance(val
* self
, short int p0
) {
9437 val
* var
/* : RuntimeVariable */;
9438 short int var_value
/* var value: Bool */;
9439 val
* var1
/* : String */;
9440 static val
* varonce
;
9441 val
* var2
/* : String */;
9442 char* var3
/* : NativeString */;
9443 val
* var4
/* : String */;
9444 static val
* varonce5
;
9445 val
* var6
/* : String */;
9446 char* var7
/* : NativeString */;
9447 val
* var8
/* : String */;
9448 val
* var_s
/* var s: String */;
9449 val
* var9
/* : RuntimeVariable */;
9450 val
* var10
/* : MClassType */;
9451 val
* var11
/* : MClassType */;
9452 val
* var_res
/* var res: RuntimeVariable */;
9455 if (likely(varonce
!=NULL
)) {
9459 var4
= core__flat___NativeString___to_s_full(var3
, 1l, 1l);
9465 if (likely(varonce5
!=NULL
)) {
9469 var8
= core__flat___NativeString___to_s_full(var7
, 1l, 1l);
9476 var9
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
9478 var10
= nitc___nitc__AbstractCompilerVisitor___bool_type(self
);
9481 var11
= nitc___nitc__AbstractCompilerVisitor___bool_type(self
);
9484 ((void(*)(val
* self
, val
* p0
))(var9
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var9
, var_s
); /* name= on <var9:RuntimeVariable>*/
9487 ((void(*)(val
* self
, val
* p0
))(var9
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var9
, var10
); /* mtype= on <var9:RuntimeVariable>*/
9490 ((void(*)(val
* self
, val
* p0
))(var9
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var9
, var11
); /* mcasttype= on <var9:RuntimeVariable>*/
9493 ((void(*)(val
* self
))(var9
->class->vft
[COLOR_core__kernel__Object__init
]))(var9
); /* init on <var9:RuntimeVariable>*/
9501 /* method abstract_compiler#AbstractCompilerVisitor#null_instance for (self: AbstractCompilerVisitor): RuntimeVariable */
9502 val
* nitc___nitc__AbstractCompilerVisitor___null_instance(val
* self
) {
9503 val
* var
/* : RuntimeVariable */;
9504 val
* var1
/* : AbstractCompiler */;
9505 val
* var3
/* : AbstractCompiler */;
9506 val
* var4
/* : MModule */;
9507 val
* var6
/* : MModule */;
9508 val
* var7
/* : Model */;
9509 val
* var9
/* : Model */;
9510 val
* var10
/* : MNullType */;
9511 val
* var12
/* : MNullType */;
9512 val
* var_t
/* var t: MNullType */;
9513 val
* var13
/* : RuntimeVariable */;
9514 static val
* varonce
;
9515 val
* var14
/* : String */;
9516 char* var15
/* : NativeString */;
9517 val
* var16
/* : String */;
9518 val
* var_res
/* var res: RuntimeVariable */;
9520 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:AbstractCompilerVisitor> */
9521 var3
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:AbstractCompilerVisitor> */
9522 if (unlikely(var3
== NULL
)) {
9523 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
9524 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
9532 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var1) on <var1:AbstractCompiler> */
9533 var6
= var1
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var1:AbstractCompiler> */
9534 if (unlikely(var6
== NULL
)) {
9535 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
9536 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
9544 { /* Inline mmodule#MModule#model (var4) on <var4:MModule> */
9545 var9
= var4
->attrs
[COLOR_nitc__mmodule__MModule___model
].val
; /* _model on <var4:MModule> */
9546 if (unlikely(var9
== NULL
)) {
9547 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
9548 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule
, 78);
9556 { /* Inline model#Model#null_type (var7) on <var7:Model> */
9557 var12
= var7
->attrs
[COLOR_nitc__model__Model___null_type
].val
; /* _null_type on <var7:Model> */
9558 if (unlikely(var12
== NULL
)) {
9559 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _null_type");
9560 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 94);
9564 RET_LABEL11
:(void)0;
9568 var13
= NEW_nitc__RuntimeVariable(&type_nitc__RuntimeVariable
);
9569 if (likely(varonce
!=NULL
)) {
9572 var15
= "((val*)NULL)";
9573 var16
= core__flat___NativeString___to_s_full(var15
, 12l, 12l);
9578 ((void(*)(val
* self
, val
* p0
))(var13
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__name_61d
]))(var13
, var14
); /* name= on <var13:RuntimeVariable>*/
9581 ((void(*)(val
* self
, val
* p0
))(var13
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mtype_61d
]))(var13
, var_t
); /* mtype= on <var13:RuntimeVariable>*/
9584 ((void(*)(val
* self
, val
* p0
))(var13
->class->vft
[COLOR_nitc__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var13
, var_t
); /* mcasttype= on <var13:RuntimeVariable>*/
9587 ((void(*)(val
* self
))(var13
->class->vft
[COLOR_core__kernel__Object__init
]))(var13
); /* init on <var13:RuntimeVariable>*/