1 #include "nitc__separate_erasure_compiler.sep.0.h"
2 /* method separate_erasure_compiler$SeparateErasureCompiler$display_sizes for (self: SeparateErasureCompiler) */
3 void nitc___nitc__SeparateErasureCompiler___nitc__separate_compiler__SeparateCompiler__display_sizes(val
* self
) {
6 val
* var1
/* : String */;
7 char* var2
/* : CString */;
8 val
* var3
/* : String */;
9 val
* var4
/* : nullable Int */;
10 val
* var5
/* : nullable Int */;
11 val
* var6
/* : nullable Bool */;
12 val
* var7
/* : nullable Bool */;
13 val
* var8
/* : Sys */;
15 val
* var10
/* : String */;
16 char* var11
/* : CString */;
17 val
* var12
/* : String */;
18 val
* var13
/* : nullable Int */;
19 val
* var14
/* : nullable Int */;
20 val
* var15
/* : nullable Bool */;
21 val
* var16
/* : nullable Bool */;
22 long var_total
/* var total: Int */;
23 long var_holes
/* var holes: Int */;
24 val
* var17
/* : Map[MClass, Array[nullable MClass]] */;
25 val
* var19
/* : Map[MClass, Array[nullable MClass]] */;
26 val
* var_
/* var : Map[MClass, Array[nullable MClass]] */;
27 val
* var20
/* : MapIterator[nullable Object, nullable Object] */;
28 val
* var_21
/* var : MapIterator[MClass, Array[nullable MClass]] */;
29 short int var22
/* : Bool */;
30 val
* var23
/* : nullable Object */;
31 val
* var_t
/* var t: MClass */;
32 val
* var24
/* : nullable Object */;
33 val
* var_table
/* var table: Array[nullable MClass] */;
34 long var25
/* : Int */;
35 long var27
/* : Int */;
36 long var28
/* : Int */;
37 short int var30
/* : Bool */;
40 const char* var_class_name
;
41 long var31
/* : Int */;
42 val
* var_32
/* var : Array[nullable MClass] */;
43 val
* var33
/* : IndexedIterator[nullable Object] */;
44 val
* var_34
/* var : IndexedIterator[nullable MClass] */;
45 short int var35
/* : Bool */;
46 val
* var37
/* : nullable Object */;
47 val
* var_e
/* var e: nullable MClass */;
48 short int var38
/* : Bool */;
49 short int var39
/* : Bool */;
50 val
* var_other
/* var other: nullable Object */;
51 short int var41
/* : Bool */;
52 short int var43
/* : Bool */;
53 long var44
/* : Int */;
54 short int var46
/* : Bool */;
57 const char* var_class_name49
;
58 long var50
/* : Int */;
59 val
* var52
/* : Sys */;
60 val
* var54
/* : NativeArray[String] */;
61 static val
* varonce53
;
62 static val
* varonce55
;
63 val
* var56
/* : String */;
64 char* var57
/* : CString */;
65 val
* var58
/* : String */;
66 val
* var59
/* : nullable Int */;
67 val
* var60
/* : nullable Int */;
68 val
* var61
/* : nullable Bool */;
69 val
* var62
/* : nullable Bool */;
70 static val
* varonce63
;
71 val
* var64
/* : String */;
72 char* var65
/* : CString */;
73 val
* var66
/* : String */;
74 val
* var67
/* : nullable Int */;
75 val
* var68
/* : nullable Int */;
76 val
* var69
/* : nullable Bool */;
77 val
* var70
/* : nullable Bool */;
78 val
* var71
/* : String */;
79 val
* var72
/* : String */;
80 val
* var73
/* : String */;
81 val
* var74
/* : Sys */;
82 static val
* varonce75
;
83 val
* var76
/* : String */;
84 char* var77
/* : CString */;
85 val
* var78
/* : String */;
86 val
* var79
/* : nullable Int */;
87 val
* var80
/* : nullable Int */;
88 val
* var81
/* : nullable Bool */;
89 val
* var82
/* : nullable Bool */;
90 val
* var83
/* : Sys */;
91 static val
* varonce84
;
92 val
* var85
/* : String */;
93 char* var86
/* : CString */;
94 val
* var87
/* : String */;
95 val
* var88
/* : nullable Int */;
96 val
* var89
/* : nullable Int */;
97 val
* var90
/* : nullable Bool */;
98 val
* var91
/* : nullable Bool */;
99 val
* var92
/* : Map[MClass, Array[nullable MPropDef]] */;
100 val
* var94
/* : Map[MClass, Array[nullable MPropDef]] */;
101 val
* var_95
/* var : Map[MClass, Array[nullable MPropDef]] */;
102 val
* var96
/* : MapIterator[nullable Object, nullable Object] */;
103 val
* var_97
/* var : MapIterator[MClass, Array[nullable MPropDef]] */;
104 short int var98
/* : Bool */;
105 val
* var100
/* : nullable Object */;
106 val
* var_t101
/* var t: MClass */;
107 val
* var102
/* : nullable Object */;
108 val
* var_table103
/* var table: Array[nullable MPropDef] */;
109 long var104
/* : Int */;
110 long var106
/* : Int */;
111 long var107
/* : Int */;
112 short int var109
/* : Bool */;
115 const char* var_class_name112
;
116 long var113
/* : Int */;
117 val
* var_114
/* var : Array[nullable MPropDef] */;
118 val
* var115
/* : IndexedIterator[nullable Object] */;
119 val
* var_116
/* var : IndexedIterator[nullable MPropDef] */;
120 short int var117
/* : Bool */;
121 val
* var119
/* : nullable Object */;
122 val
* var_e120
/* var e: nullable MPropDef */;
123 short int var121
/* : Bool */;
124 short int var122
/* : Bool */;
125 short int var124
/* : Bool */;
126 short int var126
/* : Bool */;
127 long var127
/* : Int */;
128 short int var129
/* : Bool */;
131 const char* var_class_name132
;
132 long var133
/* : Int */;
133 val
* var135
/* : Sys */;
134 val
* var137
/* : NativeArray[String] */;
135 static val
* varonce136
;
136 static val
* varonce138
;
137 val
* var139
/* : String */;
138 char* var140
/* : CString */;
139 val
* var141
/* : String */;
140 val
* var142
/* : nullable Int */;
141 val
* var143
/* : nullable Int */;
142 val
* var144
/* : nullable Bool */;
143 val
* var145
/* : nullable Bool */;
144 static val
* varonce146
;
145 val
* var147
/* : String */;
146 char* var148
/* : CString */;
147 val
* var149
/* : String */;
148 val
* var150
/* : nullable Int */;
149 val
* var151
/* : nullable Int */;
150 val
* var152
/* : nullable Bool */;
151 val
* var153
/* : nullable Bool */;
152 val
* var154
/* : String */;
153 val
* var155
/* : String */;
154 val
* var156
/* : String */;
155 val
* var157
/* : Sys */;
156 static val
* varonce158
;
157 val
* var159
/* : String */;
158 char* var160
/* : CString */;
159 val
* var161
/* : String */;
160 val
* var162
/* : nullable Int */;
161 val
* var163
/* : nullable Int */;
162 val
* var164
/* : nullable Bool */;
163 val
* var165
/* : nullable Bool */;
164 val
* var166
/* : Sys */;
165 static val
* varonce167
;
166 val
* var168
/* : String */;
167 char* var169
/* : CString */;
168 val
* var170
/* : String */;
169 val
* var171
/* : nullable Int */;
170 val
* var172
/* : nullable Int */;
171 val
* var173
/* : nullable Bool */;
172 val
* var174
/* : nullable Bool */;
173 val
* var175
/* : Map[MClass, Array[nullable MPropDef]] */;
174 val
* var177
/* : Map[MClass, Array[nullable MPropDef]] */;
175 val
* var_178
/* var : Map[MClass, Array[nullable MPropDef]] */;
176 val
* var179
/* : MapIterator[nullable Object, nullable Object] */;
177 val
* var_180
/* var : MapIterator[MClass, Array[nullable MPropDef]] */;
178 short int var181
/* : Bool */;
179 val
* var183
/* : nullable Object */;
180 val
* var_t184
/* var t: MClass */;
181 val
* var185
/* : nullable Object */;
182 val
* var_table186
/* var table: Array[nullable MPropDef] */;
183 long var187
/* : Int */;
184 long var189
/* : Int */;
185 long var190
/* : Int */;
186 short int var192
/* : Bool */;
189 const char* var_class_name195
;
190 long var196
/* : Int */;
191 val
* var_197
/* var : Array[nullable MPropDef] */;
192 val
* var198
/* : IndexedIterator[nullable Object] */;
193 val
* var_199
/* var : IndexedIterator[nullable MPropDef] */;
194 short int var200
/* : Bool */;
195 val
* var202
/* : nullable Object */;
196 val
* var_e203
/* var e: nullable MPropDef */;
197 short int var204
/* : Bool */;
198 short int var205
/* : Bool */;
199 short int var207
/* : Bool */;
200 short int var209
/* : Bool */;
201 long var210
/* : Int */;
202 short int var212
/* : Bool */;
205 const char* var_class_name215
;
206 long var216
/* : Int */;
207 val
* var218
/* : Sys */;
208 val
* var220
/* : NativeArray[String] */;
209 static val
* varonce219
;
210 static val
* varonce221
;
211 val
* var222
/* : String */;
212 char* var223
/* : CString */;
213 val
* var224
/* : String */;
214 val
* var225
/* : nullable Int */;
215 val
* var226
/* : nullable Int */;
216 val
* var227
/* : nullable Bool */;
217 val
* var228
/* : nullable Bool */;
218 static val
* varonce229
;
219 val
* var230
/* : String */;
220 char* var231
/* : CString */;
221 val
* var232
/* : String */;
222 val
* var233
/* : nullable Int */;
223 val
* var234
/* : nullable Int */;
224 val
* var235
/* : nullable Bool */;
225 val
* var236
/* : nullable Bool */;
226 val
* var237
/* : String */;
227 val
* var238
/* : String */;
228 val
* var239
/* : String */;
229 val
* var240
/* : Sys */;
230 static val
* varonce241
;
231 val
* var242
/* : String */;
232 char* var243
/* : CString */;
233 val
* var244
/* : String */;
234 val
* var245
/* : nullable Int */;
235 val
* var246
/* : nullable Int */;
236 val
* var247
/* : nullable Bool */;
237 val
* var248
/* : nullable Bool */;
238 val
* var249
/* : Sys */;
239 static val
* varonce250
;
240 val
* var251
/* : String */;
241 char* var252
/* : CString */;
242 val
* var253
/* : String */;
243 val
* var254
/* : nullable Int */;
244 val
* var255
/* : nullable Int */;
245 val
* var256
/* : nullable Bool */;
246 val
* var257
/* : nullable Bool */;
247 val
* var258
/* : Map[MClass, Array[nullable MProperty]] */;
248 val
* var260
/* : Map[MClass, Array[nullable MProperty]] */;
249 val
* var_261
/* var : Map[MClass, Array[nullable MProperty]] */;
250 val
* var262
/* : MapIterator[nullable Object, nullable Object] */;
251 val
* var_263
/* var : MapIterator[MClass, Array[nullable MProperty]] */;
252 short int var264
/* : Bool */;
253 val
* var266
/* : nullable Object */;
254 val
* var_t267
/* var t: MClass */;
255 val
* var268
/* : nullable Object */;
256 val
* var_table269
/* var table: Array[nullable MProperty] */;
257 long var270
/* : Int */;
258 long var272
/* : Int */;
259 long var273
/* : Int */;
260 short int var275
/* : Bool */;
263 const char* var_class_name278
;
264 long var279
/* : Int */;
265 val
* var_280
/* var : Array[nullable MProperty] */;
266 val
* var281
/* : IndexedIterator[nullable Object] */;
267 val
* var_282
/* var : IndexedIterator[nullable MProperty] */;
268 short int var283
/* : Bool */;
269 val
* var285
/* : nullable Object */;
270 val
* var_e286
/* var e: nullable MProperty */;
271 short int var287
/* : Bool */;
272 short int var288
/* : Bool */;
273 short int var290
/* : Bool */;
274 short int var292
/* : Bool */;
275 long var293
/* : Int */;
276 short int var295
/* : Bool */;
279 const char* var_class_name298
;
280 long var299
/* : Int */;
281 val
* var301
/* : Sys */;
282 val
* var303
/* : NativeArray[String] */;
283 static val
* varonce302
;
284 static val
* varonce304
;
285 val
* var305
/* : String */;
286 char* var306
/* : CString */;
287 val
* var307
/* : String */;
288 val
* var308
/* : nullable Int */;
289 val
* var309
/* : nullable Int */;
290 val
* var310
/* : nullable Bool */;
291 val
* var311
/* : nullable Bool */;
292 static val
* varonce312
;
293 val
* var313
/* : String */;
294 char* var314
/* : CString */;
295 val
* var315
/* : String */;
296 val
* var316
/* : nullable Int */;
297 val
* var317
/* : nullable Int */;
298 val
* var318
/* : nullable Bool */;
299 val
* var319
/* : nullable Bool */;
300 val
* var320
/* : String */;
301 val
* var321
/* : String */;
302 val
* var322
/* : String */;
304 if (likely(varonce
!=NULL
)) {
307 var2
= "# size of subtyping tables";
308 var4
= (val
*)(26l<<2|1);
309 var5
= (val
*)(26l<<2|1);
310 var6
= (val
*)((long)(0)<<2|3);
311 var7
= (val
*)((long)(0)<<2|3);
312 var3
= core__flat___CString___to_s_unsafe(var2
, var4
, var5
, var6
, var7
);
317 core__file___Sys___print(var
, var1
); /* Direct call file$Sys$print on <var:Sys>*/
320 if (likely(varonce9
!=NULL
)) {
323 var11
= "\ttotal \tholes";
324 var13
= (val
*)(13l<<2|1);
325 var14
= (val
*)(13l<<2|1);
326 var15
= (val
*)((long)(0)<<2|3);
327 var16
= (val
*)((long)(0)<<2|3);
328 var12
= core__flat___CString___to_s_unsafe(var11
, var13
, var14
, var15
, var16
);
333 core__file___Sys___print(var8
, var10
); /* Direct call file$Sys$print on <var8:Sys>*/
338 { /* Inline separate_erasure_compiler$SeparateErasureCompiler$class_tables (self) on <self:SeparateErasureCompiler> */
339 var19
= self
->attrs
[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___class_tables
].val
; /* _class_tables on <self:SeparateErasureCompiler> */
340 if (unlikely(var19
== NULL
)) {
341 if(catchStack
.cursor
>= 0){
342 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
344 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _class_tables");
345 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 427);
354 var20
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_core__abstract_collection__MapRead__iterator
]))(var_
); /* iterator on <var_:Map[MClass, Array[nullable MClass]]>*/
359 var22
= ((short int(*)(val
* self
))((((long)var_21
&3)?class_info
[((long)var_21
&3)]:var_21
->class)->vft
[COLOR_core__abstract_collection__MapIterator__is_ok
]))(var_21
); /* is_ok on <var_21:MapIterator[MClass, Array[nullable MClass]]>*/
366 var23
= ((val
*(*)(val
* self
))((((long)var_21
&3)?class_info
[((long)var_21
&3)]:var_21
->class)->vft
[COLOR_core__abstract_collection__MapIterator__key
]))(var_21
); /* key on <var_21:MapIterator[MClass, Array[nullable MClass]]>*/
370 var24
= ((val
*(*)(val
* self
))((((long)var_21
&3)?class_info
[((long)var_21
&3)]:var_21
->class)->vft
[COLOR_core__abstract_collection__MapIterator__item
]))(var_21
); /* item on <var_21:MapIterator[MClass, Array[nullable MClass]]>*/
374 { /* Inline array$AbstractArrayRead$length (var_table) on <var_table:Array[nullable MClass]> */
375 var27
= var_table
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_table:Array[nullable MClass]> */
381 { /* Inline kernel$Int$+ (var_total,var25) on <var_total:Int> */
382 /* Covariant cast for argument 0 (i) <var25:Int> isa OTHER */
383 /* <var25:Int> isa OTHER */
384 var30
= 1; /* easy <var25:Int> isa OTHER*/
385 if (unlikely(!var30
)) {
386 var_class_name
= type_core__Int
.name
;
387 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
388 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
391 var31
= var_total
+ var25
;
400 var33
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_32
);
405 var35
= ((short int(*)(val
* self
))((((long)var_34
&3)?class_info
[((long)var_34
&3)]:var_34
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_34
); /* is_ok on <var_34:IndexedIterator[nullable MClass]>*/
412 var37
= ((val
*(*)(val
* self
))((((long)var_34
&3)?class_info
[((long)var_34
&3)]:var_34
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_34
); /* item on <var_34:IndexedIterator[nullable MClass]>*/
416 var38
= 1; /* is null */
418 var38
= 0; /* arg is null but recv is not */
421 { /* Inline kernel$Object$== (var_e,((val*)NULL)) on <var_e:nullable MClass> */
422 var_other
= ((val
*)NULL
);
424 { /* Inline kernel$Object$is_same_instance (var_e,var_other) on <var_e:nullable MClass(MClass)> */
425 var43
= var_e
== var_other
;
439 { /* Inline kernel$Int$+ (var_holes,1l) on <var_holes:Int> */
440 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
441 /* <1l:Int> isa OTHER */
442 var46
= 1; /* easy <1l:Int> isa OTHER*/
443 if (unlikely(!var46
)) {
444 var_class_name49
= type_core__Int
.name
;
445 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name49
);
446 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
449 var50
= var_holes
+ 1l;
459 ((void(*)(val
* self
))((((long)var_34
&3)?class_info
[((long)var_34
&3)]:var_34
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_34
); /* next on <var_34:IndexedIterator[nullable MClass]>*/
462 BREAK_label36
: (void)0;
464 ((void(*)(val
* self
))((((long)var_34
&3)?class_info
[((long)var_34
&3)]:var_34
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_34
); /* finish on <var_34:IndexedIterator[nullable MClass]>*/
467 ((void(*)(val
* self
))((((long)var_21
&3)?class_info
[((long)var_21
&3)]:var_21
->class)->vft
[COLOR_core__abstract_collection__MapIterator__next
]))(var_21
); /* next on <var_21:MapIterator[MClass, Array[nullable MClass]]>*/
470 BREAK_label
: (void)0;
472 { /* Inline abstract_collection$MapIterator$finish (var_21) on <var_21:MapIterator[MClass, Array[nullable MClass]]> */
477 if (unlikely(varonce53
==NULL
)) {
478 var54
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
479 if (likely(varonce55
!=NULL
)) {
483 var59
= (val
*)(1l<<2|1);
484 var60
= (val
*)(1l<<2|1);
485 var61
= (val
*)((long)(0)<<2|3);
486 var62
= (val
*)((long)(0)<<2|3);
487 var58
= core__flat___CString___to_s_unsafe(var57
, var59
, var60
, var61
, var62
);
491 ((struct instance_core__NativeArray
*)var54
)->values
[0]=var56
;
492 if (likely(varonce63
!=NULL
)) {
496 var67
= (val
*)(1l<<2|1);
497 var68
= (val
*)(1l<<2|1);
498 var69
= (val
*)((long)(0)<<2|3);
499 var70
= (val
*)((long)(0)<<2|3);
500 var66
= core__flat___CString___to_s_unsafe(var65
, var67
, var68
, var69
, var70
);
504 ((struct instance_core__NativeArray
*)var54
)->values
[2]=var64
;
509 var71
= core__flat___Int___core__abstract_text__Object__to_s(var_total
);
510 ((struct instance_core__NativeArray
*)var54
)->values
[1]=var71
;
511 var72
= core__flat___Int___core__abstract_text__Object__to_s(var_holes
);
512 ((struct instance_core__NativeArray
*)var54
)->values
[3]=var72
;
514 var73
= ((val
*(*)(val
* self
))(var54
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var54
); /* native_to_s on <var54:NativeArray[String]>*/
518 core__file___Sys___print(var52
, var73
); /* Direct call file$Sys$print on <var52:Sys>*/
521 if (likely(varonce75
!=NULL
)) {
524 var77
= "# size of resolution tables";
525 var79
= (val
*)(27l<<2|1);
526 var80
= (val
*)(27l<<2|1);
527 var81
= (val
*)((long)(0)<<2|3);
528 var82
= (val
*)((long)(0)<<2|3);
529 var78
= core__flat___CString___to_s_unsafe(var77
, var79
, var80
, var81
, var82
);
534 core__file___Sys___print(var74
, var76
); /* Direct call file$Sys$print on <var74:Sys>*/
537 if (likely(varonce84
!=NULL
)) {
540 var86
= "\ttotal \tholes";
541 var88
= (val
*)(13l<<2|1);
542 var89
= (val
*)(13l<<2|1);
543 var90
= (val
*)((long)(0)<<2|3);
544 var91
= (val
*)((long)(0)<<2|3);
545 var87
= core__flat___CString___to_s_unsafe(var86
, var88
, var89
, var90
, var91
);
550 core__file___Sys___print(var83
, var85
); /* Direct call file$Sys$print on <var83:Sys>*/
555 { /* Inline separate_erasure_compiler$SeparateErasureCompiler$vt_tables (self) on <self:SeparateErasureCompiler> */
556 var94
= self
->attrs
[COLOR_nitc__separate_erasure_compiler__SeparateErasureCompiler___vt_tables
].val
; /* _vt_tables on <self:SeparateErasureCompiler> */
557 if (unlikely(var94
== NULL
)) {
558 if(catchStack
.cursor
>= 0){
559 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
561 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _vt_tables");
562 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 428);
571 var96
= ((val
*(*)(val
* self
))((((long)var_95
&3)?class_info
[((long)var_95
&3)]:var_95
->class)->vft
[COLOR_core__abstract_collection__MapRead__iterator
]))(var_95
); /* iterator on <var_95:Map[MClass, Array[nullable MPropDef]]>*/
576 var98
= ((short int(*)(val
* self
))((((long)var_97
&3)?class_info
[((long)var_97
&3)]:var_97
->class)->vft
[COLOR_core__abstract_collection__MapIterator__is_ok
]))(var_97
); /* is_ok on <var_97:MapIterator[MClass, Array[nullable MPropDef]]>*/
583 var100
= ((val
*(*)(val
* self
))((((long)var_97
&3)?class_info
[((long)var_97
&3)]:var_97
->class)->vft
[COLOR_core__abstract_collection__MapIterator__key
]))(var_97
); /* key on <var_97:MapIterator[MClass, Array[nullable MPropDef]]>*/
587 var102
= ((val
*(*)(val
* self
))((((long)var_97
&3)?class_info
[((long)var_97
&3)]:var_97
->class)->vft
[COLOR_core__abstract_collection__MapIterator__item
]))(var_97
); /* item on <var_97:MapIterator[MClass, Array[nullable MPropDef]]>*/
589 var_table103
= var102
;
591 { /* Inline array$AbstractArrayRead$length (var_table103) on <var_table103:Array[nullable MPropDef]> */
592 var106
= var_table103
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_table103:Array[nullable MPropDef]> */
594 RET_LABEL105
:(void)0;
598 { /* Inline kernel$Int$+ (var_total,var104) on <var_total:Int> */
599 /* Covariant cast for argument 0 (i) <var104:Int> isa OTHER */
600 /* <var104:Int> isa OTHER */
601 var109
= 1; /* easy <var104:Int> isa OTHER*/
602 if (unlikely(!var109
)) {
603 var_class_name112
= type_core__Int
.name
;
604 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name112
);
605 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
608 var113
= var_total
+ var104
;
611 RET_LABEL108
:(void)0;
615 var_114
= var_table103
;
617 var115
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_114
);
622 var117
= ((short int(*)(val
* self
))((((long)var_116
&3)?class_info
[((long)var_116
&3)]:var_116
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_116
); /* is_ok on <var_116:IndexedIterator[nullable MPropDef]>*/
629 var119
= ((val
*(*)(val
* self
))((((long)var_116
&3)?class_info
[((long)var_116
&3)]:var_116
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_116
); /* item on <var_116:IndexedIterator[nullable MPropDef]>*/
632 if (var_e120
== NULL
) {
633 var121
= 1; /* is null */
635 var121
= 0; /* arg is null but recv is not */
638 { /* Inline kernel$Object$== (var_e120,((val*)NULL)) on <var_e120:nullable MPropDef> */
639 var_other
= ((val
*)NULL
);
641 { /* Inline kernel$Object$is_same_instance (var_e120,var_other) on <var_e120:nullable MPropDef(MPropDef)> */
642 var126
= var_e120
== var_other
;
645 RET_LABEL125
:(void)0;
650 RET_LABEL123
:(void)0;
656 { /* Inline kernel$Int$+ (var_holes,1l) on <var_holes:Int> */
657 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
658 /* <1l:Int> isa OTHER */
659 var129
= 1; /* easy <1l:Int> isa OTHER*/
660 if (unlikely(!var129
)) {
661 var_class_name132
= type_core__Int
.name
;
662 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name132
);
663 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
666 var133
= var_holes
+ 1l;
669 RET_LABEL128
:(void)0;
676 ((void(*)(val
* self
))((((long)var_116
&3)?class_info
[((long)var_116
&3)]:var_116
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_116
); /* next on <var_116:IndexedIterator[nullable MPropDef]>*/
679 BREAK_label118
: (void)0;
681 ((void(*)(val
* self
))((((long)var_116
&3)?class_info
[((long)var_116
&3)]:var_116
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_116
); /* finish on <var_116:IndexedIterator[nullable MPropDef]>*/
684 ((void(*)(val
* self
))((((long)var_97
&3)?class_info
[((long)var_97
&3)]:var_97
->class)->vft
[COLOR_core__abstract_collection__MapIterator__next
]))(var_97
); /* next on <var_97:MapIterator[MClass, Array[nullable MPropDef]]>*/
687 BREAK_label99
: (void)0;
689 { /* Inline abstract_collection$MapIterator$finish (var_97) on <var_97:MapIterator[MClass, Array[nullable MPropDef]]> */
690 RET_LABEL134
:(void)0;
694 if (unlikely(varonce136
==NULL
)) {
695 var137
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
696 if (likely(varonce138
!=NULL
)) {
700 var142
= (val
*)(1l<<2|1);
701 var143
= (val
*)(1l<<2|1);
702 var144
= (val
*)((long)(0)<<2|3);
703 var145
= (val
*)((long)(0)<<2|3);
704 var141
= core__flat___CString___to_s_unsafe(var140
, var142
, var143
, var144
, var145
);
708 ((struct instance_core__NativeArray
*)var137
)->values
[0]=var139
;
709 if (likely(varonce146
!=NULL
)) {
713 var150
= (val
*)(1l<<2|1);
714 var151
= (val
*)(1l<<2|1);
715 var152
= (val
*)((long)(0)<<2|3);
716 var153
= (val
*)((long)(0)<<2|3);
717 var149
= core__flat___CString___to_s_unsafe(var148
, var150
, var151
, var152
, var153
);
721 ((struct instance_core__NativeArray
*)var137
)->values
[2]=var147
;
726 var154
= core__flat___Int___core__abstract_text__Object__to_s(var_total
);
727 ((struct instance_core__NativeArray
*)var137
)->values
[1]=var154
;
728 var155
= core__flat___Int___core__abstract_text__Object__to_s(var_holes
);
729 ((struct instance_core__NativeArray
*)var137
)->values
[3]=var155
;
731 var156
= ((val
*(*)(val
* self
))(var137
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var137
); /* native_to_s on <var137:NativeArray[String]>*/
735 core__file___Sys___print(var135
, var156
); /* Direct call file$Sys$print on <var135:Sys>*/
738 if (likely(varonce158
!=NULL
)) {
741 var160
= "# size of methods tables";
742 var162
= (val
*)(24l<<2|1);
743 var163
= (val
*)(24l<<2|1);
744 var164
= (val
*)((long)(0)<<2|3);
745 var165
= (val
*)((long)(0)<<2|3);
746 var161
= core__flat___CString___to_s_unsafe(var160
, var162
, var163
, var164
, var165
);
751 core__file___Sys___print(var157
, var159
); /* Direct call file$Sys$print on <var157:Sys>*/
754 if (likely(varonce167
!=NULL
)) {
757 var169
= "\ttotal \tholes";
758 var171
= (val
*)(13l<<2|1);
759 var172
= (val
*)(13l<<2|1);
760 var173
= (val
*)((long)(0)<<2|3);
761 var174
= (val
*)((long)(0)<<2|3);
762 var170
= core__flat___CString___to_s_unsafe(var169
, var171
, var172
, var173
, var174
);
767 core__file___Sys___print(var166
, var168
); /* Direct call file$Sys$print on <var166:Sys>*/
772 { /* Inline separate_compiler$SeparateCompiler$method_tables (self) on <self:SeparateErasureCompiler> */
773 var177
= self
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___method_tables
].val
; /* _method_tables on <self:SeparateErasureCompiler> */
774 if (unlikely(var177
== NULL
)) {
775 if(catchStack
.cursor
>= 0){
776 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
778 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _method_tables");
779 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1073);
783 RET_LABEL176
:(void)0;
788 var179
= ((val
*(*)(val
* self
))((((long)var_178
&3)?class_info
[((long)var_178
&3)]:var_178
->class)->vft
[COLOR_core__abstract_collection__MapRead__iterator
]))(var_178
); /* iterator on <var_178:Map[MClass, Array[nullable MPropDef]]>*/
793 var181
= ((short int(*)(val
* self
))((((long)var_180
&3)?class_info
[((long)var_180
&3)]:var_180
->class)->vft
[COLOR_core__abstract_collection__MapIterator__is_ok
]))(var_180
); /* is_ok on <var_180:MapIterator[MClass, Array[nullable MPropDef]]>*/
800 var183
= ((val
*(*)(val
* self
))((((long)var_180
&3)?class_info
[((long)var_180
&3)]:var_180
->class)->vft
[COLOR_core__abstract_collection__MapIterator__key
]))(var_180
); /* key on <var_180:MapIterator[MClass, Array[nullable MPropDef]]>*/
804 var185
= ((val
*(*)(val
* self
))((((long)var_180
&3)?class_info
[((long)var_180
&3)]:var_180
->class)->vft
[COLOR_core__abstract_collection__MapIterator__item
]))(var_180
); /* item on <var_180:MapIterator[MClass, Array[nullable MPropDef]]>*/
806 var_table186
= var185
;
808 { /* Inline array$AbstractArrayRead$length (var_table186) on <var_table186:Array[nullable MPropDef]> */
809 var189
= var_table186
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_table186:Array[nullable MPropDef]> */
811 RET_LABEL188
:(void)0;
815 { /* Inline kernel$Int$+ (var_total,var187) on <var_total:Int> */
816 /* Covariant cast for argument 0 (i) <var187:Int> isa OTHER */
817 /* <var187:Int> isa OTHER */
818 var192
= 1; /* easy <var187:Int> isa OTHER*/
819 if (unlikely(!var192
)) {
820 var_class_name195
= type_core__Int
.name
;
821 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name195
);
822 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
825 var196
= var_total
+ var187
;
828 RET_LABEL191
:(void)0;
832 var_197
= var_table186
;
834 var198
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_197
);
839 var200
= ((short int(*)(val
* self
))((((long)var_199
&3)?class_info
[((long)var_199
&3)]:var_199
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_199
); /* is_ok on <var_199:IndexedIterator[nullable MPropDef]>*/
846 var202
= ((val
*(*)(val
* self
))((((long)var_199
&3)?class_info
[((long)var_199
&3)]:var_199
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_199
); /* item on <var_199:IndexedIterator[nullable MPropDef]>*/
849 if (var_e203
== NULL
) {
850 var204
= 1; /* is null */
852 var204
= 0; /* arg is null but recv is not */
855 { /* Inline kernel$Object$== (var_e203,((val*)NULL)) on <var_e203:nullable MPropDef> */
856 var_other
= ((val
*)NULL
);
858 { /* Inline kernel$Object$is_same_instance (var_e203,var_other) on <var_e203:nullable MPropDef(MPropDef)> */
859 var209
= var_e203
== var_other
;
862 RET_LABEL208
:(void)0;
867 RET_LABEL206
:(void)0;
873 { /* Inline kernel$Int$+ (var_holes,1l) on <var_holes:Int> */
874 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
875 /* <1l:Int> isa OTHER */
876 var212
= 1; /* easy <1l:Int> isa OTHER*/
877 if (unlikely(!var212
)) {
878 var_class_name215
= type_core__Int
.name
;
879 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name215
);
880 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
883 var216
= var_holes
+ 1l;
886 RET_LABEL211
:(void)0;
893 ((void(*)(val
* self
))((((long)var_199
&3)?class_info
[((long)var_199
&3)]:var_199
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_199
); /* next on <var_199:IndexedIterator[nullable MPropDef]>*/
896 BREAK_label201
: (void)0;
898 ((void(*)(val
* self
))((((long)var_199
&3)?class_info
[((long)var_199
&3)]:var_199
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_199
); /* finish on <var_199:IndexedIterator[nullable MPropDef]>*/
901 ((void(*)(val
* self
))((((long)var_180
&3)?class_info
[((long)var_180
&3)]:var_180
->class)->vft
[COLOR_core__abstract_collection__MapIterator__next
]))(var_180
); /* next on <var_180:MapIterator[MClass, Array[nullable MPropDef]]>*/
904 BREAK_label182
: (void)0;
906 { /* Inline abstract_collection$MapIterator$finish (var_180) on <var_180:MapIterator[MClass, Array[nullable MPropDef]]> */
907 RET_LABEL217
:(void)0;
911 if (unlikely(varonce219
==NULL
)) {
912 var220
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
913 if (likely(varonce221
!=NULL
)) {
917 var225
= (val
*)(1l<<2|1);
918 var226
= (val
*)(1l<<2|1);
919 var227
= (val
*)((long)(0)<<2|3);
920 var228
= (val
*)((long)(0)<<2|3);
921 var224
= core__flat___CString___to_s_unsafe(var223
, var225
, var226
, var227
, var228
);
925 ((struct instance_core__NativeArray
*)var220
)->values
[0]=var222
;
926 if (likely(varonce229
!=NULL
)) {
930 var233
= (val
*)(1l<<2|1);
931 var234
= (val
*)(1l<<2|1);
932 var235
= (val
*)((long)(0)<<2|3);
933 var236
= (val
*)((long)(0)<<2|3);
934 var232
= core__flat___CString___to_s_unsafe(var231
, var233
, var234
, var235
, var236
);
938 ((struct instance_core__NativeArray
*)var220
)->values
[2]=var230
;
943 var237
= core__flat___Int___core__abstract_text__Object__to_s(var_total
);
944 ((struct instance_core__NativeArray
*)var220
)->values
[1]=var237
;
945 var238
= core__flat___Int___core__abstract_text__Object__to_s(var_holes
);
946 ((struct instance_core__NativeArray
*)var220
)->values
[3]=var238
;
948 var239
= ((val
*(*)(val
* self
))(var220
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var220
); /* native_to_s on <var220:NativeArray[String]>*/
952 core__file___Sys___print(var218
, var239
); /* Direct call file$Sys$print on <var218:Sys>*/
955 if (likely(varonce241
!=NULL
)) {
958 var243
= "# size of attributes tables";
959 var245
= (val
*)(27l<<2|1);
960 var246
= (val
*)(27l<<2|1);
961 var247
= (val
*)((long)(0)<<2|3);
962 var248
= (val
*)((long)(0)<<2|3);
963 var244
= core__flat___CString___to_s_unsafe(var243
, var245
, var246
, var247
, var248
);
968 core__file___Sys___print(var240
, var242
); /* Direct call file$Sys$print on <var240:Sys>*/
971 if (likely(varonce250
!=NULL
)) {
974 var252
= "\ttotal \tholes";
975 var254
= (val
*)(13l<<2|1);
976 var255
= (val
*)(13l<<2|1);
977 var256
= (val
*)((long)(0)<<2|3);
978 var257
= (val
*)((long)(0)<<2|3);
979 var253
= core__flat___CString___to_s_unsafe(var252
, var254
, var255
, var256
, var257
);
984 core__file___Sys___print(var249
, var251
); /* Direct call file$Sys$print on <var249:Sys>*/
989 { /* Inline separate_compiler$SeparateCompiler$attr_tables (self) on <self:SeparateErasureCompiler> */
990 var260
= self
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___attr_tables
].val
; /* _attr_tables on <self:SeparateErasureCompiler> */
991 if (unlikely(var260
== NULL
)) {
992 if(catchStack
.cursor
>= 0){
993 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
995 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _attr_tables");
996 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1074);
1000 RET_LABEL259
:(void)0;
1005 var262
= ((val
*(*)(val
* self
))((((long)var_261
&3)?class_info
[((long)var_261
&3)]:var_261
->class)->vft
[COLOR_core__abstract_collection__MapRead__iterator
]))(var_261
); /* iterator on <var_261:Map[MClass, Array[nullable MProperty]]>*/
1010 var264
= ((short int(*)(val
* self
))((((long)var_263
&3)?class_info
[((long)var_263
&3)]:var_263
->class)->vft
[COLOR_core__abstract_collection__MapIterator__is_ok
]))(var_263
); /* is_ok on <var_263:MapIterator[MClass, Array[nullable MProperty]]>*/
1014 goto BREAK_label265
;
1017 var266
= ((val
*(*)(val
* self
))((((long)var_263
&3)?class_info
[((long)var_263
&3)]:var_263
->class)->vft
[COLOR_core__abstract_collection__MapIterator__key
]))(var_263
); /* key on <var_263:MapIterator[MClass, Array[nullable MProperty]]>*/
1021 var268
= ((val
*(*)(val
* self
))((((long)var_263
&3)?class_info
[((long)var_263
&3)]:var_263
->class)->vft
[COLOR_core__abstract_collection__MapIterator__item
]))(var_263
); /* item on <var_263:MapIterator[MClass, Array[nullable MProperty]]>*/
1023 var_table269
= var268
;
1025 { /* Inline array$AbstractArrayRead$length (var_table269) on <var_table269:Array[nullable MProperty]> */
1026 var272
= var_table269
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_table269:Array[nullable MProperty]> */
1028 RET_LABEL271
:(void)0;
1032 { /* Inline kernel$Int$+ (var_total,var270) on <var_total:Int> */
1033 /* Covariant cast for argument 0 (i) <var270:Int> isa OTHER */
1034 /* <var270:Int> isa OTHER */
1035 var275
= 1; /* easy <var270:Int> isa OTHER*/
1036 if (unlikely(!var275
)) {
1037 var_class_name278
= type_core__Int
.name
;
1038 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name278
);
1039 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1042 var279
= var_total
+ var270
;
1045 RET_LABEL274
:(void)0;
1049 var_280
= var_table269
;
1051 var281
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_280
);
1056 var283
= ((short int(*)(val
* self
))((((long)var_282
&3)?class_info
[((long)var_282
&3)]:var_282
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_282
); /* is_ok on <var_282:IndexedIterator[nullable MProperty]>*/
1060 goto BREAK_label284
;
1063 var285
= ((val
*(*)(val
* self
))((((long)var_282
&3)?class_info
[((long)var_282
&3)]:var_282
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_282
); /* item on <var_282:IndexedIterator[nullable MProperty]>*/
1066 if (var_e286
== NULL
) {
1067 var287
= 1; /* is null */
1069 var287
= 0; /* arg is null but recv is not */
1072 { /* Inline kernel$Object$== (var_e286,((val*)NULL)) on <var_e286:nullable MProperty> */
1073 var_other
= ((val
*)NULL
);
1075 { /* Inline kernel$Object$is_same_instance (var_e286,var_other) on <var_e286:nullable MProperty(MProperty)> */
1076 var292
= var_e286
== var_other
;
1079 RET_LABEL291
:(void)0;
1084 RET_LABEL289
:(void)0;
1090 { /* Inline kernel$Int$+ (var_holes,1l) on <var_holes:Int> */
1091 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1092 /* <1l:Int> isa OTHER */
1093 var295
= 1; /* easy <1l:Int> isa OTHER*/
1094 if (unlikely(!var295
)) {
1095 var_class_name298
= type_core__Int
.name
;
1096 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name298
);
1097 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
1100 var299
= var_holes
+ 1l;
1103 RET_LABEL294
:(void)0;
1110 ((void(*)(val
* self
))((((long)var_282
&3)?class_info
[((long)var_282
&3)]:var_282
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_282
); /* next on <var_282:IndexedIterator[nullable MProperty]>*/
1113 BREAK_label284
: (void)0;
1115 ((void(*)(val
* self
))((((long)var_282
&3)?class_info
[((long)var_282
&3)]:var_282
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_282
); /* finish on <var_282:IndexedIterator[nullable MProperty]>*/
1118 ((void(*)(val
* self
))((((long)var_263
&3)?class_info
[((long)var_263
&3)]:var_263
->class)->vft
[COLOR_core__abstract_collection__MapIterator__next
]))(var_263
); /* next on <var_263:MapIterator[MClass, Array[nullable MProperty]]>*/
1121 BREAK_label265
: (void)0;
1123 { /* Inline abstract_collection$MapIterator$finish (var_263) on <var_263:MapIterator[MClass, Array[nullable MProperty]]> */
1124 RET_LABEL300
:(void)0;
1128 if (unlikely(varonce302
==NULL
)) {
1129 var303
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
1130 if (likely(varonce304
!=NULL
)) {
1131 var305
= varonce304
;
1134 var308
= (val
*)(1l<<2|1);
1135 var309
= (val
*)(1l<<2|1);
1136 var310
= (val
*)((long)(0)<<2|3);
1137 var311
= (val
*)((long)(0)<<2|3);
1138 var307
= core__flat___CString___to_s_unsafe(var306
, var308
, var309
, var310
, var311
);
1140 varonce304
= var305
;
1142 ((struct instance_core__NativeArray
*)var303
)->values
[0]=var305
;
1143 if (likely(varonce312
!=NULL
)) {
1144 var313
= varonce312
;
1147 var316
= (val
*)(1l<<2|1);
1148 var317
= (val
*)(1l<<2|1);
1149 var318
= (val
*)((long)(0)<<2|3);
1150 var319
= (val
*)((long)(0)<<2|3);
1151 var315
= core__flat___CString___to_s_unsafe(var314
, var316
, var317
, var318
, var319
);
1153 varonce312
= var313
;
1155 ((struct instance_core__NativeArray
*)var303
)->values
[2]=var313
;
1157 var303
= varonce302
;
1160 var320
= core__flat___Int___core__abstract_text__Object__to_s(var_total
);
1161 ((struct instance_core__NativeArray
*)var303
)->values
[1]=var320
;
1162 var321
= core__flat___Int___core__abstract_text__Object__to_s(var_holes
);
1163 ((struct instance_core__NativeArray
*)var303
)->values
[3]=var321
;
1165 var322
= ((val
*(*)(val
* self
))(var303
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var303
); /* native_to_s on <var303:NativeArray[String]>*/
1167 varonce302
= var303
;
1169 core__file___Sys___print(var301
, var322
); /* Direct call file$Sys$print on <var301:Sys>*/
1173 /* method separate_erasure_compiler$SeparateErasureCompilerVisitor$compile_callsite for (self: SeparateErasureCompilerVisitor, CallSite, Array[RuntimeVariable]): nullable RuntimeVariable */
1174 val
* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__compile_callsite(val
* self
, val
* p0
, val
* p1
) {
1175 val
* var
/* : nullable RuntimeVariable */;
1176 val
* var_callsite
/* var callsite: CallSite */;
1177 val
* var_arguments
/* var arguments: Array[RuntimeVariable] */;
1178 val
* var1
/* : nullable RuntimeVariable */;
1179 val
* var_res
/* var res: nullable RuntimeVariable */;
1180 short int var2
/* : Bool */;
1181 short int var3
/* : Bool */;
1182 short int var5
/* : Bool */;
1183 short int var_
/* var : Bool */;
1184 val
* var6
/* : AbstractCompiler */;
1185 val
* var8
/* : AbstractCompiler */;
1186 short int var9
/* : Bool */;
1189 const char* var_class_name
;
1190 val
* var10
/* : ModelBuilder */;
1191 val
* var12
/* : ModelBuilder */;
1192 val
* var13
/* : ToolContext */;
1193 val
* var15
/* : ToolContext */;
1194 val
* var16
/* : OptionBool */;
1195 val
* var18
/* : OptionBool */;
1196 val
* var19
/* : nullable Object */;
1197 val
* var21
/* : nullable Object */;
1198 short int var22
/* : Bool */;
1199 short int var23
/* : Bool */;
1200 short int var24
/* : Bool */;
1201 short int var25
/* : Bool */;
1202 val
* var_other
/* var other: nullable Object */;
1203 short int var27
/* : Bool */;
1204 short int var28
/* : Bool */;
1205 val
* var29
/* : MSignature */;
1206 val
* var31
/* : MSignature */;
1207 val
* var32
/* : nullable MType */;
1208 val
* var34
/* : nullable MType */;
1209 val
* var_mtype
/* var mtype: nullable MType */;
1210 short int var35
/* : Bool */;
1211 short int var36
/* : Bool */;
1212 short int var38
/* : Bool */;
1213 short int var39
/* : Bool */;
1214 val
* var40
/* : NativeArray[String] */;
1215 static val
* varonce
;
1216 static val
* varonce41
;
1217 val
* var42
/* : String */;
1218 char* var43
/* : CString */;
1219 val
* var44
/* : String */;
1220 val
* var45
/* : nullable Int */;
1221 val
* var46
/* : nullable Int */;
1222 val
* var47
/* : nullable Bool */;
1223 val
* var48
/* : nullable Bool */;
1224 static val
* varonce49
;
1225 val
* var50
/* : String */;
1226 char* var51
/* : CString */;
1227 val
* var52
/* : String */;
1228 val
* var53
/* : nullable Int */;
1229 val
* var54
/* : nullable Int */;
1230 val
* var55
/* : nullable Bool */;
1231 val
* var56
/* : nullable Bool */;
1232 static val
* varonce57
;
1233 val
* var58
/* : String */;
1234 char* var59
/* : CString */;
1235 val
* var60
/* : String */;
1236 val
* var61
/* : nullable Int */;
1237 val
* var62
/* : nullable Int */;
1238 val
* var63
/* : nullable Bool */;
1239 val
* var64
/* : nullable Bool */;
1240 val
* var65
/* : String */;
1241 val
* var66
/* : String */;
1242 val
* var67
/* : String */;
1243 static val
* varonce68
;
1244 val
* var69
/* : String */;
1245 char* var70
/* : CString */;
1246 val
* var71
/* : String */;
1247 val
* var72
/* : nullable Int */;
1248 val
* var73
/* : nullable Int */;
1249 val
* var74
/* : nullable Bool */;
1250 val
* var75
/* : nullable Bool */;
1251 val
* var76
/* : RuntimeVariable */;
1252 val
* var_cond
/* var cond: RuntimeVariable */;
1253 val
* var78
/* : NativeArray[String] */;
1254 static val
* varonce77
;
1255 static val
* varonce79
;
1256 val
* var80
/* : String */;
1257 char* var81
/* : CString */;
1258 val
* var82
/* : String */;
1259 val
* var83
/* : nullable Int */;
1260 val
* var84
/* : nullable Int */;
1261 val
* var85
/* : nullable Bool */;
1262 val
* var86
/* : nullable Bool */;
1263 static val
* varonce87
;
1264 val
* var88
/* : String */;
1265 char* var89
/* : CString */;
1266 val
* var90
/* : String */;
1267 val
* var91
/* : nullable Int */;
1268 val
* var92
/* : nullable Int */;
1269 val
* var93
/* : nullable Bool */;
1270 val
* var94
/* : nullable Bool */;
1271 val
* var95
/* : String */;
1272 val
* var96
/* : String */;
1273 static val
* varonce97
;
1274 val
* var98
/* : String */;
1275 char* var99
/* : CString */;
1276 val
* var100
/* : String */;
1277 val
* var101
/* : nullable Int */;
1278 val
* var102
/* : nullable Int */;
1279 val
* var103
/* : nullable Bool */;
1280 val
* var104
/* : nullable Bool */;
1281 static val
* varonce105
;
1282 val
* var106
/* : String */;
1283 char* var107
/* : CString */;
1284 val
* var108
/* : String */;
1285 val
* var109
/* : nullable Int */;
1286 val
* var110
/* : nullable Int */;
1287 val
* var111
/* : nullable Bool */;
1288 val
* var112
/* : nullable Bool */;
1292 var1
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
))(self
->class->vft
[COLOR_nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__compile_callsite
]))(self
, p0
, p1
); /* compile_callsite on <self:SeparateErasureCompilerVisitor>*/
1296 { /* Inline typing$CallSite$erasure_cast (var_callsite) on <var_callsite:CallSite> */
1297 var5
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___erasure_cast
].s
; /* _erasure_cast on <var_callsite:CallSite> */
1305 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
1306 var8
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
1307 if (unlikely(var8
== NULL
)) {
1308 if(catchStack
.cursor
>= 0){
1309 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1311 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1312 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
1319 /* <var6:AbstractCompiler(SeparateCompiler)> isa SeparateErasureCompiler */
1320 cltype
= type_nitc__SeparateErasureCompiler
.color
;
1321 idtype
= type_nitc__SeparateErasureCompiler
.id
;
1322 if(cltype
>= var6
->type
->table_size
) {
1325 var9
= var6
->type
->type_table
[cltype
] == idtype
;
1327 if (unlikely(!var9
)) {
1328 var_class_name
= var6
== NULL ?
"null" : var6
->type
->name
;
1329 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "SeparateErasureCompiler", var_class_name
);
1330 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 480);
1334 { /* Inline abstract_compiler$AbstractCompiler$modelbuilder (var6) on <var6:AbstractCompiler(SeparateErasureCompiler)> */
1335 var12
= var6
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var6:AbstractCompiler(SeparateErasureCompiler)> */
1336 if (unlikely(var12
== NULL
)) {
1337 if(catchStack
.cursor
>= 0){
1338 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1340 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
1341 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 552);
1345 RET_LABEL11
:(void)0;
1349 { /* Inline modelbuilder_base$ModelBuilder$toolcontext (var10) on <var10:ModelBuilder> */
1350 var15
= var10
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var10:ModelBuilder> */
1351 if (unlikely(var15
== NULL
)) {
1352 if(catchStack
.cursor
>= 0){
1353 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1355 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1356 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
1360 RET_LABEL14
:(void)0;
1364 { /* Inline separate_erasure_compiler$ToolContext$opt_no_check_erasure_cast (var13) on <var13:ToolContext> */
1365 var18
= var13
->attrs
[COLOR_nitc__separate_erasure_compiler__ToolContext___opt_no_check_erasure_cast
].val
; /* _opt_no_check_erasure_cast on <var13:ToolContext> */
1366 if (unlikely(var18
== NULL
)) {
1367 if(catchStack
.cursor
>= 0){
1368 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1370 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_check_erasure_cast");
1371 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 26);
1375 RET_LABEL17
:(void)0;
1379 { /* Inline opts$Option$value (var16) on <var16:OptionBool> */
1380 var21
= var16
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var16:OptionBool> */
1382 RET_LABEL20
:(void)0;
1385 var22
= (short int)((long)(var19
)>>2);
1392 if (var_res
== NULL
) {
1393 var24
= 0; /* is null */
1395 var24
= 1; /* arg is null and recv is not */
1398 { /* Inline kernel$Object$!= (var_res,((val*)NULL)) on <var_res:nullable RuntimeVariable> */
1399 var_other
= ((val
*)NULL
);
1401 var27
= ((short int(*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_res
, var_other
); /* == on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
1406 RET_LABEL26
:(void)0;
1410 if (unlikely(!var24
)) {
1411 if(catchStack
.cursor
>= 0){
1412 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1414 PRINT_ERROR("Runtime error: %s", "Assert failed");
1415 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 481);
1419 { /* Inline typing$CallSite$msignature (var_callsite) on <var_callsite:CallSite> */
1420 var31
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___msignature
].val
; /* _msignature on <var_callsite:CallSite> */
1421 if (unlikely(var31
== NULL
)) {
1422 if(catchStack
.cursor
>= 0){
1423 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1425 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature");
1426 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 663);
1430 RET_LABEL30
:(void)0;
1434 { /* Inline model$MSignature$return_mtype (var29) on <var29:MSignature> */
1435 var34
= var29
->attrs
[COLOR_nitc__model__MSignature___return_mtype
].val
; /* _return_mtype on <var29:MSignature> */
1437 RET_LABEL33
:(void)0;
1441 if (var_mtype
== NULL
) {
1442 var35
= 0; /* is null */
1444 var35
= 1; /* arg is null and recv is not */
1447 { /* Inline kernel$Object$!= (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
1448 var_other
= ((val
*)NULL
);
1450 var38
= ((short int(*)(val
* self
, val
* p0
))(var_mtype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_mtype
, var_other
); /* == on <var_mtype:nullable MType(MType)>*/
1455 RET_LABEL37
:(void)0;
1459 if (unlikely(!var35
)) {
1460 if(catchStack
.cursor
>= 0){
1461 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1463 PRINT_ERROR("Runtime error: %s", "Assert failed");
1464 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 483);
1467 if (unlikely(varonce
==NULL
)) {
1468 var40
= NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String
);
1469 if (likely(varonce41
!=NULL
)) {
1472 var43
= "/* Erasure cast for return ";
1473 var45
= (val
*)(27l<<2|1);
1474 var46
= (val
*)(27l<<2|1);
1475 var47
= (val
*)((long)(0)<<2|3);
1476 var48
= (val
*)((long)(0)<<2|3);
1477 var44
= core__flat___CString___to_s_unsafe(var43
, var45
, var46
, var47
, var48
);
1481 ((struct instance_core__NativeArray
*)var40
)->values
[0]=var42
;
1482 if (likely(varonce49
!=NULL
)) {
1486 var53
= (val
*)(5l<<2|1);
1487 var54
= (val
*)(5l<<2|1);
1488 var55
= (val
*)((long)(0)<<2|3);
1489 var56
= (val
*)((long)(0)<<2|3);
1490 var52
= core__flat___CString___to_s_unsafe(var51
, var53
, var54
, var55
, var56
);
1494 ((struct instance_core__NativeArray
*)var40
)->values
[2]=var50
;
1495 if (likely(varonce57
!=NULL
)) {
1499 var61
= (val
*)(3l<<2|1);
1500 var62
= (val
*)(3l<<2|1);
1501 var63
= (val
*)((long)(0)<<2|3);
1502 var64
= (val
*)((long)(0)<<2|3);
1503 var60
= core__flat___CString___to_s_unsafe(var59
, var61
, var62
, var63
, var64
);
1507 ((struct instance_core__NativeArray
*)var40
)->values
[4]=var58
;
1513 var65
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:nullable RuntimeVariable(RuntimeVariable)>*/
1515 ((struct instance_core__NativeArray
*)var40
)->values
[1]=var65
;
1517 var66
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:nullable MType(MType)>*/
1519 ((struct instance_core__NativeArray
*)var40
)->values
[3]=var66
;
1521 var67
= ((val
*(*)(val
* self
))(var40
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var40
); /* native_to_s on <var40:NativeArray[String]>*/
1525 nitc___nitc__AbstractCompilerVisitor___add(self
, var67
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
1527 if (likely(varonce68
!=NULL
)) {
1531 var72
= (val
*)(7l<<2|1);
1532 var73
= (val
*)(7l<<2|1);
1533 var74
= (val
*)((long)(0)<<2|3);
1534 var75
= (val
*)((long)(0)<<2|3);
1535 var71
= core__flat___CString___to_s_unsafe(var70
, var72
, var73
, var74
, var75
);
1540 var76
= nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__type_test(self
, var_res
, var_mtype
, var69
);
1543 if (unlikely(varonce77
==NULL
)) {
1544 var78
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
1545 if (likely(varonce79
!=NULL
)) {
1549 var83
= (val
*)(5l<<2|1);
1550 var84
= (val
*)(5l<<2|1);
1551 var85
= (val
*)((long)(0)<<2|3);
1552 var86
= (val
*)((long)(0)<<2|3);
1553 var82
= core__flat___CString___to_s_unsafe(var81
, var83
, var84
, var85
, var86
);
1557 ((struct instance_core__NativeArray
*)var78
)->values
[0]=var80
;
1558 if (likely(varonce87
!=NULL
)) {
1562 var91
= (val
*)(3l<<2|1);
1563 var92
= (val
*)(3l<<2|1);
1564 var93
= (val
*)((long)(0)<<2|3);
1565 var94
= (val
*)((long)(0)<<2|3);
1566 var90
= core__flat___CString___to_s_unsafe(var89
, var91
, var92
, var93
, var94
);
1570 ((struct instance_core__NativeArray
*)var78
)->values
[2]=var88
;
1576 var95
= ((val
*(*)(val
* self
))(var_cond
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_cond
); /* to_s on <var_cond:RuntimeVariable>*/
1578 ((struct instance_core__NativeArray
*)var78
)->values
[1]=var95
;
1580 var96
= ((val
*(*)(val
* self
))(var78
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var78
); /* native_to_s on <var78:NativeArray[String]>*/
1584 nitc___nitc__AbstractCompilerVisitor___add(self
, var96
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
1586 if (likely(varonce97
!=NULL
)) {
1589 var99
= "Cast failed";
1590 var101
= (val
*)(11l<<2|1);
1591 var102
= (val
*)(11l<<2|1);
1592 var103
= (val
*)((long)(0)<<2|3);
1593 var104
= (val
*)((long)(0)<<2|3);
1594 var100
= core__flat___CString___to_s_unsafe(var99
, var101
, var102
, var103
, var104
);
1599 nitc___nitc__AbstractCompilerVisitor___add_abort(self
, var98
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_abort on <self:SeparateErasureCompilerVisitor>*/
1601 if (likely(varonce105
!=NULL
)) {
1602 var106
= varonce105
;
1605 var109
= (val
*)(1l<<2|1);
1606 var110
= (val
*)(1l<<2|1);
1607 var111
= (val
*)((long)(0)<<2|3);
1608 var112
= (val
*)((long)(0)<<2|3);
1609 var108
= core__flat___CString___to_s_unsafe(var107
, var109
, var110
, var111
, var112
);
1611 varonce105
= var106
;
1614 nitc___nitc__AbstractCompilerVisitor___add(self
, var106
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
1623 /* method separate_erasure_compiler$SeparateErasureCompilerVisitor$init_instance for (self: SeparateErasureCompilerVisitor, MClassType): RuntimeVariable */
1624 val
* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__init_instance(val
* self
, val
* p0
) {
1625 val
* var
/* : RuntimeVariable */;
1626 val
* var_mtype
/* var mtype: MClassType */;
1627 val
* var1
/* : NativeArray[String] */;
1628 static val
* varonce
;
1629 static val
* varonce2
;
1630 val
* var3
/* : String */;
1631 char* var4
/* : CString */;
1632 val
* var5
/* : String */;
1633 val
* var6
/* : nullable Int */;
1634 val
* var7
/* : nullable Int */;
1635 val
* var8
/* : nullable Bool */;
1636 val
* var9
/* : nullable Bool */;
1637 val
* var10
/* : MClass */;
1638 val
* var12
/* : MClass */;
1639 val
* var13
/* : String */;
1640 val
* var14
/* : String */;
1641 val
* var16
/* : NativeArray[String] */;
1642 static val
* varonce15
;
1643 static val
* varonce17
;
1644 val
* var18
/* : String */;
1645 char* var19
/* : CString */;
1646 val
* var20
/* : String */;
1647 val
* var21
/* : nullable Int */;
1648 val
* var22
/* : nullable Int */;
1649 val
* var23
/* : nullable Bool */;
1650 val
* var24
/* : nullable Bool */;
1651 static val
* varonce25
;
1652 val
* var26
/* : String */;
1653 char* var27
/* : CString */;
1654 val
* var28
/* : String */;
1655 val
* var29
/* : nullable Int */;
1656 val
* var30
/* : nullable Int */;
1657 val
* var31
/* : nullable Bool */;
1658 val
* var32
/* : nullable Bool */;
1659 val
* var33
/* : MClass */;
1660 val
* var35
/* : MClass */;
1661 val
* var36
/* : String */;
1662 val
* var37
/* : String */;
1663 val
* var38
/* : RuntimeVariable */;
1665 if (unlikely(varonce
==NULL
)) {
1666 var1
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
1667 if (likely(varonce2
!=NULL
)) {
1671 var6
= (val
*)(4l<<2|1);
1672 var7
= (val
*)(4l<<2|1);
1673 var8
= (val
*)((long)(0)<<2|3);
1674 var9
= (val
*)((long)(0)<<2|3);
1675 var5
= core__flat___CString___to_s_unsafe(var4
, var6
, var7
, var8
, var9
);
1679 ((struct instance_core__NativeArray
*)var1
)->values
[0]=var3
;
1685 { /* Inline model$MClassType$mclass (var_mtype) on <var_mtype:MClassType> */
1686 var12
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MClassType> */
1687 if (unlikely(var12
== NULL
)) {
1688 if(catchStack
.cursor
>= 0){
1689 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1691 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1692 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
1696 RET_LABEL11
:(void)0;
1700 var13
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var10
);
1702 ((struct instance_core__NativeArray
*)var1
)->values
[1]=var13
;
1704 var14
= ((val
*(*)(val
* self
))(var1
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var1
); /* native_to_s on <var1:NativeArray[String]>*/
1708 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var14
); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on <self:SeparateErasureCompilerVisitor>*/
1710 if (unlikely(varonce15
==NULL
)) {
1711 var16
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
1712 if (likely(varonce17
!=NULL
)) {
1716 var21
= (val
*)(4l<<2|1);
1717 var22
= (val
*)(4l<<2|1);
1718 var23
= (val
*)((long)(0)<<2|3);
1719 var24
= (val
*)((long)(0)<<2|3);
1720 var20
= core__flat___CString___to_s_unsafe(var19
, var21
, var22
, var23
, var24
);
1724 ((struct instance_core__NativeArray
*)var16
)->values
[0]=var18
;
1725 if (likely(varonce25
!=NULL
)) {
1729 var29
= (val
*)(2l<<2|1);
1730 var30
= (val
*)(2l<<2|1);
1731 var31
= (val
*)((long)(0)<<2|3);
1732 var32
= (val
*)((long)(0)<<2|3);
1733 var28
= core__flat___CString___to_s_unsafe(var27
, var29
, var30
, var31
, var32
);
1737 ((struct instance_core__NativeArray
*)var16
)->values
[2]=var26
;
1743 { /* Inline model$MClassType$mclass (var_mtype) on <var_mtype:MClassType> */
1744 var35
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MClassType> */
1745 if (unlikely(var35
== NULL
)) {
1746 if(catchStack
.cursor
>= 0){
1747 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
1749 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1750 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
1754 RET_LABEL34
:(void)0;
1758 var36
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var33
);
1760 ((struct instance_core__NativeArray
*)var16
)->values
[1]=var36
;
1762 var37
= ((val
*(*)(val
* self
))(var16
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var16
); /* native_to_s on <var16:NativeArray[String]>*/
1766 var38
= nitc___nitc__AbstractCompilerVisitor___new_expr(self
, var37
, var_mtype
);
1773 /* method separate_erasure_compiler$SeparateErasureCompilerVisitor$type_test for (self: SeparateErasureCompilerVisitor, RuntimeVariable, MType, String): RuntimeVariable */
1774 val
* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__type_test(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1775 val
* var
/* : RuntimeVariable */;
1776 val
* var_value
/* var value: RuntimeVariable */;
1777 val
* var_mtype
/* var mtype: MType */;
1778 val
* var_tag
/* var tag: String */;
1779 val
* var1
/* : NativeArray[String] */;
1780 static val
* varonce
;
1781 static val
* varonce2
;
1782 val
* var3
/* : String */;
1783 char* var4
/* : CString */;
1784 val
* var5
/* : String */;
1785 val
* var6
/* : nullable Int */;
1786 val
* var7
/* : nullable Int */;
1787 val
* var8
/* : nullable Bool */;
1788 val
* var9
/* : nullable Bool */;
1789 static val
* varonce10
;
1790 val
* var11
/* : String */;
1791 char* var12
/* : CString */;
1792 val
* var13
/* : String */;
1793 val
* var14
/* : nullable Int */;
1794 val
* var15
/* : nullable Int */;
1795 val
* var16
/* : nullable Bool */;
1796 val
* var17
/* : nullable Bool */;
1797 static val
* varonce18
;
1798 val
* var19
/* : String */;
1799 char* var20
/* : CString */;
1800 val
* var21
/* : String */;
1801 val
* var22
/* : nullable Int */;
1802 val
* var23
/* : nullable Int */;
1803 val
* var24
/* : nullable Bool */;
1804 val
* var25
/* : nullable Bool */;
1805 val
* var26
/* : String */;
1806 val
* var27
/* : String */;
1807 val
* var28
/* : String */;
1808 val
* var29
/* : MClassType */;
1809 val
* var30
/* : RuntimeVariable */;
1810 val
* var_res
/* var res: RuntimeVariable */;
1811 static val
* varonce31
;
1812 val
* var32
/* : String */;
1813 char* var33
/* : CString */;
1814 val
* var34
/* : String */;
1815 val
* var35
/* : nullable Int */;
1816 val
* var36
/* : nullable Int */;
1817 val
* var37
/* : nullable Bool */;
1818 val
* var38
/* : nullable Bool */;
1819 val
* var39
/* : String */;
1820 val
* var_cltype
/* var cltype: String */;
1821 val
* var41
/* : NativeArray[String] */;
1822 static val
* varonce40
;
1823 static val
* varonce42
;
1824 val
* var43
/* : String */;
1825 char* var44
/* : CString */;
1826 val
* var45
/* : String */;
1827 val
* var46
/* : nullable Int */;
1828 val
* var47
/* : nullable Int */;
1829 val
* var48
/* : nullable Bool */;
1830 val
* var49
/* : nullable Bool */;
1831 static val
* varonce50
;
1832 val
* var51
/* : String */;
1833 char* var52
/* : CString */;
1834 val
* var53
/* : String */;
1835 val
* var54
/* : nullable Int */;
1836 val
* var55
/* : nullable Int */;
1837 val
* var56
/* : nullable Bool */;
1838 val
* var57
/* : nullable Bool */;
1839 val
* var58
/* : String */;
1840 static val
* varonce59
;
1841 val
* var60
/* : String */;
1842 char* var61
/* : CString */;
1843 val
* var62
/* : String */;
1844 val
* var63
/* : nullable Int */;
1845 val
* var64
/* : nullable Int */;
1846 val
* var65
/* : nullable Bool */;
1847 val
* var66
/* : nullable Bool */;
1848 val
* var67
/* : String */;
1849 val
* var_idtype
/* var idtype: String */;
1850 val
* var69
/* : NativeArray[String] */;
1851 static val
* varonce68
;
1852 static val
* varonce70
;
1853 val
* var71
/* : String */;
1854 char* var72
/* : CString */;
1855 val
* var73
/* : String */;
1856 val
* var74
/* : nullable Int */;
1857 val
* var75
/* : nullable Int */;
1858 val
* var76
/* : nullable Bool */;
1859 val
* var77
/* : nullable Bool */;
1860 static val
* varonce78
;
1861 val
* var79
/* : String */;
1862 char* var80
/* : CString */;
1863 val
* var81
/* : String */;
1864 val
* var82
/* : nullable Int */;
1865 val
* var83
/* : nullable Int */;
1866 val
* var84
/* : nullable Bool */;
1867 val
* var85
/* : nullable Bool */;
1868 val
* var86
/* : String */;
1869 short int var87
/* : Bool */;
1870 short int var_maybe_null
/* var maybe_null: Bool */;
1871 static val
* varonce88
;
1872 val
* var89
/* : String */;
1873 char* var90
/* : CString */;
1874 val
* var91
/* : String */;
1875 val
* var92
/* : nullable Int */;
1876 val
* var93
/* : nullable Int */;
1877 val
* var94
/* : nullable Bool */;
1878 val
* var95
/* : nullable Bool */;
1879 val
* var_accept_null
/* var accept_null: String */;
1880 short int var96
/* : Bool */;
1883 val
* var97
/* : MType */;
1884 val
* var99
/* : MType */;
1885 static val
* varonce100
;
1886 val
* var101
/* : String */;
1887 char* var102
/* : CString */;
1888 val
* var103
/* : String */;
1889 val
* var104
/* : nullable Int */;
1890 val
* var105
/* : nullable Int */;
1891 val
* var106
/* : nullable Bool */;
1892 val
* var107
/* : nullable Bool */;
1893 short int var108
/* : Bool */;
1896 val
* var111
/* : nullable StaticFrame */;
1897 val
* var113
/* : nullable StaticFrame */;
1898 val
* var114
/* : MPropDef */;
1899 val
* var116
/* : MPropDef */;
1900 val
* var117
/* : MClassDef */;
1901 val
* var119
/* : MClassDef */;
1902 val
* var120
/* : MClassType */;
1903 val
* var122
/* : MClassType */;
1904 val
* var123
/* : nullable StaticFrame */;
1905 val
* var125
/* : nullable StaticFrame */;
1906 val
* var126
/* : MPropDef */;
1907 val
* var128
/* : MPropDef */;
1908 val
* var129
/* : MClassDef */;
1909 val
* var131
/* : MClassDef */;
1910 val
* var132
/* : MClassType */;
1911 val
* var134
/* : MClassType */;
1912 val
* var135
/* : nullable StaticFrame */;
1913 val
* var137
/* : nullable StaticFrame */;
1914 val
* var138
/* : MPropDef */;
1915 val
* var140
/* : MPropDef */;
1916 val
* var141
/* : MClassDef */;
1917 val
* var143
/* : MClassDef */;
1918 val
* var144
/* : MModule */;
1919 val
* var146
/* : MModule */;
1920 val
* var147
/* : MType */;
1921 short int var148
/* : Bool */;
1924 val
* var151
/* : MType */;
1925 val
* var153
/* : MType */;
1926 static val
* varonce154
;
1927 val
* var155
/* : String */;
1928 char* var156
/* : CString */;
1929 val
* var157
/* : String */;
1930 val
* var158
/* : nullable Int */;
1931 val
* var159
/* : nullable Int */;
1932 val
* var160
/* : nullable Bool */;
1933 val
* var161
/* : nullable Bool */;
1934 val
* var162
/* : MType */;
1935 val
* var164
/* : MType */;
1936 val
* var165
/* : nullable StaticFrame */;
1937 val
* var167
/* : nullable StaticFrame */;
1938 val
* var168
/* : MPropDef */;
1939 val
* var170
/* : MPropDef */;
1940 val
* var171
/* : MClassDef */;
1941 val
* var173
/* : MClassDef */;
1942 val
* var174
/* : MModule */;
1943 val
* var176
/* : MModule */;
1944 val
* var177
/* : nullable StaticFrame */;
1945 val
* var179
/* : nullable StaticFrame */;
1946 val
* var180
/* : MPropDef */;
1947 val
* var182
/* : MPropDef */;
1948 val
* var183
/* : MClassDef */;
1949 val
* var185
/* : MClassDef */;
1950 val
* var186
/* : MClassType */;
1951 val
* var188
/* : MClassType */;
1952 short int var189
/* : Bool */;
1953 val
* var191
/* : NativeArray[String] */;
1954 static val
* varonce190
;
1955 static val
* varonce192
;
1956 val
* var193
/* : String */;
1957 char* var194
/* : CString */;
1958 val
* var195
/* : String */;
1959 val
* var196
/* : nullable Int */;
1960 val
* var197
/* : nullable Int */;
1961 val
* var198
/* : nullable Bool */;
1962 val
* var199
/* : nullable Bool */;
1963 static val
* varonce200
;
1964 val
* var201
/* : String */;
1965 char* var202
/* : CString */;
1966 val
* var203
/* : String */;
1967 val
* var204
/* : nullable Int */;
1968 val
* var205
/* : nullable Int */;
1969 val
* var206
/* : nullable Bool */;
1970 val
* var207
/* : nullable Bool */;
1971 static val
* varonce208
;
1972 val
* var209
/* : String */;
1973 char* var210
/* : CString */;
1974 val
* var211
/* : String */;
1975 val
* var212
/* : nullable Int */;
1976 val
* var213
/* : nullable Int */;
1977 val
* var214
/* : nullable Bool */;
1978 val
* var215
/* : nullable Bool */;
1979 val
* var216
/* : String */;
1980 val
* var217
/* : String */;
1981 val
* var218
/* : String */;
1982 val
* var219
/* : String */;
1983 val
* var220
/* : AbstractCompiler */;
1984 val
* var222
/* : AbstractCompiler */;
1985 val
* var223
/* : ModelBuilder */;
1986 val
* var225
/* : ModelBuilder */;
1987 val
* var226
/* : ToolContext */;
1988 val
* var228
/* : ToolContext */;
1989 val
* var229
/* : OptionBool */;
1990 val
* var231
/* : OptionBool */;
1991 val
* var232
/* : nullable Object */;
1992 val
* var234
/* : nullable Object */;
1993 short int var235
/* : Bool */;
1994 val
* var236
/* : AbstractCompiler */;
1995 val
* var238
/* : AbstractCompiler */;
1996 val
* var239
/* : HashMap[String, Int] */;
1997 val
* var241
/* : HashMap[String, Int] */;
1998 val
* var_
/* var : HashMap[String, Int] */;
1999 val
* var_242
/* var : String */;
2000 val
* var243
/* : nullable Object */;
2001 long var244
/* : Int */;
2002 short int var246
/* : Bool */;
2005 const char* var_class_name
;
2006 long var249
/* : Int */;
2007 long var250
/* : Int */;
2008 val
* var251
/* : nullable Object */;
2009 val
* var253
/* : NativeArray[String] */;
2010 static val
* varonce252
;
2011 static val
* varonce254
;
2012 val
* var255
/* : String */;
2013 char* var256
/* : CString */;
2014 val
* var257
/* : String */;
2015 val
* var258
/* : nullable Int */;
2016 val
* var259
/* : nullable Int */;
2017 val
* var260
/* : nullable Bool */;
2018 val
* var261
/* : nullable Bool */;
2019 static val
* varonce262
;
2020 val
* var263
/* : String */;
2021 char* var264
/* : CString */;
2022 val
* var265
/* : String */;
2023 val
* var266
/* : nullable Int */;
2024 val
* var267
/* : nullable Int */;
2025 val
* var268
/* : nullable Bool */;
2026 val
* var269
/* : nullable Bool */;
2027 val
* var270
/* : String */;
2028 val
* var271
/* : MType */;
2029 val
* var273
/* : MType */;
2030 short int var274
/* : Bool */;
2031 short int var275
/* : Bool */;
2032 val
* var277
/* : NativeArray[String] */;
2033 static val
* varonce276
;
2034 static val
* varonce278
;
2035 val
* var279
/* : String */;
2036 char* var280
/* : CString */;
2037 val
* var281
/* : String */;
2038 val
* var282
/* : nullable Int */;
2039 val
* var283
/* : nullable Int */;
2040 val
* var284
/* : nullable Bool */;
2041 val
* var285
/* : nullable Bool */;
2042 val
* var286
/* : String */;
2043 val
* var287
/* : String */;
2044 val
* var_class_ptr
/* var class_ptr: nullable Object */;
2045 val
* var288
/* : MType */;
2046 val
* var290
/* : MType */;
2047 short int var291
/* : Bool */;
2050 const char* var_class_name294
;
2051 val
* var295
/* : MClass */;
2052 val
* var297
/* : MClass */;
2053 val
* var_mclass
/* var mclass: MClass */;
2054 val
* var299
/* : NativeArray[String] */;
2055 static val
* varonce298
;
2056 static val
* varonce300
;
2057 val
* var301
/* : String */;
2058 char* var302
/* : CString */;
2059 val
* var303
/* : String */;
2060 val
* var304
/* : nullable Int */;
2061 val
* var305
/* : nullable Int */;
2062 val
* var306
/* : nullable Bool */;
2063 val
* var307
/* : nullable Bool */;
2064 val
* var308
/* : String */;
2065 val
* var309
/* : String */;
2066 val
* var311
/* : NativeArray[String] */;
2067 static val
* varonce310
;
2068 static val
* varonce312
;
2069 val
* var313
/* : String */;
2070 char* var314
/* : CString */;
2071 val
* var315
/* : String */;
2072 val
* var316
/* : nullable Int */;
2073 val
* var317
/* : nullable Int */;
2074 val
* var318
/* : nullable Bool */;
2075 val
* var319
/* : nullable Bool */;
2076 static val
* varonce320
;
2077 val
* var321
/* : String */;
2078 char* var322
/* : CString */;
2079 val
* var323
/* : String */;
2080 val
* var324
/* : nullable Int */;
2081 val
* var325
/* : nullable Int */;
2082 val
* var326
/* : nullable Bool */;
2083 val
* var327
/* : nullable Bool */;
2084 val
* var328
/* : String */;
2085 val
* var329
/* : String */;
2086 short int var330
/* : Bool */;
2089 val
* var334
/* : NativeArray[String] */;
2090 static val
* varonce333
;
2091 static val
* varonce335
;
2092 val
* var336
/* : String */;
2093 char* var337
/* : CString */;
2094 val
* var338
/* : String */;
2095 val
* var339
/* : nullable Int */;
2096 val
* var340
/* : nullable Int */;
2097 val
* var341
/* : nullable Bool */;
2098 val
* var342
/* : nullable Bool */;
2099 val
* var343
/* : MClass */;
2100 val
* var345
/* : MClass */;
2101 val
* var346
/* : String */;
2102 val
* var347
/* : String */;
2103 val
* var349
/* : NativeArray[String] */;
2104 static val
* varonce348
;
2105 static val
* varonce350
;
2106 val
* var351
/* : String */;
2107 char* var352
/* : CString */;
2108 val
* var353
/* : String */;
2109 val
* var354
/* : nullable Int */;
2110 val
* var355
/* : nullable Int */;
2111 val
* var356
/* : nullable Bool */;
2112 val
* var357
/* : nullable Bool */;
2113 static val
* varonce358
;
2114 val
* var359
/* : String */;
2115 char* var360
/* : CString */;
2116 val
* var361
/* : String */;
2117 val
* var362
/* : nullable Int */;
2118 val
* var363
/* : nullable Int */;
2119 val
* var364
/* : nullable Bool */;
2120 val
* var365
/* : nullable Bool */;
2121 val
* var366
/* : MClass */;
2122 val
* var368
/* : MClass */;
2123 val
* var369
/* : String */;
2124 val
* var370
/* : String */;
2125 val
* var372
/* : NativeArray[String] */;
2126 static val
* varonce371
;
2127 static val
* varonce373
;
2128 val
* var374
/* : String */;
2129 char* var375
/* : CString */;
2130 val
* var376
/* : String */;
2131 val
* var377
/* : nullable Int */;
2132 val
* var378
/* : nullable Int */;
2133 val
* var379
/* : nullable Bool */;
2134 val
* var380
/* : nullable Bool */;
2135 static val
* varonce381
;
2136 val
* var382
/* : String */;
2137 char* var383
/* : CString */;
2138 val
* var384
/* : String */;
2139 val
* var385
/* : nullable Int */;
2140 val
* var386
/* : nullable Int */;
2141 val
* var387
/* : nullable Bool */;
2142 val
* var388
/* : nullable Bool */;
2143 val
* var389
/* : MClass */;
2144 val
* var391
/* : MClass */;
2145 val
* var392
/* : String */;
2146 val
* var393
/* : String */;
2147 val
* var394
/* : AbstractCompiler */;
2148 val
* var396
/* : AbstractCompiler */;
2149 val
* var397
/* : ModelBuilder */;
2150 val
* var399
/* : ModelBuilder */;
2151 val
* var400
/* : ToolContext */;
2152 val
* var402
/* : ToolContext */;
2153 val
* var403
/* : OptionBool */;
2154 val
* var405
/* : OptionBool */;
2155 val
* var406
/* : nullable Object */;
2156 val
* var408
/* : nullable Object */;
2157 short int var409
/* : Bool */;
2158 val
* var410
/* : AbstractCompiler */;
2159 val
* var412
/* : AbstractCompiler */;
2160 val
* var413
/* : HashMap[String, Int] */;
2161 val
* var415
/* : HashMap[String, Int] */;
2162 val
* var_416
/* var : HashMap[String, Int] */;
2163 val
* var_417
/* var : String */;
2164 val
* var418
/* : nullable Object */;
2165 long var419
/* : Int */;
2166 short int var421
/* : Bool */;
2169 const char* var_class_name424
;
2170 long var425
/* : Int */;
2171 long var426
/* : Int */;
2172 val
* var427
/* : nullable Object */;
2173 val
* var429
/* : NativeArray[String] */;
2174 static val
* varonce428
;
2175 static val
* varonce430
;
2176 val
* var431
/* : String */;
2177 char* var432
/* : CString */;
2178 val
* var433
/* : String */;
2179 val
* var434
/* : nullable Int */;
2180 val
* var435
/* : nullable Int */;
2181 val
* var436
/* : nullable Bool */;
2182 val
* var437
/* : nullable Bool */;
2183 static val
* varonce438
;
2184 val
* var439
/* : String */;
2185 char* var440
/* : CString */;
2186 val
* var441
/* : String */;
2187 val
* var442
/* : nullable Int */;
2188 val
* var443
/* : nullable Int */;
2189 val
* var444
/* : nullable Bool */;
2190 val
* var445
/* : nullable Bool */;
2191 val
* var446
/* : String */;
2192 short int var447
/* : Bool */;
2195 val
* var450
/* : nullable StaticFrame */;
2196 val
* var452
/* : nullable StaticFrame */;
2197 val
* var453
/* : Array[RuntimeVariable] */;
2198 val
* var455
/* : Array[RuntimeVariable] */;
2199 val
* var456
/* : nullable Object */;
2200 val
* var_recv
/* var recv: RuntimeVariable */;
2201 val
* var457
/* : MType */;
2202 val
* var459
/* : MType */;
2203 short int var460
/* : Bool */;
2204 short int var461
/* : Bool */;
2205 val
* var463
/* : NativeArray[String] */;
2206 static val
* varonce462
;
2207 static val
* varonce464
;
2208 val
* var465
/* : String */;
2209 char* var466
/* : CString */;
2210 val
* var467
/* : String */;
2211 val
* var468
/* : nullable Int */;
2212 val
* var469
/* : nullable Int */;
2213 val
* var470
/* : nullable Bool */;
2214 val
* var471
/* : nullable Bool */;
2215 val
* var472
/* : String */;
2216 val
* var473
/* : String */;
2217 val
* var_recv_ptr
/* var recv_ptr: nullable Object */;
2218 val
* var474
/* : MType */;
2219 val
* var476
/* : MType */;
2220 short int var477
/* : Bool */;
2223 const char* var_class_name480
;
2224 val
* var481
/* : MClass */;
2225 val
* var483
/* : MClass */;
2226 val
* var_mclass484
/* var mclass: MClass */;
2227 val
* var486
/* : NativeArray[String] */;
2228 static val
* varonce485
;
2229 static val
* varonce487
;
2230 val
* var488
/* : String */;
2231 char* var489
/* : CString */;
2232 val
* var490
/* : String */;
2233 val
* var491
/* : nullable Int */;
2234 val
* var492
/* : nullable Int */;
2235 val
* var493
/* : nullable Bool */;
2236 val
* var494
/* : nullable Bool */;
2237 val
* var495
/* : String */;
2238 val
* var496
/* : String */;
2239 val
* var498
/* : NativeArray[String] */;
2240 static val
* varonce497
;
2241 static val
* varonce499
;
2242 val
* var500
/* : String */;
2243 char* var501
/* : CString */;
2244 val
* var502
/* : String */;
2245 val
* var503
/* : nullable Int */;
2246 val
* var504
/* : nullable Int */;
2247 val
* var505
/* : nullable Bool */;
2248 val
* var506
/* : nullable Bool */;
2249 static val
* varonce507
;
2250 val
* var508
/* : String */;
2251 char* var509
/* : CString */;
2252 val
* var510
/* : String */;
2253 val
* var511
/* : nullable Int */;
2254 val
* var512
/* : nullable Int */;
2255 val
* var513
/* : nullable Bool */;
2256 val
* var514
/* : nullable Bool */;
2257 val
* var515
/* : String */;
2258 val
* var516
/* : String */;
2259 static val
* varonce517
;
2260 val
* var518
/* : String */;
2261 char* var519
/* : CString */;
2262 val
* var520
/* : String */;
2263 val
* var521
/* : nullable Int */;
2264 val
* var522
/* : nullable Int */;
2265 val
* var523
/* : nullable Bool */;
2266 val
* var524
/* : nullable Bool */;
2267 val
* var525
/* : String */;
2268 val
* var_entry
/* var entry: String */;
2269 val
* var527
/* : NativeArray[String] */;
2270 static val
* varonce526
;
2271 static val
* varonce528
;
2272 val
* var529
/* : String */;
2273 char* var530
/* : CString */;
2274 val
* var531
/* : String */;
2275 val
* var532
/* : nullable Int */;
2276 val
* var533
/* : nullable Int */;
2277 val
* var534
/* : nullable Bool */;
2278 val
* var535
/* : nullable Bool */;
2279 static val
* varonce536
;
2280 val
* var537
/* : String */;
2281 char* var538
/* : CString */;
2282 val
* var539
/* : String */;
2283 val
* var540
/* : nullable Int */;
2284 val
* var541
/* : nullable Int */;
2285 val
* var542
/* : nullable Bool */;
2286 val
* var543
/* : nullable Bool */;
2287 val
* var544
/* : String */;
2288 val
* var545
/* : MVirtualTypeProp */;
2289 val
* var547
/* : MVirtualTypeProp */;
2290 val
* var548
/* : String */;
2291 val
* var550
/* : NativeArray[String] */;
2292 static val
* varonce549
;
2293 static val
* varonce551
;
2294 val
* var552
/* : String */;
2295 char* var553
/* : CString */;
2296 val
* var554
/* : String */;
2297 val
* var555
/* : nullable Int */;
2298 val
* var556
/* : nullable Int */;
2299 val
* var557
/* : nullable Bool */;
2300 val
* var558
/* : nullable Bool */;
2301 static val
* varonce559
;
2302 val
* var560
/* : String */;
2303 char* var561
/* : CString */;
2304 val
* var562
/* : String */;
2305 val
* var563
/* : nullable Int */;
2306 val
* var564
/* : nullable Int */;
2307 val
* var565
/* : nullable Bool */;
2308 val
* var566
/* : nullable Bool */;
2309 static val
* varonce567
;
2310 val
* var568
/* : String */;
2311 char* var569
/* : CString */;
2312 val
* var570
/* : String */;
2313 val
* var571
/* : nullable Int */;
2314 val
* var572
/* : nullable Int */;
2315 val
* var573
/* : nullable Bool */;
2316 val
* var574
/* : nullable Bool */;
2317 val
* var575
/* : MVirtualTypeProp */;
2318 val
* var577
/* : MVirtualTypeProp */;
2319 val
* var578
/* : String */;
2320 val
* var579
/* : String */;
2321 val
* var581
/* : NativeArray[String] */;
2322 static val
* varonce580
;
2323 static val
* varonce582
;
2324 val
* var583
/* : String */;
2325 char* var584
/* : CString */;
2326 val
* var585
/* : String */;
2327 val
* var586
/* : nullable Int */;
2328 val
* var587
/* : nullable Int */;
2329 val
* var588
/* : nullable Bool */;
2330 val
* var589
/* : nullable Bool */;
2331 static val
* varonce590
;
2332 val
* var591
/* : String */;
2333 char* var592
/* : CString */;
2334 val
* var593
/* : String */;
2335 val
* var594
/* : nullable Int */;
2336 val
* var595
/* : nullable Int */;
2337 val
* var596
/* : nullable Bool */;
2338 val
* var597
/* : nullable Bool */;
2339 val
* var598
/* : String */;
2340 val
* var600
/* : NativeArray[String] */;
2341 static val
* varonce599
;
2342 static val
* varonce601
;
2343 val
* var602
/* : String */;
2344 char* var603
/* : CString */;
2345 val
* var604
/* : String */;
2346 val
* var605
/* : nullable Int */;
2347 val
* var606
/* : nullable Int */;
2348 val
* var607
/* : nullable Bool */;
2349 val
* var608
/* : nullable Bool */;
2350 static val
* varonce609
;
2351 val
* var610
/* : String */;
2352 char* var611
/* : CString */;
2353 val
* var612
/* : String */;
2354 val
* var613
/* : nullable Int */;
2355 val
* var614
/* : nullable Int */;
2356 val
* var615
/* : nullable Bool */;
2357 val
* var616
/* : nullable Bool */;
2358 val
* var617
/* : String */;
2359 short int var618
/* : Bool */;
2360 short int var_619
/* var : Bool */;
2361 static val
* varonce620
;
2362 val
* var621
/* : String */;
2363 char* var622
/* : CString */;
2364 val
* var623
/* : String */;
2365 val
* var624
/* : nullable Int */;
2366 val
* var625
/* : nullable Int */;
2367 val
* var626
/* : nullable Bool */;
2368 val
* var627
/* : nullable Bool */;
2369 short int var628
/* : Bool */;
2370 static val
* varonce629
;
2371 val
* var630
/* : String */;
2372 char* var631
/* : CString */;
2373 val
* var632
/* : String */;
2374 val
* var633
/* : nullable Int */;
2375 val
* var634
/* : nullable Int */;
2376 val
* var635
/* : nullable Bool */;
2377 val
* var636
/* : nullable Bool */;
2378 val
* var637
/* : String */;
2379 val
* var_is_nullable
/* var is_nullable: String */;
2380 val
* var639
/* : NativeArray[String] */;
2381 static val
* varonce638
;
2382 static val
* varonce640
;
2383 val
* var641
/* : String */;
2384 char* var642
/* : CString */;
2385 val
* var643
/* : String */;
2386 val
* var644
/* : nullable Int */;
2387 val
* var645
/* : nullable Int */;
2388 val
* var646
/* : nullable Bool */;
2389 val
* var647
/* : nullable Bool */;
2390 static val
* varonce648
;
2391 val
* var649
/* : String */;
2392 char* var650
/* : CString */;
2393 val
* var651
/* : String */;
2394 val
* var652
/* : nullable Int */;
2395 val
* var653
/* : nullable Int */;
2396 val
* var654
/* : nullable Bool */;
2397 val
* var655
/* : nullable Bool */;
2398 val
* var656
/* : String */;
2399 val
* var658
/* : NativeArray[String] */;
2400 static val
* varonce657
;
2401 static val
* varonce659
;
2402 val
* var660
/* : String */;
2403 char* var661
/* : CString */;
2404 val
* var662
/* : String */;
2405 val
* var663
/* : nullable Int */;
2406 val
* var664
/* : nullable Int */;
2407 val
* var665
/* : nullable Bool */;
2408 val
* var666
/* : nullable Bool */;
2409 static val
* varonce667
;
2410 val
* var668
/* : String */;
2411 char* var669
/* : CString */;
2412 val
* var670
/* : String */;
2413 val
* var671
/* : nullable Int */;
2414 val
* var672
/* : nullable Int */;
2415 val
* var673
/* : nullable Bool */;
2416 val
* var674
/* : nullable Bool */;
2417 val
* var675
/* : String */;
2418 val
* var676
/* : String */;
2419 val
* var677
/* : AbstractCompiler */;
2420 val
* var679
/* : AbstractCompiler */;
2421 val
* var680
/* : ModelBuilder */;
2422 val
* var682
/* : ModelBuilder */;
2423 val
* var683
/* : ToolContext */;
2424 val
* var685
/* : ToolContext */;
2425 val
* var686
/* : OptionBool */;
2426 val
* var688
/* : OptionBool */;
2427 val
* var689
/* : nullable Object */;
2428 val
* var691
/* : nullable Object */;
2429 short int var692
/* : Bool */;
2430 val
* var693
/* : AbstractCompiler */;
2431 val
* var695
/* : AbstractCompiler */;
2432 val
* var696
/* : HashMap[String, Int] */;
2433 val
* var698
/* : HashMap[String, Int] */;
2434 val
* var_699
/* var : HashMap[String, Int] */;
2435 val
* var_700
/* var : String */;
2436 val
* var701
/* : nullable Object */;
2437 long var702
/* : Int */;
2438 short int var704
/* : Bool */;
2441 const char* var_class_name707
;
2442 long var708
/* : Int */;
2443 long var709
/* : Int */;
2444 val
* var710
/* : nullable Object */;
2445 val
* var712
/* : NativeArray[String] */;
2446 static val
* varonce711
;
2447 static val
* varonce713
;
2448 val
* var714
/* : String */;
2449 char* var715
/* : CString */;
2450 val
* var716
/* : String */;
2451 val
* var717
/* : nullable Int */;
2452 val
* var718
/* : nullable Int */;
2453 val
* var719
/* : nullable Bool */;
2454 val
* var720
/* : nullable Bool */;
2455 static val
* varonce721
;
2456 val
* var722
/* : String */;
2457 char* var723
/* : CString */;
2458 val
* var724
/* : String */;
2459 val
* var725
/* : nullable Int */;
2460 val
* var726
/* : nullable Int */;
2461 val
* var727
/* : nullable Bool */;
2462 val
* var728
/* : nullable Bool */;
2463 val
* var729
/* : String */;
2464 val
* var731
/* : NativeArray[String] */;
2465 static val
* varonce730
;
2466 static val
* varonce732
;
2467 val
* var733
/* : String */;
2468 char* var734
/* : CString */;
2469 val
* var735
/* : String */;
2470 val
* var736
/* : nullable Int */;
2471 val
* var737
/* : nullable Int */;
2472 val
* var738
/* : nullable Bool */;
2473 val
* var739
/* : nullable Bool */;
2474 static val
* varonce740
;
2475 val
* var741
/* : String */;
2476 char* var742
/* : CString */;
2477 val
* var743
/* : String */;
2478 val
* var744
/* : nullable Int */;
2479 val
* var745
/* : nullable Int */;
2480 val
* var746
/* : nullable Bool */;
2481 val
* var747
/* : nullable Bool */;
2482 static val
* varonce748
;
2483 val
* var749
/* : String */;
2484 char* var750
/* : CString */;
2485 val
* var751
/* : String */;
2486 val
* var752
/* : nullable Int */;
2487 val
* var753
/* : nullable Int */;
2488 val
* var754
/* : nullable Bool */;
2489 val
* var755
/* : nullable Bool */;
2490 val
* var756
/* : String */;
2491 val
* var757
/* : String */;
2492 val
* var758
/* : String */;
2493 val
* var760
/* : NativeArray[String] */;
2494 static val
* varonce759
;
2495 static val
* varonce761
;
2496 val
* var762
/* : String */;
2497 char* var763
/* : CString */;
2498 val
* var764
/* : String */;
2499 val
* var765
/* : nullable Int */;
2500 val
* var766
/* : nullable Int */;
2501 val
* var767
/* : nullable Bool */;
2502 val
* var768
/* : nullable Bool */;
2503 static val
* varonce769
;
2504 val
* var770
/* : String */;
2505 char* var771
/* : CString */;
2506 val
* var772
/* : String */;
2507 val
* var773
/* : nullable Int */;
2508 val
* var774
/* : nullable Int */;
2509 val
* var775
/* : nullable Bool */;
2510 val
* var776
/* : nullable Bool */;
2511 val
* var777
/* : String */;
2512 val
* var778
/* : String */;
2513 val
* var780
/* : NativeArray[String] */;
2514 static val
* varonce779
;
2515 static val
* varonce781
;
2516 val
* var782
/* : String */;
2517 char* var783
/* : CString */;
2518 val
* var784
/* : String */;
2519 val
* var785
/* : nullable Int */;
2520 val
* var786
/* : nullable Int */;
2521 val
* var787
/* : nullable Bool */;
2522 val
* var788
/* : nullable Bool */;
2523 static val
* varonce789
;
2524 val
* var790
/* : String */;
2525 char* var791
/* : CString */;
2526 val
* var792
/* : String */;
2527 val
* var793
/* : nullable Int */;
2528 val
* var794
/* : nullable Int */;
2529 val
* var795
/* : nullable Bool */;
2530 val
* var796
/* : nullable Bool */;
2531 val
* var797
/* : String */;
2532 val
* var798
/* : String */;
2533 static val
* varonce799
;
2534 val
* var800
/* : String */;
2535 char* var801
/* : CString */;
2536 val
* var802
/* : String */;
2537 val
* var803
/* : nullable Int */;
2538 val
* var804
/* : nullable Int */;
2539 val
* var805
/* : nullable Bool */;
2540 val
* var806
/* : nullable Bool */;
2541 val
* var808
/* : NativeArray[String] */;
2542 static val
* varonce807
;
2543 static val
* varonce809
;
2544 val
* var810
/* : String */;
2545 char* var811
/* : CString */;
2546 val
* var812
/* : String */;
2547 val
* var813
/* : nullable Int */;
2548 val
* var814
/* : nullable Int */;
2549 val
* var815
/* : nullable Bool */;
2550 val
* var816
/* : nullable Bool */;
2551 static val
* varonce817
;
2552 val
* var818
/* : String */;
2553 char* var819
/* : CString */;
2554 val
* var820
/* : String */;
2555 val
* var821
/* : nullable Int */;
2556 val
* var822
/* : nullable Int */;
2557 val
* var823
/* : nullable Bool */;
2558 val
* var824
/* : nullable Bool */;
2559 static val
* varonce825
;
2560 val
* var826
/* : String */;
2561 char* var827
/* : CString */;
2562 val
* var828
/* : String */;
2563 val
* var829
/* : nullable Int */;
2564 val
* var830
/* : nullable Int */;
2565 val
* var831
/* : nullable Bool */;
2566 val
* var832
/* : nullable Bool */;
2567 val
* var833
/* : String */;
2568 val
* var835
/* : NativeArray[String] */;
2569 static val
* varonce834
;
2570 static val
* varonce836
;
2571 val
* var837
/* : String */;
2572 char* var838
/* : CString */;
2573 val
* var839
/* : String */;
2574 val
* var840
/* : nullable Int */;
2575 val
* var841
/* : nullable Int */;
2576 val
* var842
/* : nullable Bool */;
2577 val
* var843
/* : nullable Bool */;
2578 val
* var844
/* : String */;
2579 val
* var845
/* : String */;
2580 static val
* varonce846
;
2581 val
* var847
/* : String */;
2582 char* var848
/* : CString */;
2583 val
* var849
/* : String */;
2584 val
* var850
/* : nullable Int */;
2585 val
* var851
/* : nullable Int */;
2586 val
* var852
/* : nullable Bool */;
2587 val
* var853
/* : nullable Bool */;
2588 val
* var855
/* : NativeArray[String] */;
2589 static val
* varonce854
;
2590 static val
* varonce856
;
2591 val
* var857
/* : String */;
2592 char* var858
/* : CString */;
2593 val
* var859
/* : String */;
2594 val
* var860
/* : nullable Int */;
2595 val
* var861
/* : nullable Int */;
2596 val
* var862
/* : nullable Bool */;
2597 val
* var863
/* : nullable Bool */;
2598 static val
* varonce864
;
2599 val
* var865
/* : String */;
2600 char* var866
/* : CString */;
2601 val
* var867
/* : String */;
2602 val
* var868
/* : nullable Int */;
2603 val
* var869
/* : nullable Int */;
2604 val
* var870
/* : nullable Bool */;
2605 val
* var871
/* : nullable Bool */;
2606 static val
* varonce872
;
2607 val
* var873
/* : String */;
2608 char* var874
/* : CString */;
2609 val
* var875
/* : String */;
2610 val
* var876
/* : nullable Int */;
2611 val
* var877
/* : nullable Int */;
2612 val
* var878
/* : nullable Bool */;
2613 val
* var879
/* : nullable Bool */;
2614 static val
* varonce880
;
2615 val
* var881
/* : String */;
2616 char* var882
/* : CString */;
2617 val
* var883
/* : String */;
2618 val
* var884
/* : nullable Int */;
2619 val
* var885
/* : nullable Int */;
2620 val
* var886
/* : nullable Bool */;
2621 val
* var887
/* : nullable Bool */;
2622 val
* var888
/* : String */;
2623 val
* var889
/* : String */;
2624 static val
* varonce890
;
2625 val
* var891
/* : String */;
2626 char* var892
/* : CString */;
2627 val
* var893
/* : String */;
2628 val
* var894
/* : nullable Int */;
2629 val
* var895
/* : nullable Int */;
2630 val
* var896
/* : nullable Bool */;
2631 val
* var897
/* : nullable Bool */;
2632 static val
* varonce898
;
2633 val
* var899
/* : String */;
2634 char* var900
/* : CString */;
2635 val
* var901
/* : String */;
2636 val
* var902
/* : nullable Int */;
2637 val
* var903
/* : nullable Int */;
2638 val
* var904
/* : nullable Bool */;
2639 val
* var905
/* : nullable Bool */;
2643 if (unlikely(varonce
==NULL
)) {
2644 var1
= NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String
);
2645 if (likely(varonce2
!=NULL
)) {
2648 var4
= "/* type test for ";
2649 var6
= (val
*)(17l<<2|1);
2650 var7
= (val
*)(17l<<2|1);
2651 var8
= (val
*)((long)(0)<<2|3);
2652 var9
= (val
*)((long)(0)<<2|3);
2653 var5
= core__flat___CString___to_s_unsafe(var4
, var6
, var7
, var8
, var9
);
2657 ((struct instance_core__NativeArray
*)var1
)->values
[0]=var3
;
2658 if (likely(varonce10
!=NULL
)) {
2662 var14
= (val
*)(5l<<2|1);
2663 var15
= (val
*)(5l<<2|1);
2664 var16
= (val
*)((long)(0)<<2|3);
2665 var17
= (val
*)((long)(0)<<2|3);
2666 var13
= core__flat___CString___to_s_unsafe(var12
, var14
, var15
, var16
, var17
);
2670 ((struct instance_core__NativeArray
*)var1
)->values
[2]=var11
;
2671 if (likely(varonce18
!=NULL
)) {
2675 var22
= (val
*)(3l<<2|1);
2676 var23
= (val
*)(3l<<2|1);
2677 var24
= (val
*)((long)(0)<<2|3);
2678 var25
= (val
*)((long)(0)<<2|3);
2679 var21
= core__flat___CString___to_s_unsafe(var20
, var22
, var23
, var24
, var25
);
2683 ((struct instance_core__NativeArray
*)var1
)->values
[4]=var19
;
2689 var26
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_value
);
2691 ((struct instance_core__NativeArray
*)var1
)->values
[1]=var26
;
2693 var27
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
2695 ((struct instance_core__NativeArray
*)var1
)->values
[3]=var27
;
2697 var28
= ((val
*(*)(val
* self
))(var1
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var1
); /* native_to_s on <var1:NativeArray[String]>*/
2701 nitc___nitc__AbstractCompilerVisitor___add(self
, var28
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
2704 var29
= nitc___nitc__AbstractCompilerVisitor___bool_type(self
);
2707 var30
= nitc___nitc__AbstractCompilerVisitor___new_var(self
, var29
);
2710 if (likely(varonce31
!=NULL
)) {
2714 var35
= (val
*)(6l<<2|1);
2715 var36
= (val
*)(6l<<2|1);
2716 var37
= (val
*)((long)(0)<<2|3);
2717 var38
= (val
*)((long)(0)<<2|3);
2718 var34
= core__flat___CString___to_s_unsafe(var33
, var35
, var36
, var37
, var38
);
2723 var39
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var32
);
2726 if (unlikely(varonce40
==NULL
)) {
2727 var41
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
2728 if (likely(varonce42
!=NULL
)) {
2732 var46
= (val
*)(4l<<2|1);
2733 var47
= (val
*)(4l<<2|1);
2734 var48
= (val
*)((long)(0)<<2|3);
2735 var49
= (val
*)((long)(0)<<2|3);
2736 var45
= core__flat___CString___to_s_unsafe(var44
, var46
, var47
, var48
, var49
);
2740 ((struct instance_core__NativeArray
*)var41
)->values
[0]=var43
;
2741 if (likely(varonce50
!=NULL
)) {
2745 var54
= (val
*)(1l<<2|1);
2746 var55
= (val
*)(1l<<2|1);
2747 var56
= (val
*)((long)(0)<<2|3);
2748 var57
= (val
*)((long)(0)<<2|3);
2749 var53
= core__flat___CString___to_s_unsafe(var52
, var54
, var55
, var56
, var57
);
2753 ((struct instance_core__NativeArray
*)var41
)->values
[2]=var51
;
2758 ((struct instance_core__NativeArray
*)var41
)->values
[1]=var_cltype
;
2760 var58
= ((val
*(*)(val
* self
))(var41
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var41
); /* native_to_s on <var41:NativeArray[String]>*/
2764 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var58
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on <self:SeparateErasureCompilerVisitor>*/
2766 if (likely(varonce59
!=NULL
)) {
2770 var63
= (val
*)(6l<<2|1);
2771 var64
= (val
*)(6l<<2|1);
2772 var65
= (val
*)((long)(0)<<2|3);
2773 var66
= (val
*)((long)(0)<<2|3);
2774 var62
= core__flat___CString___to_s_unsafe(var61
, var63
, var64
, var65
, var66
);
2779 var67
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var60
);
2782 if (unlikely(varonce68
==NULL
)) {
2783 var69
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
2784 if (likely(varonce70
!=NULL
)) {
2788 var74
= (val
*)(4l<<2|1);
2789 var75
= (val
*)(4l<<2|1);
2790 var76
= (val
*)((long)(0)<<2|3);
2791 var77
= (val
*)((long)(0)<<2|3);
2792 var73
= core__flat___CString___to_s_unsafe(var72
, var74
, var75
, var76
, var77
);
2796 ((struct instance_core__NativeArray
*)var69
)->values
[0]=var71
;
2797 if (likely(varonce78
!=NULL
)) {
2801 var82
= (val
*)(1l<<2|1);
2802 var83
= (val
*)(1l<<2|1);
2803 var84
= (val
*)((long)(0)<<2|3);
2804 var85
= (val
*)((long)(0)<<2|3);
2805 var81
= core__flat___CString___to_s_unsafe(var80
, var82
, var83
, var84
, var85
);
2809 ((struct instance_core__NativeArray
*)var69
)->values
[2]=var79
;
2814 ((struct instance_core__NativeArray
*)var69
)->values
[1]=var_idtype
;
2816 var86
= ((val
*(*)(val
* self
))(var69
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var69
); /* native_to_s on <var69:NativeArray[String]>*/
2820 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var86
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on <self:SeparateErasureCompilerVisitor>*/
2823 var87
= nitc___nitc__SeparateCompilerVisitor___maybe_null(self
, var_value
);
2825 var_maybe_null
= var87
;
2826 if (likely(varonce88
!=NULL
)) {
2830 var92
= (val
*)(1l<<2|1);
2831 var93
= (val
*)(1l<<2|1);
2832 var94
= (val
*)((long)(0)<<2|3);
2833 var95
= (val
*)((long)(0)<<2|3);
2834 var91
= core__flat___CString___to_s_unsafe(var90
, var92
, var93
, var94
, var95
);
2838 var_accept_null
= var89
;
2839 /* <var_mtype:MType> isa MNullableType */
2840 cltype
= type_nitc__MNullableType
.color
;
2841 idtype
= type_nitc__MNullableType
.id
;
2842 if(cltype
>= var_mtype
->type
->table_size
) {
2845 var96
= var_mtype
->type
->type_table
[cltype
] == idtype
;
2849 { /* Inline model$MProxyType$mtype (var_mtype) on <var_mtype:MType(MNullableType)> */
2850 var99
= var_mtype
->attrs
[COLOR_nitc__model__MProxyType___mtype
].val
; /* _mtype on <var_mtype:MType(MNullableType)> */
2851 if (unlikely(var99
== NULL
)) {
2852 if(catchStack
.cursor
>= 0){
2853 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2855 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2856 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1689);
2860 RET_LABEL98
:(void)0;
2864 if (likely(varonce100
!=NULL
)) {
2865 var101
= varonce100
;
2868 var104
= (val
*)(1l<<2|1);
2869 var105
= (val
*)(1l<<2|1);
2870 var106
= (val
*)((long)(0)<<2|3);
2871 var107
= (val
*)((long)(0)<<2|3);
2872 var103
= core__flat___CString___to_s_unsafe(var102
, var104
, var105
, var106
, var107
);
2874 varonce100
= var101
;
2876 var_accept_null
= var101
;
2879 /* <var_mtype:MType> isa MParameterType */
2880 cltype109
= type_nitc__MParameterType
.color
;
2881 idtype110
= type_nitc__MParameterType
.id
;
2882 if(cltype109
>= var_mtype
->type
->table_size
) {
2885 var108
= var_mtype
->type
->type_table
[cltype109
] == idtype110
;
2889 { /* Inline abstract_compiler$AbstractCompilerVisitor$frame (self) on <self:SeparateErasureCompilerVisitor> */
2890 var113
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateErasureCompilerVisitor> */
2892 RET_LABEL112
:(void)0;
2895 if (var111
== NULL
) {
2896 if(catchStack
.cursor
>= 0){
2897 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2899 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2900 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 521);
2903 { /* Inline abstract_compiler$StaticFrame$mpropdef (var111) on <var111:nullable StaticFrame> */
2904 if (unlikely(var111
== NULL
)) {
2905 if(catchStack
.cursor
>= 0){
2906 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2908 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2909 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2027);
2912 var116
= var111
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var111:nullable StaticFrame> */
2913 if (unlikely(var116
== NULL
)) {
2914 if(catchStack
.cursor
>= 0){
2915 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2917 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
2918 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2027);
2922 RET_LABEL115
:(void)0;
2926 { /* Inline model$MPropDef$mclassdef (var114) on <var114:MPropDef> */
2927 var119
= var114
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var114:MPropDef> */
2928 if (unlikely(var119
== NULL
)) {
2929 if(catchStack
.cursor
>= 0){
2930 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2932 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
2933 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2354);
2937 RET_LABEL118
:(void)0;
2941 { /* Inline model$MClassDef$bound_mtype (var117) on <var117:MClassDef> */
2942 var122
= var117
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var117:MClassDef> */
2943 if (unlikely(var122
== NULL
)) {
2944 if(catchStack
.cursor
>= 0){
2945 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2947 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
2948 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 594);
2952 RET_LABEL121
:(void)0;
2956 { /* Inline abstract_compiler$AbstractCompilerVisitor$frame (self) on <self:SeparateErasureCompilerVisitor> */
2957 var125
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateErasureCompilerVisitor> */
2959 RET_LABEL124
:(void)0;
2962 if (var123
== NULL
) {
2963 if(catchStack
.cursor
>= 0){
2964 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2966 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2967 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 521);
2970 { /* Inline abstract_compiler$StaticFrame$mpropdef (var123) on <var123:nullable StaticFrame> */
2971 if (unlikely(var123
== NULL
)) {
2972 if(catchStack
.cursor
>= 0){
2973 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2975 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2976 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2027);
2979 var128
= var123
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var123:nullable StaticFrame> */
2980 if (unlikely(var128
== NULL
)) {
2981 if(catchStack
.cursor
>= 0){
2982 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2984 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
2985 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2027);
2989 RET_LABEL127
:(void)0;
2993 { /* Inline model$MPropDef$mclassdef (var126) on <var126:MPropDef> */
2994 var131
= var126
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var126:MPropDef> */
2995 if (unlikely(var131
== NULL
)) {
2996 if(catchStack
.cursor
>= 0){
2997 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
2999 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
3000 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2354);
3004 RET_LABEL130
:(void)0;
3008 { /* Inline model$MClassDef$bound_mtype (var129) on <var129:MClassDef> */
3009 var134
= var129
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var129:MClassDef> */
3010 if (unlikely(var134
== NULL
)) {
3011 if(catchStack
.cursor
>= 0){
3012 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3014 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
3015 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 594);
3019 RET_LABEL133
:(void)0;
3023 { /* Inline abstract_compiler$AbstractCompilerVisitor$frame (self) on <self:SeparateErasureCompilerVisitor> */
3024 var137
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateErasureCompilerVisitor> */
3026 RET_LABEL136
:(void)0;
3029 if (var135
== NULL
) {
3030 if(catchStack
.cursor
>= 0){
3031 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3033 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3034 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 521);
3037 { /* Inline abstract_compiler$StaticFrame$mpropdef (var135) on <var135:nullable StaticFrame> */
3038 if (unlikely(var135
== NULL
)) {
3039 if(catchStack
.cursor
>= 0){
3040 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3042 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3043 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2027);
3046 var140
= var135
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var135:nullable StaticFrame> */
3047 if (unlikely(var140
== NULL
)) {
3048 if(catchStack
.cursor
>= 0){
3049 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3051 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
3052 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2027);
3056 RET_LABEL139
:(void)0;
3060 { /* Inline model$MPropDef$mclassdef (var138) on <var138:MPropDef> */
3061 var143
= var138
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var138:MPropDef> */
3062 if (unlikely(var143
== NULL
)) {
3063 if(catchStack
.cursor
>= 0){
3064 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3066 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
3067 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2354);
3071 RET_LABEL142
:(void)0;
3075 { /* Inline model$MClassDef$mmodule (var141) on <var141:MClassDef> */
3076 var146
= var141
->attrs
[COLOR_nitc__model__MClassDef___mmodule
].val
; /* _mmodule on <var141:MClassDef> */
3077 if (unlikely(var146
== NULL
)) {
3078 if(catchStack
.cursor
>= 0){
3079 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3081 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
3082 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 588);
3086 RET_LABEL145
:(void)0;
3090 var147
= nitc___nitc__MParameterType___MType__resolve_for(var_mtype
, var120
, var132
, var144
, 0);
3093 /* <var_mtype:MType> isa MNullableType */
3094 cltype149
= type_nitc__MNullableType
.color
;
3095 idtype150
= type_nitc__MNullableType
.id
;
3096 if(cltype149
>= var_mtype
->type
->table_size
) {
3099 var148
= var_mtype
->type
->type_table
[cltype149
] == idtype150
;
3103 { /* Inline model$MProxyType$mtype (var_mtype) on <var_mtype:MType(MNullableType)> */
3104 var153
= var_mtype
->attrs
[COLOR_nitc__model__MProxyType___mtype
].val
; /* _mtype on <var_mtype:MType(MNullableType)> */
3105 if (unlikely(var153
== NULL
)) {
3106 if(catchStack
.cursor
>= 0){
3107 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3109 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3110 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1689);
3114 RET_LABEL152
:(void)0;
3118 if (likely(varonce154
!=NULL
)) {
3119 var155
= varonce154
;
3122 var158
= (val
*)(1l<<2|1);
3123 var159
= (val
*)(1l<<2|1);
3124 var160
= (val
*)((long)(0)<<2|3);
3125 var161
= (val
*)((long)(0)<<2|3);
3126 var157
= core__flat___CString___to_s_unsafe(var156
, var158
, var159
, var160
, var161
);
3128 varonce154
= var155
;
3130 var_accept_null
= var155
;
3136 { /* Inline abstract_compiler$RuntimeVariable$mcasttype (var_value) on <var_value:RuntimeVariable> */
3137 var164
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_value:RuntimeVariable> */
3138 if (unlikely(var164
== NULL
)) {
3139 if(catchStack
.cursor
>= 0){
3140 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3142 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
3143 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1986);
3147 RET_LABEL163
:(void)0;
3151 { /* Inline abstract_compiler$AbstractCompilerVisitor$frame (self) on <self:SeparateErasureCompilerVisitor> */
3152 var167
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateErasureCompilerVisitor> */
3154 RET_LABEL166
:(void)0;
3157 if (var165
== NULL
) {
3158 if(catchStack
.cursor
>= 0){
3159 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3161 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3162 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 528);
3165 { /* Inline abstract_compiler$StaticFrame$mpropdef (var165) on <var165:nullable StaticFrame> */
3166 if (unlikely(var165
== NULL
)) {
3167 if(catchStack
.cursor
>= 0){
3168 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3170 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3171 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2027);
3174 var170
= var165
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var165:nullable StaticFrame> */
3175 if (unlikely(var170
== NULL
)) {
3176 if(catchStack
.cursor
>= 0){
3177 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3179 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
3180 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2027);
3184 RET_LABEL169
:(void)0;
3188 { /* Inline model$MPropDef$mclassdef (var168) on <var168:MPropDef> */
3189 var173
= var168
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var168:MPropDef> */
3190 if (unlikely(var173
== NULL
)) {
3191 if(catchStack
.cursor
>= 0){
3192 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3194 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
3195 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2354);
3199 RET_LABEL172
:(void)0;
3203 { /* Inline model$MClassDef$mmodule (var171) on <var171:MClassDef> */
3204 var176
= var171
->attrs
[COLOR_nitc__model__MClassDef___mmodule
].val
; /* _mmodule on <var171:MClassDef> */
3205 if (unlikely(var176
== NULL
)) {
3206 if(catchStack
.cursor
>= 0){
3207 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3209 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
3210 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 588);
3214 RET_LABEL175
:(void)0;
3218 { /* Inline abstract_compiler$AbstractCompilerVisitor$frame (self) on <self:SeparateErasureCompilerVisitor> */
3219 var179
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateErasureCompilerVisitor> */
3221 RET_LABEL178
:(void)0;
3224 if (var177
== NULL
) {
3225 if(catchStack
.cursor
>= 0){
3226 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3228 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3229 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 528);
3232 { /* Inline abstract_compiler$StaticFrame$mpropdef (var177) on <var177:nullable StaticFrame> */
3233 if (unlikely(var177
== NULL
)) {
3234 if(catchStack
.cursor
>= 0){
3235 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3237 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3238 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2027);
3241 var182
= var177
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var177:nullable StaticFrame> */
3242 if (unlikely(var182
== NULL
)) {
3243 if(catchStack
.cursor
>= 0){
3244 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3246 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
3247 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2027);
3251 RET_LABEL181
:(void)0;
3255 { /* Inline model$MPropDef$mclassdef (var180) on <var180:MPropDef> */
3256 var185
= var180
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var180:MPropDef> */
3257 if (unlikely(var185
== NULL
)) {
3258 if(catchStack
.cursor
>= 0){
3259 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3261 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
3262 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2354);
3266 RET_LABEL184
:(void)0;
3270 { /* Inline model$MClassDef$bound_mtype (var183) on <var183:MClassDef> */
3271 var188
= var183
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var183:MClassDef> */
3272 if (unlikely(var188
== NULL
)) {
3273 if(catchStack
.cursor
>= 0){
3274 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3276 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
3277 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 594);
3281 RET_LABEL187
:(void)0;
3285 var189
= nitc___nitc__MType___is_subtype(var162
, var174
, var186
, var_mtype
);
3288 if (unlikely(varonce190
==NULL
)) {
3289 var191
= NEW_core__NativeArray((int)6l, &type_core__NativeArray__core__String
);
3290 if (likely(varonce192
!=NULL
)) {
3291 var193
= varonce192
;
3293 var194
= " = 1; /* easy ";
3294 var196
= (val
*)(14l<<2|1);
3295 var197
= (val
*)(14l<<2|1);
3296 var198
= (val
*)((long)(0)<<2|3);
3297 var199
= (val
*)((long)(0)<<2|3);
3298 var195
= core__flat___CString___to_s_unsafe(var194
, var196
, var197
, var198
, var199
);
3300 varonce192
= var193
;
3302 ((struct instance_core__NativeArray
*)var191
)->values
[1]=var193
;
3303 if (likely(varonce200
!=NULL
)) {
3304 var201
= varonce200
;
3307 var204
= (val
*)(5l<<2|1);
3308 var205
= (val
*)(5l<<2|1);
3309 var206
= (val
*)((long)(0)<<2|3);
3310 var207
= (val
*)((long)(0)<<2|3);
3311 var203
= core__flat___CString___to_s_unsafe(var202
, var204
, var205
, var206
, var207
);
3313 varonce200
= var201
;
3315 ((struct instance_core__NativeArray
*)var191
)->values
[3]=var201
;
3316 if (likely(varonce208
!=NULL
)) {
3317 var209
= varonce208
;
3320 var212
= (val
*)(2l<<2|1);
3321 var213
= (val
*)(2l<<2|1);
3322 var214
= (val
*)((long)(0)<<2|3);
3323 var215
= (val
*)((long)(0)<<2|3);
3324 var211
= core__flat___CString___to_s_unsafe(var210
, var212
, var213
, var214
, var215
);
3326 varonce208
= var209
;
3328 ((struct instance_core__NativeArray
*)var191
)->values
[5]=var209
;
3330 var191
= varonce190
;
3334 var216
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
3336 ((struct instance_core__NativeArray
*)var191
)->values
[0]=var216
;
3338 var217
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_value
);
3340 ((struct instance_core__NativeArray
*)var191
)->values
[2]=var217
;
3342 var218
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
3344 ((struct instance_core__NativeArray
*)var191
)->values
[4]=var218
;
3346 var219
= ((val
*(*)(val
* self
))(var191
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var191
); /* native_to_s on <var191:NativeArray[String]>*/
3348 varonce190
= var191
;
3350 nitc___nitc__AbstractCompilerVisitor___add(self
, var219
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
3353 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
3354 var222
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
3355 if (unlikely(var222
== NULL
)) {
3356 if(catchStack
.cursor
>= 0){
3357 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3359 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
3360 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
3364 RET_LABEL221
:(void)0;
3368 { /* Inline abstract_compiler$AbstractCompiler$modelbuilder (var220) on <var220:AbstractCompiler(SeparateCompiler)> */
3369 var225
= var220
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var220:AbstractCompiler(SeparateCompiler)> */
3370 if (unlikely(var225
== NULL
)) {
3371 if(catchStack
.cursor
>= 0){
3372 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3374 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
3375 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 552);
3379 RET_LABEL224
:(void)0;
3383 { /* Inline modelbuilder_base$ModelBuilder$toolcontext (var223) on <var223:ModelBuilder> */
3384 var228
= var223
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var223:ModelBuilder> */
3385 if (unlikely(var228
== NULL
)) {
3386 if(catchStack
.cursor
>= 0){
3387 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3389 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3390 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
3394 RET_LABEL227
:(void)0;
3398 { /* Inline abstract_compiler$ToolContext$opt_typing_test_metrics (var226) on <var226:ToolContext> */
3399 var231
= var226
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics
].val
; /* _opt_typing_test_metrics on <var226:ToolContext> */
3400 if (unlikely(var231
== NULL
)) {
3401 if(catchStack
.cursor
>= 0){
3402 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3404 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
3405 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 60);
3409 RET_LABEL230
:(void)0;
3413 { /* Inline opts$Option$value (var229) on <var229:OptionBool> */
3414 var234
= var229
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var229:OptionBool> */
3416 RET_LABEL233
:(void)0;
3419 var235
= (short int)((long)(var232
)>>2);
3422 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
3423 var238
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
3424 if (unlikely(var238
== NULL
)) {
3425 if(catchStack
.cursor
>= 0){
3426 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3428 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
3429 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
3433 RET_LABEL237
:(void)0;
3437 { /* Inline abstract_compiler$AbstractCompiler$count_type_test_skipped (var236) on <var236:AbstractCompiler(SeparateCompiler)> */
3438 var241
= var236
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_skipped
].val
; /* _count_type_test_skipped on <var236:AbstractCompiler(SeparateCompiler)> */
3439 if (unlikely(var241
== NULL
)) {
3440 if(catchStack
.cursor
>= 0){
3441 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3443 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_skipped");
3444 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1113);
3448 RET_LABEL240
:(void)0;
3454 var243
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_
, var_242
);
3457 { /* Inline kernel$Int$+ (var243,1l) on <var243:nullable Object(Int)> */
3458 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
3459 /* <1l:Int> isa OTHER */
3460 var246
= 1; /* easy <1l:Int> isa OTHER*/
3461 if (unlikely(!var246
)) {
3462 var_class_name
= type_core__Int
.name
;
3463 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
3464 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
3467 var249
= (long)(var243
)>>2;
3468 var250
= var249
+ 1l;
3471 RET_LABEL245
:(void)0;
3475 var251
= (val
*)(var244
<<2|1);
3476 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_
, var_242
, var251
); /* Direct call hash_collection$HashMap$[]= on <var_:HashMap[String, Int]>*/
3478 if (unlikely(varonce252
==NULL
)) {
3479 var253
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
3480 if (likely(varonce254
!=NULL
)) {
3481 var255
= varonce254
;
3483 var256
= "count_type_test_skipped_";
3484 var258
= (val
*)(24l<<2|1);
3485 var259
= (val
*)(24l<<2|1);
3486 var260
= (val
*)((long)(0)<<2|3);
3487 var261
= (val
*)((long)(0)<<2|3);
3488 var257
= core__flat___CString___to_s_unsafe(var256
, var258
, var259
, var260
, var261
);
3490 varonce254
= var255
;
3492 ((struct instance_core__NativeArray
*)var253
)->values
[0]=var255
;
3493 if (likely(varonce262
!=NULL
)) {
3494 var263
= varonce262
;
3497 var266
= (val
*)(3l<<2|1);
3498 var267
= (val
*)(3l<<2|1);
3499 var268
= (val
*)((long)(0)<<2|3);
3500 var269
= (val
*)((long)(0)<<2|3);
3501 var265
= core__flat___CString___to_s_unsafe(var264
, var266
, var267
, var268
, var269
);
3503 varonce262
= var263
;
3505 ((struct instance_core__NativeArray
*)var253
)->values
[2]=var263
;
3507 var253
= varonce252
;
3510 ((struct instance_core__NativeArray
*)var253
)->values
[1]=var_tag
;
3512 var270
= ((val
*(*)(val
* self
))(var253
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var253
); /* native_to_s on <var253:NativeArray[String]>*/
3514 varonce252
= var253
;
3516 nitc___nitc__AbstractCompilerVisitor___add(self
, var270
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
3525 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_value) on <var_value:RuntimeVariable> */
3526 var273
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
3527 if (unlikely(var273
== NULL
)) {
3528 if(catchStack
.cursor
>= 0){
3529 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3531 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3532 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
3536 RET_LABEL272
:(void)0;
3540 var274
= ((short int(*)(val
* self
))(var271
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var271
); /* is_c_primitive on <var271:MType>*/
3544 if (unlikely(varonce276
==NULL
)) {
3545 var277
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
3546 if (likely(varonce278
!=NULL
)) {
3547 var279
= varonce278
;
3549 var280
= "->class->";
3550 var282
= (val
*)(9l<<2|1);
3551 var283
= (val
*)(9l<<2|1);
3552 var284
= (val
*)((long)(0)<<2|3);
3553 var285
= (val
*)((long)(0)<<2|3);
3554 var281
= core__flat___CString___to_s_unsafe(var280
, var282
, var283
, var284
, var285
);
3556 varonce278
= var279
;
3558 ((struct instance_core__NativeArray
*)var277
)->values
[1]=var279
;
3560 var277
= varonce276
;
3564 var286
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
3566 ((struct instance_core__NativeArray
*)var277
)->values
[0]=var286
;
3568 var287
= ((val
*(*)(val
* self
))(var277
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var277
); /* native_to_s on <var277:NativeArray[String]>*/
3570 varonce276
= var277
;
3571 var_class_ptr
= var287
;
3574 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_value) on <var_value:RuntimeVariable> */
3575 var290
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
3576 if (unlikely(var290
== NULL
)) {
3577 if(catchStack
.cursor
>= 0){
3578 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3580 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3581 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
3585 RET_LABEL289
:(void)0;
3588 /* <var288:MType> isa MClassType */
3589 cltype292
= type_nitc__MClassType
.color
;
3590 idtype293
= type_nitc__MClassType
.id
;
3591 if(cltype292
>= var288
->type
->table_size
) {
3594 var291
= var288
->type
->type_table
[cltype292
] == idtype293
;
3596 if (unlikely(!var291
)) {
3597 var_class_name294
= var288
== NULL ?
"null" : var288
->type
->name
;
3598 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name294
);
3599 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 541);
3603 { /* Inline model$MClassType$mclass (var288) on <var288:MType(MClassType)> */
3604 var297
= var288
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var288:MType(MClassType)> */
3605 if (unlikely(var297
== NULL
)) {
3606 if(catchStack
.cursor
>= 0){
3607 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3609 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
3610 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
3614 RET_LABEL296
:(void)0;
3617 var_mclass
= var295
;
3618 if (unlikely(varonce298
==NULL
)) {
3619 var299
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
3620 if (likely(varonce300
!=NULL
)) {
3621 var301
= varonce300
;
3624 var304
= (val
*)(6l<<2|1);
3625 var305
= (val
*)(6l<<2|1);
3626 var306
= (val
*)((long)(0)<<2|3);
3627 var307
= (val
*)((long)(0)<<2|3);
3628 var303
= core__flat___CString___to_s_unsafe(var302
, var304
, var305
, var306
, var307
);
3630 varonce300
= var301
;
3632 ((struct instance_core__NativeArray
*)var299
)->values
[0]=var301
;
3634 var299
= varonce298
;
3638 var308
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass
);
3640 ((struct instance_core__NativeArray
*)var299
)->values
[1]=var308
;
3642 var309
= ((val
*(*)(val
* self
))(var299
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var299
); /* native_to_s on <var299:NativeArray[String]>*/
3644 varonce298
= var299
;
3646 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var309
); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on <self:SeparateErasureCompilerVisitor>*/
3648 if (unlikely(varonce310
==NULL
)) {
3649 var311
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
3650 if (likely(varonce312
!=NULL
)) {
3651 var313
= varonce312
;
3654 var316
= (val
*)(6l<<2|1);
3655 var317
= (val
*)(6l<<2|1);
3656 var318
= (val
*)((long)(0)<<2|3);
3657 var319
= (val
*)((long)(0)<<2|3);
3658 var315
= core__flat___CString___to_s_unsafe(var314
, var316
, var317
, var318
, var319
);
3660 varonce312
= var313
;
3662 ((struct instance_core__NativeArray
*)var311
)->values
[0]=var313
;
3663 if (likely(varonce320
!=NULL
)) {
3664 var321
= varonce320
;
3667 var324
= (val
*)(1l<<2|1);
3668 var325
= (val
*)(1l<<2|1);
3669 var326
= (val
*)((long)(0)<<2|3);
3670 var327
= (val
*)((long)(0)<<2|3);
3671 var323
= core__flat___CString___to_s_unsafe(var322
, var324
, var325
, var326
, var327
);
3673 varonce320
= var321
;
3675 ((struct instance_core__NativeArray
*)var311
)->values
[2]=var321
;
3677 var311
= varonce310
;
3681 var328
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass
);
3683 ((struct instance_core__NativeArray
*)var311
)->values
[1]=var328
;
3685 var329
= ((val
*(*)(val
* self
))(var311
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var311
); /* native_to_s on <var311:NativeArray[String]>*/
3687 varonce310
= var311
;
3688 var_class_ptr
= var329
;
3690 /* <var_mtype:MType> isa MClassType */
3691 cltype331
= type_nitc__MClassType
.color
;
3692 idtype332
= type_nitc__MClassType
.id
;
3693 if(cltype331
>= var_mtype
->type
->table_size
) {
3696 var330
= var_mtype
->type
->type_table
[cltype331
] == idtype332
;
3699 if (unlikely(varonce333
==NULL
)) {
3700 var334
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
3701 if (likely(varonce335
!=NULL
)) {
3702 var336
= varonce335
;
3705 var339
= (val
*)(6l<<2|1);
3706 var340
= (val
*)(6l<<2|1);
3707 var341
= (val
*)((long)(0)<<2|3);
3708 var342
= (val
*)((long)(0)<<2|3);
3709 var338
= core__flat___CString___to_s_unsafe(var337
, var339
, var340
, var341
, var342
);
3711 varonce335
= var336
;
3713 ((struct instance_core__NativeArray
*)var334
)->values
[0]=var336
;
3715 var334
= varonce333
;
3719 { /* Inline model$MClassType$mclass (var_mtype) on <var_mtype:MType(MClassType)> */
3720 var345
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
3721 if (unlikely(var345
== NULL
)) {
3722 if(catchStack
.cursor
>= 0){
3723 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3725 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
3726 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
3730 RET_LABEL344
:(void)0;
3734 var346
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var343
);
3736 ((struct instance_core__NativeArray
*)var334
)->values
[1]=var346
;
3738 var347
= ((val
*(*)(val
* self
))(var334
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var334
); /* native_to_s on <var334:NativeArray[String]>*/
3740 varonce333
= var334
;
3742 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var347
); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on <self:SeparateErasureCompilerVisitor>*/
3744 if (unlikely(varonce348
==NULL
)) {
3745 var349
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
3746 if (likely(varonce350
!=NULL
)) {
3747 var351
= varonce350
;
3749 var352
= " = class_";
3750 var354
= (val
*)(9l<<2|1);
3751 var355
= (val
*)(9l<<2|1);
3752 var356
= (val
*)((long)(0)<<2|3);
3753 var357
= (val
*)((long)(0)<<2|3);
3754 var353
= core__flat___CString___to_s_unsafe(var352
, var354
, var355
, var356
, var357
);
3756 varonce350
= var351
;
3758 ((struct instance_core__NativeArray
*)var349
)->values
[1]=var351
;
3759 if (likely(varonce358
!=NULL
)) {
3760 var359
= varonce358
;
3763 var362
= (val
*)(7l<<2|1);
3764 var363
= (val
*)(7l<<2|1);
3765 var364
= (val
*)((long)(0)<<2|3);
3766 var365
= (val
*)((long)(0)<<2|3);
3767 var361
= core__flat___CString___to_s_unsafe(var360
, var362
, var363
, var364
, var365
);
3769 varonce358
= var359
;
3771 ((struct instance_core__NativeArray
*)var349
)->values
[3]=var359
;
3773 var349
= varonce348
;
3776 ((struct instance_core__NativeArray
*)var349
)->values
[0]=var_cltype
;
3778 { /* Inline model$MClassType$mclass (var_mtype) on <var_mtype:MType(MClassType)> */
3779 var368
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
3780 if (unlikely(var368
== NULL
)) {
3781 if(catchStack
.cursor
>= 0){
3782 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3784 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
3785 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
3789 RET_LABEL367
:(void)0;
3793 var369
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var366
);
3795 ((struct instance_core__NativeArray
*)var349
)->values
[2]=var369
;
3797 var370
= ((val
*(*)(val
* self
))(var349
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var349
); /* native_to_s on <var349:NativeArray[String]>*/
3799 varonce348
= var349
;
3801 nitc___nitc__AbstractCompilerVisitor___add(self
, var370
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
3803 if (unlikely(varonce371
==NULL
)) {
3804 var372
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
3805 if (likely(varonce373
!=NULL
)) {
3806 var374
= varonce373
;
3808 var375
= " = class_";
3809 var377
= (val
*)(9l<<2|1);
3810 var378
= (val
*)(9l<<2|1);
3811 var379
= (val
*)((long)(0)<<2|3);
3812 var380
= (val
*)((long)(0)<<2|3);
3813 var376
= core__flat___CString___to_s_unsafe(var375
, var377
, var378
, var379
, var380
);
3815 varonce373
= var374
;
3817 ((struct instance_core__NativeArray
*)var372
)->values
[1]=var374
;
3818 if (likely(varonce381
!=NULL
)) {
3819 var382
= varonce381
;
3822 var385
= (val
*)(4l<<2|1);
3823 var386
= (val
*)(4l<<2|1);
3824 var387
= (val
*)((long)(0)<<2|3);
3825 var388
= (val
*)((long)(0)<<2|3);
3826 var384
= core__flat___CString___to_s_unsafe(var383
, var385
, var386
, var387
, var388
);
3828 varonce381
= var382
;
3830 ((struct instance_core__NativeArray
*)var372
)->values
[3]=var382
;
3832 var372
= varonce371
;
3835 ((struct instance_core__NativeArray
*)var372
)->values
[0]=var_idtype
;
3837 { /* Inline model$MClassType$mclass (var_mtype) on <var_mtype:MType(MClassType)> */
3838 var391
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
3839 if (unlikely(var391
== NULL
)) {
3840 if(catchStack
.cursor
>= 0){
3841 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3843 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
3844 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
3848 RET_LABEL390
:(void)0;
3852 var392
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var389
);
3854 ((struct instance_core__NativeArray
*)var372
)->values
[2]=var392
;
3856 var393
= ((val
*(*)(val
* self
))(var372
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var372
); /* native_to_s on <var372:NativeArray[String]>*/
3858 varonce371
= var372
;
3860 nitc___nitc__AbstractCompilerVisitor___add(self
, var393
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
3863 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
3864 var396
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
3865 if (unlikely(var396
== NULL
)) {
3866 if(catchStack
.cursor
>= 0){
3867 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3869 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
3870 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
3874 RET_LABEL395
:(void)0;
3878 { /* Inline abstract_compiler$AbstractCompiler$modelbuilder (var394) on <var394:AbstractCompiler(SeparateCompiler)> */
3879 var399
= var394
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var394:AbstractCompiler(SeparateCompiler)> */
3880 if (unlikely(var399
== NULL
)) {
3881 if(catchStack
.cursor
>= 0){
3882 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3884 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
3885 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 552);
3889 RET_LABEL398
:(void)0;
3893 { /* Inline modelbuilder_base$ModelBuilder$toolcontext (var397) on <var397:ModelBuilder> */
3894 var402
= var397
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var397:ModelBuilder> */
3895 if (unlikely(var402
== NULL
)) {
3896 if(catchStack
.cursor
>= 0){
3897 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3899 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
3900 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
3904 RET_LABEL401
:(void)0;
3908 { /* Inline abstract_compiler$ToolContext$opt_typing_test_metrics (var400) on <var400:ToolContext> */
3909 var405
= var400
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics
].val
; /* _opt_typing_test_metrics on <var400:ToolContext> */
3910 if (unlikely(var405
== NULL
)) {
3911 if(catchStack
.cursor
>= 0){
3912 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3914 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
3915 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 60);
3919 RET_LABEL404
:(void)0;
3923 { /* Inline opts$Option$value (var403) on <var403:OptionBool> */
3924 var408
= var403
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var403:OptionBool> */
3926 RET_LABEL407
:(void)0;
3929 var409
= (short int)((long)(var406
)>>2);
3932 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
3933 var412
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
3934 if (unlikely(var412
== NULL
)) {
3935 if(catchStack
.cursor
>= 0){
3936 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3938 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
3939 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
3943 RET_LABEL411
:(void)0;
3947 { /* Inline abstract_compiler$AbstractCompiler$count_type_test_resolved (var410) on <var410:AbstractCompiler(SeparateCompiler)> */
3948 var415
= var410
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_resolved
].val
; /* _count_type_test_resolved on <var410:AbstractCompiler(SeparateCompiler)> */
3949 if (unlikely(var415
== NULL
)) {
3950 if(catchStack
.cursor
>= 0){
3951 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
3953 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_resolved");
3954 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1111);
3958 RET_LABEL414
:(void)0;
3964 var418
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_416
, var_417
);
3967 { /* Inline kernel$Int$+ (var418,1l) on <var418:nullable Object(Int)> */
3968 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
3969 /* <1l:Int> isa OTHER */
3970 var421
= 1; /* easy <1l:Int> isa OTHER*/
3971 if (unlikely(!var421
)) {
3972 var_class_name424
= type_core__Int
.name
;
3973 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name424
);
3974 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
3977 var425
= (long)(var418
)>>2;
3978 var426
= var425
+ 1l;
3981 RET_LABEL420
:(void)0;
3985 var427
= (val
*)(var419
<<2|1);
3986 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_416
, var_417
, var427
); /* Direct call hash_collection$HashMap$[]= on <var_416:HashMap[String, Int]>*/
3988 if (unlikely(varonce428
==NULL
)) {
3989 var429
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
3990 if (likely(varonce430
!=NULL
)) {
3991 var431
= varonce430
;
3993 var432
= "count_type_test_resolved_";
3994 var434
= (val
*)(25l<<2|1);
3995 var435
= (val
*)(25l<<2|1);
3996 var436
= (val
*)((long)(0)<<2|3);
3997 var437
= (val
*)((long)(0)<<2|3);
3998 var433
= core__flat___CString___to_s_unsafe(var432
, var434
, var435
, var436
, var437
);
4000 varonce430
= var431
;
4002 ((struct instance_core__NativeArray
*)var429
)->values
[0]=var431
;
4003 if (likely(varonce438
!=NULL
)) {
4004 var439
= varonce438
;
4007 var442
= (val
*)(3l<<2|1);
4008 var443
= (val
*)(3l<<2|1);
4009 var444
= (val
*)((long)(0)<<2|3);
4010 var445
= (val
*)((long)(0)<<2|3);
4011 var441
= core__flat___CString___to_s_unsafe(var440
, var442
, var443
, var444
, var445
);
4013 varonce438
= var439
;
4015 ((struct instance_core__NativeArray
*)var429
)->values
[2]=var439
;
4017 var429
= varonce428
;
4020 ((struct instance_core__NativeArray
*)var429
)->values
[1]=var_tag
;
4022 var446
= ((val
*(*)(val
* self
))(var429
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var429
); /* native_to_s on <var429:NativeArray[String]>*/
4024 varonce428
= var429
;
4026 nitc___nitc__AbstractCompilerVisitor___add(self
, var446
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
4031 /* <var_mtype:MType> isa MVirtualType */
4032 cltype448
= type_nitc__MVirtualType
.color
;
4033 idtype449
= type_nitc__MVirtualType
.id
;
4034 if(cltype448
>= var_mtype
->type
->table_size
) {
4037 var447
= var_mtype
->type
->type_table
[cltype448
] == idtype449
;
4041 { /* Inline abstract_compiler$AbstractCompilerVisitor$frame (self) on <self:SeparateErasureCompilerVisitor> */
4042 var452
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateErasureCompilerVisitor> */
4044 RET_LABEL451
:(void)0;
4047 if (var450
== NULL
) {
4048 if(catchStack
.cursor
>= 0){
4049 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4051 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4052 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 555);
4055 { /* Inline abstract_compiler$StaticFrame$arguments (var450) on <var450:nullable StaticFrame> */
4056 if (unlikely(var450
== NULL
)) {
4057 if(catchStack
.cursor
>= 0){
4058 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4060 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4061 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2034);
4064 var455
= var450
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___arguments
].val
; /* _arguments on <var450:nullable StaticFrame> */
4065 if (unlikely(var455
== NULL
)) {
4066 if(catchStack
.cursor
>= 0){
4067 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4069 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _arguments");
4070 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 2034);
4074 RET_LABEL454
:(void)0;
4078 var456
= core___core__SequenceRead___Collection__first(var453
);
4082 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_recv) on <var_recv:RuntimeVariable> */
4083 var459
= var_recv
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_recv:RuntimeVariable> */
4084 if (unlikely(var459
== NULL
)) {
4085 if(catchStack
.cursor
>= 0){
4086 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4088 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
4089 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
4093 RET_LABEL458
:(void)0;
4097 var460
= ((short int(*)(val
* self
))(var457
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var457
); /* is_c_primitive on <var457:MType>*/
4101 if (unlikely(varonce462
==NULL
)) {
4102 var463
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
4103 if (likely(varonce464
!=NULL
)) {
4104 var465
= varonce464
;
4106 var466
= "->class->";
4107 var468
= (val
*)(9l<<2|1);
4108 var469
= (val
*)(9l<<2|1);
4109 var470
= (val
*)((long)(0)<<2|3);
4110 var471
= (val
*)((long)(0)<<2|3);
4111 var467
= core__flat___CString___to_s_unsafe(var466
, var468
, var469
, var470
, var471
);
4113 varonce464
= var465
;
4115 ((struct instance_core__NativeArray
*)var463
)->values
[1]=var465
;
4117 var463
= varonce462
;
4121 var472
= ((val
*(*)(val
* self
))(var_recv
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_recv
); /* to_s on <var_recv:RuntimeVariable>*/
4123 ((struct instance_core__NativeArray
*)var463
)->values
[0]=var472
;
4125 var473
= ((val
*(*)(val
* self
))(var463
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var463
); /* native_to_s on <var463:NativeArray[String]>*/
4127 varonce462
= var463
;
4128 var_recv_ptr
= var473
;
4131 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_recv) on <var_recv:RuntimeVariable> */
4132 var476
= var_recv
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_recv:RuntimeVariable> */
4133 if (unlikely(var476
== NULL
)) {
4134 if(catchStack
.cursor
>= 0){
4135 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4137 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
4138 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
4142 RET_LABEL475
:(void)0;
4145 /* <var474:MType> isa MClassType */
4146 cltype478
= type_nitc__MClassType
.color
;
4147 idtype479
= type_nitc__MClassType
.id
;
4148 if(cltype478
>= var474
->type
->table_size
) {
4151 var477
= var474
->type
->type_table
[cltype478
] == idtype479
;
4153 if (unlikely(!var477
)) {
4154 var_class_name480
= var474
== NULL ?
"null" : var474
->type
->name
;
4155 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name480
);
4156 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 560);
4160 { /* Inline model$MClassType$mclass (var474) on <var474:MType(MClassType)> */
4161 var483
= var474
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var474:MType(MClassType)> */
4162 if (unlikely(var483
== NULL
)) {
4163 if(catchStack
.cursor
>= 0){
4164 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4166 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
4167 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
4171 RET_LABEL482
:(void)0;
4174 var_mclass484
= var481
;
4175 if (unlikely(varonce485
==NULL
)) {
4176 var486
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
4177 if (likely(varonce487
!=NULL
)) {
4178 var488
= varonce487
;
4181 var491
= (val
*)(6l<<2|1);
4182 var492
= (val
*)(6l<<2|1);
4183 var493
= (val
*)((long)(0)<<2|3);
4184 var494
= (val
*)((long)(0)<<2|3);
4185 var490
= core__flat___CString___to_s_unsafe(var489
, var491
, var492
, var493
, var494
);
4187 varonce487
= var488
;
4189 ((struct instance_core__NativeArray
*)var486
)->values
[0]=var488
;
4191 var486
= varonce485
;
4195 var495
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass484
);
4197 ((struct instance_core__NativeArray
*)var486
)->values
[1]=var495
;
4199 var496
= ((val
*(*)(val
* self
))(var486
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var486
); /* native_to_s on <var486:NativeArray[String]>*/
4201 varonce485
= var486
;
4203 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var496
); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on <self:SeparateErasureCompilerVisitor>*/
4205 if (unlikely(varonce497
==NULL
)) {
4206 var498
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
4207 if (likely(varonce499
!=NULL
)) {
4208 var500
= varonce499
;
4211 var503
= (val
*)(6l<<2|1);
4212 var504
= (val
*)(6l<<2|1);
4213 var505
= (val
*)((long)(0)<<2|3);
4214 var506
= (val
*)((long)(0)<<2|3);
4215 var502
= core__flat___CString___to_s_unsafe(var501
, var503
, var504
, var505
, var506
);
4217 varonce499
= var500
;
4219 ((struct instance_core__NativeArray
*)var498
)->values
[0]=var500
;
4220 if (likely(varonce507
!=NULL
)) {
4221 var508
= varonce507
;
4224 var511
= (val
*)(1l<<2|1);
4225 var512
= (val
*)(1l<<2|1);
4226 var513
= (val
*)((long)(0)<<2|3);
4227 var514
= (val
*)((long)(0)<<2|3);
4228 var510
= core__flat___CString___to_s_unsafe(var509
, var511
, var512
, var513
, var514
);
4230 varonce507
= var508
;
4232 ((struct instance_core__NativeArray
*)var498
)->values
[2]=var508
;
4234 var498
= varonce497
;
4238 var515
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_mclass484
);
4240 ((struct instance_core__NativeArray
*)var498
)->values
[1]=var515
;
4242 var516
= ((val
*(*)(val
* self
))(var498
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var498
); /* native_to_s on <var498:NativeArray[String]>*/
4244 varonce497
= var498
;
4245 var_recv_ptr
= var516
;
4247 if (likely(varonce517
!=NULL
)) {
4248 var518
= varonce517
;
4251 var521
= (val
*)(5l<<2|1);
4252 var522
= (val
*)(5l<<2|1);
4253 var523
= (val
*)((long)(0)<<2|3);
4254 var524
= (val
*)((long)(0)<<2|3);
4255 var520
= core__flat___CString___to_s_unsafe(var519
, var521
, var522
, var523
, var524
);
4257 varonce517
= var518
;
4260 var525
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var518
);
4263 if (unlikely(varonce526
==NULL
)) {
4264 var527
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
4265 if (likely(varonce528
!=NULL
)) {
4266 var529
= varonce528
;
4268 var530
= "struct vts_entry ";
4269 var532
= (val
*)(17l<<2|1);
4270 var533
= (val
*)(17l<<2|1);
4271 var534
= (val
*)((long)(0)<<2|3);
4272 var535
= (val
*)((long)(0)<<2|3);
4273 var531
= core__flat___CString___to_s_unsafe(var530
, var532
, var533
, var534
, var535
);
4275 varonce528
= var529
;
4277 ((struct instance_core__NativeArray
*)var527
)->values
[0]=var529
;
4278 if (likely(varonce536
!=NULL
)) {
4279 var537
= varonce536
;
4282 var540
= (val
*)(1l<<2|1);
4283 var541
= (val
*)(1l<<2|1);
4284 var542
= (val
*)((long)(0)<<2|3);
4285 var543
= (val
*)((long)(0)<<2|3);
4286 var539
= core__flat___CString___to_s_unsafe(var538
, var540
, var541
, var542
, var543
);
4288 varonce536
= var537
;
4290 ((struct instance_core__NativeArray
*)var527
)->values
[2]=var537
;
4292 var527
= varonce526
;
4295 ((struct instance_core__NativeArray
*)var527
)->values
[1]=var_entry
;
4297 var544
= ((val
*(*)(val
* self
))(var527
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var527
); /* native_to_s on <var527:NativeArray[String]>*/
4299 varonce526
= var527
;
4301 nitc___nitc__AbstractCompilerVisitor___add(self
, var544
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
4304 { /* Inline model$MVirtualType$mproperty (var_mtype) on <var_mtype:MType(MVirtualType)> */
4305 var547
= var_mtype
->attrs
[COLOR_nitc__model__MVirtualType___mproperty
].val
; /* _mproperty on <var_mtype:MType(MVirtualType)> */
4306 if (unlikely(var547
== NULL
)) {
4307 if(catchStack
.cursor
>= 0){
4308 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4310 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
4311 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1423);
4315 RET_LABEL546
:(void)0;
4319 var548
= nitc__separate_compiler___MEntity___const_color(var545
);
4322 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var548
); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on <self:SeparateErasureCompilerVisitor>*/
4324 if (unlikely(varonce549
==NULL
)) {
4325 var550
= NEW_core__NativeArray((int)6l, &type_core__NativeArray__core__String
);
4326 if (likely(varonce551
!=NULL
)) {
4327 var552
= varonce551
;
4330 var555
= (val
*)(3l<<2|1);
4331 var556
= (val
*)(3l<<2|1);
4332 var557
= (val
*)((long)(0)<<2|3);
4333 var558
= (val
*)((long)(0)<<2|3);
4334 var554
= core__flat___CString___to_s_unsafe(var553
, var555
, var556
, var557
, var558
);
4336 varonce551
= var552
;
4338 ((struct instance_core__NativeArray
*)var550
)->values
[1]=var552
;
4339 if (likely(varonce559
!=NULL
)) {
4340 var560
= varonce559
;
4342 var561
= "vts_table->vts[";
4343 var563
= (val
*)(15l<<2|1);
4344 var564
= (val
*)(15l<<2|1);
4345 var565
= (val
*)((long)(0)<<2|3);
4346 var566
= (val
*)((long)(0)<<2|3);
4347 var562
= core__flat___CString___to_s_unsafe(var561
, var563
, var564
, var565
, var566
);
4349 varonce559
= var560
;
4351 ((struct instance_core__NativeArray
*)var550
)->values
[3]=var560
;
4352 if (likely(varonce567
!=NULL
)) {
4353 var568
= varonce567
;
4356 var571
= (val
*)(2l<<2|1);
4357 var572
= (val
*)(2l<<2|1);
4358 var573
= (val
*)((long)(0)<<2|3);
4359 var574
= (val
*)((long)(0)<<2|3);
4360 var570
= core__flat___CString___to_s_unsafe(var569
, var571
, var572
, var573
, var574
);
4362 varonce567
= var568
;
4364 ((struct instance_core__NativeArray
*)var550
)->values
[5]=var568
;
4366 var550
= varonce549
;
4369 ((struct instance_core__NativeArray
*)var550
)->values
[0]=var_entry
;
4370 ((struct instance_core__NativeArray
*)var550
)->values
[2]=var_recv_ptr
;
4372 { /* Inline model$MVirtualType$mproperty (var_mtype) on <var_mtype:MType(MVirtualType)> */
4373 var577
= var_mtype
->attrs
[COLOR_nitc__model__MVirtualType___mproperty
].val
; /* _mproperty on <var_mtype:MType(MVirtualType)> */
4374 if (unlikely(var577
== NULL
)) {
4375 if(catchStack
.cursor
>= 0){
4376 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4378 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
4379 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1423);
4383 RET_LABEL576
:(void)0;
4387 var578
= nitc__separate_compiler___MEntity___const_color(var575
);
4389 ((struct instance_core__NativeArray
*)var550
)->values
[4]=var578
;
4391 var579
= ((val
*(*)(val
* self
))(var550
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var550
); /* native_to_s on <var550:NativeArray[String]>*/
4393 varonce549
= var550
;
4395 nitc___nitc__AbstractCompilerVisitor___add(self
, var579
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
4397 if (unlikely(varonce580
==NULL
)) {
4398 var581
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
4399 if (likely(varonce582
!=NULL
)) {
4400 var583
= varonce582
;
4403 var586
= (val
*)(3l<<2|1);
4404 var587
= (val
*)(3l<<2|1);
4405 var588
= (val
*)((long)(0)<<2|3);
4406 var589
= (val
*)((long)(0)<<2|3);
4407 var585
= core__flat___CString___to_s_unsafe(var584
, var586
, var587
, var588
, var589
);
4409 varonce582
= var583
;
4411 ((struct instance_core__NativeArray
*)var581
)->values
[1]=var583
;
4412 if (likely(varonce590
!=NULL
)) {
4413 var591
= varonce590
;
4415 var592
= ".class->color;";
4416 var594
= (val
*)(14l<<2|1);
4417 var595
= (val
*)(14l<<2|1);
4418 var596
= (val
*)((long)(0)<<2|3);
4419 var597
= (val
*)((long)(0)<<2|3);
4420 var593
= core__flat___CString___to_s_unsafe(var592
, var594
, var595
, var596
, var597
);
4422 varonce590
= var591
;
4424 ((struct instance_core__NativeArray
*)var581
)->values
[3]=var591
;
4426 var581
= varonce580
;
4429 ((struct instance_core__NativeArray
*)var581
)->values
[0]=var_cltype
;
4430 ((struct instance_core__NativeArray
*)var581
)->values
[2]=var_entry
;
4432 var598
= ((val
*(*)(val
* self
))(var581
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var581
); /* native_to_s on <var581:NativeArray[String]>*/
4434 varonce580
= var581
;
4436 nitc___nitc__AbstractCompilerVisitor___add(self
, var598
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
4438 if (unlikely(varonce599
==NULL
)) {
4439 var600
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
4440 if (likely(varonce601
!=NULL
)) {
4441 var602
= varonce601
;
4444 var605
= (val
*)(3l<<2|1);
4445 var606
= (val
*)(3l<<2|1);
4446 var607
= (val
*)((long)(0)<<2|3);
4447 var608
= (val
*)((long)(0)<<2|3);
4448 var604
= core__flat___CString___to_s_unsafe(var603
, var605
, var606
, var607
, var608
);
4450 varonce601
= var602
;
4452 ((struct instance_core__NativeArray
*)var600
)->values
[1]=var602
;
4453 if (likely(varonce609
!=NULL
)) {
4454 var610
= varonce609
;
4456 var611
= ".class->id;";
4457 var613
= (val
*)(11l<<2|1);
4458 var614
= (val
*)(11l<<2|1);
4459 var615
= (val
*)((long)(0)<<2|3);
4460 var616
= (val
*)((long)(0)<<2|3);
4461 var612
= core__flat___CString___to_s_unsafe(var611
, var613
, var614
, var615
, var616
);
4463 varonce609
= var610
;
4465 ((struct instance_core__NativeArray
*)var600
)->values
[3]=var610
;
4467 var600
= varonce599
;
4470 ((struct instance_core__NativeArray
*)var600
)->values
[0]=var_idtype
;
4471 ((struct instance_core__NativeArray
*)var600
)->values
[2]=var_entry
;
4473 var617
= ((val
*(*)(val
* self
))(var600
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var600
); /* native_to_s on <var600:NativeArray[String]>*/
4475 varonce599
= var600
;
4477 nitc___nitc__AbstractCompilerVisitor___add(self
, var617
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
4479 var_619
= var_maybe_null
;
4480 if (var_maybe_null
){
4481 if (likely(varonce620
!=NULL
)) {
4482 var621
= varonce620
;
4485 var624
= (val
*)(1l<<2|1);
4486 var625
= (val
*)(1l<<2|1);
4487 var626
= (val
*)((long)(0)<<2|3);
4488 var627
= (val
*)((long)(0)<<2|3);
4489 var623
= core__flat___CString___to_s_unsafe(var622
, var624
, var625
, var626
, var627
);
4491 varonce620
= var621
;
4494 var628
= ((short int(*)(val
* self
, val
* p0
))(var_accept_null
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_accept_null
, var621
); /* == on <var_accept_null:String>*/
4501 if (likely(varonce629
!=NULL
)) {
4502 var630
= varonce629
;
4504 var631
= "is_nullable";
4505 var633
= (val
*)(11l<<2|1);
4506 var634
= (val
*)(11l<<2|1);
4507 var635
= (val
*)((long)(0)<<2|3);
4508 var636
= (val
*)((long)(0)<<2|3);
4509 var632
= core__flat___CString___to_s_unsafe(var631
, var633
, var634
, var635
, var636
);
4511 varonce629
= var630
;
4514 var637
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var630
);
4516 var_is_nullable
= var637
;
4517 if (unlikely(varonce638
==NULL
)) {
4518 var639
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
4519 if (likely(varonce640
!=NULL
)) {
4520 var641
= varonce640
;
4522 var642
= "short int ";
4523 var644
= (val
*)(10l<<2|1);
4524 var645
= (val
*)(10l<<2|1);
4525 var646
= (val
*)((long)(0)<<2|3);
4526 var647
= (val
*)((long)(0)<<2|3);
4527 var643
= core__flat___CString___to_s_unsafe(var642
, var644
, var645
, var646
, var647
);
4529 varonce640
= var641
;
4531 ((struct instance_core__NativeArray
*)var639
)->values
[0]=var641
;
4532 if (likely(varonce648
!=NULL
)) {
4533 var649
= varonce648
;
4536 var652
= (val
*)(1l<<2|1);
4537 var653
= (val
*)(1l<<2|1);
4538 var654
= (val
*)((long)(0)<<2|3);
4539 var655
= (val
*)((long)(0)<<2|3);
4540 var651
= core__flat___CString___to_s_unsafe(var650
, var652
, var653
, var654
, var655
);
4542 varonce648
= var649
;
4544 ((struct instance_core__NativeArray
*)var639
)->values
[2]=var649
;
4546 var639
= varonce638
;
4549 ((struct instance_core__NativeArray
*)var639
)->values
[1]=var_is_nullable
;
4551 var656
= ((val
*(*)(val
* self
))(var639
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var639
); /* native_to_s on <var639:NativeArray[String]>*/
4553 varonce638
= var639
;
4555 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var656
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on <self:SeparateErasureCompilerVisitor>*/
4557 if (unlikely(varonce657
==NULL
)) {
4558 var658
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
4559 if (likely(varonce659
!=NULL
)) {
4560 var660
= varonce659
;
4563 var663
= (val
*)(3l<<2|1);
4564 var664
= (val
*)(3l<<2|1);
4565 var665
= (val
*)((long)(0)<<2|3);
4566 var666
= (val
*)((long)(0)<<2|3);
4567 var662
= core__flat___CString___to_s_unsafe(var661
, var663
, var664
, var665
, var666
);
4569 varonce659
= var660
;
4571 ((struct instance_core__NativeArray
*)var658
)->values
[1]=var660
;
4572 if (likely(varonce667
!=NULL
)) {
4573 var668
= varonce667
;
4575 var669
= ".is_nullable;";
4576 var671
= (val
*)(13l<<2|1);
4577 var672
= (val
*)(13l<<2|1);
4578 var673
= (val
*)((long)(0)<<2|3);
4579 var674
= (val
*)((long)(0)<<2|3);
4580 var670
= core__flat___CString___to_s_unsafe(var669
, var671
, var672
, var673
, var674
);
4582 varonce667
= var668
;
4584 ((struct instance_core__NativeArray
*)var658
)->values
[3]=var668
;
4586 var658
= varonce657
;
4589 ((struct instance_core__NativeArray
*)var658
)->values
[0]=var_is_nullable
;
4590 ((struct instance_core__NativeArray
*)var658
)->values
[2]=var_entry
;
4592 var675
= ((val
*(*)(val
* self
))(var658
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var658
); /* native_to_s on <var658:NativeArray[String]>*/
4594 varonce657
= var658
;
4596 nitc___nitc__AbstractCompilerVisitor___add(self
, var675
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
4599 var676
= core___core__String___Object__to_s(var_is_nullable
);
4601 var_accept_null
= var676
;
4605 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
4606 var679
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
4607 if (unlikely(var679
== NULL
)) {
4608 if(catchStack
.cursor
>= 0){
4609 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4611 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
4612 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
4616 RET_LABEL678
:(void)0;
4620 { /* Inline abstract_compiler$AbstractCompiler$modelbuilder (var677) on <var677:AbstractCompiler(SeparateCompiler)> */
4621 var682
= var677
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var677:AbstractCompiler(SeparateCompiler)> */
4622 if (unlikely(var682
== NULL
)) {
4623 if(catchStack
.cursor
>= 0){
4624 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4626 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
4627 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 552);
4631 RET_LABEL681
:(void)0;
4635 { /* Inline modelbuilder_base$ModelBuilder$toolcontext (var680) on <var680:ModelBuilder> */
4636 var685
= var680
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var680:ModelBuilder> */
4637 if (unlikely(var685
== NULL
)) {
4638 if(catchStack
.cursor
>= 0){
4639 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4641 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
4642 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
4646 RET_LABEL684
:(void)0;
4650 { /* Inline abstract_compiler$ToolContext$opt_typing_test_metrics (var683) on <var683:ToolContext> */
4651 var688
= var683
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics
].val
; /* _opt_typing_test_metrics on <var683:ToolContext> */
4652 if (unlikely(var688
== NULL
)) {
4653 if(catchStack
.cursor
>= 0){
4654 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4656 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
4657 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 60);
4661 RET_LABEL687
:(void)0;
4665 { /* Inline opts$Option$value (var686) on <var686:OptionBool> */
4666 var691
= var686
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var686:OptionBool> */
4668 RET_LABEL690
:(void)0;
4671 var692
= (short int)((long)(var689
)>>2);
4674 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
4675 var695
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
4676 if (unlikely(var695
== NULL
)) {
4677 if(catchStack
.cursor
>= 0){
4678 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4680 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
4681 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
4685 RET_LABEL694
:(void)0;
4689 { /* Inline abstract_compiler$AbstractCompiler$count_type_test_unresolved (var693) on <var693:AbstractCompiler(SeparateCompiler)> */
4690 var698
= var693
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_unresolved
].val
; /* _count_type_test_unresolved on <var693:AbstractCompiler(SeparateCompiler)> */
4691 if (unlikely(var698
== NULL
)) {
4692 if(catchStack
.cursor
>= 0){
4693 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4695 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_unresolved");
4696 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1112);
4700 RET_LABEL697
:(void)0;
4706 var701
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_699
, var_700
);
4709 { /* Inline kernel$Int$+ (var701,1l) on <var701:nullable Object(Int)> */
4710 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
4711 /* <1l:Int> isa OTHER */
4712 var704
= 1; /* easy <1l:Int> isa OTHER*/
4713 if (unlikely(!var704
)) {
4714 var_class_name707
= type_core__Int
.name
;
4715 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name707
);
4716 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
4719 var708
= (long)(var701
)>>2;
4720 var709
= var708
+ 1l;
4723 RET_LABEL703
:(void)0;
4727 var710
= (val
*)(var702
<<2|1);
4728 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_699
, var_700
, var710
); /* Direct call hash_collection$HashMap$[]= on <var_699:HashMap[String, Int]>*/
4730 if (unlikely(varonce711
==NULL
)) {
4731 var712
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
4732 if (likely(varonce713
!=NULL
)) {
4733 var714
= varonce713
;
4735 var715
= "count_type_test_unresolved_";
4736 var717
= (val
*)(27l<<2|1);
4737 var718
= (val
*)(27l<<2|1);
4738 var719
= (val
*)((long)(0)<<2|3);
4739 var720
= (val
*)((long)(0)<<2|3);
4740 var716
= core__flat___CString___to_s_unsafe(var715
, var717
, var718
, var719
, var720
);
4742 varonce713
= var714
;
4744 ((struct instance_core__NativeArray
*)var712
)->values
[0]=var714
;
4745 if (likely(varonce721
!=NULL
)) {
4746 var722
= varonce721
;
4749 var725
= (val
*)(3l<<2|1);
4750 var726
= (val
*)(3l<<2|1);
4751 var727
= (val
*)((long)(0)<<2|3);
4752 var728
= (val
*)((long)(0)<<2|3);
4753 var724
= core__flat___CString___to_s_unsafe(var723
, var725
, var726
, var727
, var728
);
4755 varonce721
= var722
;
4757 ((struct instance_core__NativeArray
*)var712
)->values
[2]=var722
;
4759 var712
= varonce711
;
4762 ((struct instance_core__NativeArray
*)var712
)->values
[1]=var_tag
;
4764 var729
= ((val
*(*)(val
* self
))(var712
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var712
); /* native_to_s on <var712:NativeArray[String]>*/
4766 varonce711
= var712
;
4768 nitc___nitc__AbstractCompilerVisitor___add(self
, var729
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
4773 if (unlikely(varonce730
==NULL
)) {
4774 var731
= NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String
);
4775 if (likely(varonce732
!=NULL
)) {
4776 var733
= varonce732
;
4778 var734
= "type_test(";
4779 var736
= (val
*)(10l<<2|1);
4780 var737
= (val
*)(10l<<2|1);
4781 var738
= (val
*)((long)(0)<<2|3);
4782 var739
= (val
*)((long)(0)<<2|3);
4783 var735
= core__flat___CString___to_s_unsafe(var734
, var736
, var737
, var738
, var739
);
4785 varonce732
= var733
;
4787 ((struct instance_core__NativeArray
*)var731
)->values
[0]=var733
;
4788 if (likely(varonce740
!=NULL
)) {
4789 var741
= varonce740
;
4792 var744
= (val
*)(2l<<2|1);
4793 var745
= (val
*)(2l<<2|1);
4794 var746
= (val
*)((long)(0)<<2|3);
4795 var747
= (val
*)((long)(0)<<2|3);
4796 var743
= core__flat___CString___to_s_unsafe(var742
, var744
, var745
, var746
, var747
);
4798 varonce740
= var741
;
4800 ((struct instance_core__NativeArray
*)var731
)->values
[2]=var741
;
4801 if (likely(varonce748
!=NULL
)) {
4802 var749
= varonce748
;
4805 var752
= (val
*)(1l<<2|1);
4806 var753
= (val
*)(1l<<2|1);
4807 var754
= (val
*)((long)(0)<<2|3);
4808 var755
= (val
*)((long)(0)<<2|3);
4809 var751
= core__flat___CString___to_s_unsafe(var750
, var752
, var753
, var754
, var755
);
4811 varonce748
= var749
;
4813 ((struct instance_core__NativeArray
*)var731
)->values
[4]=var749
;
4815 var731
= varonce730
;
4819 var756
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_value
);
4821 ((struct instance_core__NativeArray
*)var731
)->values
[1]=var756
;
4823 var757
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
4825 ((struct instance_core__NativeArray
*)var731
)->values
[3]=var757
;
4827 var758
= ((val
*(*)(val
* self
))(var731
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var731
); /* native_to_s on <var731:NativeArray[String]>*/
4829 varonce730
= var731
;
4831 nitc___nitc__AbstractCompilerVisitor___debug(self
, var758
); /* Direct call abstract_compiler$AbstractCompilerVisitor$debug on <self:SeparateErasureCompilerVisitor>*/
4833 if(catchStack
.cursor
>= 0){
4834 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
4836 PRINT_ERROR("Runtime error: %s", "Aborted");
4837 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 582);
4841 if (var_maybe_null
){
4842 if (unlikely(varonce759
==NULL
)) {
4843 var760
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
4844 if (likely(varonce761
!=NULL
)) {
4845 var762
= varonce761
;
4848 var765
= (val
*)(3l<<2|1);
4849 var766
= (val
*)(3l<<2|1);
4850 var767
= (val
*)((long)(0)<<2|3);
4851 var768
= (val
*)((long)(0)<<2|3);
4852 var764
= core__flat___CString___to_s_unsafe(var763
, var765
, var766
, var767
, var768
);
4854 varonce761
= var762
;
4856 ((struct instance_core__NativeArray
*)var760
)->values
[0]=var762
;
4857 if (likely(varonce769
!=NULL
)) {
4858 var770
= varonce769
;
4860 var771
= " == NULL) {";
4861 var773
= (val
*)(11l<<2|1);
4862 var774
= (val
*)(11l<<2|1);
4863 var775
= (val
*)((long)(0)<<2|3);
4864 var776
= (val
*)((long)(0)<<2|3);
4865 var772
= core__flat___CString___to_s_unsafe(var771
, var773
, var774
, var775
, var776
);
4867 varonce769
= var770
;
4869 ((struct instance_core__NativeArray
*)var760
)->values
[2]=var770
;
4871 var760
= varonce759
;
4875 var777
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
4877 ((struct instance_core__NativeArray
*)var760
)->values
[1]=var777
;
4879 var778
= ((val
*(*)(val
* self
))(var760
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var760
); /* native_to_s on <var760:NativeArray[String]>*/
4881 varonce759
= var760
;
4883 nitc___nitc__AbstractCompilerVisitor___add(self
, var778
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
4885 if (unlikely(varonce779
==NULL
)) {
4886 var780
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
4887 if (likely(varonce781
!=NULL
)) {
4888 var782
= varonce781
;
4891 var785
= (val
*)(3l<<2|1);
4892 var786
= (val
*)(3l<<2|1);
4893 var787
= (val
*)((long)(0)<<2|3);
4894 var788
= (val
*)((long)(0)<<2|3);
4895 var784
= core__flat___CString___to_s_unsafe(var783
, var785
, var786
, var787
, var788
);
4897 varonce781
= var782
;
4899 ((struct instance_core__NativeArray
*)var780
)->values
[1]=var782
;
4900 if (likely(varonce789
!=NULL
)) {
4901 var790
= varonce789
;
4904 var793
= (val
*)(1l<<2|1);
4905 var794
= (val
*)(1l<<2|1);
4906 var795
= (val
*)((long)(0)<<2|3);
4907 var796
= (val
*)((long)(0)<<2|3);
4908 var792
= core__flat___CString___to_s_unsafe(var791
, var793
, var794
, var795
, var796
);
4910 varonce789
= var790
;
4912 ((struct instance_core__NativeArray
*)var780
)->values
[3]=var790
;
4914 var780
= varonce779
;
4918 var797
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
4920 ((struct instance_core__NativeArray
*)var780
)->values
[0]=var797
;
4921 ((struct instance_core__NativeArray
*)var780
)->values
[2]=var_accept_null
;
4923 var798
= ((val
*(*)(val
* self
))(var780
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var780
); /* native_to_s on <var780:NativeArray[String]>*/
4925 varonce779
= var780
;
4927 nitc___nitc__AbstractCompilerVisitor___add(self
, var798
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
4929 if (likely(varonce799
!=NULL
)) {
4930 var800
= varonce799
;
4932 var801
= "} else {";
4933 var803
= (val
*)(8l<<2|1);
4934 var804
= (val
*)(8l<<2|1);
4935 var805
= (val
*)((long)(0)<<2|3);
4936 var806
= (val
*)((long)(0)<<2|3);
4937 var802
= core__flat___CString___to_s_unsafe(var801
, var803
, var804
, var805
, var806
);
4939 varonce799
= var800
;
4942 nitc___nitc__AbstractCompilerVisitor___add(self
, var800
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
4946 if (unlikely(varonce807
==NULL
)) {
4947 var808
= NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String
);
4948 if (likely(varonce809
!=NULL
)) {
4949 var810
= varonce809
;
4952 var813
= (val
*)(3l<<2|1);
4953 var814
= (val
*)(3l<<2|1);
4954 var815
= (val
*)((long)(0)<<2|3);
4955 var816
= (val
*)((long)(0)<<2|3);
4956 var812
= core__flat___CString___to_s_unsafe(var811
, var813
, var814
, var815
, var816
);
4958 varonce809
= var810
;
4960 ((struct instance_core__NativeArray
*)var808
)->values
[0]=var810
;
4961 if (likely(varonce817
!=NULL
)) {
4962 var818
= varonce817
;
4965 var821
= (val
*)(4l<<2|1);
4966 var822
= (val
*)(4l<<2|1);
4967 var823
= (val
*)((long)(0)<<2|3);
4968 var824
= (val
*)((long)(0)<<2|3);
4969 var820
= core__flat___CString___to_s_unsafe(var819
, var821
, var822
, var823
, var824
);
4971 varonce817
= var818
;
4973 ((struct instance_core__NativeArray
*)var808
)->values
[2]=var818
;
4974 if (likely(varonce825
!=NULL
)) {
4975 var826
= varonce825
;
4977 var827
= "type_table->size) {";
4978 var829
= (val
*)(19l<<2|1);
4979 var830
= (val
*)(19l<<2|1);
4980 var831
= (val
*)((long)(0)<<2|3);
4981 var832
= (val
*)((long)(0)<<2|3);
4982 var828
= core__flat___CString___to_s_unsafe(var827
, var829
, var830
, var831
, var832
);
4984 varonce825
= var826
;
4986 ((struct instance_core__NativeArray
*)var808
)->values
[4]=var826
;
4988 var808
= varonce807
;
4991 ((struct instance_core__NativeArray
*)var808
)->values
[1]=var_cltype
;
4992 ((struct instance_core__NativeArray
*)var808
)->values
[3]=var_class_ptr
;
4994 var833
= ((val
*(*)(val
* self
))(var808
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var808
); /* native_to_s on <var808:NativeArray[String]>*/
4996 varonce807
= var808
;
4998 nitc___nitc__AbstractCompilerVisitor___add(self
, var833
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
5000 if (unlikely(varonce834
==NULL
)) {
5001 var835
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
5002 if (likely(varonce836
!=NULL
)) {
5003 var837
= varonce836
;
5006 var840
= (val
*)(5l<<2|1);
5007 var841
= (val
*)(5l<<2|1);
5008 var842
= (val
*)((long)(0)<<2|3);
5009 var843
= (val
*)((long)(0)<<2|3);
5010 var839
= core__flat___CString___to_s_unsafe(var838
, var840
, var841
, var842
, var843
);
5012 varonce836
= var837
;
5014 ((struct instance_core__NativeArray
*)var835
)->values
[1]=var837
;
5016 var835
= varonce834
;
5020 var844
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
5022 ((struct instance_core__NativeArray
*)var835
)->values
[0]=var844
;
5024 var845
= ((val
*(*)(val
* self
))(var835
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var835
); /* native_to_s on <var835:NativeArray[String]>*/
5026 varonce834
= var835
;
5028 nitc___nitc__AbstractCompilerVisitor___add(self
, var845
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
5030 if (likely(varonce846
!=NULL
)) {
5031 var847
= varonce846
;
5033 var848
= "} else {";
5034 var850
= (val
*)(8l<<2|1);
5035 var851
= (val
*)(8l<<2|1);
5036 var852
= (val
*)((long)(0)<<2|3);
5037 var853
= (val
*)((long)(0)<<2|3);
5038 var849
= core__flat___CString___to_s_unsafe(var848
, var850
, var851
, var852
, var853
);
5040 varonce846
= var847
;
5043 nitc___nitc__AbstractCompilerVisitor___add(self
, var847
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
5045 if (unlikely(varonce854
==NULL
)) {
5046 var855
= NEW_core__NativeArray((int)8l, &type_core__NativeArray__core__String
);
5047 if (likely(varonce856
!=NULL
)) {
5048 var857
= varonce856
;
5051 var860
= (val
*)(3l<<2|1);
5052 var861
= (val
*)(3l<<2|1);
5053 var862
= (val
*)((long)(0)<<2|3);
5054 var863
= (val
*)((long)(0)<<2|3);
5055 var859
= core__flat___CString___to_s_unsafe(var858
, var860
, var861
, var862
, var863
);
5057 varonce856
= var857
;
5059 ((struct instance_core__NativeArray
*)var855
)->values
[1]=var857
;
5060 if (likely(varonce864
!=NULL
)) {
5061 var865
= varonce864
;
5063 var866
= "type_table->table[";
5064 var868
= (val
*)(18l<<2|1);
5065 var869
= (val
*)(18l<<2|1);
5066 var870
= (val
*)((long)(0)<<2|3);
5067 var871
= (val
*)((long)(0)<<2|3);
5068 var867
= core__flat___CString___to_s_unsafe(var866
, var868
, var869
, var870
, var871
);
5070 varonce864
= var865
;
5072 ((struct instance_core__NativeArray
*)var855
)->values
[3]=var865
;
5073 if (likely(varonce872
!=NULL
)) {
5074 var873
= varonce872
;
5077 var876
= (val
*)(5l<<2|1);
5078 var877
= (val
*)(5l<<2|1);
5079 var878
= (val
*)((long)(0)<<2|3);
5080 var879
= (val
*)((long)(0)<<2|3);
5081 var875
= core__flat___CString___to_s_unsafe(var874
, var876
, var877
, var878
, var879
);
5083 varonce872
= var873
;
5085 ((struct instance_core__NativeArray
*)var855
)->values
[5]=var873
;
5086 if (likely(varonce880
!=NULL
)) {
5087 var881
= varonce880
;
5090 var884
= (val
*)(1l<<2|1);
5091 var885
= (val
*)(1l<<2|1);
5092 var886
= (val
*)((long)(0)<<2|3);
5093 var887
= (val
*)((long)(0)<<2|3);
5094 var883
= core__flat___CString___to_s_unsafe(var882
, var884
, var885
, var886
, var887
);
5096 varonce880
= var881
;
5098 ((struct instance_core__NativeArray
*)var855
)->values
[7]=var881
;
5100 var855
= varonce854
;
5104 var888
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
5106 ((struct instance_core__NativeArray
*)var855
)->values
[0]=var888
;
5107 ((struct instance_core__NativeArray
*)var855
)->values
[2]=var_class_ptr
;
5108 ((struct instance_core__NativeArray
*)var855
)->values
[4]=var_cltype
;
5109 ((struct instance_core__NativeArray
*)var855
)->values
[6]=var_idtype
;
5111 var889
= ((val
*(*)(val
* self
))(var855
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var855
); /* native_to_s on <var855:NativeArray[String]>*/
5113 varonce854
= var855
;
5115 nitc___nitc__AbstractCompilerVisitor___add(self
, var889
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
5117 if (likely(varonce890
!=NULL
)) {
5118 var891
= varonce890
;
5121 var894
= (val
*)(1l<<2|1);
5122 var895
= (val
*)(1l<<2|1);
5123 var896
= (val
*)((long)(0)<<2|3);
5124 var897
= (val
*)((long)(0)<<2|3);
5125 var893
= core__flat___CString___to_s_unsafe(var892
, var894
, var895
, var896
, var897
);
5127 varonce890
= var891
;
5130 nitc___nitc__AbstractCompilerVisitor___add(self
, var891
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
5132 if (var_maybe_null
){
5133 if (likely(varonce898
!=NULL
)) {
5134 var899
= varonce898
;
5137 var902
= (val
*)(1l<<2|1);
5138 var903
= (val
*)(1l<<2|1);
5139 var904
= (val
*)((long)(0)<<2|3);
5140 var905
= (val
*)((long)(0)<<2|3);
5141 var901
= core__flat___CString___to_s_unsafe(var900
, var902
, var903
, var904
, var905
);
5143 varonce898
= var899
;
5146 nitc___nitc__AbstractCompilerVisitor___add(self
, var899
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
5155 /* method separate_erasure_compiler$SeparateErasureCompilerVisitor$unbox_extern for (self: SeparateErasureCompilerVisitor, RuntimeVariable, MType): RuntimeVariable */
5156 val
* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__unbox_extern(val
* self
, val
* p0
, val
* p1
) {
5157 val
* var
/* : RuntimeVariable */;
5158 val
* var_value
/* var value: RuntimeVariable */;
5159 val
* var_mtype
/* var mtype: MType */;
5160 short int var1
/* : Bool */;
5161 short int var2
/* : Bool */;
5162 short int var3
/* : Bool */;
5165 short int var_
/* var : Bool */;
5166 val
* var4
/* : MClass */;
5167 val
* var6
/* : MClass */;
5168 val
* var7
/* : MClassKind */;
5169 val
* var9
/* : MClassKind */;
5170 val
* var10
/* : Sys */;
5171 val
* var11
/* : MClassKind */;
5172 short int var12
/* : Bool */;
5173 val
* var_other
/* var other: nullable Object */;
5174 short int var14
/* : Bool */;
5175 short int var16
/* : Bool */;
5176 short int var_17
/* var : Bool */;
5177 val
* var18
/* : MClass */;
5178 val
* var20
/* : MClass */;
5179 val
* var21
/* : String */;
5180 val
* var23
/* : String */;
5181 static val
* varonce
;
5182 val
* var24
/* : String */;
5183 char* var25
/* : CString */;
5184 val
* var26
/* : String */;
5185 val
* var27
/* : nullable Int */;
5186 val
* var28
/* : nullable Int */;
5187 val
* var29
/* : nullable Bool */;
5188 val
* var30
/* : nullable Bool */;
5189 short int var31
/* : Bool */;
5190 val
* var_other33
/* var other: nullable Object */;
5191 short int var34
/* : Bool */;
5192 short int var35
/* : Bool */;
5193 val
* var36
/* : AbstractCompiler */;
5194 val
* var38
/* : AbstractCompiler */;
5195 val
* var39
/* : MModule */;
5196 val
* var41
/* : MModule */;
5197 val
* var42
/* : MClassType */;
5198 val
* var_pointer_type
/* var pointer_type: MClassType */;
5199 val
* var43
/* : RuntimeVariable */;
5200 val
* var_res
/* var res: RuntimeVariable */;
5201 val
* var45
/* : NativeArray[String] */;
5202 static val
* varonce44
;
5203 static val
* varonce46
;
5204 val
* var47
/* : String */;
5205 char* var48
/* : CString */;
5206 val
* var49
/* : String */;
5207 val
* var50
/* : nullable Int */;
5208 val
* var51
/* : nullable Int */;
5209 val
* var52
/* : nullable Bool */;
5210 val
* var53
/* : nullable Bool */;
5211 static val
* varonce54
;
5212 val
* var55
/* : String */;
5213 char* var56
/* : CString */;
5214 val
* var57
/* : String */;
5215 val
* var58
/* : nullable Int */;
5216 val
* var59
/* : nullable Int */;
5217 val
* var60
/* : nullable Bool */;
5218 val
* var61
/* : nullable Bool */;
5219 static val
* varonce62
;
5220 val
* var63
/* : String */;
5221 char* var64
/* : CString */;
5222 val
* var65
/* : String */;
5223 val
* var66
/* : nullable Int */;
5224 val
* var67
/* : nullable Int */;
5225 val
* var68
/* : nullable Bool */;
5226 val
* var69
/* : nullable Bool */;
5227 static val
* varonce70
;
5228 val
* var71
/* : String */;
5229 char* var72
/* : CString */;
5230 val
* var73
/* : String */;
5231 val
* var74
/* : nullable Int */;
5232 val
* var75
/* : nullable Int */;
5233 val
* var76
/* : nullable Bool */;
5234 val
* var77
/* : nullable Bool */;
5235 val
* var78
/* : String */;
5236 val
* var79
/* : String */;
5237 val
* var80
/* : String */;
5238 val
* var81
/* : MType */;
5239 val
* var83
/* : MType */;
5240 val
* var84
/* : String */;
5241 val
* var85
/* : String */;
5244 /* <var_mtype:MType> isa MClassType */
5245 cltype
= type_nitc__MClassType
.color
;
5246 idtype
= type_nitc__MClassType
.id
;
5247 if(cltype
>= var_mtype
->type
->table_size
) {
5250 var3
= var_mtype
->type
->type_table
[cltype
] == idtype
;
5255 { /* Inline model$MClassType$mclass (var_mtype) on <var_mtype:MType(MClassType)> */
5256 var6
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
5257 if (unlikely(var6
== NULL
)) {
5258 if(catchStack
.cursor
>= 0){
5259 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5261 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
5262 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
5270 { /* Inline model$MClass$kind (var4) on <var4:MClass> */
5271 var9
= var4
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var4:MClass> */
5272 if (unlikely(var9
== NULL
)) {
5273 if(catchStack
.cursor
>= 0){
5274 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5276 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
5277 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 472);
5286 var11
= nitc__model___core__Sys___extern_kind(var10
);
5289 { /* Inline kernel$Object$== (var7,var11) on <var7:MClassKind> */
5292 { /* Inline kernel$Object$is_same_instance (var7,var_other) on <var7:MClassKind> */
5293 var16
= var7
== var_other
;
5296 RET_LABEL15
:(void)0;
5301 RET_LABEL13
:(void)0;
5311 { /* Inline model$MClassType$mclass (var_mtype) on <var_mtype:MType(MClassType)> */
5312 var20
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
5313 if (unlikely(var20
== NULL
)) {
5314 if(catchStack
.cursor
>= 0){
5315 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5317 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
5318 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
5322 RET_LABEL19
:(void)0;
5326 { /* Inline model$MClass$name (var18) on <var18:MClass> */
5327 var23
= var18
->attrs
[COLOR_nitc__model__MClass___name
].val
; /* _name on <var18:MClass> */
5328 if (unlikely(var23
== NULL
)) {
5329 if(catchStack
.cursor
>= 0){
5330 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5332 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
5333 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 396);
5337 RET_LABEL22
:(void)0;
5340 if (likely(varonce
!=NULL
)) {
5344 var27
= (val
*)(7l<<2|1);
5345 var28
= (val
*)(7l<<2|1);
5346 var29
= (val
*)((long)(0)<<2|3);
5347 var30
= (val
*)((long)(0)<<2|3);
5348 var26
= core__flat___CString___to_s_unsafe(var25
, var27
, var28
, var29
, var30
);
5353 { /* Inline kernel$Object$!= (var21,var24) on <var21:String> */
5354 var_other33
= var24
;
5356 var34
= ((short int(*)(val
* self
, val
* p0
))(var21
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var21
, var_other33
); /* == on <var21:String>*/
5361 RET_LABEL32
:(void)0;
5370 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
5371 var38
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
5372 if (unlikely(var38
== NULL
)) {
5373 if(catchStack
.cursor
>= 0){
5374 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5376 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5377 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
5381 RET_LABEL37
:(void)0;
5385 { /* Inline abstract_compiler$AbstractCompiler$mainmodule (var36) on <var36:AbstractCompiler(SeparateCompiler)> */
5386 var41
= var36
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var36:AbstractCompiler(SeparateCompiler)> */
5387 if (unlikely(var41
== NULL
)) {
5388 if(catchStack
.cursor
>= 0){
5389 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5391 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
5392 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 545);
5396 RET_LABEL40
:(void)0;
5400 var42
= nitc__model___MModule___pointer_type(var39
);
5402 var_pointer_type
= var42
;
5404 var43
= nitc___nitc__AbstractCompilerVisitor___new_var_extern(self
, var_mtype
);
5407 if (unlikely(varonce44
==NULL
)) {
5408 var45
= NEW_core__NativeArray((int)8l, &type_core__NativeArray__core__String
);
5409 if (likely(varonce46
!=NULL
)) {
5412 var48
= " = ((struct instance_";
5413 var50
= (val
*)(21l<<2|1);
5414 var51
= (val
*)(21l<<2|1);
5415 var52
= (val
*)((long)(0)<<2|3);
5416 var53
= (val
*)((long)(0)<<2|3);
5417 var49
= core__flat___CString___to_s_unsafe(var48
, var50
, var51
, var52
, var53
);
5421 ((struct instance_core__NativeArray
*)var45
)->values
[1]=var47
;
5422 if (likely(varonce54
!=NULL
)) {
5426 var58
= (val
*)(2l<<2|1);
5427 var59
= (val
*)(2l<<2|1);
5428 var60
= (val
*)((long)(0)<<2|3);
5429 var61
= (val
*)((long)(0)<<2|3);
5430 var57
= core__flat___CString___to_s_unsafe(var56
, var58
, var59
, var60
, var61
);
5434 ((struct instance_core__NativeArray
*)var45
)->values
[3]=var55
;
5435 if (likely(varonce62
!=NULL
)) {
5438 var64
= ")->value; /* unboxing ";
5439 var66
= (val
*)(22l<<2|1);
5440 var67
= (val
*)(22l<<2|1);
5441 var68
= (val
*)((long)(0)<<2|3);
5442 var69
= (val
*)((long)(0)<<2|3);
5443 var65
= core__flat___CString___to_s_unsafe(var64
, var66
, var67
, var68
, var69
);
5447 ((struct instance_core__NativeArray
*)var45
)->values
[5]=var63
;
5448 if (likely(varonce70
!=NULL
)) {
5452 var74
= (val
*)(3l<<2|1);
5453 var75
= (val
*)(3l<<2|1);
5454 var76
= (val
*)((long)(0)<<2|3);
5455 var77
= (val
*)((long)(0)<<2|3);
5456 var73
= core__flat___CString___to_s_unsafe(var72
, var74
, var75
, var76
, var77
);
5460 ((struct instance_core__NativeArray
*)var45
)->values
[7]=var71
;
5466 var78
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
5468 ((struct instance_core__NativeArray
*)var45
)->values
[0]=var78
;
5470 var79
= ((val
*(*)(val
* self
))(var_pointer_type
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_pointer_type
); /* c_name on <var_pointer_type:MClassType>*/
5472 ((struct instance_core__NativeArray
*)var45
)->values
[2]=var79
;
5474 var80
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
5476 ((struct instance_core__NativeArray
*)var45
)->values
[4]=var80
;
5478 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_value) on <var_value:RuntimeVariable> */
5479 var83
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
5480 if (unlikely(var83
== NULL
)) {
5481 if(catchStack
.cursor
>= 0){
5482 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5484 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5485 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
5489 RET_LABEL82
:(void)0;
5493 var84
= ((val
*(*)(val
* self
))(var81
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var81
); /* to_s on <var81:MType>*/
5495 ((struct instance_core__NativeArray
*)var45
)->values
[6]=var84
;
5497 var85
= ((val
*(*)(val
* self
))(var45
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var45
); /* native_to_s on <var45:NativeArray[String]>*/
5501 nitc___nitc__AbstractCompilerVisitor___add(self
, var85
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
5512 /* method separate_erasure_compiler$SeparateErasureCompilerVisitor$box_extern for (self: SeparateErasureCompilerVisitor, RuntimeVariable, MType): RuntimeVariable */
5513 val
* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__box_extern(val
* self
, val
* p0
, val
* p1
) {
5514 val
* var
/* : RuntimeVariable */;
5515 val
* var_value
/* var value: RuntimeVariable */;
5516 val
* var_mtype
/* var mtype: MType */;
5517 short int var1
/* : Bool */;
5518 short int var2
/* : Bool */;
5519 short int var3
/* : Bool */;
5522 short int var_
/* var : Bool */;
5523 val
* var4
/* : MClass */;
5524 val
* var6
/* : MClass */;
5525 val
* var7
/* : MClassKind */;
5526 val
* var9
/* : MClassKind */;
5527 val
* var10
/* : Sys */;
5528 val
* var11
/* : MClassKind */;
5529 short int var12
/* : Bool */;
5530 val
* var_other
/* var other: nullable Object */;
5531 short int var14
/* : Bool */;
5532 short int var16
/* : Bool */;
5533 short int var_17
/* var : Bool */;
5534 val
* var18
/* : MClass */;
5535 val
* var20
/* : MClass */;
5536 val
* var21
/* : String */;
5537 val
* var23
/* : String */;
5538 static val
* varonce
;
5539 val
* var24
/* : String */;
5540 char* var25
/* : CString */;
5541 val
* var26
/* : String */;
5542 val
* var27
/* : nullable Int */;
5543 val
* var28
/* : nullable Int */;
5544 val
* var29
/* : nullable Bool */;
5545 val
* var30
/* : nullable Bool */;
5546 short int var31
/* : Bool */;
5547 val
* var_other33
/* var other: nullable Object */;
5548 short int var34
/* : Bool */;
5549 short int var35
/* : Bool */;
5550 val
* var36
/* : AbstractCompiler */;
5551 val
* var38
/* : AbstractCompiler */;
5552 val
* var39
/* : MModule */;
5553 val
* var41
/* : MModule */;
5554 val
* var42
/* : MClassType */;
5555 val
* var_valtype
/* var valtype: MClassType */;
5556 val
* var43
/* : RuntimeVariable */;
5557 val
* var_res
/* var res: RuntimeVariable */;
5558 short int var44
/* : Bool */;
5559 val
* var45
/* : AbstractCompiler */;
5560 val
* var47
/* : AbstractCompiler */;
5561 val
* var48
/* : nullable RapidTypeAnalysis */;
5562 val
* var50
/* : nullable RapidTypeAnalysis */;
5563 short int var51
/* : Bool */;
5564 short int var52
/* : Bool */;
5565 short int var54
/* : Bool */;
5566 short int var55
/* : Bool */;
5567 short int var_56
/* var : Bool */;
5568 val
* var57
/* : AbstractCompiler */;
5569 val
* var59
/* : AbstractCompiler */;
5570 val
* var60
/* : nullable RapidTypeAnalysis */;
5571 val
* var62
/* : nullable RapidTypeAnalysis */;
5572 val
* var63
/* : HashSet[MClassType] */;
5573 val
* var65
/* : HashSet[MClassType] */;
5574 val
* var66
/* : MType */;
5575 val
* var68
/* : MType */;
5576 short int var69
/* : Bool */;
5579 const char* var_class_name
;
5580 short int var72
/* : Bool */;
5581 short int var73
/* : Bool */;
5582 val
* var75
/* : NativeArray[String] */;
5583 static val
* varonce74
;
5584 static val
* varonce76
;
5585 val
* var77
/* : String */;
5586 char* var78
/* : CString */;
5587 val
* var79
/* : String */;
5588 val
* var80
/* : nullable Int */;
5589 val
* var81
/* : nullable Int */;
5590 val
* var82
/* : nullable Bool */;
5591 val
* var83
/* : nullable Bool */;
5592 static val
* varonce84
;
5593 val
* var85
/* : String */;
5594 char* var86
/* : CString */;
5595 val
* var87
/* : String */;
5596 val
* var88
/* : nullable Int */;
5597 val
* var89
/* : nullable Int */;
5598 val
* var90
/* : nullable Bool */;
5599 val
* var91
/* : nullable Bool */;
5600 static val
* varonce92
;
5601 val
* var93
/* : String */;
5602 char* var94
/* : CString */;
5603 val
* var95
/* : String */;
5604 val
* var96
/* : nullable Int */;
5605 val
* var97
/* : nullable Int */;
5606 val
* var98
/* : nullable Bool */;
5607 val
* var99
/* : nullable Bool */;
5608 val
* var100
/* : MType */;
5609 val
* var102
/* : MType */;
5610 val
* var103
/* : String */;
5611 val
* var104
/* : MType */;
5612 val
* var106
/* : MType */;
5613 val
* var107
/* : String */;
5614 val
* var108
/* : String */;
5615 static val
* varonce109
;
5616 val
* var110
/* : String */;
5617 char* var111
/* : CString */;
5618 val
* var112
/* : String */;
5619 val
* var113
/* : nullable Int */;
5620 val
* var114
/* : nullable Int */;
5621 val
* var115
/* : nullable Bool */;
5622 val
* var116
/* : nullable Bool */;
5623 val
* var118
/* : NativeArray[String] */;
5624 static val
* varonce117
;
5625 static val
* varonce119
;
5626 val
* var120
/* : String */;
5627 char* var121
/* : CString */;
5628 val
* var122
/* : String */;
5629 val
* var123
/* : nullable Int */;
5630 val
* var124
/* : nullable Int */;
5631 val
* var125
/* : nullable Bool */;
5632 val
* var126
/* : nullable Bool */;
5633 val
* var127
/* : String */;
5634 val
* var128
/* : String */;
5635 val
* var130
/* : NativeArray[String] */;
5636 static val
* varonce129
;
5637 static val
* varonce131
;
5638 val
* var132
/* : String */;
5639 char* var133
/* : CString */;
5640 val
* var134
/* : String */;
5641 val
* var135
/* : nullable Int */;
5642 val
* var136
/* : nullable Int */;
5643 val
* var137
/* : nullable Bool */;
5644 val
* var138
/* : nullable Bool */;
5645 static val
* varonce139
;
5646 val
* var140
/* : String */;
5647 char* var141
/* : CString */;
5648 val
* var142
/* : String */;
5649 val
* var143
/* : nullable Int */;
5650 val
* var144
/* : nullable Int */;
5651 val
* var145
/* : nullable Bool */;
5652 val
* var146
/* : nullable Bool */;
5653 static val
* varonce147
;
5654 val
* var148
/* : String */;
5655 char* var149
/* : CString */;
5656 val
* var150
/* : String */;
5657 val
* var151
/* : nullable Int */;
5658 val
* var152
/* : nullable Int */;
5659 val
* var153
/* : nullable Bool */;
5660 val
* var154
/* : nullable Bool */;
5661 static val
* varonce155
;
5662 val
* var156
/* : String */;
5663 char* var157
/* : CString */;
5664 val
* var158
/* : String */;
5665 val
* var159
/* : nullable Int */;
5666 val
* var160
/* : nullable Int */;
5667 val
* var161
/* : nullable Bool */;
5668 val
* var162
/* : nullable Bool */;
5669 val
* var163
/* : String */;
5670 val
* var164
/* : String */;
5671 val
* var165
/* : String */;
5672 val
* var166
/* : MType */;
5673 val
* var168
/* : MType */;
5674 val
* var169
/* : String */;
5675 val
* var170
/* : String */;
5676 val
* var172
/* : NativeArray[String] */;
5677 static val
* varonce171
;
5678 static val
* varonce173
;
5679 val
* var174
/* : String */;
5680 char* var175
/* : CString */;
5681 val
* var176
/* : String */;
5682 val
* var177
/* : nullable Int */;
5683 val
* var178
/* : nullable Int */;
5684 val
* var179
/* : nullable Bool */;
5685 val
* var180
/* : nullable Bool */;
5686 val
* var181
/* : String */;
5687 val
* var182
/* : String */;
5688 val
* var184
/* : NativeArray[String] */;
5689 static val
* varonce183
;
5690 static val
* varonce185
;
5691 val
* var186
/* : String */;
5692 char* var187
/* : CString */;
5693 val
* var188
/* : String */;
5694 val
* var189
/* : nullable Int */;
5695 val
* var190
/* : nullable Int */;
5696 val
* var191
/* : nullable Bool */;
5697 val
* var192
/* : nullable Bool */;
5698 static val
* varonce193
;
5699 val
* var194
/* : String */;
5700 char* var195
/* : CString */;
5701 val
* var196
/* : String */;
5702 val
* var197
/* : nullable Int */;
5703 val
* var198
/* : nullable Int */;
5704 val
* var199
/* : nullable Bool */;
5705 val
* var200
/* : nullable Bool */;
5706 val
* var201
/* : String */;
5707 val
* var202
/* : String */;
5708 val
* var203
/* : String */;
5711 /* <var_mtype:MType> isa MClassType */
5712 cltype
= type_nitc__MClassType
.color
;
5713 idtype
= type_nitc__MClassType
.id
;
5714 if(cltype
>= var_mtype
->type
->table_size
) {
5717 var3
= var_mtype
->type
->type_table
[cltype
] == idtype
;
5722 { /* Inline model$MClassType$mclass (var_mtype) on <var_mtype:MType(MClassType)> */
5723 var6
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
5724 if (unlikely(var6
== NULL
)) {
5725 if(catchStack
.cursor
>= 0){
5726 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5728 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
5729 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
5737 { /* Inline model$MClass$kind (var4) on <var4:MClass> */
5738 var9
= var4
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var4:MClass> */
5739 if (unlikely(var9
== NULL
)) {
5740 if(catchStack
.cursor
>= 0){
5741 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5743 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
5744 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 472);
5753 var11
= nitc__model___core__Sys___extern_kind(var10
);
5756 { /* Inline kernel$Object$== (var7,var11) on <var7:MClassKind> */
5759 { /* Inline kernel$Object$is_same_instance (var7,var_other) on <var7:MClassKind> */
5760 var16
= var7
== var_other
;
5763 RET_LABEL15
:(void)0;
5768 RET_LABEL13
:(void)0;
5778 { /* Inline model$MClassType$mclass (var_mtype) on <var_mtype:MType(MClassType)> */
5779 var20
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MType(MClassType)> */
5780 if (unlikely(var20
== NULL
)) {
5781 if(catchStack
.cursor
>= 0){
5782 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5784 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
5785 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1197);
5789 RET_LABEL19
:(void)0;
5793 { /* Inline model$MClass$name (var18) on <var18:MClass> */
5794 var23
= var18
->attrs
[COLOR_nitc__model__MClass___name
].val
; /* _name on <var18:MClass> */
5795 if (unlikely(var23
== NULL
)) {
5796 if(catchStack
.cursor
>= 0){
5797 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5799 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
5800 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 396);
5804 RET_LABEL22
:(void)0;
5807 if (likely(varonce
!=NULL
)) {
5811 var27
= (val
*)(7l<<2|1);
5812 var28
= (val
*)(7l<<2|1);
5813 var29
= (val
*)((long)(0)<<2|3);
5814 var30
= (val
*)((long)(0)<<2|3);
5815 var26
= core__flat___CString___to_s_unsafe(var25
, var27
, var28
, var29
, var30
);
5820 { /* Inline kernel$Object$!= (var21,var24) on <var21:String> */
5821 var_other33
= var24
;
5823 var34
= ((short int(*)(val
* self
, val
* p0
))(var21
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var21
, var_other33
); /* == on <var21:String>*/
5828 RET_LABEL32
:(void)0;
5837 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
5838 var38
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
5839 if (unlikely(var38
== NULL
)) {
5840 if(catchStack
.cursor
>= 0){
5841 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5843 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5844 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
5848 RET_LABEL37
:(void)0;
5852 { /* Inline abstract_compiler$AbstractCompiler$mainmodule (var36) on <var36:AbstractCompiler(SeparateCompiler)> */
5853 var41
= var36
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var36:AbstractCompiler(SeparateCompiler)> */
5854 if (unlikely(var41
== NULL
)) {
5855 if(catchStack
.cursor
>= 0){
5856 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5858 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
5859 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 545);
5863 RET_LABEL40
:(void)0;
5867 var42
= nitc__model___MModule___pointer_type(var39
);
5869 var_valtype
= var42
;
5871 var43
= nitc___nitc__AbstractCompilerVisitor___new_var(self
, var_mtype
);
5875 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
5876 var47
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
5877 if (unlikely(var47
== NULL
)) {
5878 if(catchStack
.cursor
>= 0){
5879 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5881 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5882 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
5886 RET_LABEL46
:(void)0;
5890 { /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (var45) on <var45:AbstractCompiler(SeparateCompiler)> */
5891 var50
= var45
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis
].val
; /* _runtime_type_analysis on <var45:AbstractCompiler(SeparateCompiler)> */
5893 RET_LABEL49
:(void)0;
5896 if (var48
== NULL
) {
5897 var51
= 0; /* is null */
5899 var51
= 1; /* arg is null and recv is not */
5902 { /* Inline kernel$Object$!= (var48,((val*)NULL)) on <var48:nullable RapidTypeAnalysis> */
5903 var_other33
= ((val
*)NULL
);
5905 var54
= ((short int(*)(val
* self
, val
* p0
))(var48
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var48
, var_other33
); /* == on <var48:nullable RapidTypeAnalysis(RapidTypeAnalysis)>*/
5910 RET_LABEL53
:(void)0;
5917 { /* Inline abstract_compiler$AbstractCompilerVisitor$compiler (self) on <self:SeparateErasureCompilerVisitor> */
5918 var59
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateErasureCompilerVisitor> */
5919 if (unlikely(var59
== NULL
)) {
5920 if(catchStack
.cursor
>= 0){
5921 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5923 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5924 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1214);
5928 RET_LABEL58
:(void)0;
5932 { /* Inline separate_compiler$SeparateCompiler$runtime_type_analysis (var57) on <var57:AbstractCompiler(SeparateCompiler)> */
5933 var62
= var57
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___runtime_type_analysis
].val
; /* _runtime_type_analysis on <var57:AbstractCompiler(SeparateCompiler)> */
5935 RET_LABEL61
:(void)0;
5938 if (var60
== NULL
) {
5939 if(catchStack
.cursor
>= 0){
5940 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5942 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5943 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 622);
5946 { /* Inline rapid_type_analysis$RapidTypeAnalysis$live_types (var60) on <var60:nullable RapidTypeAnalysis> */
5947 if (unlikely(var60
== NULL
)) {
5948 if(catchStack
.cursor
>= 0){
5949 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5951 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5952 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis
, 60);
5955 var65
= var60
->attrs
[COLOR_nitc__rapid_type_analysis__RapidTypeAnalysis___live_types
].val
; /* _live_types on <var60:nullable RapidTypeAnalysis> */
5956 if (unlikely(var65
== NULL
)) {
5957 if(catchStack
.cursor
>= 0){
5958 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5960 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_types");
5961 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__rapid_type_analysis
, 60);
5965 RET_LABEL64
:(void)0;
5969 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_value) on <var_value:RuntimeVariable> */
5970 var68
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
5971 if (unlikely(var68
== NULL
)) {
5972 if(catchStack
.cursor
>= 0){
5973 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
5975 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5976 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
5980 RET_LABEL67
:(void)0;
5983 /* <var66:MType> isa MClassType */
5984 cltype70
= type_nitc__MClassType
.color
;
5985 idtype71
= type_nitc__MClassType
.id
;
5986 if(cltype70
>= var66
->type
->table_size
) {
5989 var69
= var66
->type
->type_table
[cltype70
] == idtype71
;
5991 if (unlikely(!var69
)) {
5992 var_class_name
= var66
== NULL ?
"null" : var66
->type
->name
;
5993 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name
);
5994 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_erasure_compiler
, 622);
5998 var72
= core___core__HashSet___core__abstract_collection__Collection__has(var63
, var66
);
6006 if (unlikely(varonce74
==NULL
)) {
6007 var75
= NEW_core__NativeArray((int)5l, &type_core__NativeArray__core__String
);
6008 if (likely(varonce76
!=NULL
)) {
6011 var78
= "/*no boxing of ";
6012 var80
= (val
*)(15l<<2|1);
6013 var81
= (val
*)(15l<<2|1);
6014 var82
= (val
*)((long)(0)<<2|3);
6015 var83
= (val
*)((long)(0)<<2|3);
6016 var79
= core__flat___CString___to_s_unsafe(var78
, var80
, var81
, var82
, var83
);
6020 ((struct instance_core__NativeArray
*)var75
)->values
[0]=var77
;
6021 if (likely(varonce84
!=NULL
)) {
6025 var88
= (val
*)(2l<<2|1);
6026 var89
= (val
*)(2l<<2|1);
6027 var90
= (val
*)((long)(0)<<2|3);
6028 var91
= (val
*)((long)(0)<<2|3);
6029 var87
= core__flat___CString___to_s_unsafe(var86
, var88
, var89
, var90
, var91
);
6033 ((struct instance_core__NativeArray
*)var75
)->values
[2]=var85
;
6034 if (likely(varonce92
!=NULL
)) {
6037 var94
= " is not live! */";
6038 var96
= (val
*)(16l<<2|1);
6039 var97
= (val
*)(16l<<2|1);
6040 var98
= (val
*)((long)(0)<<2|3);
6041 var99
= (val
*)((long)(0)<<2|3);
6042 var95
= core__flat___CString___to_s_unsafe(var94
, var96
, var97
, var98
, var99
);
6046 ((struct instance_core__NativeArray
*)var75
)->values
[4]=var93
;
6052 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_value) on <var_value:RuntimeVariable> */
6053 var102
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6054 if (unlikely(var102
== NULL
)) {
6055 if(catchStack
.cursor
>= 0){
6056 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6058 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6059 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
6063 RET_LABEL101
:(void)0;
6067 var103
= ((val
*(*)(val
* self
))(var100
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var100
); /* to_s on <var100:MType>*/
6069 ((struct instance_core__NativeArray
*)var75
)->values
[1]=var103
;
6071 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_value) on <var_value:RuntimeVariable> */
6072 var106
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6073 if (unlikely(var106
== NULL
)) {
6074 if(catchStack
.cursor
>= 0){
6075 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6077 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6078 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
6082 RET_LABEL105
:(void)0;
6086 var107
= ((val
*(*)(val
* self
))(var104
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var104
); /* to_s on <var104:MType>*/
6088 ((struct instance_core__NativeArray
*)var75
)->values
[3]=var107
;
6090 var108
= ((val
*(*)(val
* self
))(var75
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var75
); /* native_to_s on <var75:NativeArray[String]>*/
6094 nitc___nitc__AbstractCompilerVisitor___add(self
, var108
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
6096 if (likely(varonce109
!=NULL
)) {
6097 var110
= varonce109
;
6099 var111
= "PRINT_ERROR(\"Dead code executed!\\n\"); fatal_exit(1);";
6100 var113
= (val
*)(52l<<2|1);
6101 var114
= (val
*)(52l<<2|1);
6102 var115
= (val
*)((long)(0)<<2|3);
6103 var116
= (val
*)((long)(0)<<2|3);
6104 var112
= core__flat___CString___to_s_unsafe(var111
, var113
, var114
, var115
, var116
);
6106 varonce109
= var110
;
6109 nitc___nitc__AbstractCompilerVisitor___add(self
, var110
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
6115 if (unlikely(varonce117
==NULL
)) {
6116 var118
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
6117 if (likely(varonce119
!=NULL
)) {
6118 var120
= varonce119
;
6121 var123
= (val
*)(4l<<2|1);
6122 var124
= (val
*)(4l<<2|1);
6123 var125
= (val
*)((long)(0)<<2|3);
6124 var126
= (val
*)((long)(0)<<2|3);
6125 var122
= core__flat___CString___to_s_unsafe(var121
, var123
, var124
, var125
, var126
);
6127 varonce119
= var120
;
6129 ((struct instance_core__NativeArray
*)var118
)->values
[0]=var120
;
6131 var118
= varonce117
;
6135 var127
= ((val
*(*)(val
* self
))(var_valtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_valtype
); /* c_name on <var_valtype:MClassType>*/
6137 ((struct instance_core__NativeArray
*)var118
)->values
[1]=var127
;
6139 var128
= ((val
*(*)(val
* self
))(var118
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var118
); /* native_to_s on <var118:NativeArray[String]>*/
6141 varonce117
= var118
;
6143 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var128
); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on <self:SeparateErasureCompilerVisitor>*/
6145 if (unlikely(varonce129
==NULL
)) {
6146 var130
= NEW_core__NativeArray((int)8l, &type_core__NativeArray__core__String
);
6147 if (likely(varonce131
!=NULL
)) {
6148 var132
= varonce131
;
6151 var135
= (val
*)(7l<<2|1);
6152 var136
= (val
*)(7l<<2|1);
6153 var137
= (val
*)((long)(0)<<2|3);
6154 var138
= (val
*)((long)(0)<<2|3);
6155 var134
= core__flat___CString___to_s_unsafe(var133
, var135
, var136
, var137
, var138
);
6157 varonce131
= var132
;
6159 ((struct instance_core__NativeArray
*)var130
)->values
[1]=var132
;
6160 if (likely(varonce139
!=NULL
)) {
6161 var140
= varonce139
;
6164 var143
= (val
*)(1l<<2|1);
6165 var144
= (val
*)(1l<<2|1);
6166 var145
= (val
*)((long)(0)<<2|3);
6167 var146
= (val
*)((long)(0)<<2|3);
6168 var142
= core__flat___CString___to_s_unsafe(var141
, var143
, var144
, var145
, var146
);
6170 varonce139
= var140
;
6172 ((struct instance_core__NativeArray
*)var130
)->values
[3]=var140
;
6173 if (likely(varonce147
!=NULL
)) {
6174 var148
= varonce147
;
6176 var149
= "); /* boxing ";
6177 var151
= (val
*)(13l<<2|1);
6178 var152
= (val
*)(13l<<2|1);
6179 var153
= (val
*)((long)(0)<<2|3);
6180 var154
= (val
*)((long)(0)<<2|3);
6181 var150
= core__flat___CString___to_s_unsafe(var149
, var151
, var152
, var153
, var154
);
6183 varonce147
= var148
;
6185 ((struct instance_core__NativeArray
*)var130
)->values
[5]=var148
;
6186 if (likely(varonce155
!=NULL
)) {
6187 var156
= varonce155
;
6190 var159
= (val
*)(3l<<2|1);
6191 var160
= (val
*)(3l<<2|1);
6192 var161
= (val
*)((long)(0)<<2|3);
6193 var162
= (val
*)((long)(0)<<2|3);
6194 var158
= core__flat___CString___to_s_unsafe(var157
, var159
, var160
, var161
, var162
);
6196 varonce155
= var156
;
6198 ((struct instance_core__NativeArray
*)var130
)->values
[7]=var156
;
6200 var130
= varonce129
;
6204 var163
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
6206 ((struct instance_core__NativeArray
*)var130
)->values
[0]=var163
;
6208 var164
= ((val
*(*)(val
* self
))(var_valtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_valtype
); /* c_name on <var_valtype:MClassType>*/
6210 ((struct instance_core__NativeArray
*)var130
)->values
[2]=var164
;
6212 var165
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
6214 ((struct instance_core__NativeArray
*)var130
)->values
[4]=var165
;
6216 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_value) on <var_value:RuntimeVariable> */
6217 var168
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6218 if (unlikely(var168
== NULL
)) {
6219 if(catchStack
.cursor
>= 0){
6220 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6222 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6223 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
6227 RET_LABEL167
:(void)0;
6231 var169
= ((val
*(*)(val
* self
))(var166
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var166
); /* to_s on <var166:MType>*/
6233 ((struct instance_core__NativeArray
*)var130
)->values
[6]=var169
;
6235 var170
= ((val
*(*)(val
* self
))(var130
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var130
); /* native_to_s on <var130:NativeArray[String]>*/
6237 varonce129
= var130
;
6239 nitc___nitc__AbstractCompilerVisitor___add(self
, var170
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
6241 if (unlikely(varonce171
==NULL
)) {
6242 var172
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
6243 if (likely(varonce173
!=NULL
)) {
6244 var174
= varonce173
;
6247 var177
= (val
*)(6l<<2|1);
6248 var178
= (val
*)(6l<<2|1);
6249 var179
= (val
*)((long)(0)<<2|3);
6250 var180
= (val
*)((long)(0)<<2|3);
6251 var176
= core__flat___CString___to_s_unsafe(var175
, var177
, var178
, var179
, var180
);
6253 varonce173
= var174
;
6255 ((struct instance_core__NativeArray
*)var172
)->values
[0]=var174
;
6257 var172
= varonce171
;
6261 var181
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType(MClassType)>*/
6263 ((struct instance_core__NativeArray
*)var172
)->values
[1]=var181
;
6265 var182
= ((val
*(*)(val
* self
))(var172
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var172
); /* native_to_s on <var172:NativeArray[String]>*/
6267 varonce171
= var172
;
6269 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var182
); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on <self:SeparateErasureCompilerVisitor>*/
6271 if (unlikely(varonce183
==NULL
)) {
6272 var184
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
6273 if (likely(varonce185
!=NULL
)) {
6274 var186
= varonce185
;
6276 var187
= "->class = &class_";
6277 var189
= (val
*)(17l<<2|1);
6278 var190
= (val
*)(17l<<2|1);
6279 var191
= (val
*)((long)(0)<<2|3);
6280 var192
= (val
*)((long)(0)<<2|3);
6281 var188
= core__flat___CString___to_s_unsafe(var187
, var189
, var190
, var191
, var192
);
6283 varonce185
= var186
;
6285 ((struct instance_core__NativeArray
*)var184
)->values
[1]=var186
;
6286 if (likely(varonce193
!=NULL
)) {
6287 var194
= varonce193
;
6290 var197
= (val
*)(1l<<2|1);
6291 var198
= (val
*)(1l<<2|1);
6292 var199
= (val
*)((long)(0)<<2|3);
6293 var200
= (val
*)((long)(0)<<2|3);
6294 var196
= core__flat___CString___to_s_unsafe(var195
, var197
, var198
, var199
, var200
);
6296 varonce193
= var194
;
6298 ((struct instance_core__NativeArray
*)var184
)->values
[3]=var194
;
6300 var184
= varonce183
;
6304 var201
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
6306 ((struct instance_core__NativeArray
*)var184
)->values
[0]=var201
;
6308 var202
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType(MClassType)>*/
6310 ((struct instance_core__NativeArray
*)var184
)->values
[2]=var202
;
6312 var203
= ((val
*(*)(val
* self
))(var184
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var184
); /* native_to_s on <var184:NativeArray[String]>*/
6314 varonce183
= var184
;
6316 nitc___nitc__AbstractCompilerVisitor___add(self
, var203
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
6327 /* method separate_erasure_compiler$SeparateErasureCompilerVisitor$class_name_string for (self: SeparateErasureCompilerVisitor, RuntimeVariable): String */
6328 val
* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__class_name_string(val
* self
, val
* p0
) {
6329 val
* var
/* : String */;
6330 val
* var_value
/* var value: RuntimeVariable */;
6331 static val
* varonce
;
6332 val
* var1
/* : String */;
6333 char* var2
/* : CString */;
6334 val
* var3
/* : String */;
6335 val
* var4
/* : nullable Int */;
6336 val
* var5
/* : nullable Int */;
6337 val
* var6
/* : nullable Bool */;
6338 val
* var7
/* : nullable Bool */;
6339 val
* var8
/* : String */;
6340 val
* var_res
/* var res: String */;
6341 val
* var10
/* : NativeArray[String] */;
6342 static val
* varonce9
;
6343 static val
* varonce11
;
6344 val
* var12
/* : String */;
6345 char* var13
/* : CString */;
6346 val
* var14
/* : String */;
6347 val
* var15
/* : nullable Int */;
6348 val
* var16
/* : nullable Int */;
6349 val
* var17
/* : nullable Bool */;
6350 val
* var18
/* : nullable Bool */;
6351 static val
* varonce19
;
6352 val
* var20
/* : String */;
6353 char* var21
/* : CString */;
6354 val
* var22
/* : String */;
6355 val
* var23
/* : nullable Int */;
6356 val
* var24
/* : nullable Int */;
6357 val
* var25
/* : nullable Bool */;
6358 val
* var26
/* : nullable Bool */;
6359 val
* var27
/* : String */;
6360 val
* var28
/* : MType */;
6361 val
* var30
/* : MType */;
6362 short int var31
/* : Bool */;
6363 short int var32
/* : Bool */;
6364 val
* var34
/* : NativeArray[String] */;
6365 static val
* varonce33
;
6366 static val
* varonce35
;
6367 val
* var36
/* : String */;
6368 char* var37
/* : CString */;
6369 val
* var38
/* : String */;
6370 val
* var39
/* : nullable Int */;
6371 val
* var40
/* : nullable Int */;
6372 val
* var41
/* : nullable Bool */;
6373 val
* var42
/* : nullable Bool */;
6374 static val
* varonce43
;
6375 val
* var44
/* : String */;
6376 char* var45
/* : CString */;
6377 val
* var46
/* : String */;
6378 val
* var47
/* : nullable Int */;
6379 val
* var48
/* : nullable Int */;
6380 val
* var49
/* : nullable Bool */;
6381 val
* var50
/* : nullable Bool */;
6382 static val
* varonce51
;
6383 val
* var52
/* : String */;
6384 char* var53
/* : CString */;
6385 val
* var54
/* : String */;
6386 val
* var55
/* : nullable Int */;
6387 val
* var56
/* : nullable Int */;
6388 val
* var57
/* : nullable Bool */;
6389 val
* var58
/* : nullable Bool */;
6390 val
* var59
/* : String */;
6391 val
* var60
/* : String */;
6392 val
* var61
/* : String */;
6393 val
* var63
/* : NativeArray[String] */;
6394 static val
* varonce62
;
6395 static val
* varonce64
;
6396 val
* var65
/* : String */;
6397 char* var66
/* : CString */;
6398 val
* var67
/* : String */;
6399 val
* var68
/* : nullable Int */;
6400 val
* var69
/* : nullable Int */;
6401 val
* var70
/* : nullable Bool */;
6402 val
* var71
/* : nullable Bool */;
6403 val
* var72
/* : MType */;
6404 val
* var74
/* : MType */;
6405 val
* var75
/* : String */;
6406 val
* var76
/* : String */;
6407 val
* var78
/* : NativeArray[String] */;
6408 static val
* varonce77
;
6409 static val
* varonce79
;
6410 val
* var80
/* : String */;
6411 char* var81
/* : CString */;
6412 val
* var82
/* : String */;
6413 val
* var83
/* : nullable Int */;
6414 val
* var84
/* : nullable Int */;
6415 val
* var85
/* : nullable Bool */;
6416 val
* var86
/* : nullable Bool */;
6417 static val
* varonce87
;
6418 val
* var88
/* : String */;
6419 char* var89
/* : CString */;
6420 val
* var90
/* : String */;
6421 val
* var91
/* : nullable Int */;
6422 val
* var92
/* : nullable Int */;
6423 val
* var93
/* : nullable Bool */;
6424 val
* var94
/* : nullable Bool */;
6425 val
* var95
/* : MType */;
6426 val
* var97
/* : MType */;
6427 val
* var98
/* : String */;
6428 val
* var99
/* : String */;
6430 if (likely(varonce
!=NULL
)) {
6433 var2
= "var_class_name";
6434 var4
= (val
*)(14l<<2|1);
6435 var5
= (val
*)(14l<<2|1);
6436 var6
= (val
*)((long)(0)<<2|3);
6437 var7
= (val
*)((long)(0)<<2|3);
6438 var3
= core__flat___CString___to_s_unsafe(var2
, var4
, var5
, var6
, var7
);
6443 var8
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var1
);
6446 if (unlikely(varonce9
==NULL
)) {
6447 var10
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
6448 if (likely(varonce11
!=NULL
)) {
6451 var13
= "const char* ";
6452 var15
= (val
*)(12l<<2|1);
6453 var16
= (val
*)(12l<<2|1);
6454 var17
= (val
*)((long)(0)<<2|3);
6455 var18
= (val
*)((long)(0)<<2|3);
6456 var14
= core__flat___CString___to_s_unsafe(var13
, var15
, var16
, var17
, var18
);
6460 ((struct instance_core__NativeArray
*)var10
)->values
[0]=var12
;
6461 if (likely(varonce19
!=NULL
)) {
6465 var23
= (val
*)(1l<<2|1);
6466 var24
= (val
*)(1l<<2|1);
6467 var25
= (val
*)((long)(0)<<2|3);
6468 var26
= (val
*)((long)(0)<<2|3);
6469 var22
= core__flat___CString___to_s_unsafe(var21
, var23
, var24
, var25
, var26
);
6473 ((struct instance_core__NativeArray
*)var10
)->values
[2]=var20
;
6478 ((struct instance_core__NativeArray
*)var10
)->values
[1]=var_res
;
6480 var27
= ((val
*(*)(val
* self
))(var10
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var10
); /* native_to_s on <var10:NativeArray[String]>*/
6484 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var27
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add_decl on <self:SeparateErasureCompilerVisitor>*/
6487 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_value) on <var_value:RuntimeVariable> */
6488 var30
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6489 if (unlikely(var30
== NULL
)) {
6490 if(catchStack
.cursor
>= 0){
6491 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6493 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6494 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
6498 RET_LABEL29
:(void)0;
6502 var31
= ((short int(*)(val
* self
))(var28
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var28
); /* is_c_primitive on <var28:MType>*/
6506 if (unlikely(varonce33
==NULL
)) {
6507 var34
= NEW_core__NativeArray((int)6l, &type_core__NativeArray__core__String
);
6508 if (likely(varonce35
!=NULL
)) {
6512 var39
= (val
*)(3l<<2|1);
6513 var40
= (val
*)(3l<<2|1);
6514 var41
= (val
*)((long)(0)<<2|3);
6515 var42
= (val
*)((long)(0)<<2|3);
6516 var38
= core__flat___CString___to_s_unsafe(var37
, var39
, var40
, var41
, var42
);
6520 ((struct instance_core__NativeArray
*)var34
)->values
[1]=var36
;
6521 if (likely(varonce43
!=NULL
)) {
6524 var45
= " == NULL ? \"null\" : ";
6525 var47
= (val
*)(20l<<2|1);
6526 var48
= (val
*)(20l<<2|1);
6527 var49
= (val
*)((long)(0)<<2|3);
6528 var50
= (val
*)((long)(0)<<2|3);
6529 var46
= core__flat___CString___to_s_unsafe(var45
, var47
, var48
, var49
, var50
);
6533 ((struct instance_core__NativeArray
*)var34
)->values
[3]=var44
;
6534 if (likely(varonce51
!=NULL
)) {
6537 var53
= "->class->name;";
6538 var55
= (val
*)(14l<<2|1);
6539 var56
= (val
*)(14l<<2|1);
6540 var57
= (val
*)((long)(0)<<2|3);
6541 var58
= (val
*)((long)(0)<<2|3);
6542 var54
= core__flat___CString___to_s_unsafe(var53
, var55
, var56
, var57
, var58
);
6546 ((struct instance_core__NativeArray
*)var34
)->values
[5]=var52
;
6551 ((struct instance_core__NativeArray
*)var34
)->values
[0]=var_res
;
6553 var59
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
6555 ((struct instance_core__NativeArray
*)var34
)->values
[2]=var59
;
6557 var60
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
6559 ((struct instance_core__NativeArray
*)var34
)->values
[4]=var60
;
6561 var61
= ((val
*(*)(val
* self
))(var34
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var34
); /* native_to_s on <var34:NativeArray[String]>*/
6565 nitc___nitc__AbstractCompilerVisitor___add(self
, var61
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
6568 if (unlikely(varonce62
==NULL
)) {
6569 var63
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
6570 if (likely(varonce64
!=NULL
)) {
6574 var68
= (val
*)(6l<<2|1);
6575 var69
= (val
*)(6l<<2|1);
6576 var70
= (val
*)((long)(0)<<2|3);
6577 var71
= (val
*)((long)(0)<<2|3);
6578 var67
= core__flat___CString___to_s_unsafe(var66
, var68
, var69
, var70
, var71
);
6582 ((struct instance_core__NativeArray
*)var63
)->values
[0]=var65
;
6588 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_value) on <var_value:RuntimeVariable> */
6589 var74
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6590 if (unlikely(var74
== NULL
)) {
6591 if(catchStack
.cursor
>= 0){
6592 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6594 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6595 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
6599 RET_LABEL73
:(void)0;
6603 var75
= ((val
*(*)(val
* self
))(var72
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var72
); /* c_name on <var72:MType>*/
6605 ((struct instance_core__NativeArray
*)var63
)->values
[1]=var75
;
6607 var76
= ((val
*(*)(val
* self
))(var63
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var63
); /* native_to_s on <var63:NativeArray[String]>*/
6611 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var76
); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on <self:SeparateErasureCompilerVisitor>*/
6613 if (unlikely(varonce77
==NULL
)) {
6614 var78
= NEW_core__NativeArray((int)4l, &type_core__NativeArray__core__String
);
6615 if (likely(varonce79
!=NULL
)) {
6618 var81
= " = class_";
6619 var83
= (val
*)(9l<<2|1);
6620 var84
= (val
*)(9l<<2|1);
6621 var85
= (val
*)((long)(0)<<2|3);
6622 var86
= (val
*)((long)(0)<<2|3);
6623 var82
= core__flat___CString___to_s_unsafe(var81
, var83
, var84
, var85
, var86
);
6627 ((struct instance_core__NativeArray
*)var78
)->values
[1]=var80
;
6628 if (likely(varonce87
!=NULL
)) {
6632 var91
= (val
*)(6l<<2|1);
6633 var92
= (val
*)(6l<<2|1);
6634 var93
= (val
*)((long)(0)<<2|3);
6635 var94
= (val
*)((long)(0)<<2|3);
6636 var90
= core__flat___CString___to_s_unsafe(var89
, var91
, var92
, var93
, var94
);
6640 ((struct instance_core__NativeArray
*)var78
)->values
[3]=var88
;
6645 ((struct instance_core__NativeArray
*)var78
)->values
[0]=var_res
;
6647 { /* Inline abstract_compiler$RuntimeVariable$mtype (var_value) on <var_value:RuntimeVariable> */
6648 var97
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6649 if (unlikely(var97
== NULL
)) {
6650 if(catchStack
.cursor
>= 0){
6651 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
6653 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6654 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1983);
6658 RET_LABEL96
:(void)0;
6662 var98
= ((val
*(*)(val
* self
))(var95
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var95
); /* c_name on <var95:MType>*/
6664 ((struct instance_core__NativeArray
*)var78
)->values
[2]=var98
;
6666 var99
= ((val
*(*)(val
* self
))(var78
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var78
); /* native_to_s on <var78:NativeArray[String]>*/
6670 nitc___nitc__AbstractCompilerVisitor___add(self
, var99
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/
6678 /* method separate_erasure_compiler$SeparateErasureCompilerVisitor$native_array_instance for (self: SeparateErasureCompilerVisitor, MType, RuntimeVariable): RuntimeVariable */
6679 val
* nitc___nitc__SeparateErasureCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__native_array_instance(val
* self
, val
* p0
, val
* p1
) {
6680 val
* var
/* : RuntimeVariable */;
6681 val
* var_elttype
/* var elttype: MType */;
6682 val
* var_length
/* var length: RuntimeVariable */;
6683 val
* var1
/* : MModule */;
6684 val
* var2
/* : MClass */;
6685 val
* var_nclass
/* var nclass: MClass */;
6686 val
* var3
/* : Array[MType] */;
6687 val
* var_
/* var : Array[MType] */;
6688 val
* var4
/* : MClassType */;
6689 val
* var_mtype
/* var mtype: MClassType */;
6690 val
* var5
/* : RuntimeVariable */;
6691 val
* var_res
/* var res: RuntimeVariable */;
6692 val
* var7
/* : NativeArray[String] */;
6693 static val
* varonce
;
6694 static val
* varonce8
;
6695 val
* var9
/* : String */;
6696 char* var10
/* : CString */;
6697 val
* var11
/* : String */;
6698 val
* var12
/* : nullable Int */;
6699 val
* var13
/* : nullable Int */;
6700 val
* var14
/* : nullable Bool */;
6701 val
* var15
/* : nullable Bool */;
6702 val
* var16
/* : String */;
6703 val
* var17
/* : String */;
6704 val
* var19
/* : NativeArray[String] */;
6705 static val
* varonce18
;
6706 static val
* varonce20
;
6707 val
* var21
/* : String */;
6708 char* var22
/* : CString */;
6709 val
* var23
/* : String */;
6710 val
* var24
/* : nullable Int */;
6711 val
* var25
/* : nullable Int */;
6712 val
* var26
/* : nullable Bool */;
6713 val
* var27
/* : nullable Bool */;
6714 static val
* varonce28
;
6715 val
* var29
/* : String */;
6716 char* var30
/* : CString */;
6717 val
* var31
/* : String */;
6718 val
* var32
/* : nullable Int */;
6719 val
* var33
/* : nullable Int */;
6720 val
* var34
/* : nullable Bool */;
6721 val
* var35
/* : nullable Bool */;
6722 static val
* varonce36
;
6723 val
* var37
/* : String */;
6724 char* var38
/* : CString */;
6725 val
* var39
/* : String */;
6726 val
* var40
/* : nullable Int */;
6727 val
* var41
/* : nullable Int */;
6728 val
* var42
/* : nullable Bool */;
6729 val
* var43
/* : nullable Bool */;
6730 val
* var44
/* : String */;
6731 val
* var45
/* : String */;
6732 val
* var46
/* : String */;
6733 val
* var47
/* : String */;
6737 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
6740 var2
= nitc__model___MModule___native_array_class(var1
);
6743 var3
= NEW_core__Array(&type_core__Array__nitc__MType
);
6745 core___core__Array___with_capacity(var3
, 1l); /* Direct call array$Array$with_capacity on <var3:Array[MType]>*/
6749 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_
, var_elttype
); /* Direct call array$AbstractArray$push on <var_:Array[MType]>*/
6752 var4
= nitc___nitc__MClass___get_mtype(var_nclass
, var_
);
6756 var5
= nitc___nitc__AbstractCompilerVisitor___new_var(self
, var_mtype
);
6760 { /* Inline abstract_compiler$RuntimeVariable$is_exact= (var_res,1) on <var_res:RuntimeVariable> */
6761 var_res
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___is_exact
].s
= 1; /* _is_exact on <var_res:RuntimeVariable> */
6765 if (unlikely(varonce
==NULL
)) {
6766 var7
= NEW_core__NativeArray((int)2l, &type_core__NativeArray__core__String
);
6767 if (likely(varonce8
!=NULL
)) {
6771 var12
= (val
*)(4l<<2|1);
6772 var13
= (val
*)(4l<<2|1);
6773 var14
= (val
*)((long)(0)<<2|3);
6774 var15
= (val
*)((long)(0)<<2|3);
6775 var11
= core__flat___CString___to_s_unsafe(var10
, var12
, var13
, var14
, var15
);
6779 ((struct instance_core__NativeArray
*)var7
)->values
[0]=var9
;
6785 var16
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_nclass
);
6787 ((struct instance_core__NativeArray
*)var7
)->values
[1]=var16
;
6789 var17
= ((val
*(*)(val
* self
))(var7
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var7
); /* native_to_s on <var7:NativeArray[String]>*/
6793 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var17
); /* Direct call abstract_compiler$AbstractCompilerVisitor$require_declaration on <self:SeparateErasureCompilerVisitor>*/
6795 if (unlikely(varonce18
==NULL
)) {
6796 var19
= NEW_core__NativeArray((int)6l, &type_core__NativeArray__core__String
);
6797 if (likely(varonce20
!=NULL
)) {
6801 var24
= (val
*)(7l<<2|1);
6802 var25
= (val
*)(7l<<2|1);
6803 var26
= (val
*)((long)(0)<<2|3);
6804 var27
= (val
*)((long)(0)<<2|3);
6805 var23
= core__flat___CString___to_s_unsafe(var22
, var24
, var25
, var26
, var27
);
6809 ((struct instance_core__NativeArray
*)var19
)->values
[1]=var21
;
6810 if (likely(varonce28
!=NULL
)) {
6814 var32
= (val
*)(1l<<2|1);
6815 var33
= (val
*)(1l<<2|1);
6816 var34
= (val
*)((long)(0)<<2|3);
6817 var35
= (val
*)((long)(0)<<2|3);
6818 var31
= core__flat___CString___to_s_unsafe(var30
, var32
, var33
, var34
, var35
);
6822 ((struct instance_core__NativeArray
*)var19
)->values
[3]=var29
;
6823 if (likely(varonce36
!=NULL
)) {
6827 var40
= (val
*)(2l<<2|1);
6828 var41
= (val
*)(2l<<2|1);
6829 var42
= (val
*)((long)(0)<<2|3);
6830 var43
= (val
*)((long)(0)<<2|3);
6831 var39
= core__flat___CString___to_s_unsafe(var38
, var40
, var41
, var42
, var43
);
6835 ((struct instance_core__NativeArray
*)var19
)->values
[5]=var37
;
6841 var44
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
6843 ((struct instance_core__NativeArray
*)var19
)->values
[0]=var44
;
6845 var45
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_nclass
);
6847 ((struct instance_core__NativeArray
*)var19
)->values
[2]=var45
;
6849 var46
= ((val
*(*)(val
* self
))(var_length
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_length
); /* to_s on <var_length:RuntimeVariable>*/
6851 ((struct instance_core__NativeArray
*)var19
)->values
[4]=var46
;
6853 var47
= ((val
*(*)(val
* self
))(var19
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var19
); /* native_to_s on <var19:NativeArray[String]>*/
6857 nitc___nitc__AbstractCompilerVisitor___add(self
, var47
); /* Direct call abstract_compiler$AbstractCompilerVisitor$add on <self:SeparateErasureCompilerVisitor>*/