1 #include "nit__separate_compiler.sep.0.h"
2 /* method separate_compiler#SeparateCompilerVisitor#autobox for (self: SeparateCompilerVisitor, RuntimeVariable, MType): RuntimeVariable */
3 val
* nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__autobox(val
* self
, val
* p0
, val
* p1
) {
4 val
* var
/* : RuntimeVariable */;
5 val
* var_value
/* var value: RuntimeVariable */;
6 val
* var_mtype
/* var mtype: MType */;
7 val
* var1
/* : MType */;
8 val
* var3
/* : MType */;
9 short int var4
/* : Bool */;
10 val
* var_other
/* var other: nullable Object */;
11 short int var6
/* : Bool */;
12 short int var8
/* : Bool */;
13 short int var9
/* : Bool */;
14 val
* var10
/* : MType */;
15 val
* var12
/* : MType */;
16 short int var13
/* : Bool */;
17 short int var14
/* : Bool */;
18 short int var_
/* var : Bool */;
19 short int var15
/* : Bool */;
20 short int var16
/* : Bool */;
21 val
* var17
/* : MType */;
22 val
* var19
/* : MType */;
23 short int var20
/* : Bool */;
24 short int var21
/* : Bool */;
25 short int var22
/* : Bool */;
26 short int var24
/* : Bool */;
27 val
* var25
/* : String */;
29 val
* var26
/* : String */;
30 char* var27
/* : NativeString */;
31 val
* var28
/* : FlatString */;
32 short int var29
/* : Bool */;
33 val
* var31
/* : NativeArray[String] */;
34 static val
* varonce30
;
35 static val
* varonce32
;
36 val
* var33
/* : String */;
37 char* var34
/* : NativeString */;
38 val
* var35
/* : FlatString */;
39 static val
* varonce36
;
40 val
* var37
/* : String */;
41 char* var38
/* : NativeString */;
42 val
* var39
/* : FlatString */;
43 val
* var40
/* : String */;
44 val
* var41
/* : String */;
45 val
* var42
/* : RuntimeVariable */;
46 val
* var43
/* : String */;
47 static val
* varonce44
;
48 val
* var45
/* : String */;
49 char* var46
/* : NativeString */;
50 val
* var47
/* : FlatString */;
51 short int var48
/* : Bool */;
52 val
* var50
/* : NativeArray[String] */;
53 static val
* varonce49
;
54 static val
* varonce51
;
55 val
* var52
/* : String */;
56 char* var53
/* : NativeString */;
57 val
* var54
/* : FlatString */;
58 static val
* varonce55
;
59 val
* var56
/* : String */;
60 char* var57
/* : NativeString */;
61 val
* var58
/* : FlatString */;
62 val
* var59
/* : String */;
63 val
* var60
/* : String */;
64 val
* var61
/* : RuntimeVariable */;
65 val
* var62
/* : String */;
66 static val
* varonce63
;
67 val
* var64
/* : String */;
68 char* var65
/* : NativeString */;
69 val
* var66
/* : FlatString */;
70 short int var67
/* : Bool */;
71 val
* var69
/* : NativeArray[String] */;
72 static val
* varonce68
;
73 static val
* varonce70
;
74 val
* var71
/* : String */;
75 char* var72
/* : NativeString */;
76 val
* var73
/* : FlatString */;
77 static val
* varonce74
;
78 val
* var75
/* : String */;
79 char* var76
/* : NativeString */;
80 val
* var77
/* : FlatString */;
81 val
* var78
/* : String */;
82 val
* var79
/* : String */;
83 val
* var80
/* : RuntimeVariable */;
84 val
* var82
/* : NativeArray[String] */;
85 static val
* varonce81
;
86 static val
* varonce83
;
87 val
* var84
/* : String */;
88 char* var85
/* : NativeString */;
89 val
* var86
/* : FlatString */;
90 static val
* varonce87
;
91 val
* var88
/* : String */;
92 char* var89
/* : NativeString */;
93 val
* var90
/* : FlatString */;
94 static val
* varonce91
;
95 val
* var92
/* : String */;
96 char* var93
/* : NativeString */;
97 val
* var94
/* : FlatString */;
98 static val
* varonce95
;
99 val
* var96
/* : String */;
100 char* var97
/* : NativeString */;
101 val
* var98
/* : FlatString */;
102 static val
* varonce99
;
103 val
* var100
/* : String */;
104 char* var101
/* : NativeString */;
105 val
* var102
/* : FlatString */;
106 val
* var103
/* : String */;
107 val
* var104
/* : String */;
108 val
* var105
/* : MType */;
109 val
* var107
/* : MType */;
110 val
* var108
/* : String */;
111 val
* var109
/* : String */;
112 val
* var110
/* : String */;
113 val
* var111
/* : RuntimeVariable */;
114 short int var112
/* : Bool */;
115 short int var113
/* : Bool */;
116 val
* var114
/* : MType */;
117 val
* var116
/* : MType */;
118 short int var117
/* : Bool */;
119 short int var119
/* : Bool */;
120 val
* var120
/* : MType */;
121 val
* var122
/* : MType */;
122 val
* var123
/* : String */;
123 static val
* varonce124
;
124 val
* var125
/* : String */;
125 char* var126
/* : NativeString */;
126 val
* var127
/* : FlatString */;
127 short int var128
/* : Bool */;
128 val
* var130
/* : NativeArray[String] */;
129 static val
* varonce129
;
130 static val
* varonce131
;
131 val
* var132
/* : String */;
132 char* var133
/* : NativeString */;
133 val
* var134
/* : FlatString */;
134 static val
* varonce135
;
135 val
* var136
/* : String */;
136 char* var137
/* : NativeString */;
137 val
* var138
/* : FlatString */;
138 val
* var139
/* : String */;
139 val
* var140
/* : String */;
140 val
* var141
/* : RuntimeVariable */;
141 val
* var142
/* : MType */;
142 val
* var144
/* : MType */;
143 val
* var145
/* : String */;
144 static val
* varonce146
;
145 val
* var147
/* : String */;
146 char* var148
/* : NativeString */;
147 val
* var149
/* : FlatString */;
148 short int var150
/* : Bool */;
149 val
* var152
/* : NativeArray[String] */;
150 static val
* varonce151
;
151 static val
* varonce153
;
152 val
* var154
/* : String */;
153 char* var155
/* : NativeString */;
154 val
* var156
/* : FlatString */;
155 static val
* varonce157
;
156 val
* var158
/* : String */;
157 char* var159
/* : NativeString */;
158 val
* var160
/* : FlatString */;
159 val
* var161
/* : String */;
160 val
* var162
/* : String */;
161 val
* var163
/* : RuntimeVariable */;
162 val
* var164
/* : MType */;
163 val
* var166
/* : MType */;
164 val
* var167
/* : String */;
165 static val
* varonce168
;
166 val
* var169
/* : String */;
167 char* var170
/* : NativeString */;
168 val
* var171
/* : FlatString */;
169 short int var172
/* : Bool */;
170 val
* var174
/* : NativeArray[String] */;
171 static val
* varonce173
;
172 static val
* varonce175
;
173 val
* var176
/* : String */;
174 char* var177
/* : NativeString */;
175 val
* var178
/* : FlatString */;
176 static val
* varonce179
;
177 val
* var180
/* : String */;
178 char* var181
/* : NativeString */;
179 val
* var182
/* : FlatString */;
180 val
* var183
/* : String */;
181 val
* var184
/* : String */;
182 val
* var185
/* : RuntimeVariable */;
183 val
* var186
/* : MType */;
184 val
* var188
/* : MType */;
185 short int var189
/* : Bool */;
188 const char* var_class_name
;
189 val
* var_valtype
/* var valtype: MClassType */;
190 short int var190
/* : Bool */;
191 short int var191
/* : Bool */;
192 short int var192
/* : Bool */;
195 short int var_195
/* var : Bool */;
196 val
* var196
/* : MClass */;
197 val
* var198
/* : MClass */;
198 val
* var199
/* : MClassKind */;
199 val
* var201
/* : MClassKind */;
200 val
* var202
/* : Sys */;
201 val
* var203
/* : MClassKind */;
202 short int var204
/* : Bool */;
203 short int var206
/* : Bool */;
204 short int var208
/* : Bool */;
205 short int var_209
/* var : Bool */;
206 val
* var210
/* : MClass */;
207 val
* var212
/* : MClass */;
208 val
* var213
/* : String */;
209 val
* var215
/* : String */;
210 static val
* varonce216
;
211 val
* var217
/* : String */;
212 char* var218
/* : NativeString */;
213 val
* var219
/* : FlatString */;
214 short int var220
/* : Bool */;
215 val
* var_other222
/* var other: nullable Object */;
216 short int var223
/* : Bool */;
217 short int var224
/* : Bool */;
218 val
* var225
/* : AbstractCompiler */;
219 val
* var227
/* : AbstractCompiler */;
220 val
* var228
/* : MModule */;
221 val
* var230
/* : MModule */;
222 val
* var231
/* : MClassType */;
223 val
* var232
/* : RuntimeVariable */;
224 val
* var_res
/* var res: RuntimeVariable */;
225 short int var233
/* : Bool */;
226 val
* var234
/* : AbstractCompiler */;
227 val
* var236
/* : AbstractCompiler */;
228 val
* var237
/* : nullable RapidTypeAnalysis */;
229 val
* var239
/* : nullable RapidTypeAnalysis */;
230 short int var240
/* : Bool */;
231 short int var241
/* : Bool */;
232 short int var243
/* : Bool */;
233 short int var244
/* : Bool */;
234 short int var_245
/* var : Bool */;
235 val
* var246
/* : AbstractCompiler */;
236 val
* var248
/* : AbstractCompiler */;
237 val
* var249
/* : nullable RapidTypeAnalysis */;
238 val
* var251
/* : nullable RapidTypeAnalysis */;
239 val
* var252
/* : HashSet[MClassType] */;
240 val
* var254
/* : HashSet[MClassType] */;
241 short int var255
/* : Bool */;
242 short int var256
/* : Bool */;
243 val
* var258
/* : NativeArray[String] */;
244 static val
* varonce257
;
245 static val
* varonce259
;
246 val
* var260
/* : String */;
247 char* var261
/* : NativeString */;
248 val
* var262
/* : FlatString */;
249 static val
* varonce263
;
250 val
* var264
/* : String */;
251 char* var265
/* : NativeString */;
252 val
* var266
/* : FlatString */;
253 static val
* varonce267
;
254 val
* var268
/* : String */;
255 char* var269
/* : NativeString */;
256 val
* var270
/* : FlatString */;
257 static val
* varonce271
;
258 val
* var272
/* : String */;
259 char* var273
/* : NativeString */;
260 val
* var274
/* : FlatString */;
261 val
* var275
/* : MType */;
262 val
* var277
/* : MType */;
263 val
* var278
/* : String */;
264 val
* var279
/* : String */;
265 val
* var280
/* : MType */;
266 val
* var282
/* : MType */;
267 val
* var283
/* : String */;
268 val
* var284
/* : String */;
269 static val
* varonce285
;
270 val
* var286
/* : String */;
271 char* var287
/* : NativeString */;
272 val
* var288
/* : FlatString */;
273 val
* var290
/* : NativeArray[String] */;
274 static val
* varonce289
;
275 static val
* varonce291
;
276 val
* var292
/* : String */;
277 char* var293
/* : NativeString */;
278 val
* var294
/* : FlatString */;
279 val
* var295
/* : String */;
280 val
* var296
/* : String */;
281 val
* var298
/* : NativeArray[String] */;
282 static val
* varonce297
;
283 static val
* varonce299
;
284 val
* var300
/* : String */;
285 char* var301
/* : NativeString */;
286 val
* var302
/* : FlatString */;
287 static val
* varonce303
;
288 val
* var304
/* : String */;
289 char* var305
/* : NativeString */;
290 val
* var306
/* : FlatString */;
291 static val
* varonce307
;
292 val
* var308
/* : String */;
293 char* var309
/* : NativeString */;
294 val
* var310
/* : FlatString */;
295 static val
* varonce311
;
296 val
* var312
/* : String */;
297 char* var313
/* : NativeString */;
298 val
* var314
/* : FlatString */;
299 static val
* varonce315
;
300 val
* var316
/* : String */;
301 char* var317
/* : NativeString */;
302 val
* var318
/* : FlatString */;
303 val
* var319
/* : String */;
304 val
* var320
/* : String */;
305 val
* var321
/* : String */;
306 val
* var322
/* : MType */;
307 val
* var324
/* : MType */;
308 val
* var325
/* : String */;
309 val
* var326
/* : String */;
310 val
* var327
/* : String */;
311 short int var328
/* : Bool */;
312 short int var329
/* : Bool */;
313 short int var330
/* : Bool */;
314 val
* var331
/* : MType */;
315 val
* var333
/* : MType */;
316 val
* var334
/* : String */;
317 static val
* varonce335
;
318 val
* var336
/* : String */;
319 char* var337
/* : NativeString */;
320 val
* var338
/* : FlatString */;
321 short int var339
/* : Bool */;
322 short int var_340
/* var : Bool */;
323 val
* var341
/* : String */;
324 static val
* varonce342
;
325 val
* var343
/* : String */;
326 char* var344
/* : NativeString */;
327 val
* var345
/* : FlatString */;
328 short int var346
/* : Bool */;
329 short int var_347
/* var : Bool */;
330 short int var348
/* : Bool */;
331 val
* var349
/* : MType */;
332 val
* var351
/* : MType */;
333 val
* var352
/* : String */;
334 static val
* varonce353
;
335 val
* var354
/* : String */;
336 char* var355
/* : NativeString */;
337 val
* var356
/* : FlatString */;
338 short int var357
/* : Bool */;
339 short int var_358
/* var : Bool */;
340 val
* var359
/* : String */;
341 static val
* varonce360
;
342 val
* var361
/* : String */;
343 char* var362
/* : NativeString */;
344 val
* var363
/* : FlatString */;
345 short int var364
/* : Bool */;
346 short int var_365
/* var : Bool */;
347 short int var366
/* : Bool */;
348 val
* var367
/* : MType */;
349 val
* var369
/* : MType */;
350 val
* var370
/* : String */;
351 static val
* varonce371
;
352 val
* var372
/* : String */;
353 char* var373
/* : NativeString */;
354 val
* var374
/* : FlatString */;
355 short int var375
/* : Bool */;
356 short int var_376
/* var : Bool */;
357 val
* var377
/* : String */;
358 static val
* varonce378
;
359 val
* var379
/* : String */;
360 char* var380
/* : NativeString */;
361 val
* var381
/* : FlatString */;
362 short int var382
/* : Bool */;
363 val
* var383
/* : RuntimeVariable */;
364 val
* var_res384
/* var res: RuntimeVariable */;
365 val
* var386
/* : NativeArray[String] */;
366 static val
* varonce385
;
367 static val
* varonce387
;
368 val
* var388
/* : String */;
369 char* var389
/* : NativeString */;
370 val
* var390
/* : FlatString */;
371 static val
* varonce391
;
372 val
* var392
/* : String */;
373 char* var393
/* : NativeString */;
374 val
* var394
/* : FlatString */;
375 static val
* varonce395
;
376 val
* var396
/* : String */;
377 char* var397
/* : NativeString */;
378 val
* var398
/* : FlatString */;
379 static val
* varonce399
;
380 val
* var400
/* : String */;
381 char* var401
/* : NativeString */;
382 val
* var402
/* : FlatString */;
383 val
* var403
/* : String */;
384 val
* var404
/* : MType */;
385 val
* var406
/* : MType */;
386 val
* var407
/* : String */;
387 val
* var408
/* : String */;
388 val
* var409
/* : String */;
389 val
* var411
/* : NativeArray[String] */;
390 static val
* varonce410
;
391 static val
* varonce412
;
392 val
* var413
/* : String */;
393 char* var414
/* : NativeString */;
394 val
* var415
/* : FlatString */;
395 static val
* varonce416
;
396 val
* var417
/* : String */;
397 char* var418
/* : NativeString */;
398 val
* var419
/* : FlatString */;
399 static val
* varonce420
;
400 val
* var421
/* : String */;
401 char* var422
/* : NativeString */;
402 val
* var423
/* : FlatString */;
403 val
* var424
/* : MType */;
404 val
* var426
/* : MType */;
405 val
* var427
/* : String */;
406 val
* var428
/* : String */;
407 val
* var429
/* : String */;
411 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
412 var3
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
413 if (unlikely(var3
== NULL
)) {
414 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
415 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
423 { /* Inline kernel#Object#== (var1,var_mtype) on <var1:MType> */
424 var_other
= var_mtype
;
426 { /* Inline kernel#Object#is_same_instance (var1,var_other) on <var1:MType> */
427 var8
= var1
== var_other
;
443 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
444 var12
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
445 if (unlikely(var12
== NULL
)) {
446 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
447 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
455 var13
= ((short int(*)(val
* self
))(var10
->class->vft
[COLOR_nit__abstract_compiler__MType__is_c_primitive
]))(var10
); /* is_c_primitive on <var10:MType>*/
461 var15
= ((short int(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__abstract_compiler__MType__is_c_primitive
]))(var_mtype
); /* is_c_primitive on <var_mtype:MType>*/
473 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
474 var19
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
475 if (unlikely(var19
== NULL
)) {
476 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
477 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
485 var20
= ((short int(*)(val
* self
))(var17
->class->vft
[COLOR_nit__abstract_compiler__MType__is_c_primitive
]))(var17
); /* is_c_primitive on <var17:MType>*/
490 { /* Inline separate_compiler#MType#is_tagged (var_mtype) on <var_mtype:MType> */
491 var24
= var_mtype
->attrs
[COLOR_nit__separate_compiler__MType___is_tagged
].s
; /* _is_tagged on <var_mtype:MType> */
498 var25
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__model_base__MEntity__name
]))(var_mtype
); /* name on <var_mtype:MType>*/
500 if (likely(varonce
!=NULL
)) {
504 var28
= standard___standard__NativeString___to_s_with_length(var27
, 3l);
509 var29
= ((short int(*)(val
* self
, val
* p0
))(var25
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var25
, var26
); /* == on <var25:String>*/
512 if (unlikely(varonce30
==NULL
)) {
513 var31
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
514 if (likely(varonce32
!=NULL
)) {
518 var35
= standard___standard__NativeString___to_s_with_length(var34
, 7l);
522 ((struct instance_standard__NativeArray
*)var31
)->values
[0]=var33
;
523 if (likely(varonce36
!=NULL
)) {
527 var39
= standard___standard__NativeString___to_s_with_length(var38
, 4l);
531 ((struct instance_standard__NativeArray
*)var31
)->values
[2]=var37
;
537 var40
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
539 ((struct instance_standard__NativeArray
*)var31
)->values
[1]=var40
;
541 var41
= ((val
*(*)(val
* self
))(var31
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var31
); /* native_to_s on <var31:NativeArray[String]>*/
545 var42
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var41
, var_mtype
);
551 var43
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__model_base__MEntity__name
]))(var_mtype
); /* name on <var_mtype:MType>*/
553 if (likely(varonce44
!=NULL
)) {
557 var47
= standard___standard__NativeString___to_s_with_length(var46
, 4l);
562 var48
= ((short int(*)(val
* self
, val
* p0
))(var43
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var43
, var45
); /* == on <var43:String>*/
565 if (unlikely(varonce49
==NULL
)) {
566 var50
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
567 if (likely(varonce51
!=NULL
)) {
570 var53
= "(uint32_t)((long)(";
571 var54
= standard___standard__NativeString___to_s_with_length(var53
, 18l);
575 ((struct instance_standard__NativeArray
*)var50
)->values
[0]=var52
;
576 if (likely(varonce55
!=NULL
)) {
580 var58
= standard___standard__NativeString___to_s_with_length(var57
, 5l);
584 ((struct instance_standard__NativeArray
*)var50
)->values
[2]=var56
;
590 var59
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
592 ((struct instance_standard__NativeArray
*)var50
)->values
[1]=var59
;
594 var60
= ((val
*(*)(val
* self
))(var50
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var50
); /* native_to_s on <var50:NativeArray[String]>*/
598 var61
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var60
, var_mtype
);
604 var62
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__model_base__MEntity__name
]))(var_mtype
); /* name on <var_mtype:MType>*/
606 if (likely(varonce63
!=NULL
)) {
610 var66
= standard___standard__NativeString___to_s_with_length(var65
, 4l);
615 var67
= ((short int(*)(val
* self
, val
* p0
))(var62
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var62
, var64
); /* == on <var62:String>*/
618 if (unlikely(varonce68
==NULL
)) {
619 var69
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
620 if (likely(varonce70
!=NULL
)) {
623 var72
= "(short int)((long)(";
624 var73
= standard___standard__NativeString___to_s_with_length(var72
, 19l);
628 ((struct instance_standard__NativeArray
*)var69
)->values
[0]=var71
;
629 if (likely(varonce74
!=NULL
)) {
633 var77
= standard___standard__NativeString___to_s_with_length(var76
, 5l);
637 ((struct instance_standard__NativeArray
*)var69
)->values
[2]=var75
;
643 var78
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
645 ((struct instance_standard__NativeArray
*)var69
)->values
[1]=var78
;
647 var79
= ((val
*(*)(val
* self
))(var69
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var69
); /* native_to_s on <var69:NativeArray[String]>*/
651 var80
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var79
, var_mtype
);
656 PRINT_ERROR("Runtime error: %s", "Aborted");
657 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1201);
664 if (unlikely(varonce81
==NULL
)) {
665 var82
= NEW_standard__NativeArray(9l, &type_standard__NativeArray__standard__String
);
666 if (likely(varonce83
!=NULL
)) {
669 var85
= "((struct instance_";
670 var86
= standard___standard__NativeString___to_s_with_length(var85
, 18l);
674 ((struct instance_standard__NativeArray
*)var82
)->values
[0]=var84
;
675 if (likely(varonce87
!=NULL
)) {
679 var90
= standard___standard__NativeString___to_s_with_length(var89
, 2l);
683 ((struct instance_standard__NativeArray
*)var82
)->values
[2]=var88
;
684 if (likely(varonce91
!=NULL
)) {
687 var93
= ")->value; /* autounbox from ";
688 var94
= standard___standard__NativeString___to_s_with_length(var93
, 28l);
692 ((struct instance_standard__NativeArray
*)var82
)->values
[4]=var92
;
693 if (likely(varonce95
!=NULL
)) {
697 var98
= standard___standard__NativeString___to_s_with_length(var97
, 4l);
701 ((struct instance_standard__NativeArray
*)var82
)->values
[6]=var96
;
702 if (likely(varonce99
!=NULL
)) {
706 var102
= standard___standard__NativeString___to_s_with_length(var101
, 3l);
710 ((struct instance_standard__NativeArray
*)var82
)->values
[8]=var100
;
716 var103
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType>*/
718 ((struct instance_standard__NativeArray
*)var82
)->values
[1]=var103
;
720 var104
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
722 ((struct instance_standard__NativeArray
*)var82
)->values
[3]=var104
;
724 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
725 var107
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
726 if (unlikely(var107
== NULL
)) {
727 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
728 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
732 RET_LABEL106
:(void)0;
736 var108
= ((val
*(*)(val
* self
))(var105
->class->vft
[COLOR_standard__string__Object__to_s
]))(var105
); /* to_s on <var105:MType>*/
738 ((struct instance_standard__NativeArray
*)var82
)->values
[5]=var108
;
740 var109
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
742 ((struct instance_standard__NativeArray
*)var82
)->values
[7]=var109
;
744 var110
= ((val
*(*)(val
* self
))(var82
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var82
); /* native_to_s on <var82:NativeArray[String]>*/
748 var111
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var110
, var_mtype
);
754 var112
= ((short int(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__abstract_compiler__MType__is_c_primitive
]))(var_mtype
); /* is_c_primitive on <var_mtype:MType>*/
759 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
760 var116
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
761 if (unlikely(var116
== NULL
)) {
762 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
763 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
767 RET_LABEL115
:(void)0;
771 { /* Inline separate_compiler#MType#is_tagged (var114) on <var114:MType> */
772 var119
= var114
->attrs
[COLOR_nit__separate_compiler__MType___is_tagged
].s
; /* _is_tagged on <var114:MType> */
774 RET_LABEL118
:(void)0;
779 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
780 var122
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
781 if (unlikely(var122
== NULL
)) {
782 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
783 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
787 RET_LABEL121
:(void)0;
791 var123
= ((val
*(*)(val
* self
))(var120
->class->vft
[COLOR_nit__model_base__MEntity__name
]))(var120
); /* name on <var120:MType>*/
793 if (likely(varonce124
!=NULL
)) {
797 var127
= standard___standard__NativeString___to_s_with_length(var126
, 3l);
802 var128
= ((short int(*)(val
* self
, val
* p0
))(var123
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var123
, var125
); /* == on <var123:String>*/
805 if (unlikely(varonce129
==NULL
)) {
806 var130
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
807 if (likely(varonce131
!=NULL
)) {
811 var134
= standard___standard__NativeString___to_s_with_length(var133
, 7l);
815 ((struct instance_standard__NativeArray
*)var130
)->values
[0]=var132
;
816 if (likely(varonce135
!=NULL
)) {
820 var138
= standard___standard__NativeString___to_s_with_length(var137
, 6l);
824 ((struct instance_standard__NativeArray
*)var130
)->values
[2]=var136
;
830 var139
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
832 ((struct instance_standard__NativeArray
*)var130
)->values
[1]=var139
;
834 var140
= ((val
*(*)(val
* self
))(var130
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var130
); /* native_to_s on <var130:NativeArray[String]>*/
838 var141
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var140
, var_mtype
);
844 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
845 var144
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
846 if (unlikely(var144
== NULL
)) {
847 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
848 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
852 RET_LABEL143
:(void)0;
856 var145
= ((val
*(*)(val
* self
))(var142
->class->vft
[COLOR_nit__model_base__MEntity__name
]))(var142
); /* name on <var142:MType>*/
858 if (likely(varonce146
!=NULL
)) {
862 var149
= standard___standard__NativeString___to_s_with_length(var148
, 4l);
867 var150
= ((short int(*)(val
* self
, val
* p0
))(var145
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var145
, var147
); /* == on <var145:String>*/
870 if (unlikely(varonce151
==NULL
)) {
871 var152
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
872 if (likely(varonce153
!=NULL
)) {
875 var155
= "(val*)((long)(";
876 var156
= standard___standard__NativeString___to_s_with_length(var155
, 14l);
880 ((struct instance_standard__NativeArray
*)var152
)->values
[0]=var154
;
881 if (likely(varonce157
!=NULL
)) {
885 var160
= standard___standard__NativeString___to_s_with_length(var159
, 7l);
889 ((struct instance_standard__NativeArray
*)var152
)->values
[2]=var158
;
895 var161
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
897 ((struct instance_standard__NativeArray
*)var152
)->values
[1]=var161
;
899 var162
= ((val
*(*)(val
* self
))(var152
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var152
); /* native_to_s on <var152:NativeArray[String]>*/
903 var163
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var162
, var_mtype
);
909 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
910 var166
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
911 if (unlikely(var166
== NULL
)) {
912 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
913 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
917 RET_LABEL165
:(void)0;
921 var167
= ((val
*(*)(val
* self
))(var164
->class->vft
[COLOR_nit__model_base__MEntity__name
]))(var164
); /* name on <var164:MType>*/
923 if (likely(varonce168
!=NULL
)) {
927 var171
= standard___standard__NativeString___to_s_with_length(var170
, 4l);
932 var172
= ((short int(*)(val
* self
, val
* p0
))(var167
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var167
, var169
); /* == on <var167:String>*/
935 if (unlikely(varonce173
==NULL
)) {
936 var174
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
937 if (likely(varonce175
!=NULL
)) {
940 var177
= "(val*)((long)(";
941 var178
= standard___standard__NativeString___to_s_with_length(var177
, 14l);
945 ((struct instance_standard__NativeArray
*)var174
)->values
[0]=var176
;
946 if (likely(varonce179
!=NULL
)) {
950 var182
= standard___standard__NativeString___to_s_with_length(var181
, 7l);
954 ((struct instance_standard__NativeArray
*)var174
)->values
[2]=var180
;
960 var183
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
962 ((struct instance_standard__NativeArray
*)var174
)->values
[1]=var183
;
964 var184
= ((val
*(*)(val
* self
))(var174
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var174
); /* native_to_s on <var174:NativeArray[String]>*/
968 var185
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var184
, var_mtype
);
973 PRINT_ERROR("Runtime error: %s", "Aborted");
974 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1214);
982 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
983 var188
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
984 if (unlikely(var188
== NULL
)) {
985 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
986 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
990 RET_LABEL187
:(void)0;
993 /* <var186:MType> isa MClassType */
994 cltype
= type_nit__MClassType
.color
;
995 idtype
= type_nit__MClassType
.id
;
996 if(cltype
>= var186
->type
->table_size
) {
999 var189
= var186
->type
->type_table
[cltype
] == idtype
;
1001 if (unlikely(!var189
)) {
1002 var_class_name
= var186
== NULL ?
"null" : var186
->type
->name
;
1003 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name
);
1004 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1217);
1007 var_valtype
= var186
;
1008 /* <var_mtype:MType> isa MClassType */
1009 cltype193
= type_nit__MClassType
.color
;
1010 idtype194
= type_nit__MClassType
.id
;
1011 if(cltype193
>= var_mtype
->type
->table_size
) {
1014 var192
= var_mtype
->type
->type_table
[cltype193
] == idtype194
;
1019 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
1020 var198
= var_mtype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
1021 if (unlikely(var198
== NULL
)) {
1022 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1023 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1138);
1027 RET_LABEL197
:(void)0;
1031 { /* Inline model#MClass#kind (var196) on <var196:MClass> */
1032 var201
= var196
->attrs
[COLOR_nit__model__MClass___kind
].val
; /* _kind on <var196:MClass> */
1033 if (unlikely(var201
== NULL
)) {
1034 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
1035 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 436);
1039 RET_LABEL200
:(void)0;
1044 var203
= nit__model___standard__Sys___extern_kind(var202
);
1047 { /* Inline kernel#Object#== (var199,var203) on <var199:MClassKind> */
1050 { /* Inline kernel#Object#is_same_instance (var199,var_other) on <var199:MClassKind> */
1051 var208
= var199
== var_other
;
1054 RET_LABEL207
:(void)0;
1059 RET_LABEL205
:(void)0;
1069 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
1070 var212
= var_mtype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
1071 if (unlikely(var212
== NULL
)) {
1072 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1073 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1138);
1077 RET_LABEL211
:(void)0;
1081 { /* Inline model#MClass#name (var210) on <var210:MClass> */
1082 var215
= var210
->attrs
[COLOR_nit__model__MClass___name
].val
; /* _name on <var210:MClass> */
1083 if (unlikely(var215
== NULL
)) {
1084 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1085 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 362);
1089 RET_LABEL214
:(void)0;
1092 if (likely(varonce216
!=NULL
)) {
1093 var217
= varonce216
;
1095 var218
= "NativeString";
1096 var219
= standard___standard__NativeString___to_s_with_length(var218
, 12l);
1098 varonce216
= var217
;
1101 { /* Inline kernel#Object#!= (var213,var217) on <var213:String> */
1102 var_other222
= var217
;
1104 var223
= ((short int(*)(val
* self
, val
* p0
))(var213
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var213
, var_other222
); /* == on <var213:String>*/
1109 RET_LABEL221
:(void)0;
1118 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
1119 var227
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
1120 if (unlikely(var227
== NULL
)) {
1121 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1122 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
1126 RET_LABEL226
:(void)0;
1130 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var225) on <var225:AbstractCompiler(SeparateCompiler)> */
1131 var230
= var225
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var225:AbstractCompiler(SeparateCompiler)> */
1132 if (unlikely(var230
== NULL
)) {
1133 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
1134 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 515);
1138 RET_LABEL229
:(void)0;
1142 var231
= nit__model___MModule___pointer_type(var228
);
1144 var_valtype
= var231
;
1148 var232
= nit___nit__AbstractCompilerVisitor___new_var(self
, var_mtype
);
1152 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
1153 var236
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
1154 if (unlikely(var236
== NULL
)) {
1155 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1156 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
1160 RET_LABEL235
:(void)0;
1164 { /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (var234) on <var234:AbstractCompiler(SeparateCompiler)> */
1165 var239
= var234
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___runtime_type_analysis
].val
; /* _runtime_type_analysis on <var234:AbstractCompiler(SeparateCompiler)> */
1167 RET_LABEL238
:(void)0;
1170 if (var237
== NULL
) {
1171 var240
= 0; /* is null */
1173 var240
= 1; /* arg is null and recv is not */
1176 { /* Inline kernel#Object#!= (var237,((val*)NULL)) on <var237:nullable RapidTypeAnalysis> */
1177 var_other222
= ((val
*)NULL
);
1179 var243
= ((short int(*)(val
* self
, val
* p0
))(var237
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var237
, var_other222
); /* == on <var237:nullable RapidTypeAnalysis(RapidTypeAnalysis)>*/
1184 RET_LABEL242
:(void)0;
1191 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
1192 var248
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
1193 if (unlikely(var248
== NULL
)) {
1194 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1195 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
1199 RET_LABEL247
:(void)0;
1203 { /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (var246) on <var246:AbstractCompiler(SeparateCompiler)> */
1204 var251
= var246
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___runtime_type_analysis
].val
; /* _runtime_type_analysis on <var246:AbstractCompiler(SeparateCompiler)> */
1206 RET_LABEL250
:(void)0;
1209 if (var249
== NULL
) {
1210 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1211 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1222);
1214 { /* Inline rapid_type_analysis#RapidTypeAnalysis#live_types (var249) on <var249:nullable RapidTypeAnalysis> */
1215 if (unlikely(var249
== NULL
)) {
1216 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1217 PRINT_ERROR(" (%s:%d)\n", FILE_nit__rapid_type_analysis
, 60);
1220 var254
= var249
->attrs
[COLOR_nit__rapid_type_analysis__RapidTypeAnalysis___live_types
].val
; /* _live_types on <var249:nullable RapidTypeAnalysis> */
1221 if (unlikely(var254
== NULL
)) {
1222 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_types");
1223 PRINT_ERROR(" (%s:%d)\n", FILE_nit__rapid_type_analysis
, 60);
1227 RET_LABEL253
:(void)0;
1231 var255
= standard___standard__HashSet___standard__abstract_collection__Collection__has(var252
, var_valtype
);
1239 if (unlikely(varonce257
==NULL
)) {
1240 var258
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
1241 if (likely(varonce259
!=NULL
)) {
1242 var260
= varonce259
;
1244 var261
= "/*no autobox from ";
1245 var262
= standard___standard__NativeString___to_s_with_length(var261
, 18l);
1247 varonce259
= var260
;
1249 ((struct instance_standard__NativeArray
*)var258
)->values
[0]=var260
;
1250 if (likely(varonce263
!=NULL
)) {
1251 var264
= varonce263
;
1254 var266
= standard___standard__NativeString___to_s_with_length(var265
, 4l);
1256 varonce263
= var264
;
1258 ((struct instance_standard__NativeArray
*)var258
)->values
[2]=var264
;
1259 if (likely(varonce267
!=NULL
)) {
1260 var268
= varonce267
;
1263 var270
= standard___standard__NativeString___to_s_with_length(var269
, 2l);
1265 varonce267
= var268
;
1267 ((struct instance_standard__NativeArray
*)var258
)->values
[4]=var268
;
1268 if (likely(varonce271
!=NULL
)) {
1269 var272
= varonce271
;
1271 var273
= " is not live! */";
1272 var274
= standard___standard__NativeString___to_s_with_length(var273
, 16l);
1274 varonce271
= var272
;
1276 ((struct instance_standard__NativeArray
*)var258
)->values
[6]=var272
;
1278 var258
= varonce257
;
1282 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
1283 var277
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
1284 if (unlikely(var277
== NULL
)) {
1285 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
1286 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
1290 RET_LABEL276
:(void)0;
1294 var278
= ((val
*(*)(val
* self
))(var275
->class->vft
[COLOR_standard__string__Object__to_s
]))(var275
); /* to_s on <var275:MType>*/
1296 ((struct instance_standard__NativeArray
*)var258
)->values
[1]=var278
;
1298 var279
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
1300 ((struct instance_standard__NativeArray
*)var258
)->values
[3]=var279
;
1302 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
1303 var282
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
1304 if (unlikely(var282
== NULL
)) {
1305 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
1306 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
1310 RET_LABEL281
:(void)0;
1314 var283
= ((val
*(*)(val
* self
))(var280
->class->vft
[COLOR_standard__string__Object__to_s
]))(var280
); /* to_s on <var280:MType>*/
1316 ((struct instance_standard__NativeArray
*)var258
)->values
[5]=var283
;
1318 var284
= ((val
*(*)(val
* self
))(var258
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var258
); /* native_to_s on <var258:NativeArray[String]>*/
1320 varonce257
= var258
;
1322 nit___nit__AbstractCompilerVisitor___add(self
, var284
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1324 if (likely(varonce285
!=NULL
)) {
1325 var286
= varonce285
;
1327 var287
= "PRINT_ERROR(\"Dead code executed!\\n\"); fatal_exit(1);";
1328 var288
= standard___standard__NativeString___to_s_with_length(var287
, 52l);
1330 varonce285
= var286
;
1333 nit___nit__AbstractCompilerVisitor___add(self
, var286
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1339 if (unlikely(varonce289
==NULL
)) {
1340 var290
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
1341 if (likely(varonce291
!=NULL
)) {
1342 var292
= varonce291
;
1345 var294
= standard___standard__NativeString___to_s_with_length(var293
, 4l);
1347 varonce291
= var292
;
1349 ((struct instance_standard__NativeArray
*)var290
)->values
[0]=var292
;
1351 var290
= varonce289
;
1355 var295
= ((val
*(*)(val
* self
))(var_valtype
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var_valtype
); /* c_name on <var_valtype:MClassType>*/
1357 ((struct instance_standard__NativeArray
*)var290
)->values
[1]=var295
;
1359 var296
= ((val
*(*)(val
* self
))(var290
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var290
); /* native_to_s on <var290:NativeArray[String]>*/
1361 varonce289
= var290
;
1363 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var296
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
1365 if (unlikely(varonce297
==NULL
)) {
1366 var298
= NEW_standard__NativeArray(10l, &type_standard__NativeArray__standard__String
);
1367 if (likely(varonce299
!=NULL
)) {
1368 var300
= varonce299
;
1371 var302
= standard___standard__NativeString___to_s_with_length(var301
, 7l);
1373 varonce299
= var300
;
1375 ((struct instance_standard__NativeArray
*)var298
)->values
[1]=var300
;
1376 if (likely(varonce303
!=NULL
)) {
1377 var304
= varonce303
;
1380 var306
= standard___standard__NativeString___to_s_with_length(var305
, 1l);
1382 varonce303
= var304
;
1384 ((struct instance_standard__NativeArray
*)var298
)->values
[3]=var304
;
1385 if (likely(varonce307
!=NULL
)) {
1386 var308
= varonce307
;
1388 var309
= "); /* autobox from ";
1389 var310
= standard___standard__NativeString___to_s_with_length(var309
, 19l);
1391 varonce307
= var308
;
1393 ((struct instance_standard__NativeArray
*)var298
)->values
[5]=var308
;
1394 if (likely(varonce311
!=NULL
)) {
1395 var312
= varonce311
;
1398 var314
= standard___standard__NativeString___to_s_with_length(var313
, 4l);
1400 varonce311
= var312
;
1402 ((struct instance_standard__NativeArray
*)var298
)->values
[7]=var312
;
1403 if (likely(varonce315
!=NULL
)) {
1404 var316
= varonce315
;
1407 var318
= standard___standard__NativeString___to_s_with_length(var317
, 3l);
1409 varonce315
= var316
;
1411 ((struct instance_standard__NativeArray
*)var298
)->values
[9]=var316
;
1413 var298
= varonce297
;
1417 var319
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
1419 ((struct instance_standard__NativeArray
*)var298
)->values
[0]=var319
;
1421 var320
= ((val
*(*)(val
* self
))(var_valtype
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var_valtype
); /* c_name on <var_valtype:MClassType>*/
1423 ((struct instance_standard__NativeArray
*)var298
)->values
[2]=var320
;
1425 var321
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
1427 ((struct instance_standard__NativeArray
*)var298
)->values
[4]=var321
;
1429 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
1430 var324
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
1431 if (unlikely(var324
== NULL
)) {
1432 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
1433 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
1437 RET_LABEL323
:(void)0;
1441 var325
= ((val
*(*)(val
* self
))(var322
->class->vft
[COLOR_standard__string__Object__to_s
]))(var322
); /* to_s on <var322:MType>*/
1443 ((struct instance_standard__NativeArray
*)var298
)->values
[6]=var325
;
1445 var326
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
1447 ((struct instance_standard__NativeArray
*)var298
)->values
[8]=var326
;
1449 var327
= ((val
*(*)(val
* self
))(var298
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var298
); /* native_to_s on <var298:NativeArray[String]>*/
1451 varonce297
= var298
;
1453 nit___nit__AbstractCompilerVisitor___add(self
, var327
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1459 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
1460 var333
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
1461 if (unlikely(var333
== NULL
)) {
1462 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
1463 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
1467 RET_LABEL332
:(void)0;
1471 var334
= ((val
*(*)(val
* self
))(var331
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var331
); /* ctype on <var331:MType>*/
1473 if (likely(varonce335
!=NULL
)) {
1474 var336
= varonce335
;
1477 var338
= standard___standard__NativeString___to_s_with_length(var337
, 5l);
1479 varonce335
= var336
;
1482 var339
= ((short int(*)(val
* self
, val
* p0
))(var334
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var334
, var336
); /* == on <var334:String>*/
1487 var341
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var_mtype
); /* ctype on <var_mtype:MType>*/
1489 if (likely(varonce342
!=NULL
)) {
1490 var343
= varonce342
;
1493 var345
= standard___standard__NativeString___to_s_with_length(var344
, 5l);
1495 varonce342
= var343
;
1498 var346
= ((short int(*)(val
* self
, val
* p0
))(var341
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var341
, var343
); /* == on <var341:String>*/
1509 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
1510 var351
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
1511 if (unlikely(var351
== NULL
)) {
1512 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
1513 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
1517 RET_LABEL350
:(void)0;
1521 var352
= ((val
*(*)(val
* self
))(var349
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var349
); /* ctype on <var349:MType>*/
1523 if (likely(varonce353
!=NULL
)) {
1524 var354
= varonce353
;
1527 var356
= standard___standard__NativeString___to_s_with_length(var355
, 5l);
1529 varonce353
= var354
;
1532 var357
= ((short int(*)(val
* self
, val
* p0
))(var352
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var352
, var354
); /* == on <var352:String>*/
1537 var359
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var_mtype
); /* ctype on <var_mtype:MType>*/
1539 if (likely(varonce360
!=NULL
)) {
1540 var361
= varonce360
;
1543 var363
= standard___standard__NativeString___to_s_with_length(var362
, 5l);
1545 varonce360
= var361
;
1548 var364
= ((short int(*)(val
* self
, val
* p0
))(var359
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var359
, var361
); /* == on <var359:String>*/
1561 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
1562 var369
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
1563 if (unlikely(var369
== NULL
)) {
1564 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
1565 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
1569 RET_LABEL368
:(void)0;
1573 var370
= ((val
*(*)(val
* self
))(var367
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var367
); /* ctype on <var367:MType>*/
1575 if (likely(varonce371
!=NULL
)) {
1576 var372
= varonce371
;
1579 var374
= standard___standard__NativeString___to_s_with_length(var373
, 5l);
1581 varonce371
= var372
;
1584 var375
= ((short int(*)(val
* self
, val
* p0
))(var370
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var370
, var372
); /* == on <var370:String>*/
1589 var377
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var_mtype
); /* ctype on <var_mtype:MType>*/
1591 if (likely(varonce378
!=NULL
)) {
1592 var379
= varonce378
;
1595 var381
= standard___standard__NativeString___to_s_with_length(var380
, 5l);
1597 varonce378
= var379
;
1600 var382
= ((short int(*)(val
* self
, val
* p0
))(var377
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var377
, var379
); /* == on <var377:String>*/
1613 var383
= nit___nit__AbstractCompilerVisitor___new_var(self
, var_mtype
);
1615 var_res384
= var383
;
1616 if (unlikely(varonce385
==NULL
)) {
1617 var386
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
1618 if (likely(varonce387
!=NULL
)) {
1619 var388
= varonce387
;
1622 var390
= standard___standard__NativeString___to_s_with_length(var389
, 3l);
1624 varonce387
= var388
;
1626 ((struct instance_standard__NativeArray
*)var386
)->values
[0]=var388
;
1627 if (likely(varonce391
!=NULL
)) {
1628 var392
= varonce391
;
1630 var393
= " left unintialized (cannot convert ";
1631 var394
= standard___standard__NativeString___to_s_with_length(var393
, 35l);
1633 varonce391
= var392
;
1635 ((struct instance_standard__NativeArray
*)var386
)->values
[2]=var392
;
1636 if (likely(varonce395
!=NULL
)) {
1637 var396
= varonce395
;
1640 var398
= standard___standard__NativeString___to_s_with_length(var397
, 4l);
1642 varonce395
= var396
;
1644 ((struct instance_standard__NativeArray
*)var386
)->values
[4]=var396
;
1645 if (likely(varonce399
!=NULL
)) {
1646 var400
= varonce399
;
1649 var402
= standard___standard__NativeString___to_s_with_length(var401
, 4l);
1651 varonce399
= var400
;
1653 ((struct instance_standard__NativeArray
*)var386
)->values
[6]=var400
;
1655 var386
= varonce385
;
1659 var403
= ((val
*(*)(val
* self
))(var_res384
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res384
); /* to_s on <var_res384:RuntimeVariable>*/
1661 ((struct instance_standard__NativeArray
*)var386
)->values
[1]=var403
;
1663 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
1664 var406
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
1665 if (unlikely(var406
== NULL
)) {
1666 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
1667 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
1671 RET_LABEL405
:(void)0;
1675 var407
= ((val
*(*)(val
* self
))(var404
->class->vft
[COLOR_standard__string__Object__to_s
]))(var404
); /* to_s on <var404:MType>*/
1677 ((struct instance_standard__NativeArray
*)var386
)->values
[3]=var407
;
1679 var408
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
1681 ((struct instance_standard__NativeArray
*)var386
)->values
[5]=var408
;
1683 var409
= ((val
*(*)(val
* self
))(var386
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var386
); /* native_to_s on <var386:NativeArray[String]>*/
1685 varonce385
= var386
;
1687 nit___nit__AbstractCompilerVisitor___add(self
, var409
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1689 if (unlikely(varonce410
==NULL
)) {
1690 var411
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
1691 if (likely(varonce412
!=NULL
)) {
1692 var413
= varonce412
;
1694 var414
= "PRINT_ERROR(\"Cast error: Cannot cast %s to %s.\\n\", \"";
1695 var415
= standard___standard__NativeString___to_s_with_length(var414
, 52l);
1697 varonce412
= var413
;
1699 ((struct instance_standard__NativeArray
*)var411
)->values
[0]=var413
;
1700 if (likely(varonce416
!=NULL
)) {
1701 var417
= varonce416
;
1704 var419
= standard___standard__NativeString___to_s_with_length(var418
, 4l);
1706 varonce416
= var417
;
1708 ((struct instance_standard__NativeArray
*)var411
)->values
[2]=var417
;
1709 if (likely(varonce420
!=NULL
)) {
1710 var421
= varonce420
;
1712 var422
= "\"); fatal_exit(1);";
1713 var423
= standard___standard__NativeString___to_s_with_length(var422
, 18l);
1715 varonce420
= var421
;
1717 ((struct instance_standard__NativeArray
*)var411
)->values
[4]=var421
;
1719 var411
= varonce410
;
1723 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
1724 var426
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
1725 if (unlikely(var426
== NULL
)) {
1726 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
1727 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
1731 RET_LABEL425
:(void)0;
1735 var427
= ((val
*(*)(val
* self
))(var424
->class->vft
[COLOR_standard__string__Object__to_s
]))(var424
); /* to_s on <var424:MType>*/
1737 ((struct instance_standard__NativeArray
*)var411
)->values
[1]=var427
;
1739 var428
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
1741 ((struct instance_standard__NativeArray
*)var411
)->values
[3]=var428
;
1743 var429
= ((val
*(*)(val
* self
))(var411
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var411
); /* native_to_s on <var411:NativeArray[String]>*/
1745 varonce410
= var411
;
1747 nit___nit__AbstractCompilerVisitor___add(self
, var429
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1759 /* method separate_compiler#SeparateCompilerVisitor#unbox_extern for (self: SeparateCompilerVisitor, RuntimeVariable, MType): RuntimeVariable */
1760 val
* nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__unbox_extern(val
* self
, val
* p0
, val
* p1
) {
1761 val
* var
/* : RuntimeVariable */;
1762 val
* var_value
/* var value: RuntimeVariable */;
1763 val
* var_mtype
/* var mtype: MType */;
1764 short int var1
/* : Bool */;
1765 short int var2
/* : Bool */;
1766 short int var3
/* : Bool */;
1769 short int var_
/* var : Bool */;
1770 val
* var4
/* : MClass */;
1771 val
* var6
/* : MClass */;
1772 val
* var7
/* : MClassKind */;
1773 val
* var9
/* : MClassKind */;
1774 val
* var10
/* : Sys */;
1775 val
* var11
/* : MClassKind */;
1776 short int var12
/* : Bool */;
1777 val
* var_other
/* var other: nullable Object */;
1778 short int var14
/* : Bool */;
1779 short int var16
/* : Bool */;
1780 short int var_17
/* var : Bool */;
1781 val
* var18
/* : MClass */;
1782 val
* var20
/* : MClass */;
1783 val
* var21
/* : String */;
1784 val
* var23
/* : String */;
1785 static val
* varonce
;
1786 val
* var24
/* : String */;
1787 char* var25
/* : NativeString */;
1788 val
* var26
/* : FlatString */;
1789 short int var27
/* : Bool */;
1790 val
* var_other29
/* var other: nullable Object */;
1791 short int var30
/* : Bool */;
1792 short int var31
/* : Bool */;
1793 val
* var32
/* : AbstractCompiler */;
1794 val
* var34
/* : AbstractCompiler */;
1795 val
* var35
/* : MModule */;
1796 val
* var37
/* : MModule */;
1797 val
* var38
/* : MClassType */;
1798 val
* var_pointer_type
/* var pointer_type: MClassType */;
1799 val
* var39
/* : RuntimeVariable */;
1800 val
* var_res
/* var res: RuntimeVariable */;
1801 val
* var41
/* : NativeArray[String] */;
1802 static val
* varonce40
;
1803 static val
* varonce42
;
1804 val
* var43
/* : String */;
1805 char* var44
/* : NativeString */;
1806 val
* var45
/* : FlatString */;
1807 static val
* varonce46
;
1808 val
* var47
/* : String */;
1809 char* var48
/* : NativeString */;
1810 val
* var49
/* : FlatString */;
1811 static val
* varonce50
;
1812 val
* var51
/* : String */;
1813 char* var52
/* : NativeString */;
1814 val
* var53
/* : FlatString */;
1815 static val
* varonce54
;
1816 val
* var55
/* : String */;
1817 char* var56
/* : NativeString */;
1818 val
* var57
/* : FlatString */;
1819 val
* var58
/* : String */;
1820 val
* var59
/* : String */;
1821 val
* var60
/* : String */;
1822 val
* var61
/* : MType */;
1823 val
* var63
/* : MType */;
1824 val
* var64
/* : String */;
1825 val
* var65
/* : String */;
1828 /* <var_mtype:MType> isa MClassType */
1829 cltype
= type_nit__MClassType
.color
;
1830 idtype
= type_nit__MClassType
.id
;
1831 if(cltype
>= var_mtype
->type
->table_size
) {
1834 var3
= var_mtype
->type
->type_table
[cltype
] == idtype
;
1839 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
1840 var6
= var_mtype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
1841 if (unlikely(var6
== NULL
)) {
1842 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1843 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1138);
1851 { /* Inline model#MClass#kind (var4) on <var4:MClass> */
1852 var9
= var4
->attrs
[COLOR_nit__model__MClass___kind
].val
; /* _kind on <var4:MClass> */
1853 if (unlikely(var9
== NULL
)) {
1854 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
1855 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 436);
1864 var11
= nit__model___standard__Sys___extern_kind(var10
);
1867 { /* Inline kernel#Object#== (var7,var11) on <var7:MClassKind> */
1870 { /* Inline kernel#Object#is_same_instance (var7,var_other) on <var7:MClassKind> */
1871 var16
= var7
== var_other
;
1874 RET_LABEL15
:(void)0;
1879 RET_LABEL13
:(void)0;
1889 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
1890 var20
= var_mtype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
1891 if (unlikely(var20
== NULL
)) {
1892 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1893 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1138);
1897 RET_LABEL19
:(void)0;
1901 { /* Inline model#MClass#name (var18) on <var18:MClass> */
1902 var23
= var18
->attrs
[COLOR_nit__model__MClass___name
].val
; /* _name on <var18:MClass> */
1903 if (unlikely(var23
== NULL
)) {
1904 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1905 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 362);
1909 RET_LABEL22
:(void)0;
1912 if (likely(varonce
!=NULL
)) {
1915 var25
= "NativeString";
1916 var26
= standard___standard__NativeString___to_s_with_length(var25
, 12l);
1921 { /* Inline kernel#Object#!= (var21,var24) on <var21:String> */
1922 var_other29
= var24
;
1924 var30
= ((short int(*)(val
* self
, val
* p0
))(var21
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var21
, var_other29
); /* == on <var21:String>*/
1929 RET_LABEL28
:(void)0;
1938 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
1939 var34
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
1940 if (unlikely(var34
== NULL
)) {
1941 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1942 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
1946 RET_LABEL33
:(void)0;
1950 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var32) on <var32:AbstractCompiler(SeparateCompiler)> */
1951 var37
= var32
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var32:AbstractCompiler(SeparateCompiler)> */
1952 if (unlikely(var37
== NULL
)) {
1953 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
1954 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 515);
1958 RET_LABEL36
:(void)0;
1962 var38
= nit__model___MModule___pointer_type(var35
);
1964 var_pointer_type
= var38
;
1966 var39
= nit___nit__AbstractCompilerVisitor___new_var_extern(self
, var_mtype
);
1969 if (unlikely(varonce40
==NULL
)) {
1970 var41
= NEW_standard__NativeArray(8l, &type_standard__NativeArray__standard__String
);
1971 if (likely(varonce42
!=NULL
)) {
1974 var44
= " = ((struct instance_";
1975 var45
= standard___standard__NativeString___to_s_with_length(var44
, 21l);
1979 ((struct instance_standard__NativeArray
*)var41
)->values
[1]=var43
;
1980 if (likely(varonce46
!=NULL
)) {
1984 var49
= standard___standard__NativeString___to_s_with_length(var48
, 2l);
1988 ((struct instance_standard__NativeArray
*)var41
)->values
[3]=var47
;
1989 if (likely(varonce50
!=NULL
)) {
1992 var52
= ")->value; /* unboxing ";
1993 var53
= standard___standard__NativeString___to_s_with_length(var52
, 22l);
1997 ((struct instance_standard__NativeArray
*)var41
)->values
[5]=var51
;
1998 if (likely(varonce54
!=NULL
)) {
2002 var57
= standard___standard__NativeString___to_s_with_length(var56
, 3l);
2006 ((struct instance_standard__NativeArray
*)var41
)->values
[7]=var55
;
2012 var58
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
2014 ((struct instance_standard__NativeArray
*)var41
)->values
[0]=var58
;
2016 var59
= ((val
*(*)(val
* self
))(var_pointer_type
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var_pointer_type
); /* c_name on <var_pointer_type:MClassType>*/
2018 ((struct instance_standard__NativeArray
*)var41
)->values
[2]=var59
;
2020 var60
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
2022 ((struct instance_standard__NativeArray
*)var41
)->values
[4]=var60
;
2024 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
2025 var63
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
2026 if (unlikely(var63
== NULL
)) {
2027 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2028 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
2032 RET_LABEL62
:(void)0;
2036 var64
= ((val
*(*)(val
* self
))(var61
->class->vft
[COLOR_standard__string__Object__to_s
]))(var61
); /* to_s on <var61:MType>*/
2038 ((struct instance_standard__NativeArray
*)var41
)->values
[6]=var64
;
2040 var65
= ((val
*(*)(val
* self
))(var41
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var41
); /* native_to_s on <var41:NativeArray[String]>*/
2044 nit___nit__AbstractCompilerVisitor___add(self
, var65
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2055 /* method separate_compiler#SeparateCompilerVisitor#box_extern for (self: SeparateCompilerVisitor, RuntimeVariable, MType): RuntimeVariable */
2056 val
* nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__box_extern(val
* self
, val
* p0
, val
* p1
) {
2057 val
* var
/* : RuntimeVariable */;
2058 val
* var_value
/* var value: RuntimeVariable */;
2059 val
* var_mtype
/* var mtype: MType */;
2060 short int var1
/* : Bool */;
2061 short int var2
/* : Bool */;
2062 short int var3
/* : Bool */;
2065 short int var_
/* var : Bool */;
2066 val
* var4
/* : MClass */;
2067 val
* var6
/* : MClass */;
2068 val
* var7
/* : MClassKind */;
2069 val
* var9
/* : MClassKind */;
2070 val
* var10
/* : Sys */;
2071 val
* var11
/* : MClassKind */;
2072 short int var12
/* : Bool */;
2073 val
* var_other
/* var other: nullable Object */;
2074 short int var14
/* : Bool */;
2075 short int var16
/* : Bool */;
2076 short int var_17
/* var : Bool */;
2077 val
* var18
/* : MClass */;
2078 val
* var20
/* : MClass */;
2079 val
* var21
/* : String */;
2080 val
* var23
/* : String */;
2081 static val
* varonce
;
2082 val
* var24
/* : String */;
2083 char* var25
/* : NativeString */;
2084 val
* var26
/* : FlatString */;
2085 short int var27
/* : Bool */;
2086 val
* var_other29
/* var other: nullable Object */;
2087 short int var30
/* : Bool */;
2088 short int var31
/* : Bool */;
2089 val
* var32
/* : AbstractCompiler */;
2090 val
* var34
/* : AbstractCompiler */;
2091 val
* var35
/* : MModule */;
2092 val
* var37
/* : MModule */;
2093 val
* var38
/* : MClassType */;
2094 val
* var_valtype
/* var valtype: MClassType */;
2095 val
* var39
/* : RuntimeVariable */;
2096 val
* var_res
/* var res: RuntimeVariable */;
2097 short int var40
/* : Bool */;
2098 val
* var41
/* : AbstractCompiler */;
2099 val
* var43
/* : AbstractCompiler */;
2100 val
* var44
/* : nullable RapidTypeAnalysis */;
2101 val
* var46
/* : nullable RapidTypeAnalysis */;
2102 short int var47
/* : Bool */;
2103 short int var48
/* : Bool */;
2104 short int var50
/* : Bool */;
2105 short int var51
/* : Bool */;
2106 short int var_52
/* var : Bool */;
2107 val
* var53
/* : AbstractCompiler */;
2108 val
* var55
/* : AbstractCompiler */;
2109 val
* var56
/* : nullable RapidTypeAnalysis */;
2110 val
* var58
/* : nullable RapidTypeAnalysis */;
2111 val
* var59
/* : HashSet[MClassType] */;
2112 val
* var61
/* : HashSet[MClassType] */;
2113 val
* var62
/* : MType */;
2114 val
* var64
/* : MType */;
2115 short int var65
/* : Bool */;
2118 const char* var_class_name
;
2119 short int var68
/* : Bool */;
2120 short int var69
/* : Bool */;
2121 val
* var71
/* : NativeArray[String] */;
2122 static val
* varonce70
;
2123 static val
* varonce72
;
2124 val
* var73
/* : String */;
2125 char* var74
/* : NativeString */;
2126 val
* var75
/* : FlatString */;
2127 static val
* varonce76
;
2128 val
* var77
/* : String */;
2129 char* var78
/* : NativeString */;
2130 val
* var79
/* : FlatString */;
2131 static val
* varonce80
;
2132 val
* var81
/* : String */;
2133 char* var82
/* : NativeString */;
2134 val
* var83
/* : FlatString */;
2135 val
* var84
/* : MType */;
2136 val
* var86
/* : MType */;
2137 val
* var87
/* : String */;
2138 val
* var88
/* : MType */;
2139 val
* var90
/* : MType */;
2140 val
* var91
/* : String */;
2141 val
* var92
/* : String */;
2142 static val
* varonce93
;
2143 val
* var94
/* : String */;
2144 char* var95
/* : NativeString */;
2145 val
* var96
/* : FlatString */;
2146 val
* var98
/* : NativeArray[String] */;
2147 static val
* varonce97
;
2148 static val
* varonce99
;
2149 val
* var100
/* : String */;
2150 char* var101
/* : NativeString */;
2151 val
* var102
/* : FlatString */;
2152 val
* var103
/* : String */;
2153 val
* var104
/* : String */;
2154 val
* var106
/* : NativeArray[String] */;
2155 static val
* varonce105
;
2156 static val
* varonce107
;
2157 val
* var108
/* : String */;
2158 char* var109
/* : NativeString */;
2159 val
* var110
/* : FlatString */;
2160 static val
* varonce111
;
2161 val
* var112
/* : String */;
2162 char* var113
/* : NativeString */;
2163 val
* var114
/* : FlatString */;
2164 static val
* varonce115
;
2165 val
* var116
/* : String */;
2166 char* var117
/* : NativeString */;
2167 val
* var118
/* : FlatString */;
2168 static val
* varonce119
;
2169 val
* var120
/* : String */;
2170 char* var121
/* : NativeString */;
2171 val
* var122
/* : FlatString */;
2172 val
* var123
/* : String */;
2173 val
* var124
/* : String */;
2174 val
* var125
/* : String */;
2175 val
* var126
/* : MType */;
2176 val
* var128
/* : MType */;
2177 val
* var129
/* : String */;
2178 val
* var130
/* : String */;
2179 val
* var132
/* : NativeArray[String] */;
2180 static val
* varonce131
;
2181 static val
* varonce133
;
2182 val
* var134
/* : String */;
2183 char* var135
/* : NativeString */;
2184 val
* var136
/* : FlatString */;
2185 val
* var137
/* : String */;
2186 val
* var138
/* : String */;
2187 val
* var140
/* : NativeArray[String] */;
2188 static val
* varonce139
;
2189 static val
* varonce141
;
2190 val
* var142
/* : String */;
2191 char* var143
/* : NativeString */;
2192 val
* var144
/* : FlatString */;
2193 static val
* varonce145
;
2194 val
* var146
/* : String */;
2195 char* var147
/* : NativeString */;
2196 val
* var148
/* : FlatString */;
2197 val
* var149
/* : String */;
2198 val
* var150
/* : String */;
2199 val
* var151
/* : String */;
2200 val
* var153
/* : NativeArray[String] */;
2201 static val
* varonce152
;
2202 static val
* varonce154
;
2203 val
* var155
/* : String */;
2204 char* var156
/* : NativeString */;
2205 val
* var157
/* : FlatString */;
2206 val
* var158
/* : String */;
2207 val
* var159
/* : String */;
2208 val
* var161
/* : NativeArray[String] */;
2209 static val
* varonce160
;
2210 static val
* varonce162
;
2211 val
* var163
/* : String */;
2212 char* var164
/* : NativeString */;
2213 val
* var165
/* : FlatString */;
2214 static val
* varonce166
;
2215 val
* var167
/* : String */;
2216 char* var168
/* : NativeString */;
2217 val
* var169
/* : FlatString */;
2218 val
* var170
/* : String */;
2219 val
* var171
/* : String */;
2220 val
* var172
/* : String */;
2223 /* <var_mtype:MType> isa MClassType */
2224 cltype
= type_nit__MClassType
.color
;
2225 idtype
= type_nit__MClassType
.id
;
2226 if(cltype
>= var_mtype
->type
->table_size
) {
2229 var3
= var_mtype
->type
->type_table
[cltype
] == idtype
;
2234 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
2235 var6
= var_mtype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
2236 if (unlikely(var6
== NULL
)) {
2237 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
2238 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1138);
2246 { /* Inline model#MClass#kind (var4) on <var4:MClass> */
2247 var9
= var4
->attrs
[COLOR_nit__model__MClass___kind
].val
; /* _kind on <var4:MClass> */
2248 if (unlikely(var9
== NULL
)) {
2249 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
2250 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 436);
2259 var11
= nit__model___standard__Sys___extern_kind(var10
);
2262 { /* Inline kernel#Object#== (var7,var11) on <var7:MClassKind> */
2265 { /* Inline kernel#Object#is_same_instance (var7,var_other) on <var7:MClassKind> */
2266 var16
= var7
== var_other
;
2269 RET_LABEL15
:(void)0;
2274 RET_LABEL13
:(void)0;
2284 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MType(MClassType)> */
2285 var20
= var_mtype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
2286 if (unlikely(var20
== NULL
)) {
2287 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
2288 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1138);
2292 RET_LABEL19
:(void)0;
2296 { /* Inline model#MClass#name (var18) on <var18:MClass> */
2297 var23
= var18
->attrs
[COLOR_nit__model__MClass___name
].val
; /* _name on <var18:MClass> */
2298 if (unlikely(var23
== NULL
)) {
2299 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
2300 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 362);
2304 RET_LABEL22
:(void)0;
2307 if (likely(varonce
!=NULL
)) {
2310 var25
= "NativeString";
2311 var26
= standard___standard__NativeString___to_s_with_length(var25
, 12l);
2316 { /* Inline kernel#Object#!= (var21,var24) on <var21:String> */
2317 var_other29
= var24
;
2319 var30
= ((short int(*)(val
* self
, val
* p0
))(var21
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var21
, var_other29
); /* == on <var21:String>*/
2324 RET_LABEL28
:(void)0;
2333 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
2334 var34
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
2335 if (unlikely(var34
== NULL
)) {
2336 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
2337 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
2341 RET_LABEL33
:(void)0;
2345 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var32) on <var32:AbstractCompiler(SeparateCompiler)> */
2346 var37
= var32
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var32:AbstractCompiler(SeparateCompiler)> */
2347 if (unlikely(var37
== NULL
)) {
2348 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
2349 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 515);
2353 RET_LABEL36
:(void)0;
2357 var38
= nit__model___MModule___pointer_type(var35
);
2359 var_valtype
= var38
;
2361 var39
= nit___nit__AbstractCompilerVisitor___new_var(self
, var_mtype
);
2365 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
2366 var43
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
2367 if (unlikely(var43
== NULL
)) {
2368 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
2369 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
2373 RET_LABEL42
:(void)0;
2377 { /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (var41) on <var41:AbstractCompiler(SeparateCompiler)> */
2378 var46
= var41
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___runtime_type_analysis
].val
; /* _runtime_type_analysis on <var41:AbstractCompiler(SeparateCompiler)> */
2380 RET_LABEL45
:(void)0;
2383 if (var44
== NULL
) {
2384 var47
= 0; /* is null */
2386 var47
= 1; /* arg is null and recv is not */
2389 { /* Inline kernel#Object#!= (var44,((val*)NULL)) on <var44:nullable RapidTypeAnalysis> */
2390 var_other29
= ((val
*)NULL
);
2392 var50
= ((short int(*)(val
* self
, val
* p0
))(var44
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var44
, var_other29
); /* == on <var44:nullable RapidTypeAnalysis(RapidTypeAnalysis)>*/
2397 RET_LABEL49
:(void)0;
2404 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
2405 var55
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
2406 if (unlikely(var55
== NULL
)) {
2407 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
2408 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
2412 RET_LABEL54
:(void)0;
2416 { /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (var53) on <var53:AbstractCompiler(SeparateCompiler)> */
2417 var58
= var53
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___runtime_type_analysis
].val
; /* _runtime_type_analysis on <var53:AbstractCompiler(SeparateCompiler)> */
2419 RET_LABEL57
:(void)0;
2422 if (var56
== NULL
) {
2423 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2424 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1262);
2427 { /* Inline rapid_type_analysis#RapidTypeAnalysis#live_types (var56) on <var56:nullable RapidTypeAnalysis> */
2428 if (unlikely(var56
== NULL
)) {
2429 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2430 PRINT_ERROR(" (%s:%d)\n", FILE_nit__rapid_type_analysis
, 60);
2433 var61
= var56
->attrs
[COLOR_nit__rapid_type_analysis__RapidTypeAnalysis___live_types
].val
; /* _live_types on <var56:nullable RapidTypeAnalysis> */
2434 if (unlikely(var61
== NULL
)) {
2435 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_types");
2436 PRINT_ERROR(" (%s:%d)\n", FILE_nit__rapid_type_analysis
, 60);
2440 RET_LABEL60
:(void)0;
2444 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
2445 var64
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
2446 if (unlikely(var64
== NULL
)) {
2447 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2448 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
2452 RET_LABEL63
:(void)0;
2455 /* <var62:MType> isa MClassType */
2456 cltype66
= type_nit__MClassType
.color
;
2457 idtype67
= type_nit__MClassType
.id
;
2458 if(cltype66
>= var62
->type
->table_size
) {
2461 var65
= var62
->type
->type_table
[cltype66
] == idtype67
;
2463 if (unlikely(!var65
)) {
2464 var_class_name
= var62
== NULL ?
"null" : var62
->type
->name
;
2465 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name
);
2466 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1262);
2470 var68
= standard___standard__HashSet___standard__abstract_collection__Collection__has(var59
, var62
);
2478 if (unlikely(varonce70
==NULL
)) {
2479 var71
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
2480 if (likely(varonce72
!=NULL
)) {
2483 var74
= "/*no boxing of ";
2484 var75
= standard___standard__NativeString___to_s_with_length(var74
, 15l);
2488 ((struct instance_standard__NativeArray
*)var71
)->values
[0]=var73
;
2489 if (likely(varonce76
!=NULL
)) {
2493 var79
= standard___standard__NativeString___to_s_with_length(var78
, 2l);
2497 ((struct instance_standard__NativeArray
*)var71
)->values
[2]=var77
;
2498 if (likely(varonce80
!=NULL
)) {
2501 var82
= " is not live! */";
2502 var83
= standard___standard__NativeString___to_s_with_length(var82
, 16l);
2506 ((struct instance_standard__NativeArray
*)var71
)->values
[4]=var81
;
2512 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
2513 var86
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
2514 if (unlikely(var86
== NULL
)) {
2515 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2516 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
2520 RET_LABEL85
:(void)0;
2524 var87
= ((val
*(*)(val
* self
))(var84
->class->vft
[COLOR_standard__string__Object__to_s
]))(var84
); /* to_s on <var84:MType>*/
2526 ((struct instance_standard__NativeArray
*)var71
)->values
[1]=var87
;
2528 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
2529 var90
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
2530 if (unlikely(var90
== NULL
)) {
2531 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2532 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
2536 RET_LABEL89
:(void)0;
2540 var91
= ((val
*(*)(val
* self
))(var88
->class->vft
[COLOR_standard__string__Object__to_s
]))(var88
); /* to_s on <var88:MType>*/
2542 ((struct instance_standard__NativeArray
*)var71
)->values
[3]=var91
;
2544 var92
= ((val
*(*)(val
* self
))(var71
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var71
); /* native_to_s on <var71:NativeArray[String]>*/
2548 nit___nit__AbstractCompilerVisitor___add(self
, var92
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2550 if (likely(varonce93
!=NULL
)) {
2553 var95
= "PRINT_ERROR(\"Dead code executed!\\n\"); fatal_exit(1);";
2554 var96
= standard___standard__NativeString___to_s_with_length(var95
, 52l);
2559 nit___nit__AbstractCompilerVisitor___add(self
, var94
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2565 if (unlikely(varonce97
==NULL
)) {
2566 var98
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
2567 if (likely(varonce99
!=NULL
)) {
2571 var102
= standard___standard__NativeString___to_s_with_length(var101
, 4l);
2575 ((struct instance_standard__NativeArray
*)var98
)->values
[0]=var100
;
2581 var103
= ((val
*(*)(val
* self
))(var_valtype
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var_valtype
); /* c_name on <var_valtype:MClassType>*/
2583 ((struct instance_standard__NativeArray
*)var98
)->values
[1]=var103
;
2585 var104
= ((val
*(*)(val
* self
))(var98
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var98
); /* native_to_s on <var98:NativeArray[String]>*/
2589 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var104
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
2591 if (unlikely(varonce105
==NULL
)) {
2592 var106
= NEW_standard__NativeArray(8l, &type_standard__NativeArray__standard__String
);
2593 if (likely(varonce107
!=NULL
)) {
2594 var108
= varonce107
;
2597 var110
= standard___standard__NativeString___to_s_with_length(var109
, 7l);
2599 varonce107
= var108
;
2601 ((struct instance_standard__NativeArray
*)var106
)->values
[1]=var108
;
2602 if (likely(varonce111
!=NULL
)) {
2603 var112
= varonce111
;
2606 var114
= standard___standard__NativeString___to_s_with_length(var113
, 1l);
2608 varonce111
= var112
;
2610 ((struct instance_standard__NativeArray
*)var106
)->values
[3]=var112
;
2611 if (likely(varonce115
!=NULL
)) {
2612 var116
= varonce115
;
2614 var117
= "); /* boxing ";
2615 var118
= standard___standard__NativeString___to_s_with_length(var117
, 13l);
2617 varonce115
= var116
;
2619 ((struct instance_standard__NativeArray
*)var106
)->values
[5]=var116
;
2620 if (likely(varonce119
!=NULL
)) {
2621 var120
= varonce119
;
2624 var122
= standard___standard__NativeString___to_s_with_length(var121
, 3l);
2626 varonce119
= var120
;
2628 ((struct instance_standard__NativeArray
*)var106
)->values
[7]=var120
;
2630 var106
= varonce105
;
2634 var123
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
2636 ((struct instance_standard__NativeArray
*)var106
)->values
[0]=var123
;
2638 var124
= ((val
*(*)(val
* self
))(var_valtype
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var_valtype
); /* c_name on <var_valtype:MClassType>*/
2640 ((struct instance_standard__NativeArray
*)var106
)->values
[2]=var124
;
2642 var125
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
2644 ((struct instance_standard__NativeArray
*)var106
)->values
[4]=var125
;
2646 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
2647 var128
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
2648 if (unlikely(var128
== NULL
)) {
2649 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2650 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
2654 RET_LABEL127
:(void)0;
2658 var129
= ((val
*(*)(val
* self
))(var126
->class->vft
[COLOR_standard__string__Object__to_s
]))(var126
); /* to_s on <var126:MType>*/
2660 ((struct instance_standard__NativeArray
*)var106
)->values
[6]=var129
;
2662 var130
= ((val
*(*)(val
* self
))(var106
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var106
); /* native_to_s on <var106:NativeArray[String]>*/
2664 varonce105
= var106
;
2666 nit___nit__AbstractCompilerVisitor___add(self
, var130
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2668 if (unlikely(varonce131
==NULL
)) {
2669 var132
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
2670 if (likely(varonce133
!=NULL
)) {
2671 var134
= varonce133
;
2674 var136
= standard___standard__NativeString___to_s_with_length(var135
, 5l);
2676 varonce133
= var134
;
2678 ((struct instance_standard__NativeArray
*)var132
)->values
[0]=var134
;
2680 var132
= varonce131
;
2684 var137
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType(MClassType)>*/
2686 ((struct instance_standard__NativeArray
*)var132
)->values
[1]=var137
;
2688 var138
= ((val
*(*)(val
* self
))(var132
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var132
); /* native_to_s on <var132:NativeArray[String]>*/
2690 varonce131
= var132
;
2692 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var138
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
2694 if (unlikely(varonce139
==NULL
)) {
2695 var140
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
2696 if (likely(varonce141
!=NULL
)) {
2697 var142
= varonce141
;
2699 var143
= "->type = &type_";
2700 var144
= standard___standard__NativeString___to_s_with_length(var143
, 15l);
2702 varonce141
= var142
;
2704 ((struct instance_standard__NativeArray
*)var140
)->values
[1]=var142
;
2705 if (likely(varonce145
!=NULL
)) {
2706 var146
= varonce145
;
2709 var148
= standard___standard__NativeString___to_s_with_length(var147
, 1l);
2711 varonce145
= var146
;
2713 ((struct instance_standard__NativeArray
*)var140
)->values
[3]=var146
;
2715 var140
= varonce139
;
2719 var149
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
2721 ((struct instance_standard__NativeArray
*)var140
)->values
[0]=var149
;
2723 var150
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType(MClassType)>*/
2725 ((struct instance_standard__NativeArray
*)var140
)->values
[2]=var150
;
2727 var151
= ((val
*(*)(val
* self
))(var140
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var140
); /* native_to_s on <var140:NativeArray[String]>*/
2729 varonce139
= var140
;
2731 nit___nit__AbstractCompilerVisitor___add(self
, var151
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2733 if (unlikely(varonce152
==NULL
)) {
2734 var153
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
2735 if (likely(varonce154
!=NULL
)) {
2736 var155
= varonce154
;
2739 var157
= standard___standard__NativeString___to_s_with_length(var156
, 6l);
2741 varonce154
= var155
;
2743 ((struct instance_standard__NativeArray
*)var153
)->values
[0]=var155
;
2745 var153
= varonce152
;
2749 var158
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType(MClassType)>*/
2751 ((struct instance_standard__NativeArray
*)var153
)->values
[1]=var158
;
2753 var159
= ((val
*(*)(val
* self
))(var153
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var153
); /* native_to_s on <var153:NativeArray[String]>*/
2755 varonce152
= var153
;
2757 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var159
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
2759 if (unlikely(varonce160
==NULL
)) {
2760 var161
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
2761 if (likely(varonce162
!=NULL
)) {
2762 var163
= varonce162
;
2764 var164
= "->class = &class_";
2765 var165
= standard___standard__NativeString___to_s_with_length(var164
, 17l);
2767 varonce162
= var163
;
2769 ((struct instance_standard__NativeArray
*)var161
)->values
[1]=var163
;
2770 if (likely(varonce166
!=NULL
)) {
2771 var167
= varonce166
;
2774 var169
= standard___standard__NativeString___to_s_with_length(var168
, 1l);
2776 varonce166
= var167
;
2778 ((struct instance_standard__NativeArray
*)var161
)->values
[3]=var167
;
2780 var161
= varonce160
;
2784 var170
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
2786 ((struct instance_standard__NativeArray
*)var161
)->values
[0]=var170
;
2788 var171
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType(MClassType)>*/
2790 ((struct instance_standard__NativeArray
*)var161
)->values
[2]=var171
;
2792 var172
= ((val
*(*)(val
* self
))(var161
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var161
); /* native_to_s on <var161:NativeArray[String]>*/
2794 varonce160
= var161
;
2796 nit___nit__AbstractCompilerVisitor___add(self
, var172
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2807 /* method separate_compiler#SeparateCompilerVisitor#extract_tag for (self: SeparateCompilerVisitor, RuntimeVariable): String */
2808 val
* nit___nit__SeparateCompilerVisitor___extract_tag(val
* self
, val
* p0
) {
2809 val
* var
/* : String */;
2810 val
* var_value
/* var value: RuntimeVariable */;
2811 val
* var1
/* : MType */;
2812 val
* var3
/* : MType */;
2813 short int var4
/* : Bool */;
2814 short int var5
/* : Bool */;
2815 val
* var6
/* : NativeArray[String] */;
2816 static val
* varonce
;
2817 static val
* varonce7
;
2818 val
* var8
/* : String */;
2819 char* var9
/* : NativeString */;
2820 val
* var10
/* : FlatString */;
2821 static val
* varonce11
;
2822 val
* var12
/* : String */;
2823 char* var13
/* : NativeString */;
2824 val
* var14
/* : FlatString */;
2825 val
* var15
/* : String */;
2826 val
* var16
/* : String */;
2829 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
2830 var3
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
2831 if (unlikely(var3
== NULL
)) {
2832 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2833 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
2841 var4
= ((short int(*)(val
* self
))(var1
->class->vft
[COLOR_nit__abstract_compiler__MType__is_c_primitive
]))(var1
); /* is_c_primitive on <var1:MType>*/
2844 if (unlikely(!var5
)) {
2845 PRINT_ERROR("Runtime error: %s", "Assert failed");
2846 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1285);
2849 if (unlikely(varonce
==NULL
)) {
2850 var6
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
2851 if (likely(varonce7
!=NULL
)) {
2855 var10
= standard___standard__NativeString___to_s_with_length(var9
, 7l);
2859 ((struct instance_standard__NativeArray
*)var6
)->values
[0]=var8
;
2860 if (likely(varonce11
!=NULL
)) {
2864 var14
= standard___standard__NativeString___to_s_with_length(var13
, 3l);
2868 ((struct instance_standard__NativeArray
*)var6
)->values
[2]=var12
;
2874 var15
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
2876 ((struct instance_standard__NativeArray
*)var6
)->values
[1]=var15
;
2878 var16
= ((val
*(*)(val
* self
))(var6
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var6
); /* native_to_s on <var6:NativeArray[String]>*/
2886 /* method separate_compiler#SeparateCompilerVisitor#class_info for (self: SeparateCompilerVisitor, RuntimeVariable): String */
2887 val
* nit___nit__SeparateCompilerVisitor___class_info(val
* self
, val
* p0
) {
2888 val
* var
/* : String */;
2889 val
* var_value
/* var value: RuntimeVariable */;
2890 val
* var1
/* : MType */;
2891 val
* var3
/* : MType */;
2892 short int var4
/* : Bool */;
2893 short int var5
/* : Bool */;
2894 short int var6
/* : Bool */;
2895 short int var7
/* : Bool */;
2896 short int var_
/* var : Bool */;
2897 val
* var8
/* : AbstractCompiler */;
2898 val
* var10
/* : AbstractCompiler */;
2899 val
* var11
/* : ModelBuilder */;
2900 val
* var13
/* : ModelBuilder */;
2901 val
* var14
/* : ToolContext */;
2902 val
* var16
/* : ToolContext */;
2903 val
* var17
/* : OptionBool */;
2904 val
* var19
/* : OptionBool */;
2905 val
* var20
/* : nullable Object */;
2906 val
* var22
/* : nullable Object */;
2907 short int var23
/* : Bool */;
2908 short int var24
/* : Bool */;
2909 val
* var25
/* : String */;
2910 val
* var_tag
/* var tag: String */;
2911 val
* var26
/* : NativeArray[String] */;
2912 static val
* varonce
;
2913 static val
* varonce27
;
2914 val
* var28
/* : String */;
2915 char* var29
/* : NativeString */;
2916 val
* var30
/* : FlatString */;
2917 static val
* varonce31
;
2918 val
* var32
/* : String */;
2919 char* var33
/* : NativeString */;
2920 val
* var34
/* : FlatString */;
2921 static val
* varonce35
;
2922 val
* var36
/* : String */;
2923 char* var37
/* : NativeString */;
2924 val
* var38
/* : FlatString */;
2925 static val
* varonce39
;
2926 val
* var40
/* : String */;
2927 char* var41
/* : NativeString */;
2928 val
* var42
/* : FlatString */;
2929 val
* var43
/* : String */;
2930 val
* var44
/* : String */;
2931 val
* var46
/* : NativeArray[String] */;
2932 static val
* varonce45
;
2933 static val
* varonce47
;
2934 val
* var48
/* : String */;
2935 char* var49
/* : NativeString */;
2936 val
* var50
/* : FlatString */;
2937 val
* var51
/* : String */;
2938 val
* var52
/* : String */;
2939 val
* var53
/* : AbstractCompiler */;
2940 val
* var55
/* : AbstractCompiler */;
2941 val
* var56
/* : Set[MType] */;
2942 val
* var58
/* : Set[MType] */;
2943 val
* var59
/* : MType */;
2944 val
* var61
/* : MType */;
2945 val
* var63
/* : NativeArray[String] */;
2946 static val
* varonce62
;
2947 static val
* varonce64
;
2948 val
* var65
/* : String */;
2949 char* var66
/* : NativeString */;
2950 val
* var67
/* : FlatString */;
2951 val
* var68
/* : MType */;
2952 val
* var70
/* : MType */;
2953 val
* var71
/* : String */;
2954 val
* var72
/* : String */;
2955 val
* var74
/* : NativeArray[String] */;
2956 static val
* varonce73
;
2957 static val
* varonce75
;
2958 val
* var76
/* : String */;
2959 char* var77
/* : NativeString */;
2960 val
* var78
/* : FlatString */;
2961 static val
* varonce79
;
2962 val
* var80
/* : String */;
2963 char* var81
/* : NativeString */;
2964 val
* var82
/* : FlatString */;
2965 val
* var83
/* : MType */;
2966 val
* var85
/* : MType */;
2967 val
* var86
/* : String */;
2968 val
* var87
/* : String */;
2971 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
2972 var3
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
2973 if (unlikely(var3
== NULL
)) {
2974 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2975 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
2983 var4
= ((short int(*)(val
* self
))(var1
->class->vft
[COLOR_nit__abstract_compiler__MType__is_c_primitive
]))(var1
); /* is_c_primitive on <var1:MType>*/
2988 var7
= nit___nit__SeparateCompilerVisitor___can_be_primitive(self
, var_value
);
2993 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
2994 var10
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
2995 if (unlikely(var10
== NULL
)) {
2996 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
2997 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
3005 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var8) on <var8:AbstractCompiler(SeparateCompiler)> */
3006 var13
= var8
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var8:AbstractCompiler(SeparateCompiler)> */
3007 if (unlikely(var13
== NULL
)) {
3008 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
3009 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
3013 RET_LABEL12
:(void)0;
3017 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var11) on <var11:ModelBuilder> */
3018 var16
= var11
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var11:ModelBuilder> */
3019 if (unlikely(var16
== NULL
)) {
3020 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3021 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
3025 RET_LABEL15
:(void)0;
3029 { /* Inline separate_compiler#ToolContext#opt_no_tag_primitives (var14) on <var14:ToolContext> */
3030 var19
= var14
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_no_tag_primitives
].val
; /* _opt_no_tag_primitives on <var14:ToolContext> */
3031 if (unlikely(var19
== NULL
)) {
3032 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_tag_primitives");
3033 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 32);
3037 RET_LABEL18
:(void)0;
3041 { /* Inline opts#Option#value (var17) on <var17:OptionBool> */
3042 var22
= var17
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var17:OptionBool> */
3044 RET_LABEL21
:(void)0;
3047 var23
= (short int)((long)(var20
)>>2);
3055 var25
= nit___nit__SeparateCompilerVisitor___extract_tag(self
, var_value
);
3058 if (unlikely(varonce
==NULL
)) {
3059 var26
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
3060 if (likely(varonce27
!=NULL
)) {
3064 var30
= standard___standard__NativeString___to_s_with_length(var29
, 1l);
3068 ((struct instance_standard__NativeArray
*)var26
)->values
[0]=var28
;
3069 if (likely(varonce31
!=NULL
)) {
3072 var33
= "?class_info[";
3073 var34
= standard___standard__NativeString___to_s_with_length(var33
, 12l);
3077 ((struct instance_standard__NativeArray
*)var26
)->values
[2]=var32
;
3078 if (likely(varonce35
!=NULL
)) {
3082 var38
= standard___standard__NativeString___to_s_with_length(var37
, 2l);
3086 ((struct instance_standard__NativeArray
*)var26
)->values
[4]=var36
;
3087 if (likely(varonce39
!=NULL
)) {
3091 var42
= standard___standard__NativeString___to_s_with_length(var41
, 8l);
3095 ((struct instance_standard__NativeArray
*)var26
)->values
[6]=var40
;
3100 ((struct instance_standard__NativeArray
*)var26
)->values
[1]=var_tag
;
3101 ((struct instance_standard__NativeArray
*)var26
)->values
[3]=var_tag
;
3103 var43
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
3105 ((struct instance_standard__NativeArray
*)var26
)->values
[5]=var43
;
3107 var44
= ((val
*(*)(val
* self
))(var26
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var26
); /* native_to_s on <var26:NativeArray[String]>*/
3114 if (unlikely(varonce45
==NULL
)) {
3115 var46
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3116 if (likely(varonce47
!=NULL
)) {
3120 var50
= standard___standard__NativeString___to_s_with_length(var49
, 7l);
3124 ((struct instance_standard__NativeArray
*)var46
)->values
[1]=var48
;
3130 var51
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
3132 ((struct instance_standard__NativeArray
*)var46
)->values
[0]=var51
;
3134 var52
= ((val
*(*)(val
* self
))(var46
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var46
); /* native_to_s on <var46:NativeArray[String]>*/
3141 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
3142 var55
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
3143 if (unlikely(var55
== NULL
)) {
3144 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
3145 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
3149 RET_LABEL54
:(void)0;
3153 { /* Inline separate_compiler#SeparateCompiler#undead_types (var53) on <var53:AbstractCompiler(SeparateCompiler)> */
3154 var58
= var53
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___undead_types
].val
; /* _undead_types on <var53:AbstractCompiler(SeparateCompiler)> */
3155 if (unlikely(var58
== NULL
)) {
3156 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _undead_types");
3157 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 146);
3161 RET_LABEL57
:(void)0;
3165 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
3166 var61
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
3167 if (unlikely(var61
== NULL
)) {
3168 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3169 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
3173 RET_LABEL60
:(void)0;
3177 ((void(*)(val
* self
, val
* p0
))((((long)var56
&3)?class_info
[((long)var56
&3)]:var56
->class)->vft
[COLOR_standard__abstract_collection__SimpleCollection__add
]))(var56
, var59
); /* add on <var56:Set[MType]>*/
3179 if (unlikely(varonce62
==NULL
)) {
3180 var63
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3181 if (likely(varonce64
!=NULL
)) {
3185 var67
= standard___standard__NativeString___to_s_with_length(var66
, 6l);
3189 ((struct instance_standard__NativeArray
*)var63
)->values
[0]=var65
;
3195 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
3196 var70
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
3197 if (unlikely(var70
== NULL
)) {
3198 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3199 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
3203 RET_LABEL69
:(void)0;
3207 var71
= ((val
*(*)(val
* self
))(var68
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var68
); /* c_name on <var68:MType>*/
3209 ((struct instance_standard__NativeArray
*)var63
)->values
[1]=var71
;
3211 var72
= ((val
*(*)(val
* self
))(var63
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var63
); /* native_to_s on <var63:NativeArray[String]>*/
3215 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var72
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
3217 if (unlikely(varonce73
==NULL
)) {
3218 var74
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
3219 if (likely(varonce75
!=NULL
)) {
3223 var78
= standard___standard__NativeString___to_s_with_length(var77
, 8l);
3227 ((struct instance_standard__NativeArray
*)var74
)->values
[0]=var76
;
3228 if (likely(varonce79
!=NULL
)) {
3232 var82
= standard___standard__NativeString___to_s_with_length(var81
, 1l);
3236 ((struct instance_standard__NativeArray
*)var74
)->values
[2]=var80
;
3242 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
3243 var85
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
3244 if (unlikely(var85
== NULL
)) {
3245 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3246 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
3250 RET_LABEL84
:(void)0;
3254 var86
= ((val
*(*)(val
* self
))(var83
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var83
); /* c_name on <var83:MType>*/
3256 ((struct instance_standard__NativeArray
*)var74
)->values
[1]=var86
;
3258 var87
= ((val
*(*)(val
* self
))(var74
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var74
); /* native_to_s on <var74:NativeArray[String]>*/
3267 /* method separate_compiler#SeparateCompilerVisitor#type_info for (self: SeparateCompilerVisitor, RuntimeVariable): String */
3268 val
* nit___nit__SeparateCompilerVisitor___type_info(val
* self
, val
* p0
) {
3269 val
* var
/* : String */;
3270 val
* var_value
/* var value: RuntimeVariable */;
3271 val
* var1
/* : MType */;
3272 val
* var3
/* : MType */;
3273 short int var4
/* : Bool */;
3274 short int var5
/* : Bool */;
3275 short int var6
/* : Bool */;
3276 short int var7
/* : Bool */;
3277 short int var_
/* var : Bool */;
3278 val
* var8
/* : AbstractCompiler */;
3279 val
* var10
/* : AbstractCompiler */;
3280 val
* var11
/* : ModelBuilder */;
3281 val
* var13
/* : ModelBuilder */;
3282 val
* var14
/* : ToolContext */;
3283 val
* var16
/* : ToolContext */;
3284 val
* var17
/* : OptionBool */;
3285 val
* var19
/* : OptionBool */;
3286 val
* var20
/* : nullable Object */;
3287 val
* var22
/* : nullable Object */;
3288 short int var23
/* : Bool */;
3289 short int var24
/* : Bool */;
3290 val
* var25
/* : String */;
3291 val
* var_tag
/* var tag: String */;
3292 val
* var26
/* : NativeArray[String] */;
3293 static val
* varonce
;
3294 static val
* varonce27
;
3295 val
* var28
/* : String */;
3296 char* var29
/* : NativeString */;
3297 val
* var30
/* : FlatString */;
3298 static val
* varonce31
;
3299 val
* var32
/* : String */;
3300 char* var33
/* : NativeString */;
3301 val
* var34
/* : FlatString */;
3302 static val
* varonce35
;
3303 val
* var36
/* : String */;
3304 char* var37
/* : NativeString */;
3305 val
* var38
/* : FlatString */;
3306 static val
* varonce39
;
3307 val
* var40
/* : String */;
3308 char* var41
/* : NativeString */;
3309 val
* var42
/* : FlatString */;
3310 val
* var43
/* : String */;
3311 val
* var44
/* : String */;
3312 val
* var46
/* : NativeArray[String] */;
3313 static val
* varonce45
;
3314 static val
* varonce47
;
3315 val
* var48
/* : String */;
3316 char* var49
/* : NativeString */;
3317 val
* var50
/* : FlatString */;
3318 val
* var51
/* : String */;
3319 val
* var52
/* : String */;
3320 val
* var53
/* : AbstractCompiler */;
3321 val
* var55
/* : AbstractCompiler */;
3322 val
* var56
/* : Set[MType] */;
3323 val
* var58
/* : Set[MType] */;
3324 val
* var59
/* : MType */;
3325 val
* var61
/* : MType */;
3326 val
* var63
/* : NativeArray[String] */;
3327 static val
* varonce62
;
3328 static val
* varonce64
;
3329 val
* var65
/* : String */;
3330 char* var66
/* : NativeString */;
3331 val
* var67
/* : FlatString */;
3332 val
* var68
/* : MType */;
3333 val
* var70
/* : MType */;
3334 val
* var71
/* : String */;
3335 val
* var72
/* : String */;
3336 val
* var74
/* : NativeArray[String] */;
3337 static val
* varonce73
;
3338 static val
* varonce75
;
3339 val
* var76
/* : String */;
3340 char* var77
/* : NativeString */;
3341 val
* var78
/* : FlatString */;
3342 static val
* varonce79
;
3343 val
* var80
/* : String */;
3344 char* var81
/* : NativeString */;
3345 val
* var82
/* : FlatString */;
3346 val
* var83
/* : MType */;
3347 val
* var85
/* : MType */;
3348 val
* var86
/* : String */;
3349 val
* var87
/* : String */;
3352 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
3353 var3
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
3354 if (unlikely(var3
== NULL
)) {
3355 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3356 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
3364 var4
= ((short int(*)(val
* self
))(var1
->class->vft
[COLOR_nit__abstract_compiler__MType__is_c_primitive
]))(var1
); /* is_c_primitive on <var1:MType>*/
3369 var7
= nit___nit__SeparateCompilerVisitor___can_be_primitive(self
, var_value
);
3374 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
3375 var10
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
3376 if (unlikely(var10
== NULL
)) {
3377 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
3378 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
3386 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var8) on <var8:AbstractCompiler(SeparateCompiler)> */
3387 var13
= var8
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var8:AbstractCompiler(SeparateCompiler)> */
3388 if (unlikely(var13
== NULL
)) {
3389 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
3390 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
3394 RET_LABEL12
:(void)0;
3398 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var11) on <var11:ModelBuilder> */
3399 var16
= var11
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var11:ModelBuilder> */
3400 if (unlikely(var16
== NULL
)) {
3401 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3402 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
3406 RET_LABEL15
:(void)0;
3410 { /* Inline separate_compiler#ToolContext#opt_no_tag_primitives (var14) on <var14:ToolContext> */
3411 var19
= var14
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_no_tag_primitives
].val
; /* _opt_no_tag_primitives on <var14:ToolContext> */
3412 if (unlikely(var19
== NULL
)) {
3413 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_tag_primitives");
3414 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 32);
3418 RET_LABEL18
:(void)0;
3422 { /* Inline opts#Option#value (var17) on <var17:OptionBool> */
3423 var22
= var17
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var17:OptionBool> */
3425 RET_LABEL21
:(void)0;
3428 var23
= (short int)((long)(var20
)>>2);
3436 var25
= nit___nit__SeparateCompilerVisitor___extract_tag(self
, var_value
);
3439 if (unlikely(varonce
==NULL
)) {
3440 var26
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
3441 if (likely(varonce27
!=NULL
)) {
3445 var30
= standard___standard__NativeString___to_s_with_length(var29
, 1l);
3449 ((struct instance_standard__NativeArray
*)var26
)->values
[0]=var28
;
3450 if (likely(varonce31
!=NULL
)) {
3453 var33
= "?type_info[";
3454 var34
= standard___standard__NativeString___to_s_with_length(var33
, 11l);
3458 ((struct instance_standard__NativeArray
*)var26
)->values
[2]=var32
;
3459 if (likely(varonce35
!=NULL
)) {
3463 var38
= standard___standard__NativeString___to_s_with_length(var37
, 2l);
3467 ((struct instance_standard__NativeArray
*)var26
)->values
[4]=var36
;
3468 if (likely(varonce39
!=NULL
)) {
3472 var42
= standard___standard__NativeString___to_s_with_length(var41
, 7l);
3476 ((struct instance_standard__NativeArray
*)var26
)->values
[6]=var40
;
3481 ((struct instance_standard__NativeArray
*)var26
)->values
[1]=var_tag
;
3482 ((struct instance_standard__NativeArray
*)var26
)->values
[3]=var_tag
;
3484 var43
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
3486 ((struct instance_standard__NativeArray
*)var26
)->values
[5]=var43
;
3488 var44
= ((val
*(*)(val
* self
))(var26
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var26
); /* native_to_s on <var26:NativeArray[String]>*/
3495 if (unlikely(varonce45
==NULL
)) {
3496 var46
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3497 if (likely(varonce47
!=NULL
)) {
3501 var50
= standard___standard__NativeString___to_s_with_length(var49
, 6l);
3505 ((struct instance_standard__NativeArray
*)var46
)->values
[1]=var48
;
3511 var51
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
3513 ((struct instance_standard__NativeArray
*)var46
)->values
[0]=var51
;
3515 var52
= ((val
*(*)(val
* self
))(var46
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var46
); /* native_to_s on <var46:NativeArray[String]>*/
3522 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
3523 var55
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
3524 if (unlikely(var55
== NULL
)) {
3525 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
3526 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
3530 RET_LABEL54
:(void)0;
3534 { /* Inline separate_compiler#SeparateCompiler#undead_types (var53) on <var53:AbstractCompiler(SeparateCompiler)> */
3535 var58
= var53
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___undead_types
].val
; /* _undead_types on <var53:AbstractCompiler(SeparateCompiler)> */
3536 if (unlikely(var58
== NULL
)) {
3537 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _undead_types");
3538 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 146);
3542 RET_LABEL57
:(void)0;
3546 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
3547 var61
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
3548 if (unlikely(var61
== NULL
)) {
3549 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3550 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
3554 RET_LABEL60
:(void)0;
3558 ((void(*)(val
* self
, val
* p0
))((((long)var56
&3)?class_info
[((long)var56
&3)]:var56
->class)->vft
[COLOR_standard__abstract_collection__SimpleCollection__add
]))(var56
, var59
); /* add on <var56:Set[MType]>*/
3560 if (unlikely(varonce62
==NULL
)) {
3561 var63
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3562 if (likely(varonce64
!=NULL
)) {
3566 var67
= standard___standard__NativeString___to_s_with_length(var66
, 5l);
3570 ((struct instance_standard__NativeArray
*)var63
)->values
[0]=var65
;
3576 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
3577 var70
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
3578 if (unlikely(var70
== NULL
)) {
3579 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3580 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
3584 RET_LABEL69
:(void)0;
3588 var71
= ((val
*(*)(val
* self
))(var68
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var68
); /* c_name on <var68:MType>*/
3590 ((struct instance_standard__NativeArray
*)var63
)->values
[1]=var71
;
3592 var72
= ((val
*(*)(val
* self
))(var63
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var63
); /* native_to_s on <var63:NativeArray[String]>*/
3596 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var72
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
3598 if (unlikely(varonce73
==NULL
)) {
3599 var74
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
3600 if (likely(varonce75
!=NULL
)) {
3604 var78
= standard___standard__NativeString___to_s_with_length(var77
, 7l);
3608 ((struct instance_standard__NativeArray
*)var74
)->values
[0]=var76
;
3609 if (likely(varonce79
!=NULL
)) {
3613 var82
= standard___standard__NativeString___to_s_with_length(var81
, 1l);
3617 ((struct instance_standard__NativeArray
*)var74
)->values
[2]=var80
;
3623 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
3624 var85
= var_value
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
3625 if (unlikely(var85
== NULL
)) {
3626 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3627 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
3631 RET_LABEL84
:(void)0;
3635 var86
= ((val
*(*)(val
* self
))(var83
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(var83
); /* c_name on <var83:MType>*/
3637 ((struct instance_standard__NativeArray
*)var74
)->values
[1]=var86
;
3639 var87
= ((val
*(*)(val
* self
))(var74
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var74
); /* native_to_s on <var74:NativeArray[String]>*/
3648 /* method separate_compiler#SeparateCompilerVisitor#compile_callsite for (self: SeparateCompilerVisitor, CallSite, Array[RuntimeVariable]): nullable RuntimeVariable */
3649 val
* nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__compile_callsite(val
* self
, val
* p0
, val
* p1
) {
3650 val
* var
/* : nullable RuntimeVariable */;
3651 val
* var_callsite
/* var callsite: CallSite */;
3652 val
* var_args
/* var args: Array[RuntimeVariable] */;
3653 val
* var1
/* : AbstractCompiler */;
3654 val
* var3
/* : AbstractCompiler */;
3655 val
* var4
/* : nullable RapidTypeAnalysis */;
3656 val
* var6
/* : nullable RapidTypeAnalysis */;
3657 val
* var_rta
/* var rta: nullable RapidTypeAnalysis */;
3658 short int var7
/* : Bool */;
3659 short int var8
/* : Bool */;
3660 val
* var9
/* : AbstractCompiler */;
3661 val
* var11
/* : AbstractCompiler */;
3662 val
* var12
/* : ModelBuilder */;
3663 val
* var14
/* : ModelBuilder */;
3664 val
* var15
/* : ToolContext */;
3665 val
* var17
/* : ToolContext */;
3666 val
* var18
/* : OptionBool */;
3667 val
* var20
/* : OptionBool */;
3668 val
* var21
/* : nullable Object */;
3669 val
* var23
/* : nullable Object */;
3670 short int var24
/* : Bool */;
3671 short int var_
/* var : Bool */;
3672 short int var25
/* : Bool */;
3673 short int var26
/* : Bool */;
3674 val
* var_other
/* var other: nullable Object */;
3675 short int var28
/* : Bool */;
3676 short int var29
/* : Bool */;
3677 short int var_30
/* var : Bool */;
3678 val
* var31
/* : MMethodDef */;
3679 val
* var33
/* : MMethodDef */;
3680 val
* var34
/* : Array[MProperty] */;
3681 val
* var36
/* : Array[MProperty] */;
3682 short int var37
/* : Bool */;
3683 val
* var38
/* : Set[MMethodDef] */;
3684 val
* var_tgs
/* var tgs: Set[MMethodDef] */;
3685 long var39
/* : Int */;
3686 short int var40
/* : Bool */;
3687 short int var42
/* : Bool */;
3688 val
* var43
/* : nullable Object */;
3689 val
* var44
/* : nullable RuntimeVariable */;
3690 short int var45
/* : Bool */;
3691 val
* var46
/* : MMethodDef */;
3692 val
* var48
/* : MMethodDef */;
3693 short int var49
/* : Bool */;
3694 short int var51
/* : Bool */;
3695 short int var_52
/* var : Bool */;
3696 val
* var53
/* : MMethod */;
3697 val
* var55
/* : MMethod */;
3698 val
* var56
/* : String */;
3699 val
* var58
/* : String */;
3700 static val
* varonce
;
3701 val
* var59
/* : String */;
3702 char* var60
/* : NativeString */;
3703 val
* var61
/* : FlatString */;
3704 short int var62
/* : Bool */;
3705 short int var64
/* : Bool */;
3706 short int var65
/* : Bool */;
3707 val
* var66
/* : MMethodDef */;
3708 val
* var68
/* : MMethodDef */;
3709 val
* var69
/* : nullable RuntimeVariable */;
3710 val
* var70
/* : nullable RuntimeVariable */;
3714 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
3715 var3
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
3716 if (unlikely(var3
== NULL
)) {
3717 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
3718 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
3726 { /* Inline separate_compiler#SeparateCompiler#runtime_type_analysis (var1) on <var1:AbstractCompiler(SeparateCompiler)> */
3727 var6
= var1
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___runtime_type_analysis
].val
; /* _runtime_type_analysis on <var1:AbstractCompiler(SeparateCompiler)> */
3734 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
3735 var11
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
3736 if (unlikely(var11
== NULL
)) {
3737 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
3738 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
3742 RET_LABEL10
:(void)0;
3746 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var9) on <var9:AbstractCompiler(SeparateCompiler)> */
3747 var14
= var9
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var9:AbstractCompiler(SeparateCompiler)> */
3748 if (unlikely(var14
== NULL
)) {
3749 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
3750 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
3754 RET_LABEL13
:(void)0;
3758 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var12) on <var12:ModelBuilder> */
3759 var17
= var12
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var12:ModelBuilder> */
3760 if (unlikely(var17
== NULL
)) {
3761 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3762 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
3766 RET_LABEL16
:(void)0;
3770 { /* Inline separate_compiler#ToolContext#opt_direct_call_monomorph (var15) on <var15:ToolContext> */
3771 var20
= var15
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_direct_call_monomorph
].val
; /* _opt_direct_call_monomorph on <var15:ToolContext> */
3772 if (unlikely(var20
== NULL
)) {
3773 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_direct_call_monomorph");
3774 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 50);
3778 RET_LABEL19
:(void)0;
3782 { /* Inline opts#Option#value (var18) on <var18:OptionBool> */
3783 var23
= var18
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var18:OptionBool> */
3785 RET_LABEL22
:(void)0;
3788 var24
= (short int)((long)(var21
)>>2);
3791 if (var_rta
== NULL
) {
3792 var25
= 0; /* is null */
3794 var25
= 1; /* arg is null and recv is not */
3797 { /* Inline kernel#Object#!= (var_rta,((val*)NULL)) on <var_rta:nullable RapidTypeAnalysis> */
3798 var_other
= ((val
*)NULL
);
3800 var28
= ((short int(*)(val
* self
, val
* p0
))(var_rta
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_rta
, var_other
); /* == on <var_rta:nullable RapidTypeAnalysis(RapidTypeAnalysis)>*/
3805 RET_LABEL27
:(void)0;
3816 { /* Inline typing#CallSite#mpropdef (var_callsite) on <var_callsite:CallSite> */
3817 var33
= var_callsite
->attrs
[COLOR_nit__typing__CallSite___mpropdef
].val
; /* _mpropdef on <var_callsite:CallSite> */
3818 if (unlikely(var33
== NULL
)) {
3819 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
3820 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 627);
3824 RET_LABEL32
:(void)0;
3828 { /* Inline model#MMethodDef#initializers (var31) on <var31:MMethodDef> */
3829 var36
= var31
->attrs
[COLOR_nit__model__MMethodDef___initializers
].val
; /* _initializers on <var31:MMethodDef> */
3830 if (unlikely(var36
== NULL
)) {
3831 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers");
3832 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2345);
3836 RET_LABEL35
:(void)0;
3840 var37
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var34
);
3848 var38
= nit___nit__RapidTypeAnalysis___live_targets(var_rta
, var_callsite
);
3852 var39
= ((long(*)(val
* self
))((((long)var_tgs
&3)?class_info
[((long)var_tgs
&3)]:var_tgs
->class)->vft
[COLOR_standard__abstract_collection__Collection__length
]))(var_tgs
); /* length on <var_tgs:Set[MMethodDef]>*/
3855 { /* Inline kernel#Int#== (var39,1l) on <var39:Int> */
3856 var42
= var39
== 1l;
3859 RET_LABEL41
:(void)0;
3864 var43
= ((val
*(*)(val
* self
))((((long)var_tgs
&3)?class_info
[((long)var_tgs
&3)]:var_tgs
->class)->vft
[COLOR_standard__abstract_collection__Collection__first
]))(var_tgs
); /* first on <var_tgs:Set[MMethodDef]>*/
3867 var44
= nit___nit__SeparateCompilerVisitor___direct_call(self
, var43
, var_args
);
3876 { /* Inline typing#CallSite#mpropdef (var_callsite) on <var_callsite:CallSite> */
3877 var48
= var_callsite
->attrs
[COLOR_nit__typing__CallSite___mpropdef
].val
; /* _mpropdef on <var_callsite:CallSite> */
3878 if (unlikely(var48
== NULL
)) {
3879 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
3880 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 627);
3884 RET_LABEL47
:(void)0;
3888 { /* Inline model#MMethodDef#is_intern (var46) on <var46:MMethodDef> */
3889 var51
= var46
->attrs
[COLOR_nit__model__MMethodDef___is_intern
].s
; /* _is_intern on <var46:MMethodDef> */
3891 RET_LABEL50
:(void)0;
3897 { /* Inline typing#CallSite#mproperty (var_callsite) on <var_callsite:CallSite> */
3898 var55
= var_callsite
->attrs
[COLOR_nit__typing__CallSite___mproperty
].val
; /* _mproperty on <var_callsite:CallSite> */
3899 if (unlikely(var55
== NULL
)) {
3900 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
3901 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 624);
3905 RET_LABEL54
:(void)0;
3909 { /* Inline model#MProperty#name (var53) on <var53:MMethod> */
3910 var58
= var53
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var53:MMethod> */
3911 if (unlikely(var58
== NULL
)) {
3912 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
3913 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1933);
3917 RET_LABEL57
:(void)0;
3920 if (likely(varonce
!=NULL
)) {
3923 var60
= "object_id";
3924 var61
= standard___standard__NativeString___to_s_with_length(var60
, 9l);
3929 { /* Inline kernel#Object#!= (var56,var59) on <var56:String> */
3932 var64
= ((short int(*)(val
* self
, val
* p0
))(var56
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var56
, var_other
); /* == on <var56:String>*/
3937 RET_LABEL63
:(void)0;
3946 { /* Inline typing#CallSite#mpropdef (var_callsite) on <var_callsite:CallSite> */
3947 var68
= var_callsite
->attrs
[COLOR_nit__typing__CallSite___mpropdef
].val
; /* _mpropdef on <var_callsite:CallSite> */
3948 if (unlikely(var68
== NULL
)) {
3949 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
3950 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 627);
3954 RET_LABEL67
:(void)0;
3958 var69
= nit___nit__SeparateCompilerVisitor___direct_call(self
, var66
, var_args
);
3965 var70
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
))(self
->class->vft
[COLOR_nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__compile_callsite
]))(self
, p0
, p1
); /* compile_callsite on <self:SeparateCompilerVisitor>*/
3972 /* method separate_compiler#SeparateCompilerVisitor#direct_call for (self: SeparateCompilerVisitor, MMethodDef, Array[RuntimeVariable]): nullable RuntimeVariable */
3973 val
* nit___nit__SeparateCompilerVisitor___direct_call(val
* self
, val
* p0
, val
* p1
) {
3974 val
* var
/* : nullable RuntimeVariable */;
3975 val
* var_mpropdef
/* var mpropdef: MMethodDef */;
3976 val
* var_args
/* var args: Array[RuntimeVariable] */;
3977 val
* var1
/* : MProperty */;
3978 val
* var3
/* : MProperty */;
3979 val
* var4
/* : nullable RuntimeVariable */;
3980 val
* var_res0
/* var res0: nullable RuntimeVariable */;
3981 val
* var5
/* : MClassDef */;
3982 val
* var7
/* : MClassDef */;
3983 val
* var8
/* : MClassType */;
3984 val
* var10
/* : MClassType */;
3985 val
* var11
/* : nullable RuntimeVariable */;
3986 val
* var_res
/* var res: nullable RuntimeVariable */;
3987 short int var12
/* : Bool */;
3988 short int var13
/* : Bool */;
3989 val
* var_other
/* var other: nullable Object */;
3990 short int var15
/* : Bool */;
3991 short int var16
/* : Bool */;
3992 short int var17
/* : Bool */;
3993 short int var18
/* : Bool */;
3994 short int var20
/* : Bool */;
3995 short int var21
/* : Bool */;
3996 static val
* varonce
;
3997 val
* var22
/* : String */;
3998 char* var23
/* : NativeString */;
3999 val
* var24
/* : FlatString */;
4003 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
4004 var3
= var_mpropdef
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:MMethodDef> */
4005 if (unlikely(var3
== NULL
)) {
4006 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
4007 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2212);
4015 var4
= nit___nit__SeparateCompilerVisitor___before_send(self
, var1
, var_args
);
4019 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:MMethodDef> */
4020 var7
= var_mpropdef
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mpropdef:MMethodDef> */
4021 if (unlikely(var7
== NULL
)) {
4022 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
4023 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
4031 { /* Inline model#MClassDef#bound_mtype (var5) on <var5:MClassDef> */
4032 var10
= var5
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var5:MClassDef> */
4033 if (unlikely(var10
== NULL
)) {
4034 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
4035 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 556);
4043 var11
= nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__call(self
, var_mpropdef
, var8
, var_args
);
4046 if (var_res0
== NULL
) {
4047 var12
= 0; /* is null */
4049 var12
= 1; /* arg is null and recv is not */
4052 { /* Inline kernel#Object#!= (var_res0,((val*)NULL)) on <var_res0:nullable RuntimeVariable> */
4053 var_other
= ((val
*)NULL
);
4055 var15
= ((short int(*)(val
* self
, val
* p0
))(var_res0
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res0
, var_other
); /* == on <var_res0:nullable RuntimeVariable(RuntimeVariable)>*/
4060 RET_LABEL14
:(void)0;
4065 if (var_res
== NULL
) {
4066 var17
= 0; /* is null */
4068 var17
= 1; /* arg is null and recv is not */
4071 { /* Inline kernel#Object#!= (var_res,((val*)NULL)) on <var_res:nullable RuntimeVariable> */
4072 var_other
= ((val
*)NULL
);
4074 var20
= ((short int(*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res
, var_other
); /* == on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
4079 RET_LABEL19
:(void)0;
4083 if (unlikely(!var17
)) {
4084 PRINT_ERROR("Runtime error: %s", "Assert failed");
4085 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1350);
4089 nit___nit__AbstractCompilerVisitor___assign(self
, var_res0
, var_res
); /* Direct call abstract_compiler#AbstractCompilerVisitor#assign on <self:SeparateCompilerVisitor>*/
4094 if (likely(varonce
!=NULL
)) {
4098 var24
= standard___standard__NativeString___to_s_with_length(var23
, 1l);
4103 nit___nit__AbstractCompilerVisitor___add(self
, var22
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4110 /* method separate_compiler#SeparateCompilerVisitor#send for (self: SeparateCompilerVisitor, MMethod, Array[RuntimeVariable]): nullable RuntimeVariable */
4111 val
* nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__send(val
* self
, val
* p0
, val
* p1
) {
4112 val
* var
/* : nullable RuntimeVariable */;
4113 val
* var_mmethod
/* var mmethod: MMethod */;
4114 val
* var_arguments
/* var arguments: Array[RuntimeVariable] */;
4115 val
* var1
/* : nullable Object */;
4116 val
* var2
/* : MType */;
4117 val
* var4
/* : MType */;
4118 short int var5
/* : Bool */;
4119 val
* var6
/* : AbstractCompiler */;
4120 val
* var8
/* : AbstractCompiler */;
4121 val
* var9
/* : MModule */;
4122 val
* var11
/* : MModule */;
4123 val
* var_m
/* var m: MModule */;
4124 val
* var12
/* : AbstractCompiler */;
4125 val
* var14
/* : AbstractCompiler */;
4126 val
* var15
/* : AbstractCompiler */;
4127 val
* var17
/* : AbstractCompiler */;
4128 val
* var18
/* : MModule */;
4129 val
* var20
/* : MModule */;
4130 val
* var22
/* : nullable Object */;
4131 val
* var23
/* : MType */;
4132 val
* var25
/* : MType */;
4133 val
* var26
/* : nullable RuntimeVariable */;
4134 val
* var_res
/* var res: nullable RuntimeVariable */;
4135 val
* var27
/* : AbstractCompiler */;
4136 val
* var29
/* : AbstractCompiler */;
4137 val
* var31
/* : nullable RuntimeVariable */;
4141 var1
= standard___standard__SequenceRead___Collection__first(var_arguments
);
4144 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var1) on <var1:nullable Object(RuntimeVariable)> */
4145 var4
= var1
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var1:nullable Object(RuntimeVariable)> */
4146 if (unlikely(var4
== NULL
)) {
4147 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
4148 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1787);
4156 var5
= ((short int(*)(val
* self
))(var2
->class->vft
[COLOR_nit__abstract_compiler__MType__is_c_primitive
]))(var2
); /* is_c_primitive on <var2:MType>*/
4160 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
4161 var8
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
4162 if (unlikely(var8
== NULL
)) {
4163 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
4164 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
4172 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var6) on <var6:AbstractCompiler(SeparateCompiler)> */
4173 var11
= var6
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var6:AbstractCompiler(SeparateCompiler)> */
4174 if (unlikely(var11
== NULL
)) {
4175 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
4176 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 515);
4180 RET_LABEL10
:(void)0;
4185 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
4186 var14
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
4187 if (unlikely(var14
== NULL
)) {
4188 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
4189 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
4193 RET_LABEL13
:(void)0;
4197 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
4198 var17
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
4199 if (unlikely(var17
== NULL
)) {
4200 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
4201 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
4205 RET_LABEL16
:(void)0;
4209 { /* Inline abstract_compiler#AbstractCompiler#realmainmodule (var15) on <var15:AbstractCompiler(SeparateCompiler)> */
4210 var20
= var15
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___realmainmodule
].val
; /* _realmainmodule on <var15:AbstractCompiler(SeparateCompiler)> */
4211 if (unlikely(var20
== NULL
)) {
4212 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _realmainmodule");
4213 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 519);
4217 RET_LABEL19
:(void)0;
4221 { /* Inline abstract_compiler#AbstractCompiler#mainmodule= (var12,var18) on <var12:AbstractCompiler(SeparateCompiler)> */
4222 var12
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
= var18
; /* _mainmodule on <var12:AbstractCompiler(SeparateCompiler)> */
4223 RET_LABEL21
:(void)0;
4227 var22
= standard___standard__SequenceRead___Collection__first(var_arguments
);
4230 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var22) on <var22:nullable Object(RuntimeVariable)> */
4231 var25
= var22
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var22:nullable Object(RuntimeVariable)> */
4232 if (unlikely(var25
== NULL
)) {
4233 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
4234 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1787);
4238 RET_LABEL24
:(void)0;
4242 var26
= nit___nit__AbstractCompilerVisitor___monomorphic_send(self
, var_mmethod
, var23
, var_arguments
);
4246 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
4247 var29
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
4248 if (unlikely(var29
== NULL
)) {
4249 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
4250 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
4254 RET_LABEL28
:(void)0;
4258 { /* Inline abstract_compiler#AbstractCompiler#mainmodule= (var27,var_m) on <var27:AbstractCompiler(SeparateCompiler)> */
4259 var27
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
= var_m
; /* _mainmodule on <var27:AbstractCompiler(SeparateCompiler)> */
4260 RET_LABEL30
:(void)0;
4268 var31
= nit___nit__SeparateCompilerVisitor___table_send(self
, var_mmethod
, var_arguments
, var_mmethod
);
4275 /* method separate_compiler#SeparateCompilerVisitor#before_send for (self: SeparateCompilerVisitor, MMethod, Array[RuntimeVariable]): nullable RuntimeVariable */
4276 val
* nit___nit__SeparateCompilerVisitor___before_send(val
* self
, val
* p0
, val
* p1
) {
4277 val
* var
/* : nullable RuntimeVariable */;
4278 val
* var_mmethod
/* var mmethod: MMethod */;
4279 val
* var_arguments
/* var arguments: Array[RuntimeVariable] */;
4280 val
* var_res
/* var res: nullable RuntimeVariable */;
4281 val
* var1
/* : nullable Object */;
4282 val
* var_recv
/* var recv: RuntimeVariable */;
4283 short int var2
/* : Bool */;
4284 short int var3
/* : Bool */;
4285 val
* var4
/* : AbstractCompiler */;
4286 val
* var6
/* : AbstractCompiler */;
4287 val
* var7
/* : ModelBuilder */;
4288 val
* var9
/* : ModelBuilder */;
4289 val
* var10
/* : ToolContext */;
4290 val
* var12
/* : ToolContext */;
4291 val
* var13
/* : OptionBool */;
4292 val
* var15
/* : OptionBool */;
4293 val
* var16
/* : nullable Object */;
4294 val
* var18
/* : nullable Object */;
4295 short int var19
/* : Bool */;
4296 short int var20
/* : Bool */;
4297 short int var_
/* var : Bool */;
4298 val
* var21
/* : String */;
4299 val
* var23
/* : String */;
4300 static val
* varonce
;
4301 val
* var24
/* : String */;
4302 char* var25
/* : NativeString */;
4303 val
* var26
/* : FlatString */;
4304 short int var27
/* : Bool */;
4305 short int var_28
/* var : Bool */;
4306 val
* var29
/* : String */;
4307 val
* var31
/* : String */;
4308 static val
* varonce32
;
4309 val
* var33
/* : String */;
4310 char* var34
/* : NativeString */;
4311 val
* var35
/* : FlatString */;
4312 short int var36
/* : Bool */;
4313 short int var_consider_null
/* var consider_null: Bool */;
4314 short int var37
/* : Bool */;
4315 short int var38
/* : Bool */;
4316 val
* var39
/* : MType */;
4317 val
* var41
/* : MType */;
4318 short int var42
/* : Bool */;
4321 short int var_43
/* var : Bool */;
4322 val
* var44
/* : MType */;
4323 val
* var46
/* : MType */;
4324 short int var47
/* : Bool */;
4327 short int var_50
/* var : Bool */;
4328 short int var_maybenull
/* var maybenull: Bool */;
4329 val
* var52
/* : NativeArray[String] */;
4330 static val
* varonce51
;
4331 static val
* varonce53
;
4332 val
* var54
/* : String */;
4333 char* var55
/* : NativeString */;
4334 val
* var56
/* : FlatString */;
4335 static val
* varonce57
;
4336 val
* var58
/* : String */;
4337 char* var59
/* : NativeString */;
4338 val
* var60
/* : FlatString */;
4339 val
* var61
/* : String */;
4340 val
* var62
/* : String */;
4341 short int var63
/* : Bool */;
4342 val
* var64
/* : String */;
4343 val
* var66
/* : String */;
4344 static val
* varonce67
;
4345 val
* var68
/* : String */;
4346 char* var69
/* : NativeString */;
4347 val
* var70
/* : FlatString */;
4348 short int var71
/* : Bool */;
4349 short int var_72
/* var : Bool */;
4350 val
* var73
/* : String */;
4351 val
* var75
/* : String */;
4352 static val
* varonce76
;
4353 val
* var77
/* : String */;
4354 char* var78
/* : NativeString */;
4355 val
* var79
/* : FlatString */;
4356 short int var80
/* : Bool */;
4357 val
* var81
/* : MClassType */;
4358 val
* var82
/* : RuntimeVariable */;
4359 val
* var83
/* : nullable Object */;
4360 val
* var_arg
/* var arg: RuntimeVariable */;
4361 val
* var84
/* : MType */;
4362 val
* var86
/* : MType */;
4363 short int var87
/* : Bool */;
4366 val
* var91
/* : NativeArray[String] */;
4367 static val
* varonce90
;
4368 static val
* varonce92
;
4369 val
* var93
/* : String */;
4370 char* var94
/* : NativeString */;
4371 val
* var95
/* : FlatString */;
4372 static val
* varonce96
;
4373 val
* var97
/* : String */;
4374 char* var98
/* : NativeString */;
4375 val
* var99
/* : FlatString */;
4376 val
* var100
/* : String */;
4377 val
* var101
/* : String */;
4378 val
* var102
/* : String */;
4379 val
* var103
/* : MType */;
4380 val
* var105
/* : MType */;
4381 short int var106
/* : Bool */;
4384 val
* var110
/* : NativeArray[String] */;
4385 static val
* varonce109
;
4386 static val
* varonce111
;
4387 val
* var112
/* : String */;
4388 char* var113
/* : NativeString */;
4389 val
* var114
/* : FlatString */;
4390 val
* var115
/* : String */;
4391 val
* var116
/* : String */;
4392 val
* var118
/* : NativeArray[String] */;
4393 static val
* varonce117
;
4394 static val
* varonce119
;
4395 val
* var120
/* : String */;
4396 char* var121
/* : NativeString */;
4397 val
* var122
/* : FlatString */;
4398 static val
* varonce123
;
4399 val
* var124
/* : String */;
4400 char* var125
/* : NativeString */;
4401 val
* var126
/* : FlatString */;
4402 val
* var127
/* : String */;
4403 val
* var128
/* : String */;
4404 val
* var129
/* : String */;
4405 val
* var130
/* : String */;
4406 val
* var132
/* : String */;
4407 static val
* varonce133
;
4408 val
* var134
/* : String */;
4409 char* var135
/* : NativeString */;
4410 val
* var136
/* : FlatString */;
4411 short int var137
/* : Bool */;
4412 val
* var138
/* : MClassType */;
4413 val
* var139
/* : RuntimeVariable */;
4414 val
* var140
/* : nullable Object */;
4415 val
* var_arg141
/* var arg: RuntimeVariable */;
4416 val
* var142
/* : MType */;
4417 val
* var144
/* : MType */;
4418 short int var145
/* : Bool */;
4421 val
* var149
/* : NativeArray[String] */;
4422 static val
* varonce148
;
4423 static val
* varonce150
;
4424 val
* var151
/* : String */;
4425 char* var152
/* : NativeString */;
4426 val
* var153
/* : FlatString */;
4427 static val
* varonce154
;
4428 val
* var155
/* : String */;
4429 char* var156
/* : NativeString */;
4430 val
* var157
/* : FlatString */;
4431 val
* var158
/* : String */;
4432 val
* var159
/* : String */;
4433 val
* var160
/* : String */;
4434 val
* var161
/* : MType */;
4435 val
* var163
/* : MType */;
4436 short int var164
/* : Bool */;
4439 val
* var168
/* : NativeArray[String] */;
4440 static val
* varonce167
;
4441 static val
* varonce169
;
4442 val
* var170
/* : String */;
4443 char* var171
/* : NativeString */;
4444 val
* var172
/* : FlatString */;
4445 val
* var173
/* : String */;
4446 val
* var174
/* : String */;
4447 val
* var176
/* : NativeArray[String] */;
4448 static val
* varonce175
;
4449 static val
* varonce177
;
4450 val
* var178
/* : String */;
4451 char* var179
/* : NativeString */;
4452 val
* var180
/* : FlatString */;
4453 static val
* varonce181
;
4454 val
* var182
/* : String */;
4455 char* var183
/* : NativeString */;
4456 val
* var184
/* : FlatString */;
4457 val
* var185
/* : String */;
4458 val
* var186
/* : String */;
4459 val
* var187
/* : String */;
4460 static val
* varonce188
;
4461 val
* var189
/* : String */;
4462 char* var190
/* : NativeString */;
4463 val
* var191
/* : FlatString */;
4464 static val
* varonce192
;
4465 val
* var193
/* : String */;
4466 char* var194
/* : NativeString */;
4467 val
* var195
/* : FlatString */;
4468 static val
* varonce196
;
4469 val
* var197
/* : String */;
4470 char* var198
/* : NativeString */;
4471 val
* var199
/* : FlatString */;
4472 short int var200
/* : Bool */;
4473 val
* var201
/* : AbstractCompiler */;
4474 val
* var203
/* : AbstractCompiler */;
4475 val
* var204
/* : ModelBuilder */;
4476 val
* var206
/* : ModelBuilder */;
4477 val
* var207
/* : ToolContext */;
4478 val
* var209
/* : ToolContext */;
4479 val
* var210
/* : OptionBool */;
4480 val
* var212
/* : OptionBool */;
4481 val
* var213
/* : nullable Object */;
4482 val
* var215
/* : nullable Object */;
4483 short int var216
/* : Bool */;
4484 short int var217
/* : Bool */;
4485 short int var_218
/* var : Bool */;
4486 short int var219
/* : Bool */;
4487 short int var220
/* : Bool */;
4488 val
* var221
/* : String */;
4489 val
* var223
/* : String */;
4490 static val
* varonce224
;
4491 val
* var225
/* : String */;
4492 char* var226
/* : NativeString */;
4493 val
* var227
/* : FlatString */;
4494 short int var228
/* : Bool */;
4495 short int var_229
/* var : Bool */;
4496 val
* var230
/* : String */;
4497 val
* var232
/* : String */;
4498 static val
* varonce233
;
4499 val
* var234
/* : String */;
4500 char* var235
/* : NativeString */;
4501 val
* var236
/* : FlatString */;
4502 short int var237
/* : Bool */;
4503 short int var_238
/* var : Bool */;
4504 val
* var239
/* : String */;
4505 val
* var241
/* : String */;
4506 static val
* varonce242
;
4507 val
* var243
/* : String */;
4508 char* var244
/* : NativeString */;
4509 val
* var245
/* : FlatString */;
4510 short int var246
/* : Bool */;
4511 val
* var247
/* : nullable Object */;
4512 val
* var_arg248
/* var arg: RuntimeVariable */;
4513 val
* var249
/* : MType */;
4514 val
* var251
/* : MType */;
4515 short int var252
/* : Bool */;
4518 short int var255
/* : Bool */;
4519 short int var256
/* : Bool */;
4520 val
* var_other
/* var other: nullable Object */;
4521 short int var258
/* : Bool */;
4522 short int var260
/* : Bool */;
4523 val
* var261
/* : MClassType */;
4524 val
* var262
/* : RuntimeVariable */;
4525 val
* var263
/* : String */;
4526 val
* var265
/* : String */;
4527 static val
* varonce266
;
4528 val
* var267
/* : String */;
4529 char* var268
/* : NativeString */;
4530 val
* var269
/* : FlatString */;
4531 short int var270
/* : Bool */;
4532 val
* var272
/* : NativeArray[String] */;
4533 static val
* varonce271
;
4534 static val
* varonce273
;
4535 val
* var274
/* : String */;
4536 char* var275
/* : NativeString */;
4537 val
* var276
/* : FlatString */;
4538 val
* var277
/* : String */;
4539 val
* var278
/* : String */;
4540 val
* var280
/* : NativeArray[String] */;
4541 static val
* varonce279
;
4542 static val
* varonce281
;
4543 val
* var282
/* : String */;
4544 char* var283
/* : NativeString */;
4545 val
* var284
/* : FlatString */;
4546 val
* var285
/* : String */;
4547 val
* var286
/* : String */;
4548 static val
* varonce287
;
4549 val
* var288
/* : String */;
4550 char* var289
/* : NativeString */;
4551 val
* var290
/* : FlatString */;
4552 static val
* varonce291
;
4553 val
* var292
/* : String */;
4554 char* var293
/* : NativeString */;
4555 val
* var294
/* : FlatString */;
4558 var_res
= ((val
*)NULL
);
4560 var1
= standard___standard__SequenceRead___Collection__first(var_arguments
);
4564 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
4565 var6
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
4566 if (unlikely(var6
== NULL
)) {
4567 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
4568 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
4576 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var4) on <var4:AbstractCompiler(SeparateCompiler)> */
4577 var9
= var4
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var4:AbstractCompiler(SeparateCompiler)> */
4578 if (unlikely(var9
== NULL
)) {
4579 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
4580 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
4588 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var7) on <var7:ModelBuilder> */
4589 var12
= var7
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var7:ModelBuilder> */
4590 if (unlikely(var12
== NULL
)) {
4591 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
4592 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
4596 RET_LABEL11
:(void)0;
4600 { /* Inline abstract_compiler#ToolContext#opt_no_check_null (var10) on <var10:ToolContext> */
4601 var15
= var10
->attrs
[COLOR_nit__abstract_compiler__ToolContext___opt_no_check_null
].val
; /* _opt_no_check_null on <var10:ToolContext> */
4602 if (unlikely(var15
== NULL
)) {
4603 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_check_null");
4604 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 56);
4608 RET_LABEL14
:(void)0;
4612 { /* Inline opts#Option#value (var13) on <var13:OptionBool> */
4613 var18
= var13
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var13:OptionBool> */
4615 RET_LABEL17
:(void)0;
4618 var19
= (short int)((long)(var16
)>>2);
4625 { /* Inline model#MProperty#name (var_mmethod) on <var_mmethod:MMethod> */
4626 var23
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var_mmethod:MMethod> */
4627 if (unlikely(var23
== NULL
)) {
4628 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
4629 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1933);
4633 RET_LABEL22
:(void)0;
4636 if (likely(varonce
!=NULL
)) {
4640 var26
= standard___standard__NativeString___to_s_with_length(var25
, 2l);
4645 var27
= ((short int(*)(val
* self
, val
* p0
))(var21
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var21
, var24
); /* == on <var21:String>*/
4654 { /* Inline model#MProperty#name (var_mmethod) on <var_mmethod:MMethod> */
4655 var31
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var_mmethod:MMethod> */
4656 if (unlikely(var31
== NULL
)) {
4657 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
4658 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1933);
4662 RET_LABEL30
:(void)0;
4665 if (likely(varonce32
!=NULL
)) {
4669 var35
= standard___standard__NativeString___to_s_with_length(var34
, 2l);
4674 var36
= ((short int(*)(val
* self
, val
* p0
))(var29
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var29
, var33
); /* == on <var29:String>*/
4678 var_consider_null
= var2
;
4680 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_recv) on <var_recv:RuntimeVariable> */
4681 var41
= var_recv
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_recv:RuntimeVariable> */
4682 if (unlikely(var41
== NULL
)) {
4683 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
4684 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1787);
4688 RET_LABEL40
:(void)0;
4691 /* <var39:MType> isa MNullableType */
4692 cltype
= type_nit__MNullableType
.color
;
4693 idtype
= type_nit__MNullableType
.id
;
4694 if(cltype
>= var39
->type
->table_size
) {
4697 var42
= var39
->type
->type_table
[cltype
] == idtype
;
4704 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_recv) on <var_recv:RuntimeVariable> */
4705 var46
= var_recv
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_recv:RuntimeVariable> */
4706 if (unlikely(var46
== NULL
)) {
4707 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
4708 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1787);
4712 RET_LABEL45
:(void)0;
4715 /* <var44:MType> isa MNullType */
4716 cltype48
= type_nit__MNullType
.color
;
4717 idtype49
= type_nit__MNullType
.id
;
4718 if(cltype48
>= var44
->type
->table_size
) {
4721 var47
= var44
->type
->type_table
[cltype48
] == idtype49
;
4727 var37
= var_consider_null
;
4731 var_maybenull
= var37
;
4733 if (unlikely(varonce51
==NULL
)) {
4734 var52
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
4735 if (likely(varonce53
!=NULL
)) {
4739 var56
= standard___standard__NativeString___to_s_with_length(var55
, 4l);
4743 ((struct instance_standard__NativeArray
*)var52
)->values
[0]=var54
;
4744 if (likely(varonce57
!=NULL
)) {
4747 var59
= " == NULL) {";
4748 var60
= standard___standard__NativeString___to_s_with_length(var59
, 11l);
4752 ((struct instance_standard__NativeArray
*)var52
)->values
[2]=var58
;
4758 var61
= ((val
*(*)(val
* self
))(var_recv
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_recv
); /* to_s on <var_recv:RuntimeVariable>*/
4760 ((struct instance_standard__NativeArray
*)var52
)->values
[1]=var61
;
4762 var62
= ((val
*(*)(val
* self
))(var52
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var52
); /* native_to_s on <var52:NativeArray[String]>*/
4766 nit___nit__AbstractCompilerVisitor___add(self
, var62
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4769 { /* Inline model#MProperty#name (var_mmethod) on <var_mmethod:MMethod> */
4770 var66
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var_mmethod:MMethod> */
4771 if (unlikely(var66
== NULL
)) {
4772 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
4773 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1933);
4777 RET_LABEL65
:(void)0;
4780 if (likely(varonce67
!=NULL
)) {
4784 var70
= standard___standard__NativeString___to_s_with_length(var69
, 2l);
4789 var71
= ((short int(*)(val
* self
, val
* p0
))(var64
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var64
, var68
); /* == on <var64:String>*/
4796 { /* Inline model#MProperty#name (var_mmethod) on <var_mmethod:MMethod> */
4797 var75
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var_mmethod:MMethod> */
4798 if (unlikely(var75
== NULL
)) {
4799 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
4800 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1933);
4804 RET_LABEL74
:(void)0;
4807 if (likely(varonce76
!=NULL
)) {
4810 var78
= "is_same_instance";
4811 var79
= standard___standard__NativeString___to_s_with_length(var78
, 16l);
4816 var80
= ((short int(*)(val
* self
, val
* p0
))(var73
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var73
, var77
); /* == on <var73:String>*/
4822 var81
= nit___nit__AbstractCompilerVisitor___bool_type(self
);
4825 var82
= nit___nit__AbstractCompilerVisitor___new_var(self
, var81
);
4829 var83
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments
, 1l);
4833 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_arg) on <var_arg:RuntimeVariable> */
4834 var86
= var_arg
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_arg:RuntimeVariable> */
4835 if (unlikely(var86
== NULL
)) {
4836 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
4837 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1787);
4841 RET_LABEL85
:(void)0;
4844 /* <var84:MType> isa MNullableType */
4845 cltype88
= type_nit__MNullableType
.color
;
4846 idtype89
= type_nit__MNullableType
.id
;
4847 if(cltype88
>= var84
->type
->table_size
) {
4850 var87
= var84
->type
->type_table
[cltype88
] == idtype89
;
4853 if (unlikely(varonce90
==NULL
)) {
4854 var91
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
4855 if (likely(varonce92
!=NULL
)) {
4859 var95
= standard___standard__NativeString___to_s_with_length(var94
, 4l);
4863 ((struct instance_standard__NativeArray
*)var91
)->values
[1]=var93
;
4864 if (likely(varonce96
!=NULL
)) {
4867 var98
= " == NULL);";
4868 var99
= standard___standard__NativeString___to_s_with_length(var98
, 10l);
4872 ((struct instance_standard__NativeArray
*)var91
)->values
[3]=var97
;
4878 var100
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
4880 ((struct instance_standard__NativeArray
*)var91
)->values
[0]=var100
;
4882 var101
= ((val
*(*)(val
* self
))(var_arg
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_arg
); /* to_s on <var_arg:RuntimeVariable>*/
4884 ((struct instance_standard__NativeArray
*)var91
)->values
[2]=var101
;
4886 var102
= ((val
*(*)(val
* self
))(var91
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var91
); /* native_to_s on <var91:NativeArray[String]>*/
4890 nit___nit__AbstractCompilerVisitor___add(self
, var102
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4894 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_arg) on <var_arg:RuntimeVariable> */
4895 var105
= var_arg
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_arg:RuntimeVariable> */
4896 if (unlikely(var105
== NULL
)) {
4897 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
4898 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1787);
4902 RET_LABEL104
:(void)0;
4905 /* <var103:MType> isa MNullType */
4906 cltype107
= type_nit__MNullType
.color
;
4907 idtype108
= type_nit__MNullType
.id
;
4908 if(cltype107
>= var103
->type
->table_size
) {
4911 var106
= var103
->type
->type_table
[cltype107
] == idtype108
;
4914 if (unlikely(varonce109
==NULL
)) {
4915 var110
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
4916 if (likely(varonce111
!=NULL
)) {
4917 var112
= varonce111
;
4919 var113
= " = 1; /* is null */";
4920 var114
= standard___standard__NativeString___to_s_with_length(var113
, 19l);
4922 varonce111
= var112
;
4924 ((struct instance_standard__NativeArray
*)var110
)->values
[1]=var112
;
4926 var110
= varonce109
;
4930 var115
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
4932 ((struct instance_standard__NativeArray
*)var110
)->values
[0]=var115
;
4934 var116
= ((val
*(*)(val
* self
))(var110
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var110
); /* native_to_s on <var110:NativeArray[String]>*/
4936 varonce109
= var110
;
4938 nit___nit__AbstractCompilerVisitor___add(self
, var116
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4941 if (unlikely(varonce117
==NULL
)) {
4942 var118
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
4943 if (likely(varonce119
!=NULL
)) {
4944 var120
= varonce119
;
4946 var121
= " = 0; /* ";
4947 var122
= standard___standard__NativeString___to_s_with_length(var121
, 9l);
4949 varonce119
= var120
;
4951 ((struct instance_standard__NativeArray
*)var118
)->values
[1]=var120
;
4952 if (likely(varonce123
!=NULL
)) {
4953 var124
= varonce123
;
4955 var125
= " cannot be null */";
4956 var126
= standard___standard__NativeString___to_s_with_length(var125
, 18l);
4958 varonce123
= var124
;
4960 ((struct instance_standard__NativeArray
*)var118
)->values
[3]=var124
;
4962 var118
= varonce117
;
4966 var127
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
4968 ((struct instance_standard__NativeArray
*)var118
)->values
[0]=var127
;
4970 var128
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var_arg
);
4972 ((struct instance_standard__NativeArray
*)var118
)->values
[2]=var128
;
4974 var129
= ((val
*(*)(val
* self
))(var118
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var118
); /* native_to_s on <var118:NativeArray[String]>*/
4976 varonce117
= var118
;
4978 nit___nit__AbstractCompilerVisitor___add(self
, var129
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4984 { /* Inline model#MProperty#name (var_mmethod) on <var_mmethod:MMethod> */
4985 var132
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var_mmethod:MMethod> */
4986 if (unlikely(var132
== NULL
)) {
4987 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
4988 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1933);
4992 RET_LABEL131
:(void)0;
4995 if (likely(varonce133
!=NULL
)) {
4996 var134
= varonce133
;
4999 var136
= standard___standard__NativeString___to_s_with_length(var135
, 2l);
5001 varonce133
= var134
;
5004 var137
= ((short int(*)(val
* self
, val
* p0
))(var130
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var130
, var134
); /* == on <var130:String>*/
5008 var138
= nit___nit__AbstractCompilerVisitor___bool_type(self
);
5011 var139
= nit___nit__AbstractCompilerVisitor___new_var(self
, var138
);
5015 var140
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments
, 1l);
5017 var_arg141
= var140
;
5019 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_arg141) on <var_arg141:RuntimeVariable> */
5020 var144
= var_arg141
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_arg141:RuntimeVariable> */
5021 if (unlikely(var144
== NULL
)) {
5022 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
5023 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1787);
5027 RET_LABEL143
:(void)0;
5030 /* <var142:MType> isa MNullableType */
5031 cltype146
= type_nit__MNullableType
.color
;
5032 idtype147
= type_nit__MNullableType
.id
;
5033 if(cltype146
>= var142
->type
->table_size
) {
5036 var145
= var142
->type
->type_table
[cltype146
] == idtype147
;
5039 if (unlikely(varonce148
==NULL
)) {
5040 var149
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
5041 if (likely(varonce150
!=NULL
)) {
5042 var151
= varonce150
;
5045 var153
= standard___standard__NativeString___to_s_with_length(var152
, 4l);
5047 varonce150
= var151
;
5049 ((struct instance_standard__NativeArray
*)var149
)->values
[1]=var151
;
5050 if (likely(varonce154
!=NULL
)) {
5051 var155
= varonce154
;
5053 var156
= " != NULL);";
5054 var157
= standard___standard__NativeString___to_s_with_length(var156
, 10l);
5056 varonce154
= var155
;
5058 ((struct instance_standard__NativeArray
*)var149
)->values
[3]=var155
;
5060 var149
= varonce148
;
5064 var158
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
5066 ((struct instance_standard__NativeArray
*)var149
)->values
[0]=var158
;
5068 var159
= ((val
*(*)(val
* self
))(var_arg141
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_arg141
); /* to_s on <var_arg141:RuntimeVariable>*/
5070 ((struct instance_standard__NativeArray
*)var149
)->values
[2]=var159
;
5072 var160
= ((val
*(*)(val
* self
))(var149
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var149
); /* native_to_s on <var149:NativeArray[String]>*/
5074 varonce148
= var149
;
5076 nit___nit__AbstractCompilerVisitor___add(self
, var160
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5080 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_arg141) on <var_arg141:RuntimeVariable> */
5081 var163
= var_arg141
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_arg141:RuntimeVariable> */
5082 if (unlikely(var163
== NULL
)) {
5083 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
5084 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1787);
5088 RET_LABEL162
:(void)0;
5091 /* <var161:MType> isa MNullType */
5092 cltype165
= type_nit__MNullType
.color
;
5093 idtype166
= type_nit__MNullType
.id
;
5094 if(cltype165
>= var161
->type
->table_size
) {
5097 var164
= var161
->type
->type_table
[cltype165
] == idtype166
;
5100 if (unlikely(varonce167
==NULL
)) {
5101 var168
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
5102 if (likely(varonce169
!=NULL
)) {
5103 var170
= varonce169
;
5105 var171
= " = 0; /* is null */";
5106 var172
= standard___standard__NativeString___to_s_with_length(var171
, 19l);
5108 varonce169
= var170
;
5110 ((struct instance_standard__NativeArray
*)var168
)->values
[1]=var170
;
5112 var168
= varonce167
;
5116 var173
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
5118 ((struct instance_standard__NativeArray
*)var168
)->values
[0]=var173
;
5120 var174
= ((val
*(*)(val
* self
))(var168
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var168
); /* native_to_s on <var168:NativeArray[String]>*/
5122 varonce167
= var168
;
5124 nit___nit__AbstractCompilerVisitor___add(self
, var174
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5127 if (unlikely(varonce175
==NULL
)) {
5128 var176
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
5129 if (likely(varonce177
!=NULL
)) {
5130 var178
= varonce177
;
5132 var179
= " = 1; /* ";
5133 var180
= standard___standard__NativeString___to_s_with_length(var179
, 9l);
5135 varonce177
= var178
;
5137 ((struct instance_standard__NativeArray
*)var176
)->values
[1]=var178
;
5138 if (likely(varonce181
!=NULL
)) {
5139 var182
= varonce181
;
5141 var183
= " cannot be null */";
5142 var184
= standard___standard__NativeString___to_s_with_length(var183
, 18l);
5144 varonce181
= var182
;
5146 ((struct instance_standard__NativeArray
*)var176
)->values
[3]=var182
;
5148 var176
= varonce175
;
5152 var185
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
5154 ((struct instance_standard__NativeArray
*)var176
)->values
[0]=var185
;
5156 var186
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var_arg141
);
5158 ((struct instance_standard__NativeArray
*)var176
)->values
[2]=var186
;
5160 var187
= ((val
*(*)(val
* self
))(var176
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var176
); /* native_to_s on <var176:NativeArray[String]>*/
5162 varonce175
= var176
;
5164 nit___nit__AbstractCompilerVisitor___add(self
, var187
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5169 if (likely(varonce188
!=NULL
)) {
5170 var189
= varonce188
;
5172 var190
= "Receiver is null";
5173 var191
= standard___standard__NativeString___to_s_with_length(var190
, 16l);
5175 varonce188
= var189
;
5178 nit___nit__AbstractCompilerVisitor___add_abort(self
, var189
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on <self:SeparateCompilerVisitor>*/
5182 if (likely(varonce192
!=NULL
)) {
5183 var193
= varonce192
;
5185 var194
= "} else {";
5186 var195
= standard___standard__NativeString___to_s_with_length(var194
, 8l);
5188 varonce192
= var193
;
5191 nit___nit__AbstractCompilerVisitor___add(self
, var193
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5194 if (likely(varonce196
!=NULL
)) {
5195 var197
= varonce196
;
5198 var199
= standard___standard__NativeString___to_s_with_length(var198
, 1l);
5200 varonce196
= var197
;
5203 nit___nit__AbstractCompilerVisitor___add(self
, var197
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5207 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
5208 var203
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
5209 if (unlikely(var203
== NULL
)) {
5210 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5211 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
5215 RET_LABEL202
:(void)0;
5219 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var201) on <var201:AbstractCompiler(SeparateCompiler)> */
5220 var206
= var201
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var201:AbstractCompiler(SeparateCompiler)> */
5221 if (unlikely(var206
== NULL
)) {
5222 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
5223 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
5227 RET_LABEL205
:(void)0;
5231 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var204) on <var204:ModelBuilder> */
5232 var209
= var204
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var204:ModelBuilder> */
5233 if (unlikely(var209
== NULL
)) {
5234 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
5235 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
5239 RET_LABEL208
:(void)0;
5243 { /* Inline separate_compiler#ToolContext#opt_no_shortcut_equate (var207) on <var207:ToolContext> */
5244 var212
= var207
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_no_shortcut_equate
].val
; /* _opt_no_shortcut_equate on <var207:ToolContext> */
5245 if (unlikely(var212
== NULL
)) {
5246 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_shortcut_equate");
5247 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 30);
5251 RET_LABEL211
:(void)0;
5255 { /* Inline opts#Option#value (var210) on <var210:OptionBool> */
5256 var215
= var210
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var210:OptionBool> */
5258 RET_LABEL214
:(void)0;
5261 var216
= (short int)((long)(var213
)>>2);
5266 { /* Inline model#MProperty#name (var_mmethod) on <var_mmethod:MMethod> */
5267 var223
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var_mmethod:MMethod> */
5268 if (unlikely(var223
== NULL
)) {
5269 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
5270 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1933);
5274 RET_LABEL222
:(void)0;
5277 if (likely(varonce224
!=NULL
)) {
5278 var225
= varonce224
;
5281 var227
= standard___standard__NativeString___to_s_with_length(var226
, 2l);
5283 varonce224
= var225
;
5286 var228
= ((short int(*)(val
* self
, val
* p0
))(var221
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var221
, var225
); /* == on <var221:String>*/
5293 { /* Inline model#MProperty#name (var_mmethod) on <var_mmethod:MMethod> */
5294 var232
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var_mmethod:MMethod> */
5295 if (unlikely(var232
== NULL
)) {
5296 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
5297 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1933);
5301 RET_LABEL231
:(void)0;
5304 if (likely(varonce233
!=NULL
)) {
5305 var234
= varonce233
;
5308 var236
= standard___standard__NativeString___to_s_with_length(var235
, 2l);
5310 varonce233
= var234
;
5313 var237
= ((short int(*)(val
* self
, val
* p0
))(var230
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var230
, var234
); /* == on <var230:String>*/
5322 { /* Inline model#MProperty#name (var_mmethod) on <var_mmethod:MMethod> */
5323 var241
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var_mmethod:MMethod> */
5324 if (unlikely(var241
== NULL
)) {
5325 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
5326 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1933);
5330 RET_LABEL240
:(void)0;
5333 if (likely(varonce242
!=NULL
)) {
5334 var243
= varonce242
;
5336 var244
= "is_same_instance";
5337 var245
= standard___standard__NativeString___to_s_with_length(var244
, 16l);
5339 varonce242
= var243
;
5342 var246
= ((short int(*)(val
* self
, val
* p0
))(var239
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var239
, var243
); /* == on <var239:String>*/
5352 var247
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments
, 1l);
5354 var_arg248
= var247
;
5356 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_arg248) on <var_arg248:RuntimeVariable> */
5357 var251
= var_arg248
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_arg248:RuntimeVariable> */
5358 if (unlikely(var251
== NULL
)) {
5359 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
5360 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1787);
5364 RET_LABEL250
:(void)0;
5367 /* <var249:MType> isa MNullType */
5368 cltype253
= type_nit__MNullType
.color
;
5369 idtype254
= type_nit__MNullType
.id
;
5370 if(cltype253
>= var249
->type
->table_size
) {
5373 var252
= var249
->type
->type_table
[cltype253
] == idtype254
;
5376 if (var_res
== NULL
) {
5377 var255
= 1; /* is null */
5379 var255
= 0; /* arg is null but recv is not */
5382 { /* Inline kernel#Object#== (var_res,((val*)NULL)) on <var_res:nullable RuntimeVariable> */
5383 var_other
= ((val
*)NULL
);
5385 { /* Inline kernel#Object#is_same_instance (var_res,var_other) on <var_res:nullable RuntimeVariable(RuntimeVariable)> */
5386 var260
= var_res
== var_other
;
5389 RET_LABEL259
:(void)0;
5394 RET_LABEL257
:(void)0;
5400 var261
= nit___nit__AbstractCompilerVisitor___bool_type(self
);
5403 var262
= nit___nit__AbstractCompilerVisitor___new_var(self
, var261
);
5409 { /* Inline model#MProperty#name (var_mmethod) on <var_mmethod:MMethod> */
5410 var265
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var_mmethod:MMethod> */
5411 if (unlikely(var265
== NULL
)) {
5412 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
5413 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1933);
5417 RET_LABEL264
:(void)0;
5420 if (likely(varonce266
!=NULL
)) {
5421 var267
= varonce266
;
5424 var269
= standard___standard__NativeString___to_s_with_length(var268
, 2l);
5426 varonce266
= var267
;
5429 var270
= ((short int(*)(val
* self
, val
* p0
))(var263
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var263
, var267
); /* == on <var263:String>*/
5432 if (unlikely(varonce271
==NULL
)) {
5433 var272
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
5434 if (likely(varonce273
!=NULL
)) {
5435 var274
= varonce273
;
5437 var275
= " = 1; /* arg is null and recv is not */";
5438 var276
= standard___standard__NativeString___to_s_with_length(var275
, 39l);
5440 varonce273
= var274
;
5442 ((struct instance_standard__NativeArray
*)var272
)->values
[1]=var274
;
5444 var272
= varonce271
;
5448 var277
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
5450 ((struct instance_standard__NativeArray
*)var272
)->values
[0]=var277
;
5452 var278
= ((val
*(*)(val
* self
))(var272
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var272
); /* native_to_s on <var272:NativeArray[String]>*/
5454 varonce271
= var272
;
5456 nit___nit__AbstractCompilerVisitor___add(self
, var278
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5459 if (unlikely(varonce279
==NULL
)) {
5460 var280
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
5461 if (likely(varonce281
!=NULL
)) {
5462 var282
= varonce281
;
5464 var283
= " = 0; /* arg is null but recv is not */";
5465 var284
= standard___standard__NativeString___to_s_with_length(var283
, 39l);
5467 varonce281
= var282
;
5469 ((struct instance_standard__NativeArray
*)var280
)->values
[1]=var282
;
5471 var280
= varonce279
;
5475 var285
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
5477 ((struct instance_standard__NativeArray
*)var280
)->values
[0]=var285
;
5479 var286
= ((val
*(*)(val
* self
))(var280
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var280
); /* native_to_s on <var280:NativeArray[String]>*/
5481 varonce279
= var280
;
5483 nit___nit__AbstractCompilerVisitor___add(self
, var286
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5486 if (likely(varonce287
!=NULL
)) {
5487 var288
= varonce287
;
5490 var290
= standard___standard__NativeString___to_s_with_length(var289
, 1l);
5492 varonce287
= var288
;
5495 nit___nit__AbstractCompilerVisitor___add(self
, var288
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5497 if (likely(varonce291
!=NULL
)) {
5498 var292
= varonce291
;
5500 var293
= "if (0) {";
5501 var294
= standard___standard__NativeString___to_s_with_length(var293
, 8l);
5503 varonce291
= var292
;
5506 nit___nit__AbstractCompilerVisitor___add(self
, var292
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5517 /* method separate_compiler#SeparateCompilerVisitor#table_send for (self: SeparateCompilerVisitor, MMethod, Array[RuntimeVariable], MEntity): nullable RuntimeVariable */
5518 val
* nit___nit__SeparateCompilerVisitor___table_send(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
5519 val
* var
/* : nullable RuntimeVariable */;
5520 val
* var_mmethod
/* var mmethod: MMethod */;
5521 val
* var_arguments
/* var arguments: Array[RuntimeVariable] */;
5522 val
* var_mentity
/* var mentity: MEntity */;
5523 val
* var1
/* : AbstractCompiler */;
5524 val
* var3
/* : AbstractCompiler */;
5525 val
* var4
/* : ModelBuilder */;
5526 val
* var6
/* : ModelBuilder */;
5527 val
* var_
/* var : ModelBuilder */;
5528 long var7
/* : Int */;
5529 long var9
/* : Int */;
5530 long var10
/* : Int */;
5531 short int var12
/* : Bool */;
5534 const char* var_class_name
;
5535 long var13
/* : Int */;
5536 val
* var15
/* : AbstractCompiler */;
5537 val
* var17
/* : AbstractCompiler */;
5538 val
* var18
/* : ModelBuilder */;
5539 val
* var20
/* : ModelBuilder */;
5540 val
* var21
/* : ToolContext */;
5541 val
* var23
/* : ToolContext */;
5542 val
* var24
/* : OptionBool */;
5543 val
* var26
/* : OptionBool */;
5544 val
* var27
/* : nullable Object */;
5545 val
* var29
/* : nullable Object */;
5546 short int var30
/* : Bool */;
5547 static val
* varonce
;
5548 val
* var31
/* : String */;
5549 char* var32
/* : NativeString */;
5550 val
* var33
/* : FlatString */;
5551 long var34
/* : Int */;
5552 long var36
/* : Int */;
5553 val
* var37
/* : MPropDef */;
5554 val
* var39
/* : MPropDef */;
5555 val
* var40
/* : nullable MSignature */;
5556 val
* var42
/* : nullable MSignature */;
5557 long var43
/* : Int */;
5558 long var44
/* : Int */;
5559 short int var46
/* : Bool */;
5562 const char* var_class_name49
;
5563 long var50
/* : Int */;
5564 short int var51
/* : Bool */;
5565 short int var53
/* : Bool */;
5566 val
* var55
/* : NativeArray[String] */;
5567 static val
* varonce54
;
5568 static val
* varonce56
;
5569 val
* var57
/* : String */;
5570 char* var58
/* : NativeString */;
5571 val
* var59
/* : FlatString */;
5572 static val
* varonce60
;
5573 val
* var61
/* : String */;
5574 char* var62
/* : NativeString */;
5575 val
* var63
/* : FlatString */;
5576 static val
* varonce64
;
5577 val
* var65
/* : String */;
5578 char* var66
/* : NativeString */;
5579 val
* var67
/* : FlatString */;
5580 val
* var68
/* : String */;
5581 long var69
/* : Int */;
5582 long var71
/* : Int */;
5583 val
* var72
/* : String */;
5584 val
* var73
/* : String */;
5585 val
* var74
/* : nullable RuntimeVariable */;
5586 val
* var_res0
/* var res0: nullable RuntimeVariable */;
5587 val
* var75
/* : MPropDef */;
5588 val
* var77
/* : MPropDef */;
5589 val
* var78
/* : SeparateRuntimeFunction */;
5590 val
* var_runtime_function
/* var runtime_function: SeparateRuntimeFunction */;
5591 val
* var79
/* : MSignature */;
5592 val
* var81
/* : MSignature */;
5593 val
* var_msignature
/* var msignature: MSignature */;
5594 val
* var82
/* : MPropDef */;
5595 val
* var84
/* : MPropDef */;
5596 val
* var85
/* : nullable MType */;
5597 val
* var87
/* : nullable MType */;
5598 val
* var_ret
/* var ret: nullable MType */;
5599 short int var88
/* : Bool */;
5600 short int var89
/* : Bool */;
5601 val
* var_other
/* var other: nullable Object */;
5602 short int var91
/* : Bool */;
5603 short int var93
/* : Bool */;
5604 val
* var_res
/* var res: nullable RuntimeVariable */;
5605 val
* var94
/* : RuntimeVariable */;
5606 static val
* varonce95
;
5607 val
* var96
/* : String */;
5608 char* var97
/* : NativeString */;
5609 val
* var98
/* : FlatString */;
5610 val
* var99
/* : String */;
5611 val
* var_ss
/* var ss: String */;
5612 val
* var100
/* : String */;
5613 val
* var_const_color
/* var const_color: String */;
5614 short int var101
/* : Bool */;
5615 short int var102
/* : Bool */;
5616 val
* var_other104
/* var other: nullable Object */;
5617 short int var105
/* : Bool */;
5618 short int var106
/* : Bool */;
5619 val
* var108
/* : NativeArray[String] */;
5620 static val
* varonce107
;
5621 static val
* varonce109
;
5622 val
* var110
/* : String */;
5623 char* var111
/* : NativeString */;
5624 val
* var112
/* : FlatString */;
5625 val
* var113
/* : String */;
5626 val
* var114
/* : String */;
5627 val
* var_ress
/* var ress: nullable Object */;
5628 static val
* varonce115
;
5629 val
* var116
/* : String */;
5630 char* var117
/* : NativeString */;
5631 val
* var118
/* : FlatString */;
5632 short int var119
/* : Bool */;
5633 short int var120
/* : Bool */;
5636 short int var_123
/* var : Bool */;
5637 val
* var124
/* : AbstractCompiler */;
5638 val
* var126
/* : AbstractCompiler */;
5639 val
* var127
/* : ModelBuilder */;
5640 val
* var129
/* : ModelBuilder */;
5641 val
* var130
/* : ToolContext */;
5642 val
* var132
/* : ToolContext */;
5643 val
* var133
/* : OptionBool */;
5644 val
* var135
/* : OptionBool */;
5645 val
* var136
/* : nullable Object */;
5646 val
* var138
/* : nullable Object */;
5647 short int var139
/* : Bool */;
5648 val
* var140
/* : AbstractCompiler */;
5649 val
* var142
/* : AbstractCompiler */;
5650 val
* var143
/* : nullable MMethodDef */;
5651 val
* var_md
/* var md: nullable MMethodDef */;
5652 short int var144
/* : Bool */;
5653 short int var145
/* : Bool */;
5654 short int var147
/* : Bool */;
5655 short int var148
/* : Bool */;
5656 val
* var149
/* : SeparateRuntimeFunction */;
5657 val
* var150
/* : String */;
5658 val
* var_callsym
/* var callsym: String */;
5659 val
* var152
/* : NativeArray[String] */;
5660 static val
* varonce151
;
5661 static val
* varonce153
;
5662 val
* var154
/* : String */;
5663 char* var155
/* : NativeString */;
5664 val
* var156
/* : FlatString */;
5665 static val
* varonce157
;
5666 val
* var158
/* : String */;
5667 char* var159
/* : NativeString */;
5668 val
* var160
/* : FlatString */;
5669 static val
* varonce161
;
5670 val
* var162
/* : String */;
5671 char* var163
/* : NativeString */;
5672 val
* var164
/* : FlatString */;
5673 static val
* varonce165
;
5674 val
* var166
/* : String */;
5675 char* var167
/* : NativeString */;
5676 val
* var168
/* : FlatString */;
5677 val
* var169
/* : String */;
5678 val
* var170
/* : nullable Object */;
5679 val
* var171
/* : String */;
5680 val
* var172
/* : String */;
5681 val
* var174
/* : NativeArray[String] */;
5682 static val
* varonce173
;
5683 static val
* varonce175
;
5684 val
* var176
/* : String */;
5685 char* var177
/* : NativeString */;
5686 val
* var178
/* : FlatString */;
5687 static val
* varonce179
;
5688 val
* var180
/* : String */;
5689 char* var181
/* : NativeString */;
5690 val
* var182
/* : FlatString */;
5691 static val
* varonce183
;
5692 val
* var184
/* : String */;
5693 char* var185
/* : NativeString */;
5694 val
* var186
/* : FlatString */;
5695 static val
* varonce187
;
5696 val
* var188
/* : String */;
5697 char* var189
/* : NativeString */;
5698 val
* var190
/* : FlatString */;
5699 static val
* varonce191
;
5700 val
* var192
/* : String */;
5701 char* var193
/* : NativeString */;
5702 val
* var194
/* : FlatString */;
5703 static val
* varonce195
;
5704 val
* var196
/* : String */;
5705 char* var197
/* : NativeString */;
5706 val
* var198
/* : FlatString */;
5707 static val
* varonce199
;
5708 val
* var200
/* : String */;
5709 char* var201
/* : NativeString */;
5710 val
* var202
/* : FlatString */;
5711 val
* var203
/* : String */;
5712 val
* var204
/* : nullable Object */;
5713 val
* var205
/* : String */;
5714 val
* var206
/* : String */;
5715 val
* var207
/* : nullable Object */;
5716 val
* var208
/* : String */;
5717 val
* var209
/* : String */;
5718 short int var210
/* : Bool */;
5719 short int var211
/* : Bool */;
5722 short int var_214
/* var : Bool */;
5723 val
* var215
/* : AbstractCompiler */;
5724 val
* var217
/* : AbstractCompiler */;
5725 val
* var218
/* : ModelBuilder */;
5726 val
* var220
/* : ModelBuilder */;
5727 val
* var221
/* : ToolContext */;
5728 val
* var223
/* : ToolContext */;
5729 val
* var224
/* : OptionBool */;
5730 val
* var226
/* : OptionBool */;
5731 val
* var227
/* : nullable Object */;
5732 val
* var229
/* : nullable Object */;
5733 short int var230
/* : Bool */;
5734 static val
* varonce231
;
5735 val
* var232
/* : String */;
5736 char* var233
/* : NativeString */;
5737 val
* var234
/* : FlatString */;
5738 val
* var235
/* : String */;
5739 val
* var_callsym236
/* var callsym: String */;
5740 val
* var238
/* : NativeArray[String] */;
5741 static val
* varonce237
;
5742 static val
* varonce239
;
5743 val
* var240
/* : String */;
5744 char* var241
/* : NativeString */;
5745 val
* var242
/* : FlatString */;
5746 static val
* varonce243
;
5747 val
* var244
/* : String */;
5748 char* var245
/* : NativeString */;
5749 val
* var246
/* : FlatString */;
5750 val
* var247
/* : String */;
5751 val
* var249
/* : NativeArray[String] */;
5752 static val
* varonce248
;
5753 static val
* varonce250
;
5754 val
* var251
/* : String */;
5755 char* var252
/* : NativeString */;
5756 val
* var253
/* : FlatString */;
5757 static val
* varonce254
;
5758 val
* var255
/* : String */;
5759 char* var256
/* : NativeString */;
5760 val
* var257
/* : FlatString */;
5761 static val
* varonce258
;
5762 val
* var259
/* : String */;
5763 char* var260
/* : NativeString */;
5764 val
* var261
/* : FlatString */;
5765 static val
* varonce262
;
5766 val
* var263
/* : String */;
5767 char* var264
/* : NativeString */;
5768 val
* var265
/* : FlatString */;
5769 static val
* varonce266
;
5770 val
* var267
/* : String */;
5771 char* var268
/* : NativeString */;
5772 val
* var269
/* : FlatString */;
5773 static val
* varonce270
;
5774 val
* var271
/* : String */;
5775 char* var272
/* : NativeString */;
5776 val
* var273
/* : FlatString */;
5777 static val
* varonce274
;
5778 val
* var275
/* : String */;
5779 char* var276
/* : NativeString */;
5780 val
* var277
/* : FlatString */;
5781 val
* var278
/* : String */;
5782 val
* var279
/* : nullable Object */;
5783 val
* var280
/* : String */;
5784 val
* var281
/* : String */;
5785 val
* var282
/* : nullable Object */;
5786 val
* var283
/* : String */;
5787 val
* var284
/* : String */;
5788 static val
* varonce285
;
5789 val
* var286
/* : String */;
5790 char* var287
/* : NativeString */;
5791 val
* var288
/* : FlatString */;
5792 val
* var290
/* : NativeArray[String] */;
5793 static val
* varonce289
;
5794 static val
* varonce291
;
5795 val
* var292
/* : String */;
5796 char* var293
/* : NativeString */;
5797 val
* var294
/* : FlatString */;
5798 static val
* varonce295
;
5799 val
* var296
/* : String */;
5800 char* var297
/* : NativeString */;
5801 val
* var298
/* : FlatString */;
5802 static val
* varonce299
;
5803 val
* var300
/* : String */;
5804 char* var301
/* : NativeString */;
5805 val
* var302
/* : FlatString */;
5806 static val
* varonce303
;
5807 val
* var304
/* : String */;
5808 char* var305
/* : NativeString */;
5809 val
* var306
/* : FlatString */;
5810 val
* var307
/* : String */;
5811 val
* var308
/* : nullable Object */;
5812 val
* var309
/* : String */;
5813 val
* var310
/* : String */;
5814 static val
* varonce311
;
5815 val
* var312
/* : String */;
5816 char* var313
/* : NativeString */;
5817 val
* var314
/* : FlatString */;
5818 short int var315
/* : Bool */;
5819 short int var316
/* : Bool */;
5822 short int var_319
/* var : Bool */;
5823 val
* var320
/* : AbstractCompiler */;
5824 val
* var322
/* : AbstractCompiler */;
5825 val
* var323
/* : ModelBuilder */;
5826 val
* var325
/* : ModelBuilder */;
5827 val
* var326
/* : ToolContext */;
5828 val
* var328
/* : ToolContext */;
5829 val
* var329
/* : OptionBool */;
5830 val
* var331
/* : OptionBool */;
5831 val
* var332
/* : nullable Object */;
5832 val
* var334
/* : nullable Object */;
5833 short int var335
/* : Bool */;
5834 static val
* varonce336
;
5835 val
* var337
/* : String */;
5836 char* var338
/* : NativeString */;
5837 val
* var339
/* : FlatString */;
5838 val
* var340
/* : String */;
5839 val
* var_callsym341
/* var callsym: String */;
5840 val
* var343
/* : NativeArray[String] */;
5841 static val
* varonce342
;
5842 static val
* varonce344
;
5843 val
* var345
/* : String */;
5844 char* var346
/* : NativeString */;
5845 val
* var347
/* : FlatString */;
5846 static val
* varonce348
;
5847 val
* var349
/* : String */;
5848 char* var350
/* : NativeString */;
5849 val
* var351
/* : FlatString */;
5850 static val
* varonce352
;
5851 val
* var353
/* : String */;
5852 char* var354
/* : NativeString */;
5853 val
* var355
/* : FlatString */;
5854 static val
* varonce356
;
5855 val
* var357
/* : String */;
5856 char* var358
/* : NativeString */;
5857 val
* var359
/* : FlatString */;
5858 val
* var360
/* : String */;
5859 val
* var361
/* : nullable Object */;
5860 val
* var362
/* : String */;
5861 val
* var363
/* : String */;
5862 val
* var365
/* : NativeArray[String] */;
5863 static val
* varonce364
;
5864 static val
* varonce366
;
5865 val
* var367
/* : String */;
5866 char* var368
/* : NativeString */;
5867 val
* var369
/* : FlatString */;
5868 static val
* varonce370
;
5869 val
* var371
/* : String */;
5870 char* var372
/* : NativeString */;
5871 val
* var373
/* : FlatString */;
5872 static val
* varonce374
;
5873 val
* var375
/* : String */;
5874 char* var376
/* : NativeString */;
5875 val
* var377
/* : FlatString */;
5876 static val
* varonce378
;
5877 val
* var379
/* : String */;
5878 char* var380
/* : NativeString */;
5879 val
* var381
/* : FlatString */;
5880 static val
* varonce382
;
5881 val
* var383
/* : String */;
5882 char* var384
/* : NativeString */;
5883 val
* var385
/* : FlatString */;
5884 static val
* varonce386
;
5885 val
* var387
/* : String */;
5886 char* var388
/* : NativeString */;
5887 val
* var389
/* : FlatString */;
5888 static val
* varonce390
;
5889 val
* var391
/* : String */;
5890 char* var392
/* : NativeString */;
5891 val
* var393
/* : FlatString */;
5892 val
* var394
/* : String */;
5893 val
* var395
/* : nullable Object */;
5894 val
* var396
/* : String */;
5895 val
* var397
/* : String */;
5896 val
* var398
/* : nullable Object */;
5897 val
* var399
/* : String */;
5898 val
* var400
/* : String */;
5899 short int var401
/* : Bool */;
5900 short int var402
/* : Bool */;
5901 short int var404
/* : Bool */;
5902 short int var405
/* : Bool */;
5903 short int var406
/* : Bool */;
5904 short int var407
/* : Bool */;
5905 short int var409
/* : Bool */;
5906 short int var410
/* : Bool */;
5907 static val
* varonce411
;
5908 val
* var412
/* : String */;
5909 char* var413
/* : NativeString */;
5910 val
* var414
/* : FlatString */;
5915 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
5916 var3
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
5917 if (unlikely(var3
== NULL
)) {
5918 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5919 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
5927 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var1) on <var1:AbstractCompiler(SeparateCompiler)> */
5928 var6
= var1
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var1:AbstractCompiler(SeparateCompiler)> */
5929 if (unlikely(var6
== NULL
)) {
5930 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
5931 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
5940 { /* Inline separate_compiler#ModelBuilder#nb_invok_by_tables (var_) on <var_:ModelBuilder> */
5941 var9
= var_
->attrs
[COLOR_nit__separate_compiler__ModelBuilder___nb_invok_by_tables
].l
; /* _nb_invok_by_tables on <var_:ModelBuilder> */
5947 { /* Inline kernel#Int#+ (var7,1l) on <var7:Int> */
5948 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
5949 /* <1l:Int> isa OTHER */
5950 var12
= 1; /* easy <1l:Int> isa OTHER*/
5951 if (unlikely(!var12
)) {
5952 var_class_name
= type_standard__Int
.name
;
5953 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
5954 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
5960 RET_LABEL11
:(void)0;
5964 { /* Inline separate_compiler#ModelBuilder#nb_invok_by_tables= (var_,var10) on <var_:ModelBuilder> */
5965 var_
->attrs
[COLOR_nit__separate_compiler__ModelBuilder___nb_invok_by_tables
].l
= var10
; /* _nb_invok_by_tables on <var_:ModelBuilder> */
5966 RET_LABEL14
:(void)0;
5970 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
5971 var17
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
5972 if (unlikely(var17
== NULL
)) {
5973 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5974 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
5978 RET_LABEL16
:(void)0;
5982 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var15) on <var15:AbstractCompiler(SeparateCompiler)> */
5983 var20
= var15
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var15:AbstractCompiler(SeparateCompiler)> */
5984 if (unlikely(var20
== NULL
)) {
5985 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
5986 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
5990 RET_LABEL19
:(void)0;
5994 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var18) on <var18:ModelBuilder> */
5995 var23
= var18
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var18:ModelBuilder> */
5996 if (unlikely(var23
== NULL
)) {
5997 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
5998 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
6002 RET_LABEL22
:(void)0;
6006 { /* Inline abstract_compiler#ToolContext#opt_invocation_metrics (var21) on <var21:ToolContext> */
6007 var26
= var21
->attrs
[COLOR_nit__abstract_compiler__ToolContext___opt_invocation_metrics
].val
; /* _opt_invocation_metrics on <var21:ToolContext> */
6008 if (unlikely(var26
== NULL
)) {
6009 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_invocation_metrics");
6010 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 62);
6014 RET_LABEL25
:(void)0;
6018 { /* Inline opts#Option#value (var24) on <var24:OptionBool> */
6019 var29
= var24
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var24:OptionBool> */
6021 RET_LABEL28
:(void)0;
6024 var30
= (short int)((long)(var27
)>>2);
6026 if (likely(varonce
!=NULL
)) {
6029 var32
= "count_invoke_by_tables++;";
6030 var33
= standard___standard__NativeString___to_s_with_length(var32
, 25l);
6035 nit___nit__AbstractCompilerVisitor___add(self
, var31
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6040 { /* Inline array#AbstractArrayRead#length (var_arguments) on <var_arguments:Array[RuntimeVariable]> */
6041 var36
= var_arguments
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var_arguments:Array[RuntimeVariable]> */
6043 RET_LABEL35
:(void)0;
6047 { /* Inline model#MProperty#intro (var_mmethod) on <var_mmethod:MMethod> */
6048 var39
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___intro
].val
; /* _intro on <var_mmethod:MMethod> */
6049 if (unlikely(var39
== NULL
)) {
6050 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
6051 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1968);
6055 RET_LABEL38
:(void)0;
6059 { /* Inline model#MMethodDef#msignature (var37) on <var37:MPropDef(MMethodDef)> */
6060 var42
= var37
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
; /* _msignature on <var37:MPropDef(MMethodDef)> */
6062 RET_LABEL41
:(void)0;
6065 if (var40
== NULL
) {
6066 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6067 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1440);
6070 var43
= nit___nit__MSignature___arity(var40
);
6073 { /* Inline kernel#Int#+ (var43,1l) on <var43:Int> */
6074 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
6075 /* <1l:Int> isa OTHER */
6076 var46
= 1; /* easy <1l:Int> isa OTHER*/
6077 if (unlikely(!var46
)) {
6078 var_class_name49
= type_standard__Int
.name
;
6079 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name49
);
6080 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
6086 RET_LABEL45
:(void)0;
6090 { /* Inline kernel#Int#== (var34,var44) on <var34:Int> */
6091 var53
= var34
== var44
;
6094 RET_LABEL52
:(void)0;
6097 if (unlikely(!var51
)) {
6098 if (unlikely(varonce54
==NULL
)) {
6099 var55
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
6100 if (likely(varonce56
!=NULL
)) {
6103 var58
= "Invalid arity for ";
6104 var59
= standard___standard__NativeString___to_s_with_length(var58
, 18l);
6108 ((struct instance_standard__NativeArray
*)var55
)->values
[0]=var57
;
6109 if (likely(varonce60
!=NULL
)) {
6113 var63
= standard___standard__NativeString___to_s_with_length(var62
, 2l);
6117 ((struct instance_standard__NativeArray
*)var55
)->values
[2]=var61
;
6118 if (likely(varonce64
!=NULL
)) {
6121 var66
= " arguments given.";
6122 var67
= standard___standard__NativeString___to_s_with_length(var66
, 17l);
6126 ((struct instance_standard__NativeArray
*)var55
)->values
[4]=var65
;
6132 var68
= ((val
*(*)(val
* self
))(var_mmethod
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmethod
); /* to_s on <var_mmethod:MMethod>*/
6134 ((struct instance_standard__NativeArray
*)var55
)->values
[1]=var68
;
6136 { /* Inline array#AbstractArrayRead#length (var_arguments) on <var_arguments:Array[RuntimeVariable]> */
6137 var71
= var_arguments
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var_arguments:Array[RuntimeVariable]> */
6139 RET_LABEL70
:(void)0;
6142 var72
= standard__string___Int___Object__to_s(var69
);
6143 ((struct instance_standard__NativeArray
*)var55
)->values
[3]=var72
;
6145 var73
= ((val
*(*)(val
* self
))(var55
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var55
); /* native_to_s on <var55:NativeArray[String]>*/
6149 nit___nit__AbstractCompilerVisitor___debug(self
, var73
); /* Direct call abstract_compiler#AbstractCompilerVisitor#debug on <self:SeparateCompilerVisitor>*/
6151 PRINT_ERROR("Runtime error: %s", "Assert failed");
6152 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1440);
6156 var74
= nit___nit__SeparateCompilerVisitor___before_send(self
, var_mmethod
, var_arguments
);
6160 { /* Inline model#MProperty#intro (var_mmethod) on <var_mmethod:MMethod> */
6161 var77
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___intro
].val
; /* _intro on <var_mmethod:MMethod> */
6162 if (unlikely(var77
== NULL
)) {
6163 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
6164 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1968);
6168 RET_LABEL76
:(void)0;
6172 var78
= nit__separate_compiler___MMethodDef___virtual_runtime_function(var75
);
6174 var_runtime_function
= var78
;
6176 { /* Inline separate_compiler#SeparateRuntimeFunction#called_signature (var_runtime_function) on <var_runtime_function:SeparateRuntimeFunction> */
6177 var81
= var_runtime_function
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
; /* _called_signature on <var_runtime_function:SeparateRuntimeFunction> */
6178 if (unlikely(var81
== NULL
)) {
6179 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_signature");
6180 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2173);
6184 RET_LABEL80
:(void)0;
6187 var_msignature
= var79
;
6189 { /* Inline model#MProperty#intro (var_mmethod) on <var_mmethod:MMethod> */
6190 var84
= var_mmethod
->attrs
[COLOR_nit__model__MProperty___intro
].val
; /* _intro on <var_mmethod:MMethod> */
6191 if (unlikely(var84
== NULL
)) {
6192 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
6193 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1968);
6197 RET_LABEL83
:(void)0;
6201 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__adapt_signature(self
, var82
, var_arguments
); /* Direct call separate_compiler#SeparateCompilerVisitor#adapt_signature on <self:SeparateCompilerVisitor>*/
6204 { /* Inline model#MSignature#return_mtype (var_msignature) on <var_msignature:MSignature> */
6205 var87
= var_msignature
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var_msignature:MSignature> */
6207 RET_LABEL86
:(void)0;
6211 if (var_ret
== NULL
) {
6212 var88
= 1; /* is null */
6214 var88
= 0; /* arg is null but recv is not */
6217 { /* Inline kernel#Object#== (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
6218 var_other
= ((val
*)NULL
);
6220 { /* Inline kernel#Object#is_same_instance (var_ret,var_other) on <var_ret:nullable MType(MType)> */
6221 var93
= var_ret
== var_other
;
6224 RET_LABEL92
:(void)0;
6229 RET_LABEL90
:(void)0;
6234 var_res
= ((val
*)NULL
);
6237 var94
= nit___nit__AbstractCompilerVisitor___new_var(self
, var_ret
);
6241 if (likely(varonce95
!=NULL
)) {
6245 var98
= standard___standard__NativeString___to_s_with_length(var97
, 2l);
6250 var99
= standard__string___Collection___join(var_arguments
, var96
);
6254 var100
= nit__separate_compiler___MEntity___const_color(var_mentity
);
6256 var_const_color
= var100
;
6257 if (var_res
== NULL
) {
6258 var101
= 0; /* is null */
6260 var101
= 1; /* arg is null and recv is not */
6263 { /* Inline kernel#Object#!= (var_res,((val*)NULL)) on <var_res:nullable RuntimeVariable> */
6264 var_other104
= ((val
*)NULL
);
6266 var105
= ((short int(*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res
, var_other104
); /* == on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
6271 RET_LABEL103
:(void)0;
6276 if (unlikely(varonce107
==NULL
)) {
6277 var108
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
6278 if (likely(varonce109
!=NULL
)) {
6279 var110
= varonce109
;
6282 var112
= standard___standard__NativeString___to_s_with_length(var111
, 3l);
6284 varonce109
= var110
;
6286 ((struct instance_standard__NativeArray
*)var108
)->values
[1]=var110
;
6288 var108
= varonce107
;
6292 var113
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
6294 ((struct instance_standard__NativeArray
*)var108
)->values
[0]=var113
;
6296 var114
= ((val
*(*)(val
* self
))(var108
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var108
); /* native_to_s on <var108:NativeArray[String]>*/
6298 varonce107
= var108
;
6301 if (likely(varonce115
!=NULL
)) {
6302 var116
= varonce115
;
6305 var118
= standard___standard__NativeString___to_s_with_length(var117
, 0l);
6307 varonce115
= var116
;
6311 /* <var_mentity:MEntity> isa MMethod */
6312 cltype121
= type_nit__MMethod
.color
;
6313 idtype122
= type_nit__MMethod
.id
;
6314 if(cltype121
>= var_mentity
->type
->table_size
) {
6317 var120
= var_mentity
->type
->type_table
[cltype121
] == idtype122
;
6322 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
6323 var126
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
6324 if (unlikely(var126
== NULL
)) {
6325 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6326 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
6330 RET_LABEL125
:(void)0;
6334 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var124) on <var124:AbstractCompiler(SeparateCompiler)> */
6335 var129
= var124
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var124:AbstractCompiler(SeparateCompiler)> */
6336 if (unlikely(var129
== NULL
)) {
6337 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
6338 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
6342 RET_LABEL128
:(void)0;
6346 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var127) on <var127:ModelBuilder> */
6347 var132
= var127
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var127:ModelBuilder> */
6348 if (unlikely(var132
== NULL
)) {
6349 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
6350 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
6354 RET_LABEL131
:(void)0;
6358 { /* Inline separate_compiler#ToolContext#opt_direct_call_monomorph0 (var130) on <var130:ToolContext> */
6359 var135
= var130
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_direct_call_monomorph0
].val
; /* _opt_direct_call_monomorph0 on <var130:ToolContext> */
6360 if (unlikely(var135
== NULL
)) {
6361 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_direct_call_monomorph0");
6362 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 52);
6366 RET_LABEL134
:(void)0;
6370 { /* Inline opts#Option#value (var133) on <var133:OptionBool> */
6371 var138
= var133
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var133:OptionBool> */
6373 RET_LABEL137
:(void)0;
6376 var139
= (short int)((long)(var136
)>>2);
6383 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
6384 var142
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
6385 if (unlikely(var142
== NULL
)) {
6386 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6387 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
6391 RET_LABEL141
:(void)0;
6395 var143
= nit___nit__SeparateCompiler___is_monomorphic(var140
, var_mentity
);
6398 if (var_md
== NULL
) {
6399 var144
= 0; /* is null */
6401 var144
= 1; /* arg is null and recv is not */
6404 { /* Inline kernel#Object#!= (var_md,((val*)NULL)) on <var_md:nullable MMethodDef> */
6405 var_other104
= ((val
*)NULL
);
6407 var147
= ((short int(*)(val
* self
, val
* p0
))(var_md
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_md
, var_other104
); /* == on <var_md:nullable MMethodDef(MMethodDef)>*/
6412 RET_LABEL146
:(void)0;
6418 var149
= nit__separate_compiler___MMethodDef___virtual_runtime_function(var_md
);
6421 var150
= nit___nit__AbstractRuntimeFunction___c_name(var149
);
6423 var_callsym
= var150
;
6425 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var_callsym
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
6427 if (unlikely(varonce151
==NULL
)) {
6428 var152
= NEW_standard__NativeArray(9l, &type_standard__NativeArray__standard__String
);
6429 if (likely(varonce153
!=NULL
)) {
6430 var154
= varonce153
;
6433 var156
= standard___standard__NativeString___to_s_with_length(var155
, 1l);
6435 varonce153
= var154
;
6437 ((struct instance_standard__NativeArray
*)var152
)->values
[2]=var154
;
6438 if (likely(varonce157
!=NULL
)) {
6439 var158
= varonce157
;
6442 var160
= standard___standard__NativeString___to_s_with_length(var159
, 6l);
6444 varonce157
= var158
;
6446 ((struct instance_standard__NativeArray
*)var152
)->values
[4]=var158
;
6447 if (likely(varonce161
!=NULL
)) {
6448 var162
= varonce161
;
6451 var164
= standard___standard__NativeString___to_s_with_length(var163
, 4l);
6453 varonce161
= var162
;
6455 ((struct instance_standard__NativeArray
*)var152
)->values
[6]=var162
;
6456 if (likely(varonce165
!=NULL
)) {
6457 var166
= varonce165
;
6460 var168
= standard___standard__NativeString___to_s_with_length(var167
, 2l);
6462 varonce165
= var166
;
6464 ((struct instance_standard__NativeArray
*)var152
)->values
[8]=var166
;
6466 var152
= varonce151
;
6469 ((struct instance_standard__NativeArray
*)var152
)->values
[0]=var_ress
;
6470 ((struct instance_standard__NativeArray
*)var152
)->values
[1]=var_callsym
;
6471 ((struct instance_standard__NativeArray
*)var152
)->values
[3]=var_ss
;
6473 var169
= ((val
*(*)(val
* self
))(var_mmethod
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmethod
); /* to_s on <var_mmethod:MMethod>*/
6475 ((struct instance_standard__NativeArray
*)var152
)->values
[5]=var169
;
6477 var170
= standard___standard__SequenceRead___Collection__first(var_arguments
);
6480 var171
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var170
);
6482 ((struct instance_standard__NativeArray
*)var152
)->values
[7]=var171
;
6484 var172
= ((val
*(*)(val
* self
))(var152
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var152
); /* native_to_s on <var152:NativeArray[String]>*/
6486 varonce151
= var152
;
6488 nit___nit__AbstractCompilerVisitor___add(self
, var172
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6492 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var_const_color
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
6494 if (unlikely(varonce173
==NULL
)) {
6495 var174
= NEW_standard__NativeArray(14l, &type_standard__NativeArray__standard__String
);
6496 if (likely(varonce175
!=NULL
)) {
6497 var176
= varonce175
;
6500 var178
= standard___standard__NativeString___to_s_with_length(var177
, 2l);
6502 varonce175
= var176
;
6504 ((struct instance_standard__NativeArray
*)var174
)->values
[1]=var176
;
6505 if (likely(varonce179
!=NULL
)) {
6506 var180
= varonce179
;
6509 var182
= standard___standard__NativeString___to_s_with_length(var181
, 2l);
6511 varonce179
= var180
;
6513 ((struct instance_standard__NativeArray
*)var174
)->values
[3]=var180
;
6514 if (likely(varonce183
!=NULL
)) {
6515 var184
= varonce183
;
6518 var186
= standard___standard__NativeString___to_s_with_length(var185
, 6l);
6520 varonce183
= var184
;
6522 ((struct instance_standard__NativeArray
*)var174
)->values
[5]=var184
;
6523 if (likely(varonce187
!=NULL
)) {
6524 var188
= varonce187
;
6527 var190
= standard___standard__NativeString___to_s_with_length(var189
, 4l);
6529 varonce187
= var188
;
6531 ((struct instance_standard__NativeArray
*)var174
)->values
[7]=var188
;
6532 if (likely(varonce191
!=NULL
)) {
6533 var192
= varonce191
;
6536 var194
= standard___standard__NativeString___to_s_with_length(var193
, 6l);
6538 varonce191
= var192
;
6540 ((struct instance_standard__NativeArray
*)var174
)->values
[9]=var192
;
6541 if (likely(varonce195
!=NULL
)) {
6542 var196
= varonce195
;
6545 var198
= standard___standard__NativeString___to_s_with_length(var197
, 4l);
6547 varonce195
= var196
;
6549 ((struct instance_standard__NativeArray
*)var174
)->values
[11]=var196
;
6550 if (likely(varonce199
!=NULL
)) {
6551 var200
= varonce199
;
6554 var202
= standard___standard__NativeString___to_s_with_length(var201
, 2l);
6556 varonce199
= var200
;
6558 ((struct instance_standard__NativeArray
*)var174
)->values
[13]=var200
;
6560 var174
= varonce173
;
6563 ((struct instance_standard__NativeArray
*)var174
)->values
[0]=var_ress
;
6565 var203
= nit___nit__SeparateRuntimeFunction___c_funptrtype(var_runtime_function
);
6567 ((struct instance_standard__NativeArray
*)var174
)->values
[2]=var203
;
6569 var204
= standard___standard__SequenceRead___Collection__first(var_arguments
);
6572 var205
= nit___nit__SeparateCompilerVisitor___class_info(self
, var204
);
6574 ((struct instance_standard__NativeArray
*)var174
)->values
[4]=var205
;
6575 ((struct instance_standard__NativeArray
*)var174
)->values
[6]=var_const_color
;
6576 ((struct instance_standard__NativeArray
*)var174
)->values
[8]=var_ss
;
6578 var206
= ((val
*(*)(val
* self
))(var_mmethod
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmethod
); /* to_s on <var_mmethod:MMethod>*/
6580 ((struct instance_standard__NativeArray
*)var174
)->values
[10]=var206
;
6582 var207
= standard___standard__SequenceRead___Collection__first(var_arguments
);
6585 var208
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var207
);
6587 ((struct instance_standard__NativeArray
*)var174
)->values
[12]=var208
;
6589 var209
= ((val
*(*)(val
* self
))(var174
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var174
); /* native_to_s on <var174:NativeArray[String]>*/
6591 varonce173
= var174
;
6593 nit___nit__AbstractCompilerVisitor___add(self
, var209
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6597 /* <var_mentity:MEntity> isa MMethod */
6598 cltype212
= type_nit__MMethod
.color
;
6599 idtype213
= type_nit__MMethod
.id
;
6600 if(cltype212
>= var_mentity
->type
->table_size
) {
6603 var211
= var_mentity
->type
->type_table
[cltype212
] == idtype213
;
6608 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
6609 var217
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
6610 if (unlikely(var217
== NULL
)) {
6611 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6612 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
6616 RET_LABEL216
:(void)0;
6620 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var215) on <var215:AbstractCompiler(SeparateCompiler)> */
6621 var220
= var215
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var215:AbstractCompiler(SeparateCompiler)> */
6622 if (unlikely(var220
== NULL
)) {
6623 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
6624 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
6628 RET_LABEL219
:(void)0;
6632 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var218) on <var218:ModelBuilder> */
6633 var223
= var218
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var218:ModelBuilder> */
6634 if (unlikely(var223
== NULL
)) {
6635 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
6636 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
6640 RET_LABEL222
:(void)0;
6644 { /* Inline separate_compiler#ToolContext#opt_guard_call (var221) on <var221:ToolContext> */
6645 var226
= var221
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_guard_call
].val
; /* _opt_guard_call on <var221:ToolContext> */
6646 if (unlikely(var226
== NULL
)) {
6647 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_guard_call");
6648 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 39);
6652 RET_LABEL225
:(void)0;
6656 { /* Inline opts#Option#value (var224) on <var224:OptionBool> */
6657 var229
= var224
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var224:OptionBool> */
6659 RET_LABEL228
:(void)0;
6662 var230
= (short int)((long)(var227
)>>2);
6668 if (likely(varonce231
!=NULL
)) {
6669 var232
= varonce231
;
6672 var234
= standard___standard__NativeString___to_s_with_length(var233
, 5l);
6674 varonce231
= var232
;
6677 var235
= ((val
*(*)(val
* self
, val
* p0
))(var232
->class->vft
[COLOR_standard__string__String___43d
]))(var232
, var_const_color
); /* + on <var232:String>*/
6679 var_callsym236
= var235
;
6681 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var_callsym236
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
6683 if (unlikely(varonce237
==NULL
)) {
6684 var238
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
6685 if (likely(varonce239
!=NULL
)) {
6686 var240
= varonce239
;
6689 var242
= standard___standard__NativeString___to_s_with_length(var241
, 5l);
6691 varonce239
= var240
;
6693 ((struct instance_standard__NativeArray
*)var238
)->values
[0]=var240
;
6694 if (likely(varonce243
!=NULL
)) {
6695 var244
= varonce243
;
6698 var246
= standard___standard__NativeString___to_s_with_length(var245
, 3l);
6700 varonce243
= var244
;
6702 ((struct instance_standard__NativeArray
*)var238
)->values
[2]=var244
;
6704 var238
= varonce237
;
6707 ((struct instance_standard__NativeArray
*)var238
)->values
[1]=var_callsym236
;
6709 var247
= ((val
*(*)(val
* self
))(var238
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var238
); /* native_to_s on <var238:NativeArray[String]>*/
6711 varonce237
= var238
;
6713 nit___nit__AbstractCompilerVisitor___add(self
, var247
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6716 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var_const_color
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
6718 if (unlikely(varonce248
==NULL
)) {
6719 var249
= NEW_standard__NativeArray(14l, &type_standard__NativeArray__standard__String
);
6720 if (likely(varonce250
!=NULL
)) {
6721 var251
= varonce250
;
6724 var253
= standard___standard__NativeString___to_s_with_length(var252
, 2l);
6726 varonce250
= var251
;
6728 ((struct instance_standard__NativeArray
*)var249
)->values
[1]=var251
;
6729 if (likely(varonce254
!=NULL
)) {
6730 var255
= varonce254
;
6733 var257
= standard___standard__NativeString___to_s_with_length(var256
, 2l);
6735 varonce254
= var255
;
6737 ((struct instance_standard__NativeArray
*)var249
)->values
[3]=var255
;
6738 if (likely(varonce258
!=NULL
)) {
6739 var259
= varonce258
;
6742 var261
= standard___standard__NativeString___to_s_with_length(var260
, 6l);
6744 varonce258
= var259
;
6746 ((struct instance_standard__NativeArray
*)var249
)->values
[5]=var259
;
6747 if (likely(varonce262
!=NULL
)) {
6748 var263
= varonce262
;
6751 var265
= standard___standard__NativeString___to_s_with_length(var264
, 4l);
6753 varonce262
= var263
;
6755 ((struct instance_standard__NativeArray
*)var249
)->values
[7]=var263
;
6756 if (likely(varonce266
!=NULL
)) {
6757 var267
= varonce266
;
6760 var269
= standard___standard__NativeString___to_s_with_length(var268
, 6l);
6762 varonce266
= var267
;
6764 ((struct instance_standard__NativeArray
*)var249
)->values
[9]=var267
;
6765 if (likely(varonce270
!=NULL
)) {
6766 var271
= varonce270
;
6769 var273
= standard___standard__NativeString___to_s_with_length(var272
, 4l);
6771 varonce270
= var271
;
6773 ((struct instance_standard__NativeArray
*)var249
)->values
[11]=var271
;
6774 if (likely(varonce274
!=NULL
)) {
6775 var275
= varonce274
;
6778 var277
= standard___standard__NativeString___to_s_with_length(var276
, 2l);
6780 varonce274
= var275
;
6782 ((struct instance_standard__NativeArray
*)var249
)->values
[13]=var275
;
6784 var249
= varonce248
;
6787 ((struct instance_standard__NativeArray
*)var249
)->values
[0]=var_ress
;
6789 var278
= nit___nit__SeparateRuntimeFunction___c_funptrtype(var_runtime_function
);
6791 ((struct instance_standard__NativeArray
*)var249
)->values
[2]=var278
;
6793 var279
= standard___standard__SequenceRead___Collection__first(var_arguments
);
6796 var280
= nit___nit__SeparateCompilerVisitor___class_info(self
, var279
);
6798 ((struct instance_standard__NativeArray
*)var249
)->values
[4]=var280
;
6799 ((struct instance_standard__NativeArray
*)var249
)->values
[6]=var_const_color
;
6800 ((struct instance_standard__NativeArray
*)var249
)->values
[8]=var_ss
;
6802 var281
= ((val
*(*)(val
* self
))(var_mmethod
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmethod
); /* to_s on <var_mmethod:MMethod>*/
6804 ((struct instance_standard__NativeArray
*)var249
)->values
[10]=var281
;
6806 var282
= standard___standard__SequenceRead___Collection__first(var_arguments
);
6809 var283
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var282
);
6811 ((struct instance_standard__NativeArray
*)var249
)->values
[12]=var283
;
6813 var284
= ((val
*(*)(val
* self
))(var249
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var249
); /* native_to_s on <var249:NativeArray[String]>*/
6815 varonce248
= var249
;
6817 nit___nit__AbstractCompilerVisitor___add(self
, var284
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6819 if (likely(varonce285
!=NULL
)) {
6820 var286
= varonce285
;
6822 var287
= "} else {";
6823 var288
= standard___standard__NativeString___to_s_with_length(var287
, 8l);
6825 varonce285
= var286
;
6828 nit___nit__AbstractCompilerVisitor___add(self
, var286
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6830 if (unlikely(varonce289
==NULL
)) {
6831 var290
= NEW_standard__NativeArray(9l, &type_standard__NativeArray__standard__String
);
6832 if (likely(varonce291
!=NULL
)) {
6833 var292
= varonce291
;
6836 var294
= standard___standard__NativeString___to_s_with_length(var293
, 1l);
6838 varonce291
= var292
;
6840 ((struct instance_standard__NativeArray
*)var290
)->values
[2]=var292
;
6841 if (likely(varonce295
!=NULL
)) {
6842 var296
= varonce295
;
6845 var298
= standard___standard__NativeString___to_s_with_length(var297
, 6l);
6847 varonce295
= var296
;
6849 ((struct instance_standard__NativeArray
*)var290
)->values
[4]=var296
;
6850 if (likely(varonce299
!=NULL
)) {
6851 var300
= varonce299
;
6854 var302
= standard___standard__NativeString___to_s_with_length(var301
, 4l);
6856 varonce299
= var300
;
6858 ((struct instance_standard__NativeArray
*)var290
)->values
[6]=var300
;
6859 if (likely(varonce303
!=NULL
)) {
6860 var304
= varonce303
;
6863 var306
= standard___standard__NativeString___to_s_with_length(var305
, 2l);
6865 varonce303
= var304
;
6867 ((struct instance_standard__NativeArray
*)var290
)->values
[8]=var304
;
6869 var290
= varonce289
;
6872 ((struct instance_standard__NativeArray
*)var290
)->values
[0]=var_ress
;
6873 ((struct instance_standard__NativeArray
*)var290
)->values
[1]=var_callsym236
;
6874 ((struct instance_standard__NativeArray
*)var290
)->values
[3]=var_ss
;
6876 var307
= ((val
*(*)(val
* self
))(var_mmethod
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmethod
); /* to_s on <var_mmethod:MMethod>*/
6878 ((struct instance_standard__NativeArray
*)var290
)->values
[5]=var307
;
6880 var308
= standard___standard__SequenceRead___Collection__first(var_arguments
);
6883 var309
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var308
);
6885 ((struct instance_standard__NativeArray
*)var290
)->values
[7]=var309
;
6887 var310
= ((val
*(*)(val
* self
))(var290
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var290
); /* native_to_s on <var290:NativeArray[String]>*/
6889 varonce289
= var290
;
6891 nit___nit__AbstractCompilerVisitor___add(self
, var310
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6893 if (likely(varonce311
!=NULL
)) {
6894 var312
= varonce311
;
6897 var314
= standard___standard__NativeString___to_s_with_length(var313
, 1l);
6899 varonce311
= var312
;
6902 nit___nit__AbstractCompilerVisitor___add(self
, var312
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6905 /* <var_mentity:MEntity> isa MMethod */
6906 cltype317
= type_nit__MMethod
.color
;
6907 idtype318
= type_nit__MMethod
.id
;
6908 if(cltype317
>= var_mentity
->type
->table_size
) {
6911 var316
= var_mentity
->type
->type_table
[cltype317
] == idtype318
;
6916 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
6917 var322
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
6918 if (unlikely(var322
== NULL
)) {
6919 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
6920 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
6924 RET_LABEL321
:(void)0;
6928 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var320) on <var320:AbstractCompiler(SeparateCompiler)> */
6929 var325
= var320
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var320:AbstractCompiler(SeparateCompiler)> */
6930 if (unlikely(var325
== NULL
)) {
6931 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
6932 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
6936 RET_LABEL324
:(void)0;
6940 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var323) on <var323:ModelBuilder> */
6941 var328
= var323
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var323:ModelBuilder> */
6942 if (unlikely(var328
== NULL
)) {
6943 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
6944 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
6948 RET_LABEL327
:(void)0;
6952 { /* Inline separate_compiler#ToolContext#opt_trampoline_call (var326) on <var326:ToolContext> */
6953 var331
= var326
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_trampoline_call
].val
; /* _opt_trampoline_call on <var326:ToolContext> */
6954 if (unlikely(var331
== NULL
)) {
6955 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_trampoline_call");
6956 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 37);
6960 RET_LABEL330
:(void)0;
6964 { /* Inline opts#Option#value (var329) on <var329:OptionBool> */
6965 var334
= var329
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var329:OptionBool> */
6967 RET_LABEL333
:(void)0;
6970 var335
= (short int)((long)(var332
)>>2);
6976 if (likely(varonce336
!=NULL
)) {
6977 var337
= varonce336
;
6980 var339
= standard___standard__NativeString___to_s_with_length(var338
, 5l);
6982 varonce336
= var337
;
6985 var340
= ((val
*(*)(val
* self
, val
* p0
))(var337
->class->vft
[COLOR_standard__string__String___43d
]))(var337
, var_const_color
); /* + on <var337:String>*/
6987 var_callsym341
= var340
;
6989 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var_callsym341
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
6991 if (unlikely(varonce342
==NULL
)) {
6992 var343
= NEW_standard__NativeArray(9l, &type_standard__NativeArray__standard__String
);
6993 if (likely(varonce344
!=NULL
)) {
6994 var345
= varonce344
;
6997 var347
= standard___standard__NativeString___to_s_with_length(var346
, 1l);
6999 varonce344
= var345
;
7001 ((struct instance_standard__NativeArray
*)var343
)->values
[2]=var345
;
7002 if (likely(varonce348
!=NULL
)) {
7003 var349
= varonce348
;
7006 var351
= standard___standard__NativeString___to_s_with_length(var350
, 6l);
7008 varonce348
= var349
;
7010 ((struct instance_standard__NativeArray
*)var343
)->values
[4]=var349
;
7011 if (likely(varonce352
!=NULL
)) {
7012 var353
= varonce352
;
7015 var355
= standard___standard__NativeString___to_s_with_length(var354
, 4l);
7017 varonce352
= var353
;
7019 ((struct instance_standard__NativeArray
*)var343
)->values
[6]=var353
;
7020 if (likely(varonce356
!=NULL
)) {
7021 var357
= varonce356
;
7024 var359
= standard___standard__NativeString___to_s_with_length(var358
, 2l);
7026 varonce356
= var357
;
7028 ((struct instance_standard__NativeArray
*)var343
)->values
[8]=var357
;
7030 var343
= varonce342
;
7033 ((struct instance_standard__NativeArray
*)var343
)->values
[0]=var_ress
;
7034 ((struct instance_standard__NativeArray
*)var343
)->values
[1]=var_callsym341
;
7035 ((struct instance_standard__NativeArray
*)var343
)->values
[3]=var_ss
;
7037 var360
= ((val
*(*)(val
* self
))(var_mmethod
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmethod
); /* to_s on <var_mmethod:MMethod>*/
7039 ((struct instance_standard__NativeArray
*)var343
)->values
[5]=var360
;
7041 var361
= standard___standard__SequenceRead___Collection__first(var_arguments
);
7044 var362
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var361
);
7046 ((struct instance_standard__NativeArray
*)var343
)->values
[7]=var362
;
7048 var363
= ((val
*(*)(val
* self
))(var343
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var343
); /* native_to_s on <var343:NativeArray[String]>*/
7050 varonce342
= var343
;
7052 nit___nit__AbstractCompilerVisitor___add(self
, var363
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
7056 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var_const_color
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
7058 if (unlikely(varonce364
==NULL
)) {
7059 var365
= NEW_standard__NativeArray(14l, &type_standard__NativeArray__standard__String
);
7060 if (likely(varonce366
!=NULL
)) {
7061 var367
= varonce366
;
7064 var369
= standard___standard__NativeString___to_s_with_length(var368
, 2l);
7066 varonce366
= var367
;
7068 ((struct instance_standard__NativeArray
*)var365
)->values
[1]=var367
;
7069 if (likely(varonce370
!=NULL
)) {
7070 var371
= varonce370
;
7073 var373
= standard___standard__NativeString___to_s_with_length(var372
, 2l);
7075 varonce370
= var371
;
7077 ((struct instance_standard__NativeArray
*)var365
)->values
[3]=var371
;
7078 if (likely(varonce374
!=NULL
)) {
7079 var375
= varonce374
;
7082 var377
= standard___standard__NativeString___to_s_with_length(var376
, 6l);
7084 varonce374
= var375
;
7086 ((struct instance_standard__NativeArray
*)var365
)->values
[5]=var375
;
7087 if (likely(varonce378
!=NULL
)) {
7088 var379
= varonce378
;
7091 var381
= standard___standard__NativeString___to_s_with_length(var380
, 4l);
7093 varonce378
= var379
;
7095 ((struct instance_standard__NativeArray
*)var365
)->values
[7]=var379
;
7096 if (likely(varonce382
!=NULL
)) {
7097 var383
= varonce382
;
7100 var385
= standard___standard__NativeString___to_s_with_length(var384
, 6l);
7102 varonce382
= var383
;
7104 ((struct instance_standard__NativeArray
*)var365
)->values
[9]=var383
;
7105 if (likely(varonce386
!=NULL
)) {
7106 var387
= varonce386
;
7109 var389
= standard___standard__NativeString___to_s_with_length(var388
, 4l);
7111 varonce386
= var387
;
7113 ((struct instance_standard__NativeArray
*)var365
)->values
[11]=var387
;
7114 if (likely(varonce390
!=NULL
)) {
7115 var391
= varonce390
;
7118 var393
= standard___standard__NativeString___to_s_with_length(var392
, 2l);
7120 varonce390
= var391
;
7122 ((struct instance_standard__NativeArray
*)var365
)->values
[13]=var391
;
7124 var365
= varonce364
;
7127 ((struct instance_standard__NativeArray
*)var365
)->values
[0]=var_ress
;
7129 var394
= nit___nit__SeparateRuntimeFunction___c_funptrtype(var_runtime_function
);
7131 ((struct instance_standard__NativeArray
*)var365
)->values
[2]=var394
;
7133 var395
= standard___standard__SequenceRead___Collection__first(var_arguments
);
7136 var396
= nit___nit__SeparateCompilerVisitor___class_info(self
, var395
);
7138 ((struct instance_standard__NativeArray
*)var365
)->values
[4]=var396
;
7139 ((struct instance_standard__NativeArray
*)var365
)->values
[6]=var_const_color
;
7140 ((struct instance_standard__NativeArray
*)var365
)->values
[8]=var_ss
;
7142 var397
= ((val
*(*)(val
* self
))(var_mmethod
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmethod
); /* to_s on <var_mmethod:MMethod>*/
7144 ((struct instance_standard__NativeArray
*)var365
)->values
[10]=var397
;
7146 var398
= standard___standard__SequenceRead___Collection__first(var_arguments
);
7149 var399
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var398
);
7151 ((struct instance_standard__NativeArray
*)var365
)->values
[12]=var399
;
7153 var400
= ((val
*(*)(val
* self
))(var365
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var365
); /* native_to_s on <var365:NativeArray[String]>*/
7155 varonce364
= var365
;
7157 nit___nit__AbstractCompilerVisitor___add(self
, var400
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
7162 if (var_res0
== NULL
) {
7163 var401
= 0; /* is null */
7165 var401
= 1; /* arg is null and recv is not */
7168 { /* Inline kernel#Object#!= (var_res0,((val*)NULL)) on <var_res0:nullable RuntimeVariable> */
7169 var_other104
= ((val
*)NULL
);
7171 var404
= ((short int(*)(val
* self
, val
* p0
))(var_res0
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res0
, var_other104
); /* == on <var_res0:nullable RuntimeVariable(RuntimeVariable)>*/
7176 RET_LABEL403
:(void)0;
7181 if (var_res
== NULL
) {
7182 var406
= 0; /* is null */
7184 var406
= 1; /* arg is null and recv is not */
7187 { /* Inline kernel#Object#!= (var_res,((val*)NULL)) on <var_res:nullable RuntimeVariable> */
7188 var_other104
= ((val
*)NULL
);
7190 var409
= ((short int(*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res
, var_other104
); /* == on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
7195 RET_LABEL408
:(void)0;
7199 if (unlikely(!var406
)) {
7200 PRINT_ERROR("Runtime error: %s", "Assert failed");
7201 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1498);
7205 nit___nit__AbstractCompilerVisitor___assign(self
, var_res0
, var_res
); /* Direct call abstract_compiler#AbstractCompilerVisitor#assign on <self:SeparateCompilerVisitor>*/
7210 if (likely(varonce411
!=NULL
)) {
7211 var412
= varonce411
;
7214 var414
= standard___standard__NativeString___to_s_with_length(var413
, 1l);
7216 varonce411
= var412
;
7219 nit___nit__AbstractCompilerVisitor___add(self
, var412
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
7226 /* method separate_compiler#SeparateCompilerVisitor#call for (self: SeparateCompilerVisitor, MMethodDef, MClassType, Array[RuntimeVariable]): nullable RuntimeVariable */
7227 val
* nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__call(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
7228 val
* var
/* : nullable RuntimeVariable */;
7229 val
* var_mmethoddef
/* var mmethoddef: MMethodDef */;
7230 val
* var_recvtype
/* var recvtype: MClassType */;
7231 val
* var_arguments
/* var arguments: Array[RuntimeVariable] */;
7232 long var1
/* : Int */;
7233 long var3
/* : Int */;
7234 val
* var4
/* : nullable MSignature */;
7235 val
* var6
/* : nullable MSignature */;
7236 long var7
/* : Int */;
7237 long var8
/* : Int */;
7238 short int var10
/* : Bool */;
7241 const char* var_class_name
;
7242 long var11
/* : Int */;
7243 short int var12
/* : Bool */;
7244 short int var14
/* : Bool */;
7245 val
* var15
/* : NativeArray[String] */;
7246 static val
* varonce
;
7247 static val
* varonce16
;
7248 val
* var17
/* : String */;
7249 char* var18
/* : NativeString */;
7250 val
* var19
/* : FlatString */;
7251 static val
* varonce20
;
7252 val
* var21
/* : String */;
7253 char* var22
/* : NativeString */;
7254 val
* var23
/* : FlatString */;
7255 static val
* varonce24
;
7256 val
* var25
/* : String */;
7257 char* var26
/* : NativeString */;
7258 val
* var27
/* : FlatString */;
7259 val
* var28
/* : String */;
7260 long var29
/* : Int */;
7261 long var31
/* : Int */;
7262 val
* var32
/* : String */;
7263 val
* var33
/* : String */;
7264 val
* var34
/* : nullable MSignature */;
7265 val
* var36
/* : nullable MSignature */;
7266 val
* var37
/* : nullable MType */;
7267 val
* var39
/* : nullable MType */;
7268 val
* var_ret
/* var ret: nullable MType */;
7269 short int var40
/* : Bool */;
7270 short int var41
/* : Bool */;
7271 val
* var_other
/* var other: nullable Object */;
7272 short int var43
/* : Bool */;
7273 short int var45
/* : Bool */;
7274 val
* var_res
/* var res: nullable RuntimeVariable */;
7275 val
* var46
/* : MClassDef */;
7276 val
* var48
/* : MClassDef */;
7277 val
* var49
/* : MClassType */;
7278 val
* var51
/* : MClassType */;
7279 val
* var52
/* : MClassDef */;
7280 val
* var54
/* : MClassDef */;
7281 val
* var55
/* : MClassType */;
7282 val
* var57
/* : MClassType */;
7283 val
* var58
/* : MClassDef */;
7284 val
* var60
/* : MClassDef */;
7285 val
* var61
/* : MModule */;
7286 val
* var63
/* : MModule */;
7287 val
* var64
/* : MType */;
7288 val
* var65
/* : RuntimeVariable */;
7289 short int var66
/* : Bool */;
7290 short int var67
/* : Bool */;
7291 short int var68
/* : Bool */;
7292 short int var70
/* : Bool */;
7293 short int var_
/* var : Bool */;
7294 val
* var71
/* : AbstractCompiler */;
7295 val
* var73
/* : AbstractCompiler */;
7296 val
* var74
/* : ModelBuilder */;
7297 val
* var76
/* : ModelBuilder */;
7298 val
* var77
/* : ToolContext */;
7299 val
* var79
/* : ToolContext */;
7300 val
* var80
/* : OptionBool */;
7301 val
* var82
/* : OptionBool */;
7302 val
* var83
/* : nullable Object */;
7303 val
* var85
/* : nullable Object */;
7304 short int var86
/* : Bool */;
7305 short int var87
/* : Bool */;
7306 short int var_88
/* var : Bool */;
7307 short int var89
/* : Bool */;
7308 val
* var90
/* : AbstractCompiler */;
7309 val
* var92
/* : AbstractCompiler */;
7310 val
* var93
/* : ModelBuilder */;
7311 val
* var95
/* : ModelBuilder */;
7312 val
* var96
/* : ToolContext */;
7313 val
* var98
/* : ToolContext */;
7314 val
* var99
/* : OptionBool */;
7315 val
* var101
/* : OptionBool */;
7316 val
* var102
/* : nullable Object */;
7317 val
* var104
/* : nullable Object */;
7318 short int var105
/* : Bool */;
7319 short int var_106
/* var : Bool */;
7320 short int var107
/* : Bool */;
7321 val
* var108
/* : AbstractCompiler */;
7322 val
* var110
/* : AbstractCompiler */;
7323 val
* var111
/* : ModelBuilder */;
7324 val
* var113
/* : ModelBuilder */;
7325 val
* var_114
/* var : ModelBuilder */;
7326 long var115
/* : Int */;
7327 long var117
/* : Int */;
7328 long var118
/* : Int */;
7329 short int var120
/* : Bool */;
7332 const char* var_class_name123
;
7333 long var124
/* : Int */;
7334 val
* var126
/* : AbstractCompiler */;
7335 val
* var128
/* : AbstractCompiler */;
7336 val
* var129
/* : ModelBuilder */;
7337 val
* var131
/* : ModelBuilder */;
7338 val
* var132
/* : ToolContext */;
7339 val
* var134
/* : ToolContext */;
7340 val
* var135
/* : OptionBool */;
7341 val
* var137
/* : OptionBool */;
7342 val
* var138
/* : nullable Object */;
7343 val
* var140
/* : nullable Object */;
7344 short int var141
/* : Bool */;
7345 static val
* varonce142
;
7346 val
* var143
/* : String */;
7347 char* var144
/* : NativeString */;
7348 val
* var145
/* : FlatString */;
7349 val
* var146
/* : StaticFrame */;
7350 val
* var_frame
/* var frame: StaticFrame */;
7351 static val
* varonce147
;
7352 val
* var148
/* : String */;
7353 char* var149
/* : NativeString */;
7354 val
* var150
/* : FlatString */;
7355 val
* var151
/* : String */;
7356 val
* var154
/* : nullable StaticFrame */;
7357 val
* var156
/* : nullable StaticFrame */;
7358 val
* var_old_frame
/* var old_frame: nullable StaticFrame */;
7359 val
* var159
/* : NativeArray[String] */;
7360 static val
* varonce158
;
7361 static val
* varonce160
;
7362 val
* var161
/* : String */;
7363 char* var162
/* : NativeString */;
7364 val
* var163
/* : FlatString */;
7365 static val
* varonce164
;
7366 val
* var165
/* : String */;
7367 char* var166
/* : NativeString */;
7368 val
* var167
/* : FlatString */;
7369 static val
* varonce168
;
7370 val
* var169
/* : String */;
7371 char* var170
/* : NativeString */;
7372 val
* var171
/* : FlatString */;
7373 static val
* varonce172
;
7374 val
* var173
/* : String */;
7375 char* var174
/* : NativeString */;
7376 val
* var175
/* : FlatString */;
7377 val
* var176
/* : String */;
7378 static val
* varonce177
;
7379 val
* var178
/* : String */;
7380 char* var179
/* : NativeString */;
7381 val
* var180
/* : FlatString */;
7382 val
* var181
/* : String */;
7383 val
* var182
/* : nullable Object */;
7384 val
* var183
/* : String */;
7385 val
* var184
/* : String */;
7386 val
* var185
/* : nullable RuntimeVariable */;
7387 val
* var187
/* : NativeArray[String] */;
7388 static val
* varonce186
;
7389 static val
* varonce188
;
7390 val
* var189
/* : String */;
7391 char* var190
/* : NativeString */;
7392 val
* var191
/* : FlatString */;
7393 val
* var192
/* : nullable String */;
7394 val
* var194
/* : nullable String */;
7395 val
* var195
/* : String */;
7396 static val
* varonce196
;
7397 val
* var197
/* : String */;
7398 char* var198
/* : NativeString */;
7399 val
* var199
/* : FlatString */;
7400 val
* var201
/* : AbstractCompiler */;
7401 val
* var203
/* : AbstractCompiler */;
7402 val
* var204
/* : ModelBuilder */;
7403 val
* var206
/* : ModelBuilder */;
7404 val
* var_207
/* var : ModelBuilder */;
7405 long var208
/* : Int */;
7406 long var210
/* : Int */;
7407 long var211
/* : Int */;
7408 short int var213
/* : Bool */;
7411 const char* var_class_name216
;
7412 long var217
/* : Int */;
7413 val
* var219
/* : AbstractCompiler */;
7414 val
* var221
/* : AbstractCompiler */;
7415 val
* var222
/* : ModelBuilder */;
7416 val
* var224
/* : ModelBuilder */;
7417 val
* var225
/* : ToolContext */;
7418 val
* var227
/* : ToolContext */;
7419 val
* var228
/* : OptionBool */;
7420 val
* var230
/* : OptionBool */;
7421 val
* var231
/* : nullable Object */;
7422 val
* var233
/* : nullable Object */;
7423 short int var234
/* : Bool */;
7424 static val
* varonce235
;
7425 val
* var236
/* : String */;
7426 char* var237
/* : NativeString */;
7427 val
* var238
/* : FlatString */;
7428 val
* var239
/* : String */;
7429 short int var240
/* : Bool */;
7430 short int var241
/* : Bool */;
7431 short int var243
/* : Bool */;
7432 short int var245
/* : Bool */;
7433 val
* var247
/* : NativeArray[String] */;
7434 static val
* varonce246
;
7435 static val
* varonce248
;
7436 val
* var249
/* : String */;
7437 char* var250
/* : NativeString */;
7438 val
* var251
/* : FlatString */;
7439 static val
* varonce252
;
7440 val
* var253
/* : String */;
7441 char* var254
/* : NativeString */;
7442 val
* var255
/* : FlatString */;
7443 static val
* varonce256
;
7444 val
* var257
/* : String */;
7445 char* var258
/* : NativeString */;
7446 val
* var259
/* : FlatString */;
7447 static val
* varonce260
;
7448 val
* var261
/* : String */;
7449 char* var262
/* : NativeString */;
7450 val
* var263
/* : FlatString */;
7451 val
* var264
/* : String */;
7452 static val
* varonce265
;
7453 val
* var266
/* : String */;
7454 char* var267
/* : NativeString */;
7455 val
* var268
/* : FlatString */;
7456 val
* var269
/* : String */;
7457 val
* var270
/* : String */;
7458 val
* var271
/* : nullable Object */;
7459 val
* var272
/* : String */;
7460 val
* var273
/* : String */;
7461 val
* var275
/* : NativeArray[String] */;
7462 static val
* varonce274
;
7463 static val
* varonce276
;
7464 val
* var277
/* : String */;
7465 char* var278
/* : NativeString */;
7466 val
* var279
/* : FlatString */;
7467 static val
* varonce280
;
7468 val
* var281
/* : String */;
7469 char* var282
/* : NativeString */;
7470 val
* var283
/* : FlatString */;
7471 static val
* varonce284
;
7472 val
* var285
/* : String */;
7473 char* var286
/* : NativeString */;
7474 val
* var287
/* : FlatString */;
7475 val
* var288
/* : String */;
7476 val
* var289
/* : String */;
7477 static val
* varonce290
;
7478 val
* var291
/* : String */;
7479 char* var292
/* : NativeString */;
7480 val
* var293
/* : FlatString */;
7481 val
* var294
/* : String */;
7482 val
* var295
/* : String */;
7483 var_mmethoddef
= p0
;
7487 { /* Inline array#AbstractArrayRead#length (var_arguments) on <var_arguments:Array[RuntimeVariable]> */
7488 var3
= var_arguments
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var_arguments:Array[RuntimeVariable]> */
7494 { /* Inline model#MMethodDef#msignature (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
7495 var6
= var_mmethoddef
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
; /* _msignature on <var_mmethoddef:MMethodDef> */
7501 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7502 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1510);
7505 var7
= nit___nit__MSignature___arity(var4
);
7508 { /* Inline kernel#Int#+ (var7,1l) on <var7:Int> */
7509 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
7510 /* <1l:Int> isa OTHER */
7511 var10
= 1; /* easy <1l:Int> isa OTHER*/
7512 if (unlikely(!var10
)) {
7513 var_class_name
= type_standard__Int
.name
;
7514 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
7515 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
7525 { /* Inline kernel#Int#== (var1,var8) on <var1:Int> */
7526 var14
= var1
== var8
;
7529 RET_LABEL13
:(void)0;
7532 if (unlikely(!var12
)) {
7533 if (unlikely(varonce
==NULL
)) {
7534 var15
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
7535 if (likely(varonce16
!=NULL
)) {
7538 var18
= "Invalid arity for ";
7539 var19
= standard___standard__NativeString___to_s_with_length(var18
, 18l);
7543 ((struct instance_standard__NativeArray
*)var15
)->values
[0]=var17
;
7544 if (likely(varonce20
!=NULL
)) {
7548 var23
= standard___standard__NativeString___to_s_with_length(var22
, 2l);
7552 ((struct instance_standard__NativeArray
*)var15
)->values
[2]=var21
;
7553 if (likely(varonce24
!=NULL
)) {
7556 var26
= " arguments given.";
7557 var27
= standard___standard__NativeString___to_s_with_length(var26
, 17l);
7561 ((struct instance_standard__NativeArray
*)var15
)->values
[4]=var25
;
7567 var28
= ((val
*(*)(val
* self
))(var_mmethoddef
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmethoddef
); /* to_s on <var_mmethoddef:MMethodDef>*/
7569 ((struct instance_standard__NativeArray
*)var15
)->values
[1]=var28
;
7571 { /* Inline array#AbstractArrayRead#length (var_arguments) on <var_arguments:Array[RuntimeVariable]> */
7572 var31
= var_arguments
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var_arguments:Array[RuntimeVariable]> */
7574 RET_LABEL30
:(void)0;
7577 var32
= standard__string___Int___Object__to_s(var29
);
7578 ((struct instance_standard__NativeArray
*)var15
)->values
[3]=var32
;
7580 var33
= ((val
*(*)(val
* self
))(var15
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var15
); /* native_to_s on <var15:NativeArray[String]>*/
7584 nit___nit__AbstractCompilerVisitor___debug(self
, var33
); /* Direct call abstract_compiler#AbstractCompilerVisitor#debug on <self:SeparateCompilerVisitor>*/
7586 PRINT_ERROR("Runtime error: %s", "Assert failed");
7587 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1510);
7591 { /* Inline model#MMethodDef#msignature (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
7592 var36
= var_mmethoddef
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
; /* _msignature on <var_mmethoddef:MMethodDef> */
7594 RET_LABEL35
:(void)0;
7597 if (var34
== NULL
) {
7598 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7599 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1513);
7602 { /* Inline model#MSignature#return_mtype (var34) on <var34:nullable MSignature> */
7603 if (unlikely(var34
== NULL
)) {
7604 PRINT_ERROR("Runtime error: %s", "Receiver is null");
7605 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1768);
7608 var39
= var34
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var34:nullable MSignature> */
7610 RET_LABEL38
:(void)0;
7614 if (var_ret
== NULL
) {
7615 var40
= 1; /* is null */
7617 var40
= 0; /* arg is null but recv is not */
7620 { /* Inline kernel#Object#== (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
7621 var_other
= ((val
*)NULL
);
7623 { /* Inline kernel#Object#is_same_instance (var_ret,var_other) on <var_ret:nullable MType(MType)> */
7624 var45
= var_ret
== var_other
;
7627 RET_LABEL44
:(void)0;
7632 RET_LABEL42
:(void)0;
7637 var_res
= ((val
*)NULL
);
7640 { /* Inline model#MPropDef#mclassdef (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
7641 var48
= var_mmethoddef
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mmethoddef:MMethodDef> */
7642 if (unlikely(var48
== NULL
)) {
7643 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
7644 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
7648 RET_LABEL47
:(void)0;
7652 { /* Inline model#MClassDef#bound_mtype (var46) on <var46:MClassDef> */
7653 var51
= var46
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var46:MClassDef> */
7654 if (unlikely(var51
== NULL
)) {
7655 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
7656 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 556);
7660 RET_LABEL50
:(void)0;
7664 { /* Inline model#MPropDef#mclassdef (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
7665 var54
= var_mmethoddef
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mmethoddef:MMethodDef> */
7666 if (unlikely(var54
== NULL
)) {
7667 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
7668 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
7672 RET_LABEL53
:(void)0;
7676 { /* Inline model#MClassDef#bound_mtype (var52) on <var52:MClassDef> */
7677 var57
= var52
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var52:MClassDef> */
7678 if (unlikely(var57
== NULL
)) {
7679 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
7680 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 556);
7684 RET_LABEL56
:(void)0;
7688 { /* Inline model#MPropDef#mclassdef (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
7689 var60
= var_mmethoddef
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mmethoddef:MMethodDef> */
7690 if (unlikely(var60
== NULL
)) {
7691 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
7692 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
7696 RET_LABEL59
:(void)0;
7700 { /* Inline model#MClassDef#mmodule (var58) on <var58:MClassDef> */
7701 var63
= var58
->attrs
[COLOR_nit__model__MClassDef___mmodule
].val
; /* _mmodule on <var58:MClassDef> */
7702 if (unlikely(var63
== NULL
)) {
7703 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
7704 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 550);
7708 RET_LABEL62
:(void)0;
7712 var64
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
, val
* p2
, short int p3
))(var_ret
->class->vft
[COLOR_nit__model__MType__resolve_for
]))(var_ret
, var49
, var55
, var61
, 1); /* resolve_for on <var_ret:nullable MType(MType)>*/
7716 var65
= nit___nit__AbstractCompilerVisitor___new_var(self
, var_ret
);
7721 { /* Inline model#MMethodDef#is_intern (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
7722 var70
= var_mmethoddef
->attrs
[COLOR_nit__model__MMethodDef___is_intern
].s
; /* _is_intern on <var_mmethoddef:MMethodDef> */
7724 RET_LABEL69
:(void)0;
7730 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
7731 var73
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
7732 if (unlikely(var73
== NULL
)) {
7733 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
7734 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
7738 RET_LABEL72
:(void)0;
7742 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var71) on <var71:AbstractCompiler(SeparateCompiler)> */
7743 var76
= var71
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var71:AbstractCompiler(SeparateCompiler)> */
7744 if (unlikely(var76
== NULL
)) {
7745 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
7746 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
7750 RET_LABEL75
:(void)0;
7754 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var74) on <var74:ModelBuilder> */
7755 var79
= var74
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var74:ModelBuilder> */
7756 if (unlikely(var79
== NULL
)) {
7757 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
7758 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
7762 RET_LABEL78
:(void)0;
7766 { /* Inline separate_compiler#ToolContext#opt_no_inline_intern (var77) on <var77:ToolContext> */
7767 var82
= var77
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_no_inline_intern
].val
; /* _opt_no_inline_intern on <var77:ToolContext> */
7768 if (unlikely(var82
== NULL
)) {
7769 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_inline_intern");
7770 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 26);
7774 RET_LABEL81
:(void)0;
7778 { /* Inline opts#Option#value (var80) on <var80:OptionBool> */
7779 var85
= var80
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var80:OptionBool> */
7781 RET_LABEL84
:(void)0;
7784 var86
= (short int)((long)(var83
)>>2);
7795 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
7796 var92
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
7797 if (unlikely(var92
== NULL
)) {
7798 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
7799 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
7803 RET_LABEL91
:(void)0;
7807 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var90) on <var90:AbstractCompiler(SeparateCompiler)> */
7808 var95
= var90
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var90:AbstractCompiler(SeparateCompiler)> */
7809 if (unlikely(var95
== NULL
)) {
7810 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
7811 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
7815 RET_LABEL94
:(void)0;
7819 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var93) on <var93:ModelBuilder> */
7820 var98
= var93
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var93:ModelBuilder> */
7821 if (unlikely(var98
== NULL
)) {
7822 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
7823 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
7827 RET_LABEL97
:(void)0;
7831 { /* Inline separate_compiler#ToolContext#opt_inline_some_methods (var96) on <var96:ToolContext> */
7832 var101
= var96
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_inline_some_methods
].val
; /* _opt_inline_some_methods on <var96:ToolContext> */
7833 if (unlikely(var101
== NULL
)) {
7834 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_inline_some_methods");
7835 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 48);
7839 RET_LABEL100
:(void)0;
7843 { /* Inline opts#Option#value (var99) on <var99:OptionBool> */
7844 var104
= var99
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var99:OptionBool> */
7846 RET_LABEL103
:(void)0;
7849 var105
= (short int)((long)(var102
)>>2);
7853 var107
= nit__abstract_compiler___MMethodDef___can_inline(var_mmethoddef
, self
);
7863 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
7864 var110
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
7865 if (unlikely(var110
== NULL
)) {
7866 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
7867 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
7871 RET_LABEL109
:(void)0;
7875 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var108) on <var108:AbstractCompiler(SeparateCompiler)> */
7876 var113
= var108
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var108:AbstractCompiler(SeparateCompiler)> */
7877 if (unlikely(var113
== NULL
)) {
7878 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
7879 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
7883 RET_LABEL112
:(void)0;
7888 { /* Inline separate_compiler#ModelBuilder#nb_invok_by_inline (var_114) on <var_114:ModelBuilder> */
7889 var117
= var_114
->attrs
[COLOR_nit__separate_compiler__ModelBuilder___nb_invok_by_inline
].l
; /* _nb_invok_by_inline on <var_114:ModelBuilder> */
7891 RET_LABEL116
:(void)0;
7895 { /* Inline kernel#Int#+ (var115,1l) on <var115:Int> */
7896 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
7897 /* <1l:Int> isa OTHER */
7898 var120
= 1; /* easy <1l:Int> isa OTHER*/
7899 if (unlikely(!var120
)) {
7900 var_class_name123
= type_standard__Int
.name
;
7901 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name123
);
7902 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
7905 var124
= var115
+ 1l;
7908 RET_LABEL119
:(void)0;
7912 { /* Inline separate_compiler#ModelBuilder#nb_invok_by_inline= (var_114,var118) on <var_114:ModelBuilder> */
7913 var_114
->attrs
[COLOR_nit__separate_compiler__ModelBuilder___nb_invok_by_inline
].l
= var118
; /* _nb_invok_by_inline on <var_114:ModelBuilder> */
7914 RET_LABEL125
:(void)0;
7918 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
7919 var128
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
7920 if (unlikely(var128
== NULL
)) {
7921 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
7922 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
7926 RET_LABEL127
:(void)0;
7930 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var126) on <var126:AbstractCompiler(SeparateCompiler)> */
7931 var131
= var126
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var126:AbstractCompiler(SeparateCompiler)> */
7932 if (unlikely(var131
== NULL
)) {
7933 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
7934 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
7938 RET_LABEL130
:(void)0;
7942 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var129) on <var129:ModelBuilder> */
7943 var134
= var129
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var129:ModelBuilder> */
7944 if (unlikely(var134
== NULL
)) {
7945 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
7946 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
7950 RET_LABEL133
:(void)0;
7954 { /* Inline abstract_compiler#ToolContext#opt_invocation_metrics (var132) on <var132:ToolContext> */
7955 var137
= var132
->attrs
[COLOR_nit__abstract_compiler__ToolContext___opt_invocation_metrics
].val
; /* _opt_invocation_metrics on <var132:ToolContext> */
7956 if (unlikely(var137
== NULL
)) {
7957 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_invocation_metrics");
7958 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 62);
7962 RET_LABEL136
:(void)0;
7966 { /* Inline opts#Option#value (var135) on <var135:OptionBool> */
7967 var140
= var135
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var135:OptionBool> */
7969 RET_LABEL139
:(void)0;
7972 var141
= (short int)((long)(var138
)>>2);
7974 if (likely(varonce142
!=NULL
)) {
7975 var143
= varonce142
;
7977 var144
= "count_invoke_by_inline++;";
7978 var145
= standard___standard__NativeString___to_s_with_length(var144
, 25l);
7980 varonce142
= var143
;
7983 nit___nit__AbstractCompilerVisitor___add(self
, var143
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
7987 var146
= NEW_nit__StaticFrame(&type_nit__StaticFrame
);
7989 ((void(*)(val
* self
, val
* p0
))(var146
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__visitor_61d
]))(var146
, self
); /* visitor= on <var146:StaticFrame>*/
7992 ((void(*)(val
* self
, val
* p0
))(var146
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__mpropdef_61d
]))(var146
, var_mmethoddef
); /* mpropdef= on <var146:StaticFrame>*/
7995 ((void(*)(val
* self
, val
* p0
))(var146
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__receiver_61d
]))(var146
, var_recvtype
); /* receiver= on <var146:StaticFrame>*/
7998 ((void(*)(val
* self
, val
* p0
))(var146
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__arguments_61d
]))(var146
, var_arguments
); /* arguments= on <var146:StaticFrame>*/
8001 ((void(*)(val
* self
))(var146
->class->vft
[COLOR_standard__kernel__Object__init
]))(var146
); /* init on <var146:StaticFrame>*/
8004 if (likely(varonce147
!=NULL
)) {
8005 var148
= varonce147
;
8007 var149
= "RET_LABEL";
8008 var150
= standard___standard__NativeString___to_s_with_length(var149
, 9l);
8010 varonce147
= var148
;
8013 var151
= nit___nit__AbstractCompilerVisitor___get_name(self
, var148
);
8016 { /* Inline abstract_compiler#StaticFrame#returnlabel= (var_frame,var151) on <var_frame:StaticFrame> */
8017 var_frame
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___returnlabel
].val
= var151
; /* _returnlabel on <var_frame:StaticFrame> */
8018 RET_LABEL152
:(void)0;
8022 { /* Inline abstract_compiler#StaticFrame#returnvar= (var_frame,var_res) on <var_frame:StaticFrame> */
8023 var_frame
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___returnvar
].val
= var_res
; /* _returnvar on <var_frame:StaticFrame> */
8024 RET_LABEL153
:(void)0;
8028 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
8029 var156
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
8031 RET_LABEL155
:(void)0;
8034 var_old_frame
= var154
;
8036 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame= (self,var_frame) on <self:SeparateCompilerVisitor> */
8037 self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
= var_frame
; /* _frame on <self:SeparateCompilerVisitor> */
8038 RET_LABEL157
:(void)0;
8041 if (unlikely(varonce158
==NULL
)) {
8042 var159
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
8043 if (likely(varonce160
!=NULL
)) {
8044 var161
= varonce160
;
8046 var162
= "{ /* Inline ";
8047 var163
= standard___standard__NativeString___to_s_with_length(var162
, 12l);
8049 varonce160
= var161
;
8051 ((struct instance_standard__NativeArray
*)var159
)->values
[0]=var161
;
8052 if (likely(varonce164
!=NULL
)) {
8053 var165
= varonce164
;
8056 var167
= standard___standard__NativeString___to_s_with_length(var166
, 2l);
8058 varonce164
= var165
;
8060 ((struct instance_standard__NativeArray
*)var159
)->values
[2]=var165
;
8061 if (likely(varonce168
!=NULL
)) {
8062 var169
= varonce168
;
8065 var171
= standard___standard__NativeString___to_s_with_length(var170
, 5l);
8067 varonce168
= var169
;
8069 ((struct instance_standard__NativeArray
*)var159
)->values
[4]=var169
;
8070 if (likely(varonce172
!=NULL
)) {
8071 var173
= varonce172
;
8074 var175
= standard___standard__NativeString___to_s_with_length(var174
, 3l);
8076 varonce172
= var173
;
8078 ((struct instance_standard__NativeArray
*)var159
)->values
[6]=var173
;
8080 var159
= varonce158
;
8084 var176
= ((val
*(*)(val
* self
))(var_mmethoddef
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmethoddef
); /* to_s on <var_mmethoddef:MMethodDef>*/
8086 ((struct instance_standard__NativeArray
*)var159
)->values
[1]=var176
;
8087 if (likely(varonce177
!=NULL
)) {
8088 var178
= varonce177
;
8091 var180
= standard___standard__NativeString___to_s_with_length(var179
, 1l);
8093 varonce177
= var178
;
8096 var181
= standard__string___Collection___join(var_arguments
, var178
);
8098 ((struct instance_standard__NativeArray
*)var159
)->values
[3]=var181
;
8100 var182
= standard___standard__SequenceRead___Collection__first(var_arguments
);
8103 var183
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var182
);
8105 ((struct instance_standard__NativeArray
*)var159
)->values
[5]=var183
;
8107 var184
= ((val
*(*)(val
* self
))(var159
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var159
); /* native_to_s on <var159:NativeArray[String]>*/
8109 varonce158
= var159
;
8111 nit___nit__AbstractCompilerVisitor___add(self
, var184
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8114 var185
= nit__abstract_compiler___MMethodDef___compile_inside_to_c(var_mmethoddef
, self
, var_arguments
);
8116 if (unlikely(varonce186
==NULL
)) {
8117 var187
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
8118 if (likely(varonce188
!=NULL
)) {
8119 var189
= varonce188
;
8121 var190
= ":(void)0;";
8122 var191
= standard___standard__NativeString___to_s_with_length(var190
, 9l);
8124 varonce188
= var189
;
8126 ((struct instance_standard__NativeArray
*)var187
)->values
[1]=var189
;
8128 var187
= varonce186
;
8132 { /* Inline abstract_compiler#StaticFrame#returnlabel (var_frame) on <var_frame:StaticFrame> */
8133 var194
= var_frame
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___returnlabel
].val
; /* _returnlabel on <var_frame:StaticFrame> */
8135 RET_LABEL193
:(void)0;
8138 if (unlikely(var192
== NULL
)) {
8139 PRINT_ERROR("Runtime error: %s", "Cast failed");
8140 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1532);
8143 ((struct instance_standard__NativeArray
*)var187
)->values
[0]=var192
;
8145 var195
= ((val
*(*)(val
* self
))(var187
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var187
); /* native_to_s on <var187:NativeArray[String]>*/
8147 varonce186
= var187
;
8149 nit___nit__AbstractCompilerVisitor___add(self
, var195
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8151 if (likely(varonce196
!=NULL
)) {
8152 var197
= varonce196
;
8155 var199
= standard___standard__NativeString___to_s_with_length(var198
, 1l);
8157 varonce196
= var197
;
8160 nit___nit__AbstractCompilerVisitor___add(self
, var197
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8163 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame= (self,var_old_frame) on <self:SeparateCompilerVisitor> */
8164 self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
= var_old_frame
; /* _frame on <self:SeparateCompilerVisitor> */
8165 RET_LABEL200
:(void)0;
8173 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
8174 var203
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
8175 if (unlikely(var203
== NULL
)) {
8176 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8177 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
8181 RET_LABEL202
:(void)0;
8185 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var201) on <var201:AbstractCompiler(SeparateCompiler)> */
8186 var206
= var201
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var201:AbstractCompiler(SeparateCompiler)> */
8187 if (unlikely(var206
== NULL
)) {
8188 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
8189 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
8193 RET_LABEL205
:(void)0;
8198 { /* Inline separate_compiler#ModelBuilder#nb_invok_by_direct (var_207) on <var_207:ModelBuilder> */
8199 var210
= var_207
->attrs
[COLOR_nit__separate_compiler__ModelBuilder___nb_invok_by_direct
].l
; /* _nb_invok_by_direct on <var_207:ModelBuilder> */
8201 RET_LABEL209
:(void)0;
8205 { /* Inline kernel#Int#+ (var208,1l) on <var208:Int> */
8206 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
8207 /* <1l:Int> isa OTHER */
8208 var213
= 1; /* easy <1l:Int> isa OTHER*/
8209 if (unlikely(!var213
)) {
8210 var_class_name216
= type_standard__Int
.name
;
8211 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name216
);
8212 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 537);
8215 var217
= var208
+ 1l;
8218 RET_LABEL212
:(void)0;
8222 { /* Inline separate_compiler#ModelBuilder#nb_invok_by_direct= (var_207,var211) on <var_207:ModelBuilder> */
8223 var_207
->attrs
[COLOR_nit__separate_compiler__ModelBuilder___nb_invok_by_direct
].l
= var211
; /* _nb_invok_by_direct on <var_207:ModelBuilder> */
8224 RET_LABEL218
:(void)0;
8228 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
8229 var221
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
8230 if (unlikely(var221
== NULL
)) {
8231 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8232 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
8236 RET_LABEL220
:(void)0;
8240 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var219) on <var219:AbstractCompiler(SeparateCompiler)> */
8241 var224
= var219
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var219:AbstractCompiler(SeparateCompiler)> */
8242 if (unlikely(var224
== NULL
)) {
8243 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
8244 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
8248 RET_LABEL223
:(void)0;
8252 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var222) on <var222:ModelBuilder> */
8253 var227
= var222
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var222:ModelBuilder> */
8254 if (unlikely(var227
== NULL
)) {
8255 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
8256 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
8260 RET_LABEL226
:(void)0;
8264 { /* Inline abstract_compiler#ToolContext#opt_invocation_metrics (var225) on <var225:ToolContext> */
8265 var230
= var225
->attrs
[COLOR_nit__abstract_compiler__ToolContext___opt_invocation_metrics
].val
; /* _opt_invocation_metrics on <var225:ToolContext> */
8266 if (unlikely(var230
== NULL
)) {
8267 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_invocation_metrics");
8268 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 62);
8272 RET_LABEL229
:(void)0;
8276 { /* Inline opts#Option#value (var228) on <var228:OptionBool> */
8277 var233
= var228
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var228:OptionBool> */
8279 RET_LABEL232
:(void)0;
8282 var234
= (short int)((long)(var231
)>>2);
8284 if (likely(varonce235
!=NULL
)) {
8285 var236
= varonce235
;
8287 var237
= "count_invoke_by_direct++;";
8288 var238
= standard___standard__NativeString___to_s_with_length(var237
, 25l);
8290 varonce235
= var236
;
8293 nit___nit__AbstractCompilerVisitor___add(self
, var236
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8298 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__adapt_signature(self
, var_mmethoddef
, var_arguments
); /* Direct call separate_compiler#SeparateCompilerVisitor#adapt_signature on <self:SeparateCompilerVisitor>*/
8301 var239
= nit___nit__MPropDef___nit__model_base__MEntity__c_name(var_mmethoddef
);
8304 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var239
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
8306 if (var_res
== NULL
) {
8307 var240
= 1; /* is null */
8309 var240
= 0; /* arg is null but recv is not */
8312 { /* Inline kernel#Object#== (var_res,((val*)NULL)) on <var_res:nullable RuntimeVariable> */
8313 var_other
= ((val
*)NULL
);
8315 { /* Inline kernel#Object#is_same_instance (var_res,var_other) on <var_res:nullable RuntimeVariable(RuntimeVariable)> */
8316 var245
= var_res
== var_other
;
8319 RET_LABEL244
:(void)0;
8324 RET_LABEL242
:(void)0;
8329 if (unlikely(varonce246
==NULL
)) {
8330 var247
= NEW_standard__NativeArray(8l, &type_standard__NativeArray__standard__String
);
8331 if (likely(varonce248
!=NULL
)) {
8332 var249
= varonce248
;
8335 var251
= standard___standard__NativeString___to_s_with_length(var250
, 1l);
8337 varonce248
= var249
;
8339 ((struct instance_standard__NativeArray
*)var247
)->values
[1]=var249
;
8340 if (likely(varonce252
!=NULL
)) {
8341 var253
= varonce252
;
8343 var254
= "); /* Direct call ";
8344 var255
= standard___standard__NativeString___to_s_with_length(var254
, 18l);
8346 varonce252
= var253
;
8348 ((struct instance_standard__NativeArray
*)var247
)->values
[3]=var253
;
8349 if (likely(varonce256
!=NULL
)) {
8350 var257
= varonce256
;
8353 var259
= standard___standard__NativeString___to_s_with_length(var258
, 4l);
8355 varonce256
= var257
;
8357 ((struct instance_standard__NativeArray
*)var247
)->values
[5]=var257
;
8358 if (likely(varonce260
!=NULL
)) {
8359 var261
= varonce260
;
8362 var263
= standard___standard__NativeString___to_s_with_length(var262
, 2l);
8364 varonce260
= var261
;
8366 ((struct instance_standard__NativeArray
*)var247
)->values
[7]=var261
;
8368 var247
= varonce246
;
8372 var264
= nit___nit__MPropDef___nit__model_base__MEntity__c_name(var_mmethoddef
);
8374 ((struct instance_standard__NativeArray
*)var247
)->values
[0]=var264
;
8375 if (likely(varonce265
!=NULL
)) {
8376 var266
= varonce265
;
8379 var268
= standard___standard__NativeString___to_s_with_length(var267
, 2l);
8381 varonce265
= var266
;
8384 var269
= standard__string___Collection___join(var_arguments
, var266
);
8386 ((struct instance_standard__NativeArray
*)var247
)->values
[2]=var269
;
8388 var270
= ((val
*(*)(val
* self
))(var_mmethoddef
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mmethoddef
); /* to_s on <var_mmethoddef:MMethodDef>*/
8390 ((struct instance_standard__NativeArray
*)var247
)->values
[4]=var270
;
8392 var271
= standard___standard__SequenceRead___Collection__first(var_arguments
);
8395 var272
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var271
);
8397 ((struct instance_standard__NativeArray
*)var247
)->values
[6]=var272
;
8399 var273
= ((val
*(*)(val
* self
))(var247
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var247
); /* native_to_s on <var247:NativeArray[String]>*/
8401 varonce246
= var247
;
8403 nit___nit__AbstractCompilerVisitor___add(self
, var273
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8408 if (unlikely(varonce274
==NULL
)) {
8409 var275
= NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String
);
8410 if (likely(varonce276
!=NULL
)) {
8411 var277
= varonce276
;
8414 var279
= standard___standard__NativeString___to_s_with_length(var278
, 3l);
8416 varonce276
= var277
;
8418 ((struct instance_standard__NativeArray
*)var275
)->values
[1]=var277
;
8419 if (likely(varonce280
!=NULL
)) {
8420 var281
= varonce280
;
8423 var283
= standard___standard__NativeString___to_s_with_length(var282
, 1l);
8425 varonce280
= var281
;
8427 ((struct instance_standard__NativeArray
*)var275
)->values
[3]=var281
;
8428 if (likely(varonce284
!=NULL
)) {
8429 var285
= varonce284
;
8432 var287
= standard___standard__NativeString___to_s_with_length(var286
, 2l);
8434 varonce284
= var285
;
8436 ((struct instance_standard__NativeArray
*)var275
)->values
[5]=var285
;
8438 var275
= varonce274
;
8442 var288
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
8444 ((struct instance_standard__NativeArray
*)var275
)->values
[0]=var288
;
8446 var289
= nit___nit__MPropDef___nit__model_base__MEntity__c_name(var_mmethoddef
);
8448 ((struct instance_standard__NativeArray
*)var275
)->values
[2]=var289
;
8449 if (likely(varonce290
!=NULL
)) {
8450 var291
= varonce290
;
8453 var293
= standard___standard__NativeString___to_s_with_length(var292
, 2l);
8455 varonce290
= var291
;
8458 var294
= standard__string___Collection___join(var_arguments
, var291
);
8460 ((struct instance_standard__NativeArray
*)var275
)->values
[4]=var294
;
8462 var295
= ((val
*(*)(val
* self
))(var275
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var275
); /* native_to_s on <var275:NativeArray[String]>*/
8464 varonce274
= var275
;
8466 nit___nit__AbstractCompilerVisitor___add(self
, var295
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8474 /* method separate_compiler#SeparateCompilerVisitor#supercall for (self: SeparateCompilerVisitor, MMethodDef, MClassType, Array[RuntimeVariable]): nullable RuntimeVariable */
8475 val
* nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__supercall(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
8476 val
* var
/* : nullable RuntimeVariable */;
8477 val
* var_m
/* var m: MMethodDef */;
8478 val
* var_recvtype
/* var recvtype: MClassType */;
8479 val
* var_arguments
/* var arguments: Array[RuntimeVariable] */;
8480 val
* var1
/* : nullable Object */;
8481 val
* var2
/* : MType */;
8482 val
* var4
/* : MType */;
8483 short int var5
/* : Bool */;
8484 val
* var6
/* : AbstractCompiler */;
8485 val
* var8
/* : AbstractCompiler */;
8486 val
* var9
/* : MModule */;
8487 val
* var11
/* : MModule */;
8488 val
* var_main
/* var main: MModule */;
8489 val
* var12
/* : AbstractCompiler */;
8490 val
* var14
/* : AbstractCompiler */;
8491 val
* var15
/* : AbstractCompiler */;
8492 val
* var17
/* : AbstractCompiler */;
8493 val
* var18
/* : MModule */;
8494 val
* var20
/* : MModule */;
8495 val
* var22
/* : nullable RuntimeVariable */;
8496 val
* var_res
/* var res: nullable RuntimeVariable */;
8497 val
* var23
/* : AbstractCompiler */;
8498 val
* var25
/* : AbstractCompiler */;
8499 val
* var27
/* : MProperty */;
8500 val
* var29
/* : MProperty */;
8501 val
* var30
/* : nullable RuntimeVariable */;
8506 var1
= standard___standard__SequenceRead___Collection__first(var_arguments
);
8509 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var1) on <var1:nullable Object(RuntimeVariable)> */
8510 var4
= var1
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var1:nullable Object(RuntimeVariable)> */
8511 if (unlikely(var4
== NULL
)) {
8512 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
8513 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1787);
8521 var5
= ((short int(*)(val
* self
))(var2
->class->vft
[COLOR_nit__abstract_compiler__MType__is_c_primitive
]))(var2
); /* is_c_primitive on <var2:MType>*/
8525 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
8526 var8
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
8527 if (unlikely(var8
== NULL
)) {
8528 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8529 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
8537 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var6) on <var6:AbstractCompiler(SeparateCompiler)> */
8538 var11
= var6
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var6:AbstractCompiler(SeparateCompiler)> */
8539 if (unlikely(var11
== NULL
)) {
8540 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
8541 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 515);
8545 RET_LABEL10
:(void)0;
8550 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
8551 var14
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
8552 if (unlikely(var14
== NULL
)) {
8553 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8554 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
8558 RET_LABEL13
:(void)0;
8562 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
8563 var17
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
8564 if (unlikely(var17
== NULL
)) {
8565 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8566 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
8570 RET_LABEL16
:(void)0;
8574 { /* Inline abstract_compiler#AbstractCompiler#realmainmodule (var15) on <var15:AbstractCompiler(SeparateCompiler)> */
8575 var20
= var15
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___realmainmodule
].val
; /* _realmainmodule on <var15:AbstractCompiler(SeparateCompiler)> */
8576 if (unlikely(var20
== NULL
)) {
8577 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _realmainmodule");
8578 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 519);
8582 RET_LABEL19
:(void)0;
8586 { /* Inline abstract_compiler#AbstractCompiler#mainmodule= (var12,var18) on <var12:AbstractCompiler(SeparateCompiler)> */
8587 var12
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
= var18
; /* _mainmodule on <var12:AbstractCompiler(SeparateCompiler)> */
8588 RET_LABEL21
:(void)0;
8592 var22
= nit___nit__AbstractCompilerVisitor___monomorphic_super_send(self
, var_m
, var_recvtype
, var_arguments
);
8596 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
8597 var25
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
8598 if (unlikely(var25
== NULL
)) {
8599 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8600 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
8604 RET_LABEL24
:(void)0;
8608 { /* Inline abstract_compiler#AbstractCompiler#mainmodule= (var23,var_main) on <var23:AbstractCompiler(SeparateCompiler)> */
8609 var23
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
= var_main
; /* _mainmodule on <var23:AbstractCompiler(SeparateCompiler)> */
8610 RET_LABEL26
:(void)0;
8618 { /* Inline model#MPropDef#mproperty (var_m) on <var_m:MMethodDef> */
8619 var29
= var_m
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <var_m:MMethodDef> */
8620 if (unlikely(var29
== NULL
)) {
8621 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
8622 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2212);
8626 RET_LABEL28
:(void)0;
8630 var30
= nit___nit__SeparateCompilerVisitor___table_send(self
, var27
, var_arguments
, var_m
);
8637 /* method separate_compiler#SeparateCompilerVisitor#vararg_instance for (self: SeparateCompilerVisitor, MPropDef, RuntimeVariable, Array[RuntimeVariable], MType): RuntimeVariable */
8638 val
* nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__vararg_instance(val
* self
, val
* p0
, val
* p1
, val
* p2
, val
* p3
) {
8639 val
* var
/* : RuntimeVariable */;
8640 val
* var_mpropdef
/* var mpropdef: MPropDef */;
8641 val
* var_recv
/* var recv: RuntimeVariable */;
8642 val
* var_varargs
/* var varargs: Array[RuntimeVariable] */;
8643 val
* var_elttype
/* var elttype: MType */;
8644 val
* var1
/* : nullable StaticFrame */;
8645 val
* var3
/* : nullable StaticFrame */;
8646 val
* var_old_frame
/* var old_frame: nullable StaticFrame */;
8647 val
* var4
/* : StaticFrame */;
8648 val
* var5
/* : MClassDef */;
8649 val
* var7
/* : MClassDef */;
8650 val
* var8
/* : MClassType */;
8651 val
* var10
/* : MClassType */;
8652 val
* var11
/* : Array[RuntimeVariable] */;
8653 val
* var_
/* var : Array[RuntimeVariable] */;
8654 val
* var_frame
/* var frame: StaticFrame */;
8655 val
* var13
/* : RuntimeVariable */;
8656 val
* var_res
/* var res: RuntimeVariable */;
8662 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
8663 var3
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
8668 var_old_frame
= var1
;
8669 var4
= NEW_nit__StaticFrame(&type_nit__StaticFrame
);
8671 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:MPropDef> */
8672 var7
= var_mpropdef
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mpropdef:MPropDef> */
8673 if (unlikely(var7
== NULL
)) {
8674 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
8675 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
8683 { /* Inline model#MClassDef#bound_mtype (var5) on <var5:MClassDef> */
8684 var10
= var5
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var5:MClassDef> */
8685 if (unlikely(var10
== NULL
)) {
8686 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
8687 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 556);
8694 var11
= NEW_standard__Array(&type_standard__Array__nit__RuntimeVariable
);
8696 standard___standard__Array___with_capacity(var11
, 1l); /* Direct call array#Array#with_capacity on <var11:Array[RuntimeVariable]>*/
8700 standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(var_
, var_recv
); /* Direct call array#AbstractArray#push on <var_:Array[RuntimeVariable]>*/
8703 ((void(*)(val
* self
, val
* p0
))(var4
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__visitor_61d
]))(var4
, self
); /* visitor= on <var4:StaticFrame>*/
8706 ((void(*)(val
* self
, val
* p0
))(var4
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__mpropdef_61d
]))(var4
, var_mpropdef
); /* mpropdef= on <var4:StaticFrame>*/
8709 ((void(*)(val
* self
, val
* p0
))(var4
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__receiver_61d
]))(var4
, var8
); /* receiver= on <var4:StaticFrame>*/
8712 ((void(*)(val
* self
, val
* p0
))(var4
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__arguments_61d
]))(var4
, var_
); /* arguments= on <var4:StaticFrame>*/
8715 ((void(*)(val
* self
))(var4
->class->vft
[COLOR_standard__kernel__Object__init
]))(var4
); /* init on <var4:StaticFrame>*/
8719 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame= (self,var_frame) on <self:SeparateCompilerVisitor> */
8720 self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
= var_frame
; /* _frame on <self:SeparateCompilerVisitor> */
8721 RET_LABEL12
:(void)0;
8725 var13
= nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__array_instance(self
, var_varargs
, var_elttype
);
8729 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame= (self,var_old_frame) on <self:SeparateCompilerVisitor> */
8730 self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
= var_old_frame
; /* _frame on <self:SeparateCompilerVisitor> */
8731 RET_LABEL14
:(void)0;
8739 /* method separate_compiler#SeparateCompilerVisitor#isset_attribute for (self: SeparateCompilerVisitor, MAttribute, RuntimeVariable): RuntimeVariable */
8740 val
* nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__isset_attribute(val
* self
, val
* p0
, val
* p1
) {
8741 val
* var
/* : RuntimeVariable */;
8742 val
* var_a
/* var a: MAttribute */;
8743 val
* var_recv
/* var recv: RuntimeVariable */;
8744 val
* var1
/* : MClassType */;
8745 val
* var2
/* : RuntimeVariable */;
8746 val
* var_res
/* var res: RuntimeVariable */;
8747 val
* var3
/* : MPropDef */;
8748 val
* var5
/* : MPropDef */;
8749 val
* var6
/* : nullable MType */;
8750 val
* var8
/* : nullable MType */;
8751 val
* var_mtype
/* var mtype: MType */;
8752 val
* var9
/* : MPropDef */;
8753 val
* var11
/* : MPropDef */;
8754 val
* var12
/* : MClassDef */;
8755 val
* var14
/* : MClassDef */;
8756 val
* var_intromclassdef
/* var intromclassdef: MClassDef */;
8757 val
* var15
/* : MClassType */;
8758 val
* var17
/* : MClassType */;
8759 val
* var18
/* : MClassType */;
8760 val
* var20
/* : MClassType */;
8761 val
* var21
/* : MModule */;
8762 val
* var23
/* : MModule */;
8763 val
* var24
/* : MType */;
8764 short int var25
/* : Bool */;
8767 val
* var26
/* : NativeArray[String] */;
8768 static val
* varonce
;
8769 static val
* varonce27
;
8770 val
* var28
/* : String */;
8771 char* var29
/* : NativeString */;
8772 val
* var30
/* : FlatString */;
8773 static val
* varonce31
;
8774 val
* var32
/* : String */;
8775 char* var33
/* : NativeString */;
8776 val
* var34
/* : FlatString */;
8777 static val
* varonce35
;
8778 val
* var36
/* : String */;
8779 char* var37
/* : NativeString */;
8780 val
* var38
/* : FlatString */;
8781 val
* var39
/* : String */;
8782 val
* var40
/* : String */;
8783 val
* var41
/* : String */;
8784 val
* var42
/* : String */;
8785 val
* var43
/* : String */;
8786 val
* var44
/* : AbstractCompiler */;
8787 val
* var46
/* : AbstractCompiler */;
8788 val
* var47
/* : ModelBuilder */;
8789 val
* var49
/* : ModelBuilder */;
8790 val
* var50
/* : ToolContext */;
8791 val
* var52
/* : ToolContext */;
8792 val
* var53
/* : OptionBool */;
8793 val
* var55
/* : OptionBool */;
8794 val
* var56
/* : nullable Object */;
8795 val
* var58
/* : nullable Object */;
8796 short int var59
/* : Bool */;
8797 val
* var61
/* : NativeArray[String] */;
8798 static val
* varonce60
;
8799 static val
* varonce62
;
8800 val
* var63
/* : String */;
8801 char* var64
/* : NativeString */;
8802 val
* var65
/* : FlatString */;
8803 static val
* varonce66
;
8804 val
* var67
/* : String */;
8805 char* var68
/* : NativeString */;
8806 val
* var69
/* : FlatString */;
8807 static val
* varonce70
;
8808 val
* var71
/* : String */;
8809 char* var72
/* : NativeString */;
8810 val
* var73
/* : FlatString */;
8811 static val
* varonce74
;
8812 val
* var75
/* : String */;
8813 char* var76
/* : NativeString */;
8814 val
* var77
/* : FlatString */;
8815 static val
* varonce78
;
8816 val
* var79
/* : String */;
8817 char* var80
/* : NativeString */;
8818 val
* var81
/* : FlatString */;
8819 val
* var82
/* : String */;
8820 val
* var83
/* : String */;
8821 val
* var84
/* : String */;
8822 val
* var85
/* : String */;
8823 val
* var86
/* : String */;
8824 val
* var87
/* : String */;
8825 short int var88
/* : Bool */;
8826 short int var89
/* : Bool */;
8827 short int var90
/* : Bool */;
8828 short int var_
/* var : Bool */;
8829 short int var91
/* : Bool */;
8830 short int var93
/* : Bool */;
8831 short int var94
/* : Bool */;
8832 val
* var96
/* : NativeArray[String] */;
8833 static val
* varonce95
;
8834 static val
* varonce97
;
8835 val
* var98
/* : String */;
8836 char* var99
/* : NativeString */;
8837 val
* var100
/* : FlatString */;
8838 static val
* varonce101
;
8839 val
* var102
/* : String */;
8840 char* var103
/* : NativeString */;
8841 val
* var104
/* : FlatString */;
8842 static val
* varonce105
;
8843 val
* var106
/* : String */;
8844 char* var107
/* : NativeString */;
8845 val
* var108
/* : FlatString */;
8846 static val
* varonce109
;
8847 val
* var110
/* : String */;
8848 char* var111
/* : NativeString */;
8849 val
* var112
/* : FlatString */;
8850 static val
* varonce113
;
8851 val
* var114
/* : String */;
8852 char* var115
/* : NativeString */;
8853 val
* var116
/* : FlatString */;
8854 val
* var117
/* : String */;
8855 val
* var118
/* : String */;
8856 val
* var119
/* : String */;
8857 val
* var120
/* : String */;
8858 val
* var121
/* : String */;
8859 val
* var122
/* : String */;
8860 val
* var124
/* : NativeArray[String] */;
8861 static val
* varonce123
;
8862 static val
* varonce125
;
8863 val
* var126
/* : String */;
8864 char* var127
/* : NativeString */;
8865 val
* var128
/* : FlatString */;
8866 static val
* varonce129
;
8867 val
* var130
/* : String */;
8868 char* var131
/* : NativeString */;
8869 val
* var132
/* : FlatString */;
8870 static val
* varonce133
;
8871 val
* var134
/* : String */;
8872 char* var135
/* : NativeString */;
8873 val
* var136
/* : FlatString */;
8874 val
* var137
/* : String */;
8875 val
* var138
/* : String */;
8876 val
* var139
/* : String */;
8877 val
* var140
/* : String */;
8881 nit___nit__AbstractCompilerVisitor___check_recv_notnull(self
, var_recv
); /* Direct call abstract_compiler#AbstractCompilerVisitor#check_recv_notnull on <self:SeparateCompilerVisitor>*/
8884 var1
= nit___nit__AbstractCompilerVisitor___bool_type(self
);
8887 var2
= nit___nit__AbstractCompilerVisitor___new_var(self
, var1
);
8891 { /* Inline model#MProperty#intro (var_a) on <var_a:MAttribute> */
8892 var5
= var_a
->attrs
[COLOR_nit__model__MProperty___intro
].val
; /* _intro on <var_a:MAttribute> */
8893 if (unlikely(var5
== NULL
)) {
8894 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
8895 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1968);
8903 { /* Inline model#MAttributeDef#static_mtype (var3) on <var3:MPropDef(MAttributeDef)> */
8904 var8
= var3
->attrs
[COLOR_nit__model__MAttributeDef___static_mtype
].val
; /* _static_mtype on <var3:MPropDef(MAttributeDef)> */
8909 if (unlikely(var6
== NULL
)) {
8910 PRINT_ERROR("Runtime error: %s", "Cast failed");
8911 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 1593);
8916 { /* Inline model#MProperty#intro (var_a) on <var_a:MAttribute> */
8917 var11
= var_a
->attrs
[COLOR_nit__model__MProperty___intro
].val
; /* _intro on <var_a:MAttribute> */
8918 if (unlikely(var11
== NULL
)) {
8919 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
8920 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1968);
8924 RET_LABEL10
:(void)0;
8928 { /* Inline model#MPropDef#mclassdef (var9) on <var9:MPropDef(MAttributeDef)> */
8929 var14
= var9
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var9:MPropDef(MAttributeDef)> */
8930 if (unlikely(var14
== NULL
)) {
8931 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
8932 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
8936 RET_LABEL13
:(void)0;
8939 var_intromclassdef
= var12
;
8941 { /* Inline model#MClassDef#bound_mtype (var_intromclassdef) on <var_intromclassdef:MClassDef> */
8942 var17
= var_intromclassdef
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_intromclassdef:MClassDef> */
8943 if (unlikely(var17
== NULL
)) {
8944 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
8945 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 556);
8949 RET_LABEL16
:(void)0;
8953 { /* Inline model#MClassDef#bound_mtype (var_intromclassdef) on <var_intromclassdef:MClassDef> */
8954 var20
= var_intromclassdef
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_intromclassdef:MClassDef> */
8955 if (unlikely(var20
== NULL
)) {
8956 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
8957 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 556);
8961 RET_LABEL19
:(void)0;
8965 { /* Inline model#MClassDef#mmodule (var_intromclassdef) on <var_intromclassdef:MClassDef> */
8966 var23
= var_intromclassdef
->attrs
[COLOR_nit__model__MClassDef___mmodule
].val
; /* _mmodule on <var_intromclassdef:MClassDef> */
8967 if (unlikely(var23
== NULL
)) {
8968 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
8969 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 550);
8973 RET_LABEL22
:(void)0;
8977 var24
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
, val
* p2
, short int p3
))(var_mtype
->class->vft
[COLOR_nit__model__MType__resolve_for
]))(var_mtype
, var15
, var18
, var21
, 1); /* resolve_for on <var_mtype:MType>*/
8980 /* <var_mtype:MType> isa MNullableType */
8981 cltype
= type_nit__MNullableType
.color
;
8982 idtype
= type_nit__MNullableType
.id
;
8983 if(cltype
>= var_mtype
->type
->table_size
) {
8986 var25
= var_mtype
->type
->type_table
[cltype
] == idtype
;
8989 if (unlikely(varonce
==NULL
)) {
8990 var26
= NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String
);
8991 if (likely(varonce27
!=NULL
)) {
8994 var29
= " = 1; /* easy isset: ";
8995 var30
= standard___standard__NativeString___to_s_with_length(var29
, 21l);
8999 ((struct instance_standard__NativeArray
*)var26
)->values
[1]=var28
;
9000 if (likely(varonce31
!=NULL
)) {
9004 var34
= standard___standard__NativeString___to_s_with_length(var33
, 4l);
9008 ((struct instance_standard__NativeArray
*)var26
)->values
[3]=var32
;
9009 if (likely(varonce35
!=NULL
)) {
9013 var38
= standard___standard__NativeString___to_s_with_length(var37
, 3l);
9017 ((struct instance_standard__NativeArray
*)var26
)->values
[5]=var36
;
9023 var39
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
9025 ((struct instance_standard__NativeArray
*)var26
)->values
[0]=var39
;
9027 var40
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
9029 ((struct instance_standard__NativeArray
*)var26
)->values
[2]=var40
;
9031 var41
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var_recv
);
9033 ((struct instance_standard__NativeArray
*)var26
)->values
[4]=var41
;
9035 var42
= ((val
*(*)(val
* self
))(var26
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var26
); /* native_to_s on <var26:NativeArray[String]>*/
9039 nit___nit__AbstractCompilerVisitor___add(self
, var42
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
9046 var43
= nit__separate_compiler___MEntity___const_color(var_a
);
9049 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var43
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
9052 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
9053 var46
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
9054 if (unlikely(var46
== NULL
)) {
9055 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
9056 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
9060 RET_LABEL45
:(void)0;
9064 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var44) on <var44:AbstractCompiler(SeparateCompiler)> */
9065 var49
= var44
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var44:AbstractCompiler(SeparateCompiler)> */
9066 if (unlikely(var49
== NULL
)) {
9067 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
9068 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
9072 RET_LABEL48
:(void)0;
9076 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var47) on <var47:ModelBuilder> */
9077 var52
= var47
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var47:ModelBuilder> */
9078 if (unlikely(var52
== NULL
)) {
9079 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
9080 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
9084 RET_LABEL51
:(void)0;
9088 { /* Inline separate_compiler#ToolContext#opt_no_union_attribute (var50) on <var50:ToolContext> */
9089 var55
= var50
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_no_union_attribute
].val
; /* _opt_no_union_attribute on <var50:ToolContext> */
9090 if (unlikely(var55
== NULL
)) {
9091 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_union_attribute");
9092 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 28);
9096 RET_LABEL54
:(void)0;
9100 { /* Inline opts#Option#value (var53) on <var53:OptionBool> */
9101 var58
= var53
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var53:OptionBool> */
9103 RET_LABEL57
:(void)0;
9106 var59
= (short int)((long)(var56
)>>2);
9108 if (unlikely(varonce60
==NULL
)) {
9109 var61
= NEW_standard__NativeArray(10l, &type_standard__NativeArray__standard__String
);
9110 if (likely(varonce62
!=NULL
)) {
9114 var65
= standard___standard__NativeString___to_s_with_length(var64
, 3l);
9118 ((struct instance_standard__NativeArray
*)var61
)->values
[1]=var63
;
9119 if (likely(varonce66
!=NULL
)) {
9123 var69
= standard___standard__NativeString___to_s_with_length(var68
, 8l);
9127 ((struct instance_standard__NativeArray
*)var61
)->values
[3]=var67
;
9128 if (likely(varonce70
!=NULL
)) {
9131 var72
= "] != NULL; /* ";
9132 var73
= standard___standard__NativeString___to_s_with_length(var72
, 14l);
9136 ((struct instance_standard__NativeArray
*)var61
)->values
[5]=var71
;
9137 if (likely(varonce74
!=NULL
)) {
9141 var77
= standard___standard__NativeString___to_s_with_length(var76
, 4l);
9145 ((struct instance_standard__NativeArray
*)var61
)->values
[7]=var75
;
9146 if (likely(varonce78
!=NULL
)) {
9150 var81
= standard___standard__NativeString___to_s_with_length(var80
, 2l);
9154 ((struct instance_standard__NativeArray
*)var61
)->values
[9]=var79
;
9160 var82
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
9162 ((struct instance_standard__NativeArray
*)var61
)->values
[0]=var82
;
9164 var83
= ((val
*(*)(val
* self
))(var_recv
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_recv
); /* to_s on <var_recv:RuntimeVariable>*/
9166 ((struct instance_standard__NativeArray
*)var61
)->values
[2]=var83
;
9168 var84
= nit__separate_compiler___MEntity___const_color(var_a
);
9170 ((struct instance_standard__NativeArray
*)var61
)->values
[4]=var84
;
9172 var85
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
9174 ((struct instance_standard__NativeArray
*)var61
)->values
[6]=var85
;
9176 var86
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var_recv
);
9178 ((struct instance_standard__NativeArray
*)var61
)->values
[8]=var86
;
9180 var87
= ((val
*(*)(val
* self
))(var61
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var61
); /* native_to_s on <var61:NativeArray[String]>*/
9184 nit___nit__AbstractCompilerVisitor___add(self
, var87
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
9188 var89
= ((short int(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__abstract_compiler__MType__is_c_primitive
]))(var_mtype
); /* is_c_primitive on <var_mtype:MType>*/
9194 { /* Inline separate_compiler#MType#is_tagged (var_mtype) on <var_mtype:MType> */
9195 var93
= var_mtype
->attrs
[COLOR_nit__separate_compiler__MType___is_tagged
].s
; /* _is_tagged on <var_mtype:MType> */
9197 RET_LABEL92
:(void)0;
9206 if (unlikely(varonce95
==NULL
)) {
9207 var96
= NEW_standard__NativeArray(10l, &type_standard__NativeArray__standard__String
);
9208 if (likely(varonce97
!=NULL
)) {
9212 var100
= standard___standard__NativeString___to_s_with_length(var99
, 3l);
9216 ((struct instance_standard__NativeArray
*)var96
)->values
[1]=var98
;
9217 if (likely(varonce101
!=NULL
)) {
9218 var102
= varonce101
;
9220 var103
= "->attrs[";
9221 var104
= standard___standard__NativeString___to_s_with_length(var103
, 8l);
9223 varonce101
= var102
;
9225 ((struct instance_standard__NativeArray
*)var96
)->values
[3]=var102
;
9226 if (likely(varonce105
!=NULL
)) {
9227 var106
= varonce105
;
9229 var107
= "].val != NULL; /* ";
9230 var108
= standard___standard__NativeString___to_s_with_length(var107
, 18l);
9232 varonce105
= var106
;
9234 ((struct instance_standard__NativeArray
*)var96
)->values
[5]=var106
;
9235 if (likely(varonce109
!=NULL
)) {
9236 var110
= varonce109
;
9239 var112
= standard___standard__NativeString___to_s_with_length(var111
, 4l);
9241 varonce109
= var110
;
9243 ((struct instance_standard__NativeArray
*)var96
)->values
[7]=var110
;
9244 if (likely(varonce113
!=NULL
)) {
9245 var114
= varonce113
;
9248 var116
= standard___standard__NativeString___to_s_with_length(var115
, 3l);
9250 varonce113
= var114
;
9252 ((struct instance_standard__NativeArray
*)var96
)->values
[9]=var114
;
9258 var117
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
9260 ((struct instance_standard__NativeArray
*)var96
)->values
[0]=var117
;
9262 var118
= ((val
*(*)(val
* self
))(var_recv
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_recv
); /* to_s on <var_recv:RuntimeVariable>*/
9264 ((struct instance_standard__NativeArray
*)var96
)->values
[2]=var118
;
9266 var119
= nit__separate_compiler___MEntity___const_color(var_a
);
9268 ((struct instance_standard__NativeArray
*)var96
)->values
[4]=var119
;
9270 var120
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
9272 ((struct instance_standard__NativeArray
*)var96
)->values
[6]=var120
;
9274 var121
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var_recv
);
9276 ((struct instance_standard__NativeArray
*)var96
)->values
[8]=var121
;
9278 var122
= ((val
*(*)(val
* self
))(var96
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var96
); /* native_to_s on <var96:NativeArray[String]>*/
9282 nit___nit__AbstractCompilerVisitor___add(self
, var122
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
9285 if (unlikely(varonce123
==NULL
)) {
9286 var124
= NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String
);
9287 if (likely(varonce125
!=NULL
)) {
9288 var126
= varonce125
;
9290 var127
= " = 1; /* NOT YET IMPLEMENTED: isset of primitives: ";
9291 var128
= standard___standard__NativeString___to_s_with_length(var127
, 51l);
9293 varonce125
= var126
;
9295 ((struct instance_standard__NativeArray
*)var124
)->values
[1]=var126
;
9296 if (likely(varonce129
!=NULL
)) {
9297 var130
= varonce129
;
9300 var132
= standard___standard__NativeString___to_s_with_length(var131
, 4l);
9302 varonce129
= var130
;
9304 ((struct instance_standard__NativeArray
*)var124
)->values
[3]=var130
;
9305 if (likely(varonce133
!=NULL
)) {
9306 var134
= varonce133
;
9309 var136
= standard___standard__NativeString___to_s_with_length(var135
, 3l);
9311 varonce133
= var134
;
9313 ((struct instance_standard__NativeArray
*)var124
)->values
[5]=var134
;
9315 var124
= varonce123
;
9319 var137
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
9321 ((struct instance_standard__NativeArray
*)var124
)->values
[0]=var137
;
9323 var138
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
9325 ((struct instance_standard__NativeArray
*)var124
)->values
[2]=var138
;
9327 var139
= nit___nit__RuntimeVariable___standard__string__Object__inspect(var_recv
);
9329 ((struct instance_standard__NativeArray
*)var124
)->values
[4]=var139
;
9331 var140
= ((val
*(*)(val
* self
))(var124
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var124
); /* native_to_s on <var124:NativeArray[String]>*/
9333 varonce123
= var124
;
9335 nit___nit__AbstractCompilerVisitor___add(self
, var140
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/