1 #include "nitc__separate_compiler.sep.0.h"
2 /* method separate_compiler#SeparateCompilerVisitor#read_attribute for (self: SeparateCompilerVisitor, MAttribute, RuntimeVariable): RuntimeVariable */
3 val
* nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__read_attribute(val
* self
, val
* p0
, val
* p1
) {
4 val
* var
/* : RuntimeVariable */;
5 val
* var_a
/* var a: MAttribute */;
6 val
* var_recv
/* var recv: RuntimeVariable */;
7 val
* var1
/* : MPropDef */;
8 val
* var3
/* : MPropDef */;
9 val
* var4
/* : nullable MType */;
10 val
* var6
/* : nullable MType */;
11 val
* var_ret
/* var ret: MType */;
12 val
* var7
/* : MPropDef */;
13 val
* var9
/* : MPropDef */;
14 val
* var10
/* : MClassDef */;
15 val
* var12
/* : MClassDef */;
16 val
* var_intromclassdef
/* var intromclassdef: MClassDef */;
17 val
* var13
/* : MClassType */;
18 val
* var15
/* : MClassType */;
19 val
* var16
/* : MClassType */;
20 val
* var18
/* : MClassType */;
21 val
* var19
/* : MModule */;
22 val
* var21
/* : MModule */;
23 val
* var22
/* : MType */;
24 val
* var23
/* : AbstractCompiler */;
25 val
* var25
/* : AbstractCompiler */;
26 val
* var26
/* : ModelBuilder */;
27 val
* var28
/* : ModelBuilder */;
28 val
* var29
/* : ToolContext */;
29 val
* var31
/* : ToolContext */;
30 val
* var32
/* : OptionBool */;
31 val
* var34
/* : OptionBool */;
32 val
* var35
/* : nullable Object */;
33 val
* var37
/* : nullable Object */;
34 short int var38
/* : Bool */;
35 val
* var39
/* : AbstractCompiler */;
36 val
* var41
/* : AbstractCompiler */;
37 val
* var_
/* var : SeparateCompiler */;
38 long var42
/* : Int */;
39 long var44
/* : Int */;
40 long var45
/* : Int */;
41 short int var47
/* : Bool */;
44 const char* var_class_name
;
45 long var48
/* : Int */;
47 val
* var50
/* : String */;
48 char* var51
/* : NativeString */;
49 val
* var52
/* : String */;
50 val
* var53
/* : String */;
51 val
* var54
/* : AbstractCompiler */;
52 val
* var56
/* : AbstractCompiler */;
53 val
* var57
/* : ModelBuilder */;
54 val
* var59
/* : ModelBuilder */;
55 val
* var60
/* : ToolContext */;
56 val
* var62
/* : ToolContext */;
57 val
* var63
/* : OptionBool */;
58 val
* var65
/* : OptionBool */;
59 val
* var66
/* : nullable Object */;
60 val
* var68
/* : nullable Object */;
61 short int var69
/* : Bool */;
62 val
* var70
/* : MClassType */;
63 val
* var71
/* : MType */;
64 val
* var_cret
/* var cret: MType */;
65 val
* var72
/* : RuntimeVariable */;
66 val
* var_res
/* var res: RuntimeVariable */;
67 val
* var75
/* : NativeArray[String] */;
68 static val
* varonce74
;
69 static val
* varonce76
;
70 val
* var77
/* : String */;
71 char* var78
/* : NativeString */;
72 val
* var79
/* : String */;
73 static val
* varonce80
;
74 val
* var81
/* : String */;
75 char* var82
/* : NativeString */;
76 val
* var83
/* : String */;
77 static val
* varonce84
;
78 val
* var85
/* : String */;
79 char* var86
/* : NativeString */;
80 val
* var87
/* : String */;
81 static val
* varonce88
;
82 val
* var89
/* : String */;
83 char* var90
/* : NativeString */;
84 val
* var91
/* : String */;
85 static val
* varonce92
;
86 val
* var93
/* : String */;
87 char* var94
/* : NativeString */;
88 val
* var95
/* : String */;
89 val
* var96
/* : String */;
90 val
* var97
/* : String */;
91 val
* var98
/* : String */;
92 val
* var99
/* : String */;
93 val
* var100
/* : String */;
94 val
* var101
/* : String */;
95 short int var102
/* : Bool */;
96 short int var103
/* : Bool */;
99 short int var106
/* : Bool */;
100 short int var_107
/* var : Bool */;
101 val
* var108
/* : AbstractCompiler */;
102 val
* var110
/* : AbstractCompiler */;
103 val
* var111
/* : ModelBuilder */;
104 val
* var113
/* : ModelBuilder */;
105 val
* var114
/* : ToolContext */;
106 val
* var116
/* : ToolContext */;
107 val
* var117
/* : OptionBool */;
108 val
* var119
/* : OptionBool */;
109 val
* var120
/* : nullable Object */;
110 val
* var122
/* : nullable Object */;
111 short int var123
/* : Bool */;
112 short int var124
/* : Bool */;
113 val
* var126
/* : NativeArray[String] */;
114 static val
* varonce125
;
115 static val
* varonce127
;
116 val
* var128
/* : String */;
117 char* var129
/* : NativeString */;
118 val
* var130
/* : String */;
119 static val
* varonce131
;
120 val
* var132
/* : String */;
121 char* var133
/* : NativeString */;
122 val
* var134
/* : String */;
123 val
* var135
/* : String */;
124 val
* var136
/* : String */;
125 val
* var138
/* : NativeArray[String] */;
126 static val
* varonce137
;
127 static val
* varonce139
;
128 val
* var140
/* : String */;
129 char* var141
/* : NativeString */;
130 val
* var142
/* : String */;
131 val
* var143
/* : String */;
132 val
* var145
/* : String */;
133 val
* var146
/* : String */;
134 static val
* varonce147
;
135 val
* var148
/* : String */;
136 char* var149
/* : NativeString */;
137 val
* var150
/* : String */;
138 val
* var151
/* : AbstractCompiler */;
139 val
* var153
/* : AbstractCompiler */;
140 val
* var154
/* : ModelBuilder */;
141 val
* var156
/* : ModelBuilder */;
142 val
* var157
/* : ToolContext */;
143 val
* var159
/* : ToolContext */;
144 val
* var160
/* : OptionBool */;
145 val
* var162
/* : OptionBool */;
146 val
* var163
/* : nullable Object */;
147 val
* var165
/* : nullable Object */;
148 short int var166
/* : Bool */;
149 val
* var167
/* : AbstractCompiler */;
150 val
* var169
/* : AbstractCompiler */;
151 val
* var_170
/* var : SeparateCompiler */;
152 long var171
/* : Int */;
153 long var173
/* : Int */;
154 long var174
/* : Int */;
155 short int var176
/* : Bool */;
158 const char* var_class_name179
;
159 long var180
/* : Int */;
160 static val
* varonce182
;
161 val
* var183
/* : String */;
162 char* var184
/* : NativeString */;
163 val
* var185
/* : String */;
164 val
* var186
/* : RuntimeVariable */;
165 val
* var187
/* : RuntimeVariable */;
166 val
* var_res188
/* var res: RuntimeVariable */;
167 val
* var190
/* : NativeArray[String] */;
168 static val
* varonce189
;
169 static val
* varonce191
;
170 val
* var192
/* : String */;
171 char* var193
/* : NativeString */;
172 val
* var194
/* : String */;
173 static val
* varonce195
;
174 val
* var196
/* : String */;
175 char* var197
/* : NativeString */;
176 val
* var198
/* : String */;
177 static val
* varonce199
;
178 val
* var200
/* : String */;
179 char* var201
/* : NativeString */;
180 val
* var202
/* : String */;
181 static val
* varonce203
;
182 val
* var204
/* : String */;
183 char* var205
/* : NativeString */;
184 val
* var206
/* : String */;
185 static val
* varonce207
;
186 val
* var208
/* : String */;
187 char* var209
/* : NativeString */;
188 val
* var210
/* : String */;
189 static val
* varonce211
;
190 val
* var212
/* : String */;
191 char* var213
/* : NativeString */;
192 val
* var214
/* : String */;
193 val
* var215
/* : String */;
194 val
* var216
/* : String */;
195 val
* var217
/* : String */;
196 val
* var218
/* : String */;
197 val
* var219
/* : String */;
198 val
* var220
/* : String */;
199 val
* var221
/* : String */;
200 short int var222
/* : Bool */;
201 short int var223
/* : Bool */;
202 short int var224
/* : Bool */;
203 short int var225
/* : Bool */;
204 short int var_226
/* var : Bool */;
205 short int var227
/* : Bool */;
208 short int var230
/* : Bool */;
209 short int var_231
/* var : Bool */;
210 val
* var232
/* : AbstractCompiler */;
211 val
* var234
/* : AbstractCompiler */;
212 val
* var235
/* : ModelBuilder */;
213 val
* var237
/* : ModelBuilder */;
214 val
* var238
/* : ToolContext */;
215 val
* var240
/* : ToolContext */;
216 val
* var241
/* : OptionBool */;
217 val
* var243
/* : OptionBool */;
218 val
* var244
/* : nullable Object */;
219 val
* var246
/* : nullable Object */;
220 short int var247
/* : Bool */;
221 short int var248
/* : Bool */;
222 val
* var250
/* : NativeArray[String] */;
223 static val
* varonce249
;
224 static val
* varonce251
;
225 val
* var252
/* : String */;
226 char* var253
/* : NativeString */;
227 val
* var254
/* : String */;
228 static val
* varonce255
;
229 val
* var256
/* : String */;
230 char* var257
/* : NativeString */;
231 val
* var258
/* : String */;
232 val
* var259
/* : String */;
233 val
* var260
/* : String */;
234 val
* var262
/* : NativeArray[String] */;
235 static val
* varonce261
;
236 static val
* varonce263
;
237 val
* var264
/* : String */;
238 char* var265
/* : NativeString */;
239 val
* var266
/* : String */;
240 val
* var267
/* : String */;
241 val
* var269
/* : String */;
242 val
* var270
/* : String */;
243 static val
* varonce271
;
244 val
* var272
/* : String */;
245 char* var273
/* : NativeString */;
246 val
* var274
/* : String */;
247 val
* var275
/* : AbstractCompiler */;
248 val
* var277
/* : AbstractCompiler */;
249 val
* var278
/* : ModelBuilder */;
250 val
* var280
/* : ModelBuilder */;
251 val
* var281
/* : ToolContext */;
252 val
* var283
/* : ToolContext */;
253 val
* var284
/* : OptionBool */;
254 val
* var286
/* : OptionBool */;
255 val
* var287
/* : nullable Object */;
256 val
* var289
/* : nullable Object */;
257 short int var290
/* : Bool */;
258 val
* var291
/* : AbstractCompiler */;
259 val
* var293
/* : AbstractCompiler */;
260 val
* var_294
/* var : SeparateCompiler */;
261 long var295
/* : Int */;
262 long var297
/* : Int */;
263 long var298
/* : Int */;
264 short int var300
/* : Bool */;
267 const char* var_class_name303
;
268 long var304
/* : Int */;
269 static val
* varonce306
;
270 val
* var307
/* : String */;
271 char* var308
/* : NativeString */;
272 val
* var309
/* : String */;
276 nitc___nitc__AbstractCompilerVisitor___check_recv_notnull(self
, var_recv
); /* Direct call abstract_compiler#AbstractCompilerVisitor#check_recv_notnull on <self:SeparateCompilerVisitor>*/
279 { /* Inline model#MProperty#intro (var_a) on <var_a:MAttribute> */
280 var3
= var_a
->attrs
[COLOR_nitc__model__MProperty___intro
].val
; /* _intro on <var_a:MAttribute> */
281 if (unlikely(var3
== NULL
)) {
282 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
283 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1986);
291 { /* Inline model#MAttributeDef#static_mtype (var1) on <var1:MPropDef(MAttributeDef)> */
292 var6
= var1
->attrs
[COLOR_nitc__model__MAttributeDef___static_mtype
].val
; /* _static_mtype on <var1:MPropDef(MAttributeDef)> */
297 if (unlikely(var4
== NULL
)) {
298 PRINT_ERROR("Runtime error: %s", "Cast failed");
299 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1635);
304 { /* Inline model#MProperty#intro (var_a) on <var_a:MAttribute> */
305 var9
= var_a
->attrs
[COLOR_nitc__model__MProperty___intro
].val
; /* _intro on <var_a:MAttribute> */
306 if (unlikely(var9
== NULL
)) {
307 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
308 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1986);
316 { /* Inline model#MPropDef#mclassdef (var7) on <var7:MPropDef(MAttributeDef)> */
317 var12
= var7
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var7:MPropDef(MAttributeDef)> */
318 if (unlikely(var12
== NULL
)) {
319 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
320 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
327 var_intromclassdef
= var10
;
329 { /* Inline model#MClassDef#bound_mtype (var_intromclassdef) on <var_intromclassdef:MClassDef> */
330 var15
= var_intromclassdef
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_intromclassdef:MClassDef> */
331 if (unlikely(var15
== NULL
)) {
332 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
333 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
341 { /* Inline model#MClassDef#bound_mtype (var_intromclassdef) on <var_intromclassdef:MClassDef> */
342 var18
= var_intromclassdef
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_intromclassdef:MClassDef> */
343 if (unlikely(var18
== NULL
)) {
344 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
345 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
353 { /* Inline model#MClassDef#mmodule (var_intromclassdef) on <var_intromclassdef:MClassDef> */
354 var21
= var_intromclassdef
->attrs
[COLOR_nitc__model__MClassDef___mmodule
].val
; /* _mmodule on <var_intromclassdef:MClassDef> */
355 if (unlikely(var21
== NULL
)) {
356 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
357 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 573);
365 var22
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
, val
* p2
, short int p3
))(var_ret
->class->vft
[COLOR_nitc__model__MType__resolve_for
]))(var_ret
, var13
, var16
, var19
, 1); /* resolve_for on <var_ret:MType>*/
369 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
370 var25
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
371 if (unlikely(var25
== NULL
)) {
372 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
373 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
381 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var23) on <var23:AbstractCompiler(SeparateCompiler)> */
382 var28
= var23
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var23:AbstractCompiler(SeparateCompiler)> */
383 if (unlikely(var28
== NULL
)) {
384 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
385 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
393 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var26) on <var26:ModelBuilder> */
394 var31
= var26
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var26:ModelBuilder> */
395 if (unlikely(var31
== NULL
)) {
396 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
397 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
405 { /* Inline abstract_compiler#ToolContext#opt_isset_checks_metrics (var29) on <var29:ToolContext> */
406 var34
= var29
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_isset_checks_metrics
].val
; /* _opt_isset_checks_metrics on <var29:ToolContext> */
407 if (unlikely(var34
== NULL
)) {
408 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_isset_checks_metrics");
409 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 64);
417 { /* Inline opts#Option#value (var32) on <var32:OptionBool> */
418 var37
= var32
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var32:OptionBool> */
423 var38
= (short int)((long)(var35
)>>2);
426 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
427 var41
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
428 if (unlikely(var41
== NULL
)) {
429 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
430 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
439 { /* Inline separate_compiler#SeparateCompiler#attr_read_count (var_) on <var_:SeparateCompiler> */
440 var44
= var_
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___attr_read_count
].l
; /* _attr_read_count on <var_:SeparateCompiler> */
446 { /* Inline kernel#Int#+ (var42,1l) on <var42:Int> */
447 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
448 /* <1l:Int> isa OTHER */
449 var47
= 1; /* easy <1l:Int> isa OTHER*/
450 if (unlikely(!var47
)) {
451 var_class_name
= type_core__Int
.name
;
452 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
453 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
463 { /* Inline separate_compiler#SeparateCompiler#attr_read_count= (var_,var45) on <var_:SeparateCompiler> */
464 var_
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___attr_read_count
].l
= var45
; /* _attr_read_count on <var_:SeparateCompiler> */
468 if (likely(varonce
!=NULL
)) {
471 var51
= "count_attr_reads++;";
472 var52
= core__flat___NativeString___to_s_full(var51
, 19l, 19l);
477 nitc___nitc__AbstractCompilerVisitor___add(self
, var50
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
482 var53
= nitc__separate_compiler___MEntity___const_color(var_a
);
485 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var53
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
488 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
489 var56
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
490 if (unlikely(var56
== NULL
)) {
491 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
492 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
500 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var54) on <var54:AbstractCompiler(SeparateCompiler)> */
501 var59
= var54
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var54:AbstractCompiler(SeparateCompiler)> */
502 if (unlikely(var59
== NULL
)) {
503 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
504 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
512 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var57) on <var57:ModelBuilder> */
513 var62
= var57
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var57:ModelBuilder> */
514 if (unlikely(var62
== NULL
)) {
515 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
516 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
524 { /* Inline separate_compiler#ToolContext#opt_no_union_attribute (var60) on <var60:ToolContext> */
525 var65
= var60
->attrs
[COLOR_nitc__separate_compiler__ToolContext___opt_no_union_attribute
].val
; /* _opt_no_union_attribute on <var60:ToolContext> */
526 if (unlikely(var65
== NULL
)) {
527 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_union_attribute");
528 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 28);
536 { /* Inline opts#Option#value (var63) on <var63:OptionBool> */
537 var68
= var63
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var63:OptionBool> */
542 var69
= (short int)((long)(var66
)>>2);
545 var70
= nitc___nitc__AbstractCompilerVisitor___object_type(self
);
548 var71
= nitc___nitc__MType___as_nullable(var70
);
552 var72
= nitc___nitc__AbstractCompilerVisitor___new_var(self
, var_cret
);
556 { /* Inline abstract_compiler#RuntimeVariable#mcasttype= (var_res,var_ret) on <var_res:RuntimeVariable> */
557 var_res
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
= var_ret
; /* _mcasttype on <var_res:RuntimeVariable> */
561 if (unlikely(varonce74
==NULL
)) {
562 var75
= NEW_core__NativeArray(10l, &type_core__NativeArray__core__String
);
563 if (likely(varonce76
!=NULL
)) {
567 var79
= core__flat___NativeString___to_s_full(var78
, 3l, 3l);
571 ((struct instance_core__NativeArray
*)var75
)->values
[1]=var77
;
572 if (likely(varonce80
!=NULL
)) {
576 var83
= core__flat___NativeString___to_s_full(var82
, 8l, 8l);
580 ((struct instance_core__NativeArray
*)var75
)->values
[3]=var81
;
581 if (likely(varonce84
!=NULL
)) {
585 var87
= core__flat___NativeString___to_s_full(var86
, 6l, 6l);
589 ((struct instance_core__NativeArray
*)var75
)->values
[5]=var85
;
590 if (likely(varonce88
!=NULL
)) {
594 var91
= core__flat___NativeString___to_s_full(var90
, 4l, 4l);
598 ((struct instance_core__NativeArray
*)var75
)->values
[7]=var89
;
599 if (likely(varonce92
!=NULL
)) {
603 var95
= core__flat___NativeString___to_s_full(var94
, 3l, 3l);
607 ((struct instance_core__NativeArray
*)var75
)->values
[9]=var93
;
613 var96
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
615 ((struct instance_core__NativeArray
*)var75
)->values
[0]=var96
;
617 var97
= ((val
*(*)(val
* self
))(var_recv
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_recv
); /* to_s on <var_recv:RuntimeVariable>*/
619 ((struct instance_core__NativeArray
*)var75
)->values
[2]=var97
;
621 var98
= nitc__separate_compiler___MEntity___const_color(var_a
);
623 ((struct instance_core__NativeArray
*)var75
)->values
[4]=var98
;
625 var99
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
627 ((struct instance_core__NativeArray
*)var75
)->values
[6]=var99
;
629 var100
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_recv
);
631 ((struct instance_core__NativeArray
*)var75
)->values
[8]=var100
;
633 var101
= ((val
*(*)(val
* self
))(var75
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var75
); /* native_to_s on <var75:NativeArray[String]>*/
637 nitc___nitc__AbstractCompilerVisitor___add(self
, var101
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
639 /* <var_ret:MType> isa MNullableType */
640 cltype104
= type_nitc__MNullableType
.color
;
641 idtype105
= type_nitc__MNullableType
.id
;
642 if(cltype104
>= var_ret
->type
->table_size
) {
645 var103
= var_ret
->type
->type_table
[cltype104
] == idtype105
;
651 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
652 var110
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
653 if (unlikely(var110
== NULL
)) {
654 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
655 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
659 RET_LABEL109
:(void)0;
663 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var108) on <var108:AbstractCompiler(SeparateCompiler)> */
664 var113
= var108
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var108:AbstractCompiler(SeparateCompiler)> */
665 if (unlikely(var113
== NULL
)) {
666 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
667 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
671 RET_LABEL112
:(void)0;
675 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var111) on <var111:ModelBuilder> */
676 var116
= var111
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var111:ModelBuilder> */
677 if (unlikely(var116
== NULL
)) {
678 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
679 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
683 RET_LABEL115
:(void)0;
687 { /* Inline abstract_compiler#ToolContext#opt_no_check_attr_isset (var114) on <var114:ToolContext> */
688 var119
= var114
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_no_check_attr_isset
].val
; /* _opt_no_check_attr_isset on <var114:ToolContext> */
689 if (unlikely(var119
== NULL
)) {
690 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_check_attr_isset");
691 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 50);
695 RET_LABEL118
:(void)0;
699 { /* Inline opts#Option#value (var117) on <var117:OptionBool> */
700 var122
= var117
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var117:OptionBool> */
702 RET_LABEL121
:(void)0;
705 var123
= (short int)((long)(var120
)>>2);
712 if (unlikely(varonce125
==NULL
)) {
713 var126
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
714 if (likely(varonce127
!=NULL
)) {
717 var129
= "if (unlikely(";
718 var130
= core__flat___NativeString___to_s_full(var129
, 13l, 13l);
722 ((struct instance_core__NativeArray
*)var126
)->values
[0]=var128
;
723 if (likely(varonce131
!=NULL
)) {
726 var133
= " == NULL)) {";
727 var134
= core__flat___NativeString___to_s_full(var133
, 12l, 12l);
731 ((struct instance_core__NativeArray
*)var126
)->values
[2]=var132
;
737 var135
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
739 ((struct instance_core__NativeArray
*)var126
)->values
[1]=var135
;
741 var136
= ((val
*(*)(val
* self
))(var126
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var126
); /* native_to_s on <var126:NativeArray[String]>*/
745 nitc___nitc__AbstractCompilerVisitor___add(self
, var136
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
747 if (unlikely(varonce137
==NULL
)) {
748 var138
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
749 if (likely(varonce139
!=NULL
)) {
752 var141
= "Uninitialized attribute ";
753 var142
= core__flat___NativeString___to_s_full(var141
, 24l, 24l);
757 ((struct instance_core__NativeArray
*)var138
)->values
[0]=var140
;
763 { /* Inline model#MProperty#name (var_a) on <var_a:MAttribute> */
764 var145
= var_a
->attrs
[COLOR_nitc__model__MProperty___name
].val
; /* _name on <var_a:MAttribute> */
765 if (unlikely(var145
== NULL
)) {
766 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
767 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1951);
771 RET_LABEL144
:(void)0;
774 ((struct instance_core__NativeArray
*)var138
)->values
[1]=var143
;
776 var146
= ((val
*(*)(val
* self
))(var138
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var138
); /* native_to_s on <var138:NativeArray[String]>*/
780 nitc___nitc__AbstractCompilerVisitor___add_abort(self
, var146
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on <self:SeparateCompilerVisitor>*/
782 if (likely(varonce147
!=NULL
)) {
786 var150
= core__flat___NativeString___to_s_full(var149
, 1l, 1l);
791 nitc___nitc__AbstractCompilerVisitor___add(self
, var148
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
794 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
795 var153
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
796 if (unlikely(var153
== NULL
)) {
797 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
798 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
802 RET_LABEL152
:(void)0;
806 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var151) on <var151:AbstractCompiler(SeparateCompiler)> */
807 var156
= var151
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var151:AbstractCompiler(SeparateCompiler)> */
808 if (unlikely(var156
== NULL
)) {
809 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
810 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
814 RET_LABEL155
:(void)0;
818 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var154) on <var154:ModelBuilder> */
819 var159
= var154
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var154:ModelBuilder> */
820 if (unlikely(var159
== NULL
)) {
821 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
822 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
826 RET_LABEL158
:(void)0;
830 { /* Inline abstract_compiler#ToolContext#opt_isset_checks_metrics (var157) on <var157:ToolContext> */
831 var162
= var157
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_isset_checks_metrics
].val
; /* _opt_isset_checks_metrics on <var157:ToolContext> */
832 if (unlikely(var162
== NULL
)) {
833 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_isset_checks_metrics");
834 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 64);
838 RET_LABEL161
:(void)0;
842 { /* Inline opts#Option#value (var160) on <var160:OptionBool> */
843 var165
= var160
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var160:OptionBool> */
845 RET_LABEL164
:(void)0;
848 var166
= (short int)((long)(var163
)>>2);
851 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
852 var169
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
853 if (unlikely(var169
== NULL
)) {
854 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
855 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
859 RET_LABEL168
:(void)0;
864 { /* Inline separate_compiler#SeparateCompiler#isset_checks_count (var_170) on <var_170:SeparateCompiler> */
865 var173
= var_170
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___isset_checks_count
].l
; /* _isset_checks_count on <var_170:SeparateCompiler> */
867 RET_LABEL172
:(void)0;
871 { /* Inline kernel#Int#+ (var171,1l) on <var171:Int> */
872 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
873 /* <1l:Int> isa OTHER */
874 var176
= 1; /* easy <1l:Int> isa OTHER*/
875 if (unlikely(!var176
)) {
876 var_class_name179
= type_core__Int
.name
;
877 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name179
);
878 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
881 var180
= var171
+ 1l;
884 RET_LABEL175
:(void)0;
888 { /* Inline separate_compiler#SeparateCompiler#isset_checks_count= (var_170,var174) on <var_170:SeparateCompiler> */
889 var_170
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___isset_checks_count
].l
= var174
; /* _isset_checks_count on <var_170:SeparateCompiler> */
890 RET_LABEL181
:(void)0;
893 if (likely(varonce182
!=NULL
)) {
896 var184
= "count_isset_checks++;";
897 var185
= core__flat___NativeString___to_s_full(var184
, 21l, 21l);
902 nitc___nitc__AbstractCompilerVisitor___add(self
, var183
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
909 var186
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__autobox(self
, var_res
, var_ret
);
915 var187
= nitc___nitc__AbstractCompilerVisitor___new_var(self
, var_ret
);
918 if (unlikely(varonce189
==NULL
)) {
919 var190
= NEW_core__NativeArray(12l, &type_core__NativeArray__core__String
);
920 if (likely(varonce191
!=NULL
)) {
924 var194
= core__flat___NativeString___to_s_full(var193
, 3l, 3l);
928 ((struct instance_core__NativeArray
*)var190
)->values
[1]=var192
;
929 if (likely(varonce195
!=NULL
)) {
933 var198
= core__flat___NativeString___to_s_full(var197
, 8l, 8l);
937 ((struct instance_core__NativeArray
*)var190
)->values
[3]=var196
;
938 if (likely(varonce199
!=NULL
)) {
942 var202
= core__flat___NativeString___to_s_full(var201
, 2l, 2l);
946 ((struct instance_core__NativeArray
*)var190
)->values
[5]=var200
;
947 if (likely(varonce203
!=NULL
)) {
951 var206
= core__flat___NativeString___to_s_full(var205
, 5l, 5l);
955 ((struct instance_core__NativeArray
*)var190
)->values
[7]=var204
;
956 if (likely(varonce207
!=NULL
)) {
960 var210
= core__flat___NativeString___to_s_full(var209
, 4l, 4l);
964 ((struct instance_core__NativeArray
*)var190
)->values
[9]=var208
;
965 if (likely(varonce211
!=NULL
)) {
969 var214
= core__flat___NativeString___to_s_full(var213
, 3l, 3l);
973 ((struct instance_core__NativeArray
*)var190
)->values
[11]=var212
;
979 var215
= ((val
*(*)(val
* self
))(var_res188
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res188
); /* to_s on <var_res188:RuntimeVariable>*/
981 ((struct instance_core__NativeArray
*)var190
)->values
[0]=var215
;
983 var216
= ((val
*(*)(val
* self
))(var_recv
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_recv
); /* to_s on <var_recv:RuntimeVariable>*/
985 ((struct instance_core__NativeArray
*)var190
)->values
[2]=var216
;
987 var217
= nitc__separate_compiler___MEntity___const_color(var_a
);
989 ((struct instance_core__NativeArray
*)var190
)->values
[4]=var217
;
991 var218
= ((val
*(*)(val
* self
))(var_ret
->class->vft
[COLOR_nitc__abstract_compiler__MType__ctypename
]))(var_ret
); /* ctypename on <var_ret:MType>*/
993 ((struct instance_core__NativeArray
*)var190
)->values
[6]=var218
;
995 var219
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
997 ((struct instance_core__NativeArray
*)var190
)->values
[8]=var219
;
999 var220
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_recv
);
1001 ((struct instance_core__NativeArray
*)var190
)->values
[10]=var220
;
1003 var221
= ((val
*(*)(val
* self
))(var190
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var190
); /* native_to_s on <var190:NativeArray[String]>*/
1005 varonce189
= var190
;
1007 nitc___nitc__AbstractCompilerVisitor___add(self
, var221
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1010 var224
= ((short int(*)(val
* self
))(var_ret
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var_ret
); /* is_c_primitive on <var_ret:MType>*/
1015 /* <var_ret:MType> isa MNullableType */
1016 cltype228
= type_nitc__MNullableType
.color
;
1017 idtype229
= type_nitc__MNullableType
.id
;
1018 if(cltype228
>= var_ret
->type
->table_size
) {
1021 var227
= var_ret
->type
->type_table
[cltype228
] == idtype229
;
1031 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
1032 var234
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
1033 if (unlikely(var234
== NULL
)) {
1034 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1035 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1039 RET_LABEL233
:(void)0;
1043 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var232) on <var232:AbstractCompiler(SeparateCompiler)> */
1044 var237
= var232
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var232:AbstractCompiler(SeparateCompiler)> */
1045 if (unlikely(var237
== NULL
)) {
1046 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
1047 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
1051 RET_LABEL236
:(void)0;
1055 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var235) on <var235:ModelBuilder> */
1056 var240
= var235
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var235:ModelBuilder> */
1057 if (unlikely(var240
== NULL
)) {
1058 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1059 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
1063 RET_LABEL239
:(void)0;
1067 { /* Inline abstract_compiler#ToolContext#opt_no_check_attr_isset (var238) on <var238:ToolContext> */
1068 var243
= var238
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_no_check_attr_isset
].val
; /* _opt_no_check_attr_isset on <var238:ToolContext> */
1069 if (unlikely(var243
== NULL
)) {
1070 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_check_attr_isset");
1071 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 50);
1075 RET_LABEL242
:(void)0;
1079 { /* Inline opts#Option#value (var241) on <var241:OptionBool> */
1080 var246
= var241
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var241:OptionBool> */
1082 RET_LABEL245
:(void)0;
1085 var247
= (short int)((long)(var244
)>>2);
1092 if (unlikely(varonce249
==NULL
)) {
1093 var250
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1094 if (likely(varonce251
!=NULL
)) {
1095 var252
= varonce251
;
1097 var253
= "if (unlikely(";
1098 var254
= core__flat___NativeString___to_s_full(var253
, 13l, 13l);
1100 varonce251
= var252
;
1102 ((struct instance_core__NativeArray
*)var250
)->values
[0]=var252
;
1103 if (likely(varonce255
!=NULL
)) {
1104 var256
= varonce255
;
1106 var257
= " == NULL)) {";
1107 var258
= core__flat___NativeString___to_s_full(var257
, 12l, 12l);
1109 varonce255
= var256
;
1111 ((struct instance_core__NativeArray
*)var250
)->values
[2]=var256
;
1113 var250
= varonce249
;
1117 var259
= ((val
*(*)(val
* self
))(var_res188
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res188
); /* to_s on <var_res188:RuntimeVariable>*/
1119 ((struct instance_core__NativeArray
*)var250
)->values
[1]=var259
;
1121 var260
= ((val
*(*)(val
* self
))(var250
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var250
); /* native_to_s on <var250:NativeArray[String]>*/
1123 varonce249
= var250
;
1125 nitc___nitc__AbstractCompilerVisitor___add(self
, var260
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1127 if (unlikely(varonce261
==NULL
)) {
1128 var262
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
1129 if (likely(varonce263
!=NULL
)) {
1130 var264
= varonce263
;
1132 var265
= "Uninitialized attribute ";
1133 var266
= core__flat___NativeString___to_s_full(var265
, 24l, 24l);
1135 varonce263
= var264
;
1137 ((struct instance_core__NativeArray
*)var262
)->values
[0]=var264
;
1139 var262
= varonce261
;
1143 { /* Inline model#MProperty#name (var_a) on <var_a:MAttribute> */
1144 var269
= var_a
->attrs
[COLOR_nitc__model__MProperty___name
].val
; /* _name on <var_a:MAttribute> */
1145 if (unlikely(var269
== NULL
)) {
1146 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1147 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1951);
1151 RET_LABEL268
:(void)0;
1154 ((struct instance_core__NativeArray
*)var262
)->values
[1]=var267
;
1156 var270
= ((val
*(*)(val
* self
))(var262
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var262
); /* native_to_s on <var262:NativeArray[String]>*/
1158 varonce261
= var262
;
1160 nitc___nitc__AbstractCompilerVisitor___add_abort(self
, var270
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on <self:SeparateCompilerVisitor>*/
1162 if (likely(varonce271
!=NULL
)) {
1163 var272
= varonce271
;
1166 var274
= core__flat___NativeString___to_s_full(var273
, 1l, 1l);
1168 varonce271
= var272
;
1171 nitc___nitc__AbstractCompilerVisitor___add(self
, var272
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1174 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
1175 var277
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
1176 if (unlikely(var277
== NULL
)) {
1177 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1178 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1182 RET_LABEL276
:(void)0;
1186 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var275) on <var275:AbstractCompiler(SeparateCompiler)> */
1187 var280
= var275
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var275:AbstractCompiler(SeparateCompiler)> */
1188 if (unlikely(var280
== NULL
)) {
1189 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
1190 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
1194 RET_LABEL279
:(void)0;
1198 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var278) on <var278:ModelBuilder> */
1199 var283
= var278
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var278:ModelBuilder> */
1200 if (unlikely(var283
== NULL
)) {
1201 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1202 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
1206 RET_LABEL282
:(void)0;
1210 { /* Inline abstract_compiler#ToolContext#opt_isset_checks_metrics (var281) on <var281:ToolContext> */
1211 var286
= var281
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_isset_checks_metrics
].val
; /* _opt_isset_checks_metrics on <var281:ToolContext> */
1212 if (unlikely(var286
== NULL
)) {
1213 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_isset_checks_metrics");
1214 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 64);
1218 RET_LABEL285
:(void)0;
1222 { /* Inline opts#Option#value (var284) on <var284:OptionBool> */
1223 var289
= var284
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var284:OptionBool> */
1225 RET_LABEL288
:(void)0;
1228 var290
= (short int)((long)(var287
)>>2);
1231 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
1232 var293
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
1233 if (unlikely(var293
== NULL
)) {
1234 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1235 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1239 RET_LABEL292
:(void)0;
1244 { /* Inline separate_compiler#SeparateCompiler#isset_checks_count (var_294) on <var_294:SeparateCompiler> */
1245 var297
= var_294
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___isset_checks_count
].l
; /* _isset_checks_count on <var_294:SeparateCompiler> */
1247 RET_LABEL296
:(void)0;
1251 { /* Inline kernel#Int#+ (var295,1l) on <var295:Int> */
1252 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
1253 /* <1l:Int> isa OTHER */
1254 var300
= 1; /* easy <1l:Int> isa OTHER*/
1255 if (unlikely(!var300
)) {
1256 var_class_name303
= type_core__Int
.name
;
1257 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name303
);
1258 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
1261 var304
= var295
+ 1l;
1264 RET_LABEL299
:(void)0;
1268 { /* Inline separate_compiler#SeparateCompiler#isset_checks_count= (var_294,var298) on <var_294:SeparateCompiler> */
1269 var_294
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___isset_checks_count
].l
= var298
; /* _isset_checks_count on <var_294:SeparateCompiler> */
1270 RET_LABEL305
:(void)0;
1273 if (likely(varonce306
!=NULL
)) {
1274 var307
= varonce306
;
1276 var308
= "count_isset_checks++;";
1277 var309
= core__flat___NativeString___to_s_full(var308
, 21l, 21l);
1279 varonce306
= var307
;
1282 nitc___nitc__AbstractCompilerVisitor___add(self
, var307
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1294 /* method separate_compiler#SeparateCompilerVisitor#write_attribute for (self: SeparateCompilerVisitor, MAttribute, RuntimeVariable, RuntimeVariable) */
1295 void nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__write_attribute(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
1296 val
* var_a
/* var a: MAttribute */;
1297 val
* var_recv
/* var recv: RuntimeVariable */;
1298 val
* var_value
/* var value: RuntimeVariable */;
1299 val
* var
/* : MPropDef */;
1300 val
* var2
/* : MPropDef */;
1301 val
* var3
/* : nullable MType */;
1302 val
* var5
/* : nullable MType */;
1303 val
* var_mtype
/* var mtype: MType */;
1304 val
* var6
/* : MPropDef */;
1305 val
* var8
/* : MPropDef */;
1306 val
* var9
/* : MClassDef */;
1307 val
* var11
/* : MClassDef */;
1308 val
* var_intromclassdef
/* var intromclassdef: MClassDef */;
1309 val
* var12
/* : MClassType */;
1310 val
* var14
/* : MClassType */;
1311 val
* var15
/* : MClassType */;
1312 val
* var17
/* : MClassType */;
1313 val
* var18
/* : MModule */;
1314 val
* var20
/* : MModule */;
1315 val
* var21
/* : MType */;
1316 val
* var22
/* : RuntimeVariable */;
1317 val
* var23
/* : String */;
1318 val
* var24
/* : AbstractCompiler */;
1319 val
* var26
/* : AbstractCompiler */;
1320 val
* var27
/* : ModelBuilder */;
1321 val
* var29
/* : ModelBuilder */;
1322 val
* var30
/* : ToolContext */;
1323 val
* var32
/* : ToolContext */;
1324 val
* var33
/* : OptionBool */;
1325 val
* var35
/* : OptionBool */;
1326 val
* var36
/* : nullable Object */;
1327 val
* var38
/* : nullable Object */;
1328 short int var39
/* : Bool */;
1329 val
* var40
/* : NativeArray[String] */;
1330 static val
* varonce
;
1331 static val
* varonce41
;
1332 val
* var42
/* : String */;
1333 char* var43
/* : NativeString */;
1334 val
* var44
/* : String */;
1335 static val
* varonce45
;
1336 val
* var46
/* : String */;
1337 char* var47
/* : NativeString */;
1338 val
* var48
/* : String */;
1339 val
* var49
/* : String */;
1340 val
* var50
/* : String */;
1341 val
* var51
/* : String */;
1342 val
* var_attr
/* var attr: String */;
1343 short int var52
/* : Bool */;
1344 short int var54
/* : Bool */;
1345 val
* var55
/* : AbstractCompiler */;
1346 val
* var57
/* : AbstractCompiler */;
1347 val
* var58
/* : MModule */;
1348 val
* var60
/* : MModule */;
1349 val
* var61
/* : MClassType */;
1350 val
* var62
/* : RuntimeVariable */;
1351 val
* var_tv
/* var tv: RuntimeVariable */;
1352 val
* var64
/* : NativeArray[String] */;
1353 static val
* varonce63
;
1354 static val
* varonce65
;
1355 val
* var66
/* : String */;
1356 char* var67
/* : NativeString */;
1357 val
* var68
/* : String */;
1358 static val
* varonce69
;
1359 val
* var70
/* : String */;
1360 char* var71
/* : NativeString */;
1361 val
* var72
/* : String */;
1362 static val
* varonce73
;
1363 val
* var74
/* : String */;
1364 char* var75
/* : NativeString */;
1365 val
* var76
/* : String */;
1366 static val
* varonce77
;
1367 val
* var78
/* : String */;
1368 char* var79
/* : NativeString */;
1369 val
* var80
/* : String */;
1370 val
* var81
/* : String */;
1371 val
* var82
/* : String */;
1372 val
* var83
/* : String */;
1373 val
* var84
/* : String */;
1374 short int var85
/* : Bool */;
1375 short int var86
/* : Bool */;
1378 val
* var88
/* : NativeArray[String] */;
1379 static val
* varonce87
;
1380 static val
* varonce89
;
1381 val
* var90
/* : String */;
1382 char* var91
/* : NativeString */;
1383 val
* var92
/* : String */;
1384 static val
* varonce93
;
1385 val
* var94
/* : String */;
1386 char* var95
/* : NativeString */;
1387 val
* var96
/* : String */;
1388 val
* var97
/* : String */;
1389 val
* var99
/* : NativeArray[String] */;
1390 static val
* varonce98
;
1391 static val
* varonce100
;
1392 val
* var101
/* : String */;
1393 char* var102
/* : NativeString */;
1394 val
* var103
/* : String */;
1395 static val
* varonce104
;
1396 val
* var105
/* : String */;
1397 char* var106
/* : NativeString */;
1398 val
* var107
/* : String */;
1399 static val
* varonce108
;
1400 val
* var109
/* : String */;
1401 char* var110
/* : NativeString */;
1402 val
* var111
/* : String */;
1403 static val
* varonce112
;
1404 val
* var113
/* : String */;
1405 char* var114
/* : NativeString */;
1406 val
* var115
/* : String */;
1407 static val
* varonce116
;
1408 val
* var117
/* : String */;
1409 char* var118
/* : NativeString */;
1410 val
* var119
/* : String */;
1411 static val
* varonce120
;
1412 val
* var121
/* : String */;
1413 char* var122
/* : NativeString */;
1414 val
* var123
/* : String */;
1415 val
* var124
/* : String */;
1416 val
* var125
/* : String */;
1417 val
* var126
/* : String */;
1418 val
* var127
/* : String */;
1419 val
* var128
/* : String */;
1420 static val
* varonce129
;
1421 val
* var130
/* : String */;
1422 char* var131
/* : NativeString */;
1423 val
* var132
/* : String */;
1424 val
* var133
/* : MClassType */;
1425 val
* var134
/* : MType */;
1426 val
* var135
/* : RuntimeVariable */;
1427 val
* var137
/* : NativeArray[String] */;
1428 static val
* varonce136
;
1429 static val
* varonce138
;
1430 val
* var139
/* : String */;
1431 char* var140
/* : NativeString */;
1432 val
* var141
/* : String */;
1433 static val
* varonce142
;
1434 val
* var143
/* : String */;
1435 char* var144
/* : NativeString */;
1436 val
* var145
/* : String */;
1437 static val
* varonce146
;
1438 val
* var147
/* : String */;
1439 char* var148
/* : NativeString */;
1440 val
* var149
/* : String */;
1441 static val
* varonce150
;
1442 val
* var151
/* : String */;
1443 char* var152
/* : NativeString */;
1444 val
* var153
/* : String */;
1445 val
* var154
/* : String */;
1446 val
* var155
/* : String */;
1447 val
* var156
/* : String */;
1448 val
* var157
/* : String */;
1449 static val
* varonce158
;
1450 val
* var159
/* : String */;
1451 char* var160
/* : NativeString */;
1452 val
* var161
/* : String */;
1453 val
* var163
/* : NativeArray[String] */;
1454 static val
* varonce162
;
1455 static val
* varonce164
;
1456 val
* var165
/* : String */;
1457 char* var166
/* : NativeString */;
1458 val
* var167
/* : String */;
1459 static val
* varonce168
;
1460 val
* var169
/* : String */;
1461 char* var170
/* : NativeString */;
1462 val
* var171
/* : String */;
1463 static val
* varonce172
;
1464 val
* var173
/* : String */;
1465 char* var174
/* : NativeString */;
1466 val
* var175
/* : String */;
1467 static val
* varonce176
;
1468 val
* var177
/* : String */;
1469 char* var178
/* : NativeString */;
1470 val
* var179
/* : String */;
1471 val
* var180
/* : String */;
1472 val
* var181
/* : String */;
1473 val
* var182
/* : String */;
1474 val
* var183
/* : String */;
1475 val
* var185
/* : NativeArray[String] */;
1476 static val
* varonce184
;
1477 static val
* varonce186
;
1478 val
* var187
/* : String */;
1479 char* var188
/* : NativeString */;
1480 val
* var189
/* : String */;
1481 static val
* varonce190
;
1482 val
* var191
/* : String */;
1483 char* var192
/* : NativeString */;
1484 val
* var193
/* : String */;
1485 static val
* varonce194
;
1486 val
* var195
/* : String */;
1487 char* var196
/* : NativeString */;
1488 val
* var197
/* : String */;
1489 static val
* varonce198
;
1490 val
* var199
/* : String */;
1491 char* var200
/* : NativeString */;
1492 val
* var201
/* : String */;
1493 static val
* varonce202
;
1494 val
* var203
/* : String */;
1495 char* var204
/* : NativeString */;
1496 val
* var205
/* : String */;
1497 static val
* varonce206
;
1498 val
* var207
/* : String */;
1499 char* var208
/* : NativeString */;
1500 val
* var209
/* : String */;
1501 val
* var210
/* : String */;
1502 val
* var211
/* : String */;
1503 val
* var212
/* : String */;
1504 val
* var213
/* : String */;
1505 val
* var214
/* : String */;
1506 val
* var215
/* : String */;
1507 val
* var216
/* : String */;
1512 nitc___nitc__AbstractCompilerVisitor___check_recv_notnull(self
, var_recv
); /* Direct call abstract_compiler#AbstractCompilerVisitor#check_recv_notnull on <self:SeparateCompilerVisitor>*/
1515 { /* Inline model#MProperty#intro (var_a) on <var_a:MAttribute> */
1516 var2
= var_a
->attrs
[COLOR_nitc__model__MProperty___intro
].val
; /* _intro on <var_a:MAttribute> */
1517 if (unlikely(var2
== NULL
)) {
1518 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
1519 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1986);
1527 { /* Inline model#MAttributeDef#static_mtype (var) on <var:MPropDef(MAttributeDef)> */
1528 var5
= var
->attrs
[COLOR_nitc__model__MAttributeDef___static_mtype
].val
; /* _static_mtype on <var:MPropDef(MAttributeDef)> */
1533 if (unlikely(var3
== NULL
)) {
1534 PRINT_ERROR("Runtime error: %s", "Cast failed");
1535 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1692);
1540 { /* Inline model#MProperty#intro (var_a) on <var_a:MAttribute> */
1541 var8
= var_a
->attrs
[COLOR_nitc__model__MProperty___intro
].val
; /* _intro on <var_a:MAttribute> */
1542 if (unlikely(var8
== NULL
)) {
1543 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
1544 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1986);
1552 { /* Inline model#MPropDef#mclassdef (var6) on <var6:MPropDef(MAttributeDef)> */
1553 var11
= var6
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var6:MPropDef(MAttributeDef)> */
1554 if (unlikely(var11
== NULL
)) {
1555 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1556 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
1560 RET_LABEL10
:(void)0;
1563 var_intromclassdef
= var9
;
1565 { /* Inline model#MClassDef#bound_mtype (var_intromclassdef) on <var_intromclassdef:MClassDef> */
1566 var14
= var_intromclassdef
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_intromclassdef:MClassDef> */
1567 if (unlikely(var14
== NULL
)) {
1568 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
1569 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
1573 RET_LABEL13
:(void)0;
1577 { /* Inline model#MClassDef#bound_mtype (var_intromclassdef) on <var_intromclassdef:MClassDef> */
1578 var17
= var_intromclassdef
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_intromclassdef:MClassDef> */
1579 if (unlikely(var17
== NULL
)) {
1580 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
1581 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
1585 RET_LABEL16
:(void)0;
1589 { /* Inline model#MClassDef#mmodule (var_intromclassdef) on <var_intromclassdef:MClassDef> */
1590 var20
= var_intromclassdef
->attrs
[COLOR_nitc__model__MClassDef___mmodule
].val
; /* _mmodule on <var_intromclassdef:MClassDef> */
1591 if (unlikely(var20
== NULL
)) {
1592 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1593 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 573);
1597 RET_LABEL19
:(void)0;
1601 var21
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
, val
* p2
, short int p3
))(var_mtype
->class->vft
[COLOR_nitc__model__MType__resolve_for
]))(var_mtype
, var12
, var15
, var18
, 1); /* resolve_for on <var_mtype:MType>*/
1605 var22
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__autobox(self
, var_value
, var_mtype
);
1609 var23
= nitc__separate_compiler___MEntity___const_color(var_a
);
1612 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var23
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
1615 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
1616 var26
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
1617 if (unlikely(var26
== NULL
)) {
1618 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1619 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1623 RET_LABEL25
:(void)0;
1627 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var24) on <var24:AbstractCompiler(SeparateCompiler)> */
1628 var29
= var24
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var24:AbstractCompiler(SeparateCompiler)> */
1629 if (unlikely(var29
== NULL
)) {
1630 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
1631 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
1635 RET_LABEL28
:(void)0;
1639 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var27) on <var27:ModelBuilder> */
1640 var32
= var27
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var27:ModelBuilder> */
1641 if (unlikely(var32
== NULL
)) {
1642 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1643 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
1647 RET_LABEL31
:(void)0;
1651 { /* Inline separate_compiler#ToolContext#opt_no_union_attribute (var30) on <var30:ToolContext> */
1652 var35
= var30
->attrs
[COLOR_nitc__separate_compiler__ToolContext___opt_no_union_attribute
].val
; /* _opt_no_union_attribute on <var30:ToolContext> */
1653 if (unlikely(var35
== NULL
)) {
1654 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_union_attribute");
1655 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 28);
1659 RET_LABEL34
:(void)0;
1663 { /* Inline opts#Option#value (var33) on <var33:OptionBool> */
1664 var38
= var33
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var33:OptionBool> */
1666 RET_LABEL37
:(void)0;
1669 var39
= (short int)((long)(var36
)>>2);
1671 if (unlikely(varonce
==NULL
)) {
1672 var40
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
1673 if (likely(varonce41
!=NULL
)) {
1677 var44
= core__flat___NativeString___to_s_full(var43
, 8l, 8l);
1681 ((struct instance_core__NativeArray
*)var40
)->values
[1]=var42
;
1682 if (likely(varonce45
!=NULL
)) {
1686 var48
= core__flat___NativeString___to_s_full(var47
, 1l, 1l);
1690 ((struct instance_core__NativeArray
*)var40
)->values
[3]=var46
;
1696 var49
= ((val
*(*)(val
* self
))(var_recv
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_recv
); /* to_s on <var_recv:RuntimeVariable>*/
1698 ((struct instance_core__NativeArray
*)var40
)->values
[0]=var49
;
1700 var50
= nitc__separate_compiler___MEntity___const_color(var_a
);
1702 ((struct instance_core__NativeArray
*)var40
)->values
[2]=var50
;
1704 var51
= ((val
*(*)(val
* self
))(var40
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var40
); /* native_to_s on <var40:NativeArray[String]>*/
1709 { /* Inline separate_compiler#MType#is_tagged (var_mtype) on <var_mtype:MType> */
1710 var54
= var_mtype
->attrs
[COLOR_nitc__separate_compiler__MType___is_tagged
].s
; /* _is_tagged on <var_mtype:MType> */
1712 RET_LABEL53
:(void)0;
1717 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
1718 var57
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
1719 if (unlikely(var57
== NULL
)) {
1720 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1721 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
1725 RET_LABEL56
:(void)0;
1729 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var55) on <var55:AbstractCompiler(SeparateCompiler)> */
1730 var60
= var55
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var55:AbstractCompiler(SeparateCompiler)> */
1731 if (unlikely(var60
== NULL
)) {
1732 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
1733 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 531);
1737 RET_LABEL59
:(void)0;
1741 var61
= nitc__model___MModule___object_type(var58
);
1744 var62
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__autobox(self
, var_value
, var61
);
1747 if (unlikely(varonce63
==NULL
)) {
1748 var64
= NEW_core__NativeArray(8l, &type_core__NativeArray__core__String
);
1749 if (likely(varonce65
!=NULL
)) {
1753 var68
= core__flat___NativeString___to_s_full(var67
, 3l, 3l);
1757 ((struct instance_core__NativeArray
*)var64
)->values
[1]=var66
;
1758 if (likely(varonce69
!=NULL
)) {
1762 var72
= core__flat___NativeString___to_s_full(var71
, 5l, 5l);
1766 ((struct instance_core__NativeArray
*)var64
)->values
[3]=var70
;
1767 if (likely(varonce73
!=NULL
)) {
1771 var76
= core__flat___NativeString___to_s_full(var75
, 4l, 4l);
1775 ((struct instance_core__NativeArray
*)var64
)->values
[5]=var74
;
1776 if (likely(varonce77
!=NULL
)) {
1780 var80
= core__flat___NativeString___to_s_full(var79
, 3l, 3l);
1784 ((struct instance_core__NativeArray
*)var64
)->values
[7]=var78
;
1789 ((struct instance_core__NativeArray
*)var64
)->values
[0]=var_attr
;
1791 var81
= ((val
*(*)(val
* self
))(var_tv
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_tv
); /* to_s on <var_tv:RuntimeVariable>*/
1793 ((struct instance_core__NativeArray
*)var64
)->values
[2]=var81
;
1795 var82
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
1797 ((struct instance_core__NativeArray
*)var64
)->values
[4]=var82
;
1799 var83
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_recv
);
1801 ((struct instance_core__NativeArray
*)var64
)->values
[6]=var83
;
1803 var84
= ((val
*(*)(val
* self
))(var64
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var64
); /* native_to_s on <var64:NativeArray[String]>*/
1807 nitc___nitc__AbstractCompilerVisitor___add(self
, var84
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1811 var85
= ((short int(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var_mtype
); /* is_c_primitive on <var_mtype:MType>*/
1814 /* <var_mtype:MType> isa MClassType */
1815 cltype
= type_nitc__MClassType
.color
;
1816 idtype
= type_nitc__MClassType
.id
;
1817 if(cltype
>= var_mtype
->type
->table_size
) {
1820 var86
= var_mtype
->type
->type_table
[cltype
] == idtype
;
1822 if (unlikely(!var86
)) {
1823 PRINT_ERROR("Runtime error: %s", "Assert failed");
1824 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1707);
1827 if (unlikely(varonce87
==NULL
)) {
1828 var88
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1829 if (likely(varonce89
!=NULL
)) {
1833 var92
= core__flat___NativeString___to_s_full(var91
, 4l, 4l);
1837 ((struct instance_core__NativeArray
*)var88
)->values
[0]=var90
;
1838 if (likely(varonce93
!=NULL
)) {
1841 var95
= " != NULL) {";
1842 var96
= core__flat___NativeString___to_s_full(var95
, 11l, 11l);
1846 ((struct instance_core__NativeArray
*)var88
)->values
[2]=var94
;
1851 ((struct instance_core__NativeArray
*)var88
)->values
[1]=var_attr
;
1853 var97
= ((val
*(*)(val
* self
))(var88
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var88
); /* native_to_s on <var88:NativeArray[String]>*/
1857 nitc___nitc__AbstractCompilerVisitor___add(self
, var97
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1859 if (unlikely(varonce98
==NULL
)) {
1860 var99
= NEW_core__NativeArray(11l, &type_core__NativeArray__core__String
);
1861 if (likely(varonce100
!=NULL
)) {
1862 var101
= varonce100
;
1864 var102
= "((struct instance_";
1865 var103
= core__flat___NativeString___to_s_full(var102
, 18l, 18l);
1867 varonce100
= var101
;
1869 ((struct instance_core__NativeArray
*)var99
)->values
[0]=var101
;
1870 if (likely(varonce104
!=NULL
)) {
1871 var105
= varonce104
;
1874 var107
= core__flat___NativeString___to_s_full(var106
, 2l, 2l);
1876 varonce104
= var105
;
1878 ((struct instance_core__NativeArray
*)var99
)->values
[2]=var105
;
1879 if (likely(varonce108
!=NULL
)) {
1880 var109
= varonce108
;
1882 var110
= ")->value = ";
1883 var111
= core__flat___NativeString___to_s_full(var110
, 11l, 11l);
1885 varonce108
= var109
;
1887 ((struct instance_core__NativeArray
*)var99
)->values
[4]=var109
;
1888 if (likely(varonce112
!=NULL
)) {
1889 var113
= varonce112
;
1892 var115
= core__flat___NativeString___to_s_full(var114
, 5l, 5l);
1894 varonce112
= var113
;
1896 ((struct instance_core__NativeArray
*)var99
)->values
[6]=var113
;
1897 if (likely(varonce116
!=NULL
)) {
1898 var117
= varonce116
;
1901 var119
= core__flat___NativeString___to_s_full(var118
, 4l, 4l);
1903 varonce116
= var117
;
1905 ((struct instance_core__NativeArray
*)var99
)->values
[8]=var117
;
1906 if (likely(varonce120
!=NULL
)) {
1907 var121
= varonce120
;
1910 var123
= core__flat___NativeString___to_s_full(var122
, 3l, 3l);
1912 varonce120
= var121
;
1914 ((struct instance_core__NativeArray
*)var99
)->values
[10]=var121
;
1920 var124
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType(MClassType)>*/
1922 ((struct instance_core__NativeArray
*)var99
)->values
[1]=var124
;
1923 ((struct instance_core__NativeArray
*)var99
)->values
[3]=var_attr
;
1925 var125
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
1927 ((struct instance_core__NativeArray
*)var99
)->values
[5]=var125
;
1929 var126
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
1931 ((struct instance_core__NativeArray
*)var99
)->values
[7]=var126
;
1933 var127
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_recv
);
1935 ((struct instance_core__NativeArray
*)var99
)->values
[9]=var127
;
1937 var128
= ((val
*(*)(val
* self
))(var99
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var99
); /* native_to_s on <var99:NativeArray[String]>*/
1941 nitc___nitc__AbstractCompilerVisitor___add(self
, var128
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1943 if (likely(varonce129
!=NULL
)) {
1944 var130
= varonce129
;
1946 var131
= "} else {";
1947 var132
= core__flat___NativeString___to_s_full(var131
, 8l, 8l);
1949 varonce129
= var130
;
1952 nitc___nitc__AbstractCompilerVisitor___add(self
, var130
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1955 var133
= nitc___nitc__AbstractCompilerVisitor___object_type(self
);
1958 var134
= nitc___nitc__MType___as_nullable(var133
);
1961 var135
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__autobox(self
, var_value
, var134
);
1964 if (unlikely(varonce136
==NULL
)) {
1965 var137
= NEW_core__NativeArray(8l, &type_core__NativeArray__core__String
);
1966 if (likely(varonce138
!=NULL
)) {
1967 var139
= varonce138
;
1970 var141
= core__flat___NativeString___to_s_full(var140
, 3l, 3l);
1972 varonce138
= var139
;
1974 ((struct instance_core__NativeArray
*)var137
)->values
[1]=var139
;
1975 if (likely(varonce142
!=NULL
)) {
1976 var143
= varonce142
;
1979 var145
= core__flat___NativeString___to_s_full(var144
, 5l, 5l);
1981 varonce142
= var143
;
1983 ((struct instance_core__NativeArray
*)var137
)->values
[3]=var143
;
1984 if (likely(varonce146
!=NULL
)) {
1985 var147
= varonce146
;
1988 var149
= core__flat___NativeString___to_s_full(var148
, 4l, 4l);
1990 varonce146
= var147
;
1992 ((struct instance_core__NativeArray
*)var137
)->values
[5]=var147
;
1993 if (likely(varonce150
!=NULL
)) {
1994 var151
= varonce150
;
1997 var153
= core__flat___NativeString___to_s_full(var152
, 3l, 3l);
1999 varonce150
= var151
;
2001 ((struct instance_core__NativeArray
*)var137
)->values
[7]=var151
;
2003 var137
= varonce136
;
2006 ((struct instance_core__NativeArray
*)var137
)->values
[0]=var_attr
;
2008 var154
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
2010 ((struct instance_core__NativeArray
*)var137
)->values
[2]=var154
;
2012 var155
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
2014 ((struct instance_core__NativeArray
*)var137
)->values
[4]=var155
;
2016 var156
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_recv
);
2018 ((struct instance_core__NativeArray
*)var137
)->values
[6]=var156
;
2020 var157
= ((val
*(*)(val
* self
))(var137
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var137
); /* native_to_s on <var137:NativeArray[String]>*/
2022 varonce136
= var137
;
2024 nitc___nitc__AbstractCompilerVisitor___add(self
, var157
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2026 if (likely(varonce158
!=NULL
)) {
2027 var159
= varonce158
;
2030 var161
= core__flat___NativeString___to_s_full(var160
, 1l, 1l);
2032 varonce158
= var159
;
2035 nitc___nitc__AbstractCompilerVisitor___add(self
, var159
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2038 if (unlikely(varonce162
==NULL
)) {
2039 var163
= NEW_core__NativeArray(8l, &type_core__NativeArray__core__String
);
2040 if (likely(varonce164
!=NULL
)) {
2041 var165
= varonce164
;
2044 var167
= core__flat___NativeString___to_s_full(var166
, 3l, 3l);
2046 varonce164
= var165
;
2048 ((struct instance_core__NativeArray
*)var163
)->values
[1]=var165
;
2049 if (likely(varonce168
!=NULL
)) {
2050 var169
= varonce168
;
2053 var171
= core__flat___NativeString___to_s_full(var170
, 5l, 5l);
2055 varonce168
= var169
;
2057 ((struct instance_core__NativeArray
*)var163
)->values
[3]=var169
;
2058 if (likely(varonce172
!=NULL
)) {
2059 var173
= varonce172
;
2062 var175
= core__flat___NativeString___to_s_full(var174
, 4l, 4l);
2064 varonce172
= var173
;
2066 ((struct instance_core__NativeArray
*)var163
)->values
[5]=var173
;
2067 if (likely(varonce176
!=NULL
)) {
2068 var177
= varonce176
;
2071 var179
= core__flat___NativeString___to_s_full(var178
, 3l, 3l);
2073 varonce176
= var177
;
2075 ((struct instance_core__NativeArray
*)var163
)->values
[7]=var177
;
2077 var163
= varonce162
;
2080 ((struct instance_core__NativeArray
*)var163
)->values
[0]=var_attr
;
2082 var180
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
2084 ((struct instance_core__NativeArray
*)var163
)->values
[2]=var180
;
2086 var181
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
2088 ((struct instance_core__NativeArray
*)var163
)->values
[4]=var181
;
2090 var182
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_recv
);
2092 ((struct instance_core__NativeArray
*)var163
)->values
[6]=var182
;
2094 var183
= ((val
*(*)(val
* self
))(var163
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var163
); /* native_to_s on <var163:NativeArray[String]>*/
2096 varonce162
= var163
;
2098 nitc___nitc__AbstractCompilerVisitor___add(self
, var183
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2103 if (unlikely(varonce184
==NULL
)) {
2104 var185
= NEW_core__NativeArray(12l, &type_core__NativeArray__core__String
);
2105 if (likely(varonce186
!=NULL
)) {
2106 var187
= varonce186
;
2108 var188
= "->attrs[";
2109 var189
= core__flat___NativeString___to_s_full(var188
, 8l, 8l);
2111 varonce186
= var187
;
2113 ((struct instance_core__NativeArray
*)var185
)->values
[1]=var187
;
2114 if (likely(varonce190
!=NULL
)) {
2115 var191
= varonce190
;
2118 var193
= core__flat___NativeString___to_s_full(var192
, 2l, 2l);
2120 varonce190
= var191
;
2122 ((struct instance_core__NativeArray
*)var185
)->values
[3]=var191
;
2123 if (likely(varonce194
!=NULL
)) {
2124 var195
= varonce194
;
2127 var197
= core__flat___NativeString___to_s_full(var196
, 3l, 3l);
2129 varonce194
= var195
;
2131 ((struct instance_core__NativeArray
*)var185
)->values
[5]=var195
;
2132 if (likely(varonce198
!=NULL
)) {
2133 var199
= varonce198
;
2136 var201
= core__flat___NativeString___to_s_full(var200
, 5l, 5l);
2138 varonce198
= var199
;
2140 ((struct instance_core__NativeArray
*)var185
)->values
[7]=var199
;
2141 if (likely(varonce202
!=NULL
)) {
2142 var203
= varonce202
;
2145 var205
= core__flat___NativeString___to_s_full(var204
, 4l, 4l);
2147 varonce202
= var203
;
2149 ((struct instance_core__NativeArray
*)var185
)->values
[9]=var203
;
2150 if (likely(varonce206
!=NULL
)) {
2151 var207
= varonce206
;
2154 var209
= core__flat___NativeString___to_s_full(var208
, 3l, 3l);
2156 varonce206
= var207
;
2158 ((struct instance_core__NativeArray
*)var185
)->values
[11]=var207
;
2160 var185
= varonce184
;
2164 var210
= ((val
*(*)(val
* self
))(var_recv
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_recv
); /* to_s on <var_recv:RuntimeVariable>*/
2166 ((struct instance_core__NativeArray
*)var185
)->values
[0]=var210
;
2168 var211
= nitc__separate_compiler___MEntity___const_color(var_a
);
2170 ((struct instance_core__NativeArray
*)var185
)->values
[2]=var211
;
2172 var212
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__abstract_compiler__MType__ctypename
]))(var_mtype
); /* ctypename on <var_mtype:MType>*/
2174 ((struct instance_core__NativeArray
*)var185
)->values
[4]=var212
;
2176 var213
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
2178 ((struct instance_core__NativeArray
*)var185
)->values
[6]=var213
;
2180 var214
= ((val
*(*)(val
* self
))(var_a
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_a
); /* to_s on <var_a:MAttribute>*/
2182 ((struct instance_core__NativeArray
*)var185
)->values
[8]=var214
;
2184 var215
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_recv
);
2186 ((struct instance_core__NativeArray
*)var185
)->values
[10]=var215
;
2188 var216
= ((val
*(*)(val
* self
))(var185
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var185
); /* native_to_s on <var185:NativeArray[String]>*/
2190 varonce184
= var185
;
2192 nitc___nitc__AbstractCompilerVisitor___add(self
, var216
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2197 /* method separate_compiler#SeparateCompilerVisitor#hardening_live_open_type for (self: SeparateCompilerVisitor, MType) */
2198 void nitc___nitc__SeparateCompilerVisitor___hardening_live_open_type(val
* self
, val
* p0
) {
2199 val
* var_mtype
/* var mtype: MType */;
2200 val
* var
/* : AbstractCompiler */;
2201 val
* var2
/* : AbstractCompiler */;
2202 val
* var3
/* : ModelBuilder */;
2203 val
* var5
/* : ModelBuilder */;
2204 val
* var6
/* : ToolContext */;
2205 val
* var8
/* : ToolContext */;
2206 val
* var9
/* : OptionBool */;
2207 val
* var11
/* : OptionBool */;
2208 val
* var12
/* : nullable Object */;
2209 val
* var14
/* : nullable Object */;
2210 short int var15
/* : Bool */;
2211 short int var16
/* : Bool */;
2212 val
* var17
/* : String */;
2213 val
* var18
/* : String */;
2214 val
* var_col
/* var col: String */;
2215 val
* var19
/* : NativeArray[String] */;
2216 static val
* varonce
;
2217 static val
* varonce20
;
2218 val
* var21
/* : String */;
2219 char* var22
/* : NativeString */;
2220 val
* var23
/* : String */;
2221 static val
* varonce24
;
2222 val
* var25
/* : String */;
2223 char* var26
/* : NativeString */;
2224 val
* var27
/* : String */;
2225 val
* var28
/* : String */;
2226 val
* var30
/* : NativeArray[String] */;
2227 static val
* varonce29
;
2228 static val
* varonce31
;
2229 val
* var32
/* : String */;
2230 char* var33
/* : NativeString */;
2231 val
* var34
/* : String */;
2232 static val
* varonce35
;
2233 val
* var36
/* : String */;
2234 char* var37
/* : NativeString */;
2235 val
* var38
/* : String */;
2236 val
* var39
/* : String */;
2237 val
* var40
/* : String */;
2238 val
* var41
/* : String */;
2239 static val
* varonce42
;
2240 val
* var43
/* : String */;
2241 char* var44
/* : NativeString */;
2242 val
* var45
/* : String */;
2243 static val
* varonce46
;
2244 val
* var47
/* : String */;
2245 char* var48
/* : NativeString */;
2246 val
* var49
/* : String */;
2249 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
2250 var2
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
2251 if (unlikely(var2
== NULL
)) {
2252 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
2253 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
2261 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var) on <var:AbstractCompiler(SeparateCompiler)> */
2262 var5
= var
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var:AbstractCompiler(SeparateCompiler)> */
2263 if (unlikely(var5
== NULL
)) {
2264 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
2265 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
2273 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var3) on <var3:ModelBuilder> */
2274 var8
= var3
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var3:ModelBuilder> */
2275 if (unlikely(var8
== NULL
)) {
2276 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
2277 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
2285 { /* Inline abstract_compiler#ToolContext#opt_hardening (var6) on <var6:ToolContext> */
2286 var11
= var6
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_hardening
].val
; /* _opt_hardening on <var6:ToolContext> */
2287 if (unlikely(var11
== NULL
)) {
2288 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_hardening");
2289 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 46);
2293 RET_LABEL10
:(void)0;
2297 { /* Inline opts#Option#value (var9) on <var9:OptionBool> */
2298 var14
= var9
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var9:OptionBool> */
2300 RET_LABEL13
:(void)0;
2303 var15
= (short int)((long)(var12
)>>2);
2310 var17
= nitc__separate_compiler___MEntity___const_color(var_mtype
);
2313 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var17
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
2316 var18
= nitc__separate_compiler___MEntity___const_color(var_mtype
);
2319 if (unlikely(varonce
==NULL
)) {
2320 var19
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2321 if (likely(varonce20
!=NULL
)) {
2325 var23
= core__flat___NativeString___to_s_full(var22
, 3l, 3l);
2329 ((struct instance_core__NativeArray
*)var19
)->values
[0]=var21
;
2330 if (likely(varonce24
!=NULL
)) {
2333 var26
= " == -1) {";
2334 var27
= core__flat___NativeString___to_s_full(var26
, 9l, 9l);
2338 ((struct instance_core__NativeArray
*)var19
)->values
[2]=var25
;
2343 ((struct instance_core__NativeArray
*)var19
)->values
[1]=var_col
;
2345 var28
= ((val
*(*)(val
* self
))(var19
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var19
); /* native_to_s on <var19:NativeArray[String]>*/
2349 nitc___nitc__AbstractCompilerVisitor___add(self
, var28
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2351 if (unlikely(varonce29
==NULL
)) {
2352 var30
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2353 if (likely(varonce31
!=NULL
)) {
2356 var33
= "PRINT_ERROR(\"Resolution of a dead open type: %s\\n\", \"";
2357 var34
= core__flat___NativeString___to_s_full(var33
, 53l, 53l);
2361 ((struct instance_core__NativeArray
*)var30
)->values
[0]=var32
;
2362 if (likely(varonce35
!=NULL
)) {
2366 var38
= core__flat___NativeString___to_s_full(var37
, 3l, 3l);
2370 ((struct instance_core__NativeArray
*)var30
)->values
[2]=var36
;
2376 var39
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
2379 var40
= ((val
*(*)(val
* self
))(var39
->class->vft
[COLOR_core__abstract_text__Text__escape_to_c
]))(var39
); /* escape_to_c on <var39:String>*/
2381 ((struct instance_core__NativeArray
*)var30
)->values
[1]=var40
;
2383 var41
= ((val
*(*)(val
* self
))(var30
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var30
); /* native_to_s on <var30:NativeArray[String]>*/
2387 nitc___nitc__AbstractCompilerVisitor___add(self
, var41
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2389 if (likely(varonce42
!=NULL
)) {
2392 var44
= "open type dead";
2393 var45
= core__flat___NativeString___to_s_full(var44
, 14l, 14l);
2398 nitc___nitc__AbstractCompilerVisitor___add_abort(self
, var43
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on <self:SeparateCompilerVisitor>*/
2400 if (likely(varonce46
!=NULL
)) {
2404 var49
= core__flat___NativeString___to_s_full(var48
, 1l, 1l);
2409 nitc___nitc__AbstractCompilerVisitor___add(self
, var47
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2413 /* method separate_compiler#SeparateCompilerVisitor#hardening_cast_type for (self: SeparateCompilerVisitor, String) */
2414 void nitc___nitc__SeparateCompilerVisitor___hardening_cast_type(val
* self
, val
* p0
) {
2415 val
* var_t
/* var t: String */;
2416 val
* var
/* : AbstractCompiler */;
2417 val
* var2
/* : AbstractCompiler */;
2418 val
* var3
/* : ModelBuilder */;
2419 val
* var5
/* : ModelBuilder */;
2420 val
* var6
/* : ToolContext */;
2421 val
* var8
/* : ToolContext */;
2422 val
* var9
/* : OptionBool */;
2423 val
* var11
/* : OptionBool */;
2424 val
* var12
/* : nullable Object */;
2425 val
* var14
/* : nullable Object */;
2426 short int var15
/* : Bool */;
2427 short int var16
/* : Bool */;
2428 val
* var17
/* : NativeArray[String] */;
2429 static val
* varonce
;
2430 static val
* varonce18
;
2431 val
* var19
/* : String */;
2432 char* var20
/* : NativeString */;
2433 val
* var21
/* : String */;
2434 static val
* varonce22
;
2435 val
* var23
/* : String */;
2436 char* var24
/* : NativeString */;
2437 val
* var25
/* : String */;
2438 val
* var26
/* : String */;
2439 static val
* varonce27
;
2440 val
* var28
/* : String */;
2441 char* var29
/* : NativeString */;
2442 val
* var30
/* : String */;
2443 static val
* varonce31
;
2444 val
* var32
/* : String */;
2445 char* var33
/* : NativeString */;
2446 val
* var34
/* : String */;
2447 val
* var36
/* : NativeArray[String] */;
2448 static val
* varonce35
;
2449 static val
* varonce37
;
2450 val
* var38
/* : String */;
2451 char* var39
/* : NativeString */;
2452 val
* var40
/* : String */;
2453 static val
* varonce41
;
2454 val
* var42
/* : String */;
2455 char* var43
/* : NativeString */;
2456 val
* var44
/* : String */;
2457 static val
* varonce45
;
2458 val
* var46
/* : String */;
2459 char* var47
/* : NativeString */;
2460 val
* var48
/* : String */;
2461 val
* var49
/* : String */;
2462 val
* var51
/* : NativeArray[String] */;
2463 static val
* varonce50
;
2464 static val
* varonce52
;
2465 val
* var53
/* : String */;
2466 char* var54
/* : NativeString */;
2467 val
* var55
/* : String */;
2468 static val
* varonce56
;
2469 val
* var57
/* : String */;
2470 char* var58
/* : NativeString */;
2471 val
* var59
/* : String */;
2472 val
* var60
/* : String */;
2473 static val
* varonce61
;
2474 val
* var62
/* : String */;
2475 char* var63
/* : NativeString */;
2476 val
* var64
/* : String */;
2477 static val
* varonce65
;
2478 val
* var66
/* : String */;
2479 char* var67
/* : NativeString */;
2480 val
* var68
/* : String */;
2483 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
2484 var2
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
2485 if (unlikely(var2
== NULL
)) {
2486 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
2487 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
2495 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var) on <var:AbstractCompiler(SeparateCompiler)> */
2496 var5
= var
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var:AbstractCompiler(SeparateCompiler)> */
2497 if (unlikely(var5
== NULL
)) {
2498 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
2499 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
2507 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var3) on <var3:ModelBuilder> */
2508 var8
= var3
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var3:ModelBuilder> */
2509 if (unlikely(var8
== NULL
)) {
2510 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
2511 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
2519 { /* Inline abstract_compiler#ToolContext#opt_hardening (var6) on <var6:ToolContext> */
2520 var11
= var6
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_hardening
].val
; /* _opt_hardening on <var6:ToolContext> */
2521 if (unlikely(var11
== NULL
)) {
2522 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_hardening");
2523 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 46);
2527 RET_LABEL10
:(void)0;
2531 { /* Inline opts#Option#value (var9) on <var9:OptionBool> */
2532 var14
= var9
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var9:OptionBool> */
2534 RET_LABEL13
:(void)0;
2537 var15
= (short int)((long)(var12
)>>2);
2543 if (unlikely(varonce
==NULL
)) {
2544 var17
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2545 if (likely(varonce18
!=NULL
)) {
2549 var21
= core__flat___NativeString___to_s_full(var20
, 3l, 3l);
2553 ((struct instance_core__NativeArray
*)var17
)->values
[0]=var19
;
2554 if (likely(varonce22
!=NULL
)) {
2557 var24
= " == NULL) {";
2558 var25
= core__flat___NativeString___to_s_full(var24
, 11l, 11l);
2562 ((struct instance_core__NativeArray
*)var17
)->values
[2]=var23
;
2567 ((struct instance_core__NativeArray
*)var17
)->values
[1]=var_t
;
2569 var26
= ((val
*(*)(val
* self
))(var17
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var17
); /* native_to_s on <var17:NativeArray[String]>*/
2573 nitc___nitc__AbstractCompilerVisitor___add(self
, var26
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2575 if (likely(varonce27
!=NULL
)) {
2578 var29
= "cast type null";
2579 var30
= core__flat___NativeString___to_s_full(var29
, 14l, 14l);
2584 nitc___nitc__AbstractCompilerVisitor___add_abort(self
, var28
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on <self:SeparateCompilerVisitor>*/
2586 if (likely(varonce31
!=NULL
)) {
2590 var34
= core__flat___NativeString___to_s_full(var33
, 1l, 1l);
2595 nitc___nitc__AbstractCompilerVisitor___add(self
, var32
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2597 if (unlikely(varonce35
==NULL
)) {
2598 var36
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
2599 if (likely(varonce37
!=NULL
)) {
2603 var40
= core__flat___NativeString___to_s_full(var39
, 3l, 3l);
2607 ((struct instance_core__NativeArray
*)var36
)->values
[0]=var38
;
2608 if (likely(varonce41
!=NULL
)) {
2611 var43
= "->id == -1 || ";
2612 var44
= core__flat___NativeString___to_s_full(var43
, 14l, 14l);
2616 ((struct instance_core__NativeArray
*)var36
)->values
[2]=var42
;
2617 if (likely(varonce45
!=NULL
)) {
2620 var47
= "->color == -1) {";
2621 var48
= core__flat___NativeString___to_s_full(var47
, 16l, 16l);
2625 ((struct instance_core__NativeArray
*)var36
)->values
[4]=var46
;
2630 ((struct instance_core__NativeArray
*)var36
)->values
[1]=var_t
;
2631 ((struct instance_core__NativeArray
*)var36
)->values
[3]=var_t
;
2633 var49
= ((val
*(*)(val
* self
))(var36
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var36
); /* native_to_s on <var36:NativeArray[String]>*/
2637 nitc___nitc__AbstractCompilerVisitor___add(self
, var49
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2639 if (unlikely(varonce50
==NULL
)) {
2640 var51
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2641 if (likely(varonce52
!=NULL
)) {
2644 var54
= "PRINT_ERROR(\"Try to cast on a dead cast type: %s\\n\", ";
2645 var55
= core__flat___NativeString___to_s_full(var54
, 53l, 53l);
2649 ((struct instance_core__NativeArray
*)var51
)->values
[0]=var53
;
2650 if (likely(varonce56
!=NULL
)) {
2654 var59
= core__flat___NativeString___to_s_full(var58
, 8l, 8l);
2658 ((struct instance_core__NativeArray
*)var51
)->values
[2]=var57
;
2663 ((struct instance_core__NativeArray
*)var51
)->values
[1]=var_t
;
2665 var60
= ((val
*(*)(val
* self
))(var51
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var51
); /* native_to_s on <var51:NativeArray[String]>*/
2669 nitc___nitc__AbstractCompilerVisitor___add(self
, var60
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2671 if (likely(varonce61
!=NULL
)) {
2674 var63
= "cast type dead";
2675 var64
= core__flat___NativeString___to_s_full(var63
, 14l, 14l);
2680 nitc___nitc__AbstractCompilerVisitor___add_abort(self
, var62
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_abort on <self:SeparateCompilerVisitor>*/
2682 if (likely(varonce65
!=NULL
)) {
2686 var68
= core__flat___NativeString___to_s_full(var67
, 1l, 1l);
2691 nitc___nitc__AbstractCompilerVisitor___add(self
, var66
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
2695 /* method separate_compiler#SeparateCompilerVisitor#init_instance for (self: SeparateCompilerVisitor, MClassType): RuntimeVariable */
2696 val
* nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__init_instance(val
* self
, val
* p0
) {
2697 val
* var
/* : RuntimeVariable */;
2698 val
* var_mtype
/* var mtype: MClassType */;
2699 val
* var1
/* : NativeArray[String] */;
2700 static val
* varonce
;
2701 static val
* varonce2
;
2702 val
* var3
/* : String */;
2703 char* var4
/* : NativeString */;
2704 val
* var5
/* : String */;
2705 val
* var6
/* : MClass */;
2706 val
* var8
/* : MClass */;
2707 val
* var9
/* : String */;
2708 val
* var10
/* : String */;
2709 val
* var11
/* : AbstractCompiler */;
2710 val
* var13
/* : AbstractCompiler */;
2711 val
* var_compiler
/* var compiler: SeparateCompiler */;
2712 short int var14
/* : Bool */;
2713 short int var15
/* : Bool */;
2716 short int var_
/* var : Bool */;
2717 short int var16
/* : Bool */;
2718 short int var18
/* : Bool */;
2719 val
* var19
/* : nullable StaticFrame */;
2720 val
* var21
/* : nullable StaticFrame */;
2721 val
* var22
/* : MPropDef */;
2722 val
* var24
/* : MPropDef */;
2723 val
* var25
/* : MClassDef */;
2724 val
* var27
/* : MClassDef */;
2725 val
* var28
/* : nullable StaticFrame */;
2726 val
* var30
/* : nullable StaticFrame */;
2727 val
* var31
/* : Array[RuntimeVariable] */;
2728 val
* var33
/* : Array[RuntimeVariable] */;
2729 val
* var34
/* : nullable Object */;
2730 val
* var_recv
/* var recv: RuntimeVariable */;
2731 val
* var35
/* : String */;
2732 val
* var_recv_type_info
/* var recv_type_info: String */;
2733 val
* var36
/* : String */;
2734 val
* var38
/* : NativeArray[String] */;
2735 static val
* varonce37
;
2736 static val
* varonce39
;
2737 val
* var40
/* : String */;
2738 char* var41
/* : NativeString */;
2739 val
* var42
/* : String */;
2740 static val
* varonce43
;
2741 val
* var44
/* : String */;
2742 char* var45
/* : NativeString */;
2743 val
* var46
/* : String */;
2744 static val
* varonce47
;
2745 val
* var48
/* : String */;
2746 char* var49
/* : NativeString */;
2747 val
* var50
/* : String */;
2748 static val
* varonce51
;
2749 val
* var52
/* : String */;
2750 char* var53
/* : NativeString */;
2751 val
* var54
/* : String */;
2752 val
* var55
/* : MClass */;
2753 val
* var57
/* : MClass */;
2754 val
* var58
/* : String */;
2755 val
* var59
/* : String */;
2756 val
* var60
/* : String */;
2757 val
* var61
/* : RuntimeVariable */;
2758 val
* var62
/* : Set[MType] */;
2759 val
* var64
/* : Set[MType] */;
2760 val
* var66
/* : NativeArray[String] */;
2761 static val
* varonce65
;
2762 static val
* varonce67
;
2763 val
* var68
/* : String */;
2764 char* var69
/* : NativeString */;
2765 val
* var70
/* : String */;
2766 val
* var71
/* : String */;
2767 val
* var72
/* : String */;
2768 val
* var74
/* : NativeArray[String] */;
2769 static val
* varonce73
;
2770 static val
* varonce75
;
2771 val
* var76
/* : String */;
2772 char* var77
/* : NativeString */;
2773 val
* var78
/* : String */;
2774 static val
* varonce79
;
2775 val
* var80
/* : String */;
2776 char* var81
/* : NativeString */;
2777 val
* var82
/* : String */;
2778 static val
* varonce83
;
2779 val
* var84
/* : String */;
2780 char* var85
/* : NativeString */;
2781 val
* var86
/* : String */;
2782 val
* var87
/* : MClass */;
2783 val
* var89
/* : MClass */;
2784 val
* var90
/* : String */;
2785 val
* var91
/* : String */;
2786 val
* var92
/* : String */;
2787 val
* var93
/* : RuntimeVariable */;
2789 if (unlikely(varonce
==NULL
)) {
2790 var1
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
2791 if (likely(varonce2
!=NULL
)) {
2795 var5
= core__flat___NativeString___to_s_full(var4
, 4l, 4l);
2799 ((struct instance_core__NativeArray
*)var1
)->values
[0]=var3
;
2805 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MClassType> */
2806 var8
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MClassType> */
2807 if (unlikely(var8
== NULL
)) {
2808 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
2809 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
2817 var9
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var6
);
2819 ((struct instance_core__NativeArray
*)var1
)->values
[1]=var9
;
2821 var10
= ((val
*(*)(val
* self
))(var1
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var1
); /* native_to_s on <var1:NativeArray[String]>*/
2825 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var10
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
2828 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
2829 var13
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
2830 if (unlikely(var13
== NULL
)) {
2831 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
2832 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
2836 RET_LABEL12
:(void)0;
2839 var_compiler
= var11
;
2840 /* <var_mtype:MClassType> isa MGenericType */
2841 cltype
= type_nitc__MGenericType
.color
;
2842 idtype
= type_nitc__MGenericType
.id
;
2843 if(cltype
>= var_mtype
->type
->table_size
) {
2846 var15
= var_mtype
->type
->type_table
[cltype
] == idtype
;
2851 { /* Inline model#MGenericType#need_anchor (var_mtype) on <var_mtype:MClassType(MGenericType)> */
2852 var18
= var_mtype
->attrs
[COLOR_nitc__model__MGenericType___need_anchor
].s
; /* _need_anchor on <var_mtype:MClassType(MGenericType)> */
2854 RET_LABEL17
:(void)0;
2863 nitc___nitc__SeparateCompilerVisitor___hardening_live_open_type(self
, var_mtype
); /* Direct call separate_compiler#SeparateCompilerVisitor#hardening_live_open_type on <self:SeparateCompilerVisitor>*/
2866 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
2867 var21
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
2869 RET_LABEL20
:(void)0;
2872 if (var19
== NULL
) {
2873 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2874 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1756);
2877 { /* Inline abstract_compiler#StaticFrame#mpropdef (var19) on <var19:nullable StaticFrame> */
2878 if (unlikely(var19
== NULL
)) {
2879 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2880 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1914);
2883 var24
= var19
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var19:nullable StaticFrame> */
2884 if (unlikely(var24
== NULL
)) {
2885 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
2886 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1914);
2890 RET_LABEL23
:(void)0;
2894 { /* Inline model#MPropDef#mclassdef (var22) on <var22:MPropDef> */
2895 var27
= var22
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var22:MPropDef> */
2896 if (unlikely(var27
== NULL
)) {
2897 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
2898 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
2902 RET_LABEL26
:(void)0;
2906 nitc___nitc__SeparateCompilerVisitor___link_unresolved_type(self
, var25
, var_mtype
); /* Direct call separate_compiler#SeparateCompilerVisitor#link_unresolved_type on <self:SeparateCompilerVisitor>*/
2909 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
2910 var30
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
2912 RET_LABEL29
:(void)0;
2915 if (var28
== NULL
) {
2916 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2917 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1757);
2920 { /* Inline abstract_compiler#StaticFrame#arguments (var28) on <var28:nullable StaticFrame> */
2921 if (unlikely(var28
== NULL
)) {
2922 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2923 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1921);
2926 var33
= var28
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___arguments
].val
; /* _arguments on <var28:nullable StaticFrame> */
2927 if (unlikely(var33
== NULL
)) {
2928 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _arguments");
2929 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1921);
2933 RET_LABEL32
:(void)0;
2937 var34
= core___core__SequenceRead___Collection__first(var31
);
2941 var35
= nitc___nitc__SeparateCompilerVisitor___type_info(self
, var_recv
);
2943 var_recv_type_info
= var35
;
2945 var36
= nitc__separate_compiler___MEntity___const_color(var_mtype
);
2948 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var36
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
2950 if (unlikely(varonce37
==NULL
)) {
2951 var38
= NEW_core__NativeArray(7l, &type_core__NativeArray__core__String
);
2952 if (likely(varonce39
!=NULL
)) {
2956 var42
= core__flat___NativeString___to_s_full(var41
, 4l, 4l);
2960 ((struct instance_core__NativeArray
*)var38
)->values
[0]=var40
;
2961 if (likely(varonce43
!=NULL
)) {
2965 var46
= core__flat___NativeString___to_s_full(var45
, 1l, 1l);
2969 ((struct instance_core__NativeArray
*)var38
)->values
[2]=var44
;
2970 if (likely(varonce47
!=NULL
)) {
2973 var49
= "->resolution_table->types[";
2974 var50
= core__flat___NativeString___to_s_full(var49
, 26l, 26l);
2978 ((struct instance_core__NativeArray
*)var38
)->values
[4]=var48
;
2979 if (likely(varonce51
!=NULL
)) {
2983 var54
= core__flat___NativeString___to_s_full(var53
, 2l, 2l);
2987 ((struct instance_core__NativeArray
*)var38
)->values
[6]=var52
;
2993 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MClassType(MGenericType)> */
2994 var57
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MClassType(MGenericType)> */
2995 if (unlikely(var57
== NULL
)) {
2996 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
2997 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
3001 RET_LABEL56
:(void)0;
3005 var58
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var55
);
3007 ((struct instance_core__NativeArray
*)var38
)->values
[1]=var58
;
3008 ((struct instance_core__NativeArray
*)var38
)->values
[3]=var_recv_type_info
;
3010 var59
= nitc__separate_compiler___MEntity___const_color(var_mtype
);
3012 ((struct instance_core__NativeArray
*)var38
)->values
[5]=var59
;
3014 var60
= ((val
*(*)(val
* self
))(var38
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var38
); /* native_to_s on <var38:NativeArray[String]>*/
3018 var61
= nitc___nitc__AbstractCompilerVisitor___new_expr(self
, var60
, var_mtype
);
3025 { /* Inline separate_compiler#SeparateCompiler#undead_types (var_compiler) on <var_compiler:SeparateCompiler> */
3026 var64
= var_compiler
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___undead_types
].val
; /* _undead_types on <var_compiler:SeparateCompiler> */
3027 if (unlikely(var64
== NULL
)) {
3028 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _undead_types");
3029 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 146);
3033 RET_LABEL63
:(void)0;
3037 ((void(*)(val
* self
, val
* p0
))((((long)var62
&3)?class_info
[((long)var62
&3)]:var62
->class)->vft
[COLOR_core__abstract_collection__SimpleCollection__add
]))(var62
, var_mtype
); /* add on <var62:Set[MType]>*/
3039 if (unlikely(varonce65
==NULL
)) {
3040 var66
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
3041 if (likely(varonce67
!=NULL
)) {
3045 var70
= core__flat___NativeString___to_s_full(var69
, 5l, 5l);
3049 ((struct instance_core__NativeArray
*)var66
)->values
[0]=var68
;
3055 var71
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MClassType>*/
3057 ((struct instance_core__NativeArray
*)var66
)->values
[1]=var71
;
3059 var72
= ((val
*(*)(val
* self
))(var66
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var66
); /* native_to_s on <var66:NativeArray[String]>*/
3063 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var72
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
3065 if (unlikely(varonce73
==NULL
)) {
3066 var74
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
3067 if (likely(varonce75
!=NULL
)) {
3071 var78
= core__flat___NativeString___to_s_full(var77
, 4l, 4l);
3075 ((struct instance_core__NativeArray
*)var74
)->values
[0]=var76
;
3076 if (likely(varonce79
!=NULL
)) {
3080 var82
= core__flat___NativeString___to_s_full(var81
, 7l, 7l);
3084 ((struct instance_core__NativeArray
*)var74
)->values
[2]=var80
;
3085 if (likely(varonce83
!=NULL
)) {
3089 var86
= core__flat___NativeString___to_s_full(var85
, 1l, 1l);
3093 ((struct instance_core__NativeArray
*)var74
)->values
[4]=var84
;
3099 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MClassType> */
3100 var89
= var_mtype
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MClassType> */
3101 if (unlikely(var89
== NULL
)) {
3102 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
3103 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
3107 RET_LABEL88
:(void)0;
3111 var90
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var87
);
3113 ((struct instance_core__NativeArray
*)var74
)->values
[1]=var90
;
3115 var91
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MClassType>*/
3117 ((struct instance_core__NativeArray
*)var74
)->values
[3]=var91
;
3119 var92
= ((val
*(*)(val
* self
))(var74
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var74
); /* native_to_s on <var74:NativeArray[String]>*/
3123 var93
= nitc___nitc__AbstractCompilerVisitor___new_expr(self
, var92
, var_mtype
);
3130 /* method separate_compiler#SeparateCompilerVisitor#type_test for (self: SeparateCompilerVisitor, RuntimeVariable, MType, String): RuntimeVariable */
3131 val
* nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__type_test(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
3132 val
* var
/* : RuntimeVariable */;
3133 val
* var_value
/* var value: RuntimeVariable */;
3134 val
* var_mtype
/* var mtype: MType */;
3135 val
* var_tag
/* var tag: String */;
3136 val
* var1
/* : NativeArray[String] */;
3137 static val
* varonce
;
3138 static val
* varonce2
;
3139 val
* var3
/* : String */;
3140 char* var4
/* : NativeString */;
3141 val
* var5
/* : String */;
3142 static val
* varonce6
;
3143 val
* var7
/* : String */;
3144 char* var8
/* : NativeString */;
3145 val
* var9
/* : String */;
3146 static val
* varonce10
;
3147 val
* var11
/* : String */;
3148 char* var12
/* : NativeString */;
3149 val
* var13
/* : String */;
3150 val
* var14
/* : String */;
3151 val
* var15
/* : String */;
3152 val
* var16
/* : String */;
3153 val
* var17
/* : AbstractCompiler */;
3154 val
* var19
/* : AbstractCompiler */;
3155 val
* var_compiler
/* var compiler: SeparateCompiler */;
3156 val
* var20
/* : nullable StaticFrame */;
3157 val
* var22
/* : nullable StaticFrame */;
3158 val
* var23
/* : Array[RuntimeVariable] */;
3159 val
* var25
/* : Array[RuntimeVariable] */;
3160 val
* var26
/* : nullable Object */;
3161 val
* var_recv
/* var recv: RuntimeVariable */;
3162 val
* var27
/* : String */;
3163 val
* var_recv_type_info
/* var recv_type_info: String */;
3164 val
* var28
/* : MClassType */;
3165 val
* var29
/* : RuntimeVariable */;
3166 val
* var_res
/* var res: RuntimeVariable */;
3167 static val
* varonce30
;
3168 val
* var31
/* : String */;
3169 char* var32
/* : NativeString */;
3170 val
* var33
/* : String */;
3171 val
* var34
/* : String */;
3172 val
* var_cltype
/* var cltype: String */;
3173 val
* var36
/* : NativeArray[String] */;
3174 static val
* varonce35
;
3175 static val
* varonce37
;
3176 val
* var38
/* : String */;
3177 char* var39
/* : NativeString */;
3178 val
* var40
/* : String */;
3179 static val
* varonce41
;
3180 val
* var42
/* : String */;
3181 char* var43
/* : NativeString */;
3182 val
* var44
/* : String */;
3183 val
* var45
/* : String */;
3184 static val
* varonce46
;
3185 val
* var47
/* : String */;
3186 char* var48
/* : NativeString */;
3187 val
* var49
/* : String */;
3188 val
* var50
/* : String */;
3189 val
* var_idtype
/* var idtype: String */;
3190 val
* var52
/* : NativeArray[String] */;
3191 static val
* varonce51
;
3192 static val
* varonce53
;
3193 val
* var54
/* : String */;
3194 char* var55
/* : NativeString */;
3195 val
* var56
/* : String */;
3196 static val
* varonce57
;
3197 val
* var58
/* : String */;
3198 char* var59
/* : NativeString */;
3199 val
* var60
/* : String */;
3200 val
* var61
/* : String */;
3201 short int var62
/* : Bool */;
3202 short int var_maybe_null
/* var maybe_null: Bool */;
3203 static val
* varonce63
;
3204 val
* var64
/* : String */;
3205 char* var65
/* : NativeString */;
3206 val
* var66
/* : String */;
3207 val
* var_accept_null
/* var accept_null: String */;
3208 val
* var_ntype
/* var ntype: MType */;
3209 short int var67
/* : Bool */;
3212 val
* var68
/* : MType */;
3213 val
* var70
/* : MType */;
3214 static val
* varonce71
;
3215 val
* var72
/* : String */;
3216 char* var73
/* : NativeString */;
3217 val
* var74
/* : String */;
3218 val
* var75
/* : MType */;
3219 val
* var77
/* : MType */;
3220 val
* var78
/* : nullable StaticFrame */;
3221 val
* var80
/* : nullable StaticFrame */;
3222 val
* var81
/* : MPropDef */;
3223 val
* var83
/* : MPropDef */;
3224 val
* var84
/* : MClassDef */;
3225 val
* var86
/* : MClassDef */;
3226 val
* var87
/* : MModule */;
3227 val
* var89
/* : MModule */;
3228 val
* var90
/* : nullable StaticFrame */;
3229 val
* var92
/* : nullable StaticFrame */;
3230 val
* var93
/* : MPropDef */;
3231 val
* var95
/* : MPropDef */;
3232 val
* var96
/* : MClassDef */;
3233 val
* var98
/* : MClassDef */;
3234 val
* var99
/* : MClassType */;
3235 val
* var101
/* : MClassType */;
3236 short int var102
/* : Bool */;
3237 val
* var104
/* : NativeArray[String] */;
3238 static val
* varonce103
;
3239 static val
* varonce105
;
3240 val
* var106
/* : String */;
3241 char* var107
/* : NativeString */;
3242 val
* var108
/* : String */;
3243 static val
* varonce109
;
3244 val
* var110
/* : String */;
3245 char* var111
/* : NativeString */;
3246 val
* var112
/* : String */;
3247 static val
* varonce113
;
3248 val
* var114
/* : String */;
3249 char* var115
/* : NativeString */;
3250 val
* var116
/* : String */;
3251 val
* var117
/* : String */;
3252 val
* var118
/* : String */;
3253 val
* var119
/* : String */;
3254 val
* var120
/* : String */;
3255 val
* var121
/* : ModelBuilder */;
3256 val
* var123
/* : ModelBuilder */;
3257 val
* var124
/* : ToolContext */;
3258 val
* var126
/* : ToolContext */;
3259 val
* var127
/* : OptionBool */;
3260 val
* var129
/* : OptionBool */;
3261 val
* var130
/* : nullable Object */;
3262 val
* var132
/* : nullable Object */;
3263 short int var133
/* : Bool */;
3264 val
* var134
/* : AbstractCompiler */;
3265 val
* var136
/* : AbstractCompiler */;
3266 val
* var137
/* : HashMap[String, Int] */;
3267 val
* var139
/* : HashMap[String, Int] */;
3268 val
* var_
/* var : HashMap[String, Int] */;
3269 val
* var_140
/* var : String */;
3270 val
* var141
/* : nullable Object */;
3271 long var142
/* : Int */;
3272 short int var144
/* : Bool */;
3275 const char* var_class_name
;
3276 long var147
/* : Int */;
3277 long var148
/* : Int */;
3278 val
* var149
/* : nullable Object */;
3279 val
* var151
/* : NativeArray[String] */;
3280 static val
* varonce150
;
3281 static val
* varonce152
;
3282 val
* var153
/* : String */;
3283 char* var154
/* : NativeString */;
3284 val
* var155
/* : String */;
3285 static val
* varonce156
;
3286 val
* var157
/* : String */;
3287 char* var158
/* : NativeString */;
3288 val
* var159
/* : String */;
3289 val
* var160
/* : String */;
3290 short int var161
/* : Bool */;
3291 static val
* varonce162
;
3292 val
* var163
/* : String */;
3293 char* var164
/* : NativeString */;
3294 val
* var165
/* : String */;
3295 val
* var166
/* : String */;
3296 val
* var_type_struct
/* var type_struct: String */;
3297 val
* var168
/* : NativeArray[String] */;
3298 static val
* varonce167
;
3299 static val
* varonce169
;
3300 val
* var170
/* : String */;
3301 char* var171
/* : NativeString */;
3302 val
* var172
/* : String */;
3303 static val
* varonce173
;
3304 val
* var174
/* : String */;
3305 char* var175
/* : NativeString */;
3306 val
* var176
/* : String */;
3307 val
* var177
/* : String */;
3308 val
* var178
/* : nullable StaticFrame */;
3309 val
* var180
/* : nullable StaticFrame */;
3310 val
* var181
/* : MPropDef */;
3311 val
* var183
/* : MPropDef */;
3312 val
* var184
/* : MClassDef */;
3313 val
* var186
/* : MClassDef */;
3314 val
* var187
/* : String */;
3315 val
* var189
/* : NativeArray[String] */;
3316 static val
* varonce188
;
3317 static val
* varonce190
;
3318 val
* var191
/* : String */;
3319 char* var192
/* : NativeString */;
3320 val
* var193
/* : String */;
3321 static val
* varonce194
;
3322 val
* var195
/* : String */;
3323 char* var196
/* : NativeString */;
3324 val
* var197
/* : String */;
3325 static val
* varonce198
;
3326 val
* var199
/* : String */;
3327 char* var200
/* : NativeString */;
3328 val
* var201
/* : String */;
3329 val
* var202
/* : String */;
3330 val
* var203
/* : String */;
3331 val
* var204
/* : ModelBuilder */;
3332 val
* var206
/* : ModelBuilder */;
3333 val
* var207
/* : ToolContext */;
3334 val
* var209
/* : ToolContext */;
3335 val
* var210
/* : OptionBool */;
3336 val
* var212
/* : OptionBool */;
3337 val
* var213
/* : nullable Object */;
3338 val
* var215
/* : nullable Object */;
3339 short int var216
/* : Bool */;
3340 val
* var217
/* : AbstractCompiler */;
3341 val
* var219
/* : AbstractCompiler */;
3342 val
* var220
/* : HashMap[String, Int] */;
3343 val
* var222
/* : HashMap[String, Int] */;
3344 val
* var_223
/* var : HashMap[String, Int] */;
3345 val
* var_224
/* var : String */;
3346 val
* var225
/* : nullable Object */;
3347 long var226
/* : Int */;
3348 short int var228
/* : Bool */;
3351 const char* var_class_name231
;
3352 long var232
/* : Int */;
3353 long var233
/* : Int */;
3354 val
* var234
/* : nullable Object */;
3355 val
* var236
/* : NativeArray[String] */;
3356 static val
* varonce235
;
3357 static val
* varonce237
;
3358 val
* var238
/* : String */;
3359 char* var239
/* : NativeString */;
3360 val
* var240
/* : String */;
3361 static val
* varonce241
;
3362 val
* var242
/* : String */;
3363 char* var243
/* : NativeString */;
3364 val
* var244
/* : String */;
3365 val
* var245
/* : String */;
3366 val
* var247
/* : NativeArray[String] */;
3367 static val
* varonce246
;
3368 static val
* varonce248
;
3369 val
* var249
/* : String */;
3370 char* var250
/* : NativeString */;
3371 val
* var251
/* : String */;
3372 static val
* varonce252
;
3373 val
* var253
/* : String */;
3374 char* var254
/* : NativeString */;
3375 val
* var255
/* : String */;
3376 val
* var256
/* : String */;
3377 val
* var258
/* : NativeArray[String] */;
3378 static val
* varonce257
;
3379 static val
* varonce259
;
3380 val
* var260
/* : String */;
3381 char* var261
/* : NativeString */;
3382 val
* var262
/* : String */;
3383 static val
* varonce263
;
3384 val
* var264
/* : String */;
3385 char* var265
/* : NativeString */;
3386 val
* var266
/* : String */;
3387 val
* var267
/* : String */;
3388 short int var268
/* : Bool */;
3389 short int var_269
/* var : Bool */;
3390 static val
* varonce270
;
3391 val
* var271
/* : String */;
3392 char* var272
/* : NativeString */;
3393 val
* var273
/* : String */;
3394 short int var274
/* : Bool */;
3395 static val
* varonce275
;
3396 val
* var276
/* : String */;
3397 char* var277
/* : NativeString */;
3398 val
* var278
/* : String */;
3399 val
* var279
/* : String */;
3400 val
* var_is_nullable
/* var is_nullable: String */;
3401 val
* var281
/* : NativeArray[String] */;
3402 static val
* varonce280
;
3403 static val
* varonce282
;
3404 val
* var283
/* : String */;
3405 char* var284
/* : NativeString */;
3406 val
* var285
/* : String */;
3407 static val
* varonce286
;
3408 val
* var287
/* : String */;
3409 char* var288
/* : NativeString */;
3410 val
* var289
/* : String */;
3411 val
* var290
/* : String */;
3412 val
* var292
/* : NativeArray[String] */;
3413 static val
* varonce291
;
3414 static val
* varonce293
;
3415 val
* var294
/* : String */;
3416 char* var295
/* : NativeString */;
3417 val
* var296
/* : String */;
3418 static val
* varonce297
;
3419 val
* var298
/* : String */;
3420 char* var299
/* : NativeString */;
3421 val
* var300
/* : String */;
3422 val
* var301
/* : String */;
3423 val
* var302
/* : String */;
3424 short int var303
/* : Bool */;
3427 val
* var306
/* : Set[MType] */;
3428 val
* var308
/* : Set[MType] */;
3429 val
* var310
/* : NativeArray[String] */;
3430 static val
* varonce309
;
3431 static val
* varonce311
;
3432 val
* var312
/* : String */;
3433 char* var313
/* : NativeString */;
3434 val
* var314
/* : String */;
3435 val
* var315
/* : String */;
3436 val
* var316
/* : String */;
3437 val
* var318
/* : NativeArray[String] */;
3438 static val
* varonce317
;
3439 static val
* varonce319
;
3440 val
* var320
/* : String */;
3441 char* var321
/* : NativeString */;
3442 val
* var322
/* : String */;
3443 static val
* varonce323
;
3444 val
* var324
/* : String */;
3445 char* var325
/* : NativeString */;
3446 val
* var326
/* : String */;
3447 val
* var327
/* : String */;
3448 val
* var328
/* : String */;
3449 val
* var330
/* : NativeArray[String] */;
3450 static val
* varonce329
;
3451 static val
* varonce331
;
3452 val
* var332
/* : String */;
3453 char* var333
/* : NativeString */;
3454 val
* var334
/* : String */;
3455 static val
* varonce335
;
3456 val
* var336
/* : String */;
3457 char* var337
/* : NativeString */;
3458 val
* var338
/* : String */;
3459 val
* var339
/* : String */;
3460 val
* var340
/* : String */;
3461 val
* var342
/* : NativeArray[String] */;
3462 static val
* varonce341
;
3463 static val
* varonce343
;
3464 val
* var344
/* : String */;
3465 char* var345
/* : NativeString */;
3466 val
* var346
/* : String */;
3467 static val
* varonce347
;
3468 val
* var348
/* : String */;
3469 char* var349
/* : NativeString */;
3470 val
* var350
/* : String */;
3471 val
* var351
/* : String */;
3472 val
* var352
/* : String */;
3473 val
* var353
/* : ModelBuilder */;
3474 val
* var355
/* : ModelBuilder */;
3475 val
* var356
/* : ToolContext */;
3476 val
* var358
/* : ToolContext */;
3477 val
* var359
/* : OptionBool */;
3478 val
* var361
/* : OptionBool */;
3479 val
* var362
/* : nullable Object */;
3480 val
* var364
/* : nullable Object */;
3481 short int var365
/* : Bool */;
3482 val
* var366
/* : AbstractCompiler */;
3483 val
* var368
/* : AbstractCompiler */;
3484 val
* var369
/* : HashMap[String, Int] */;
3485 val
* var371
/* : HashMap[String, Int] */;
3486 val
* var_372
/* var : HashMap[String, Int] */;
3487 val
* var_373
/* var : String */;
3488 val
* var374
/* : nullable Object */;
3489 long var375
/* : Int */;
3490 short int var377
/* : Bool */;
3493 const char* var_class_name380
;
3494 long var381
/* : Int */;
3495 long var382
/* : Int */;
3496 val
* var383
/* : nullable Object */;
3497 val
* var385
/* : NativeArray[String] */;
3498 static val
* varonce384
;
3499 static val
* varonce386
;
3500 val
* var387
/* : String */;
3501 char* var388
/* : NativeString */;
3502 val
* var389
/* : String */;
3503 static val
* varonce390
;
3504 val
* var391
/* : String */;
3505 char* var392
/* : NativeString */;
3506 val
* var393
/* : String */;
3507 val
* var394
/* : String */;
3508 val
* var396
/* : NativeArray[String] */;
3509 static val
* varonce395
;
3510 static val
* varonce397
;
3511 val
* var398
/* : String */;
3512 char* var399
/* : NativeString */;
3513 val
* var400
/* : String */;
3514 static val
* varonce401
;
3515 val
* var402
/* : String */;
3516 char* var403
/* : NativeString */;
3517 val
* var404
/* : String */;
3518 static val
* varonce405
;
3519 val
* var406
/* : String */;
3520 char* var407
/* : NativeString */;
3521 val
* var408
/* : String */;
3522 val
* var409
/* : String */;
3523 val
* var410
/* : String */;
3524 val
* var411
/* : String */;
3525 val
* var413
/* : NativeArray[String] */;
3526 static val
* varonce412
;
3527 static val
* varonce414
;
3528 val
* var415
/* : String */;
3529 char* var416
/* : NativeString */;
3530 val
* var417
/* : String */;
3531 static val
* varonce418
;
3532 val
* var419
/* : String */;
3533 char* var420
/* : NativeString */;
3534 val
* var421
/* : String */;
3535 val
* var422
/* : String */;
3536 val
* var423
/* : String */;
3537 val
* var425
/* : NativeArray[String] */;
3538 static val
* varonce424
;
3539 static val
* varonce426
;
3540 val
* var427
/* : String */;
3541 char* var428
/* : NativeString */;
3542 val
* var429
/* : String */;
3543 static val
* varonce430
;
3544 val
* var431
/* : String */;
3545 char* var432
/* : NativeString */;
3546 val
* var433
/* : String */;
3547 val
* var434
/* : String */;
3548 val
* var435
/* : String */;
3549 static val
* varonce436
;
3550 val
* var437
/* : String */;
3551 char* var438
/* : NativeString */;
3552 val
* var439
/* : String */;
3553 val
* var440
/* : String */;
3554 val
* var_value_type_info
/* var value_type_info: String */;
3555 val
* var442
/* : NativeArray[String] */;
3556 static val
* varonce441
;
3557 static val
* varonce443
;
3558 val
* var444
/* : String */;
3559 char* var445
/* : NativeString */;
3560 val
* var446
/* : String */;
3561 static val
* varonce447
;
3562 val
* var448
/* : String */;
3563 char* var449
/* : NativeString */;
3564 val
* var450
/* : String */;
3565 static val
* varonce451
;
3566 val
* var452
/* : String */;
3567 char* var453
/* : NativeString */;
3568 val
* var454
/* : String */;
3569 val
* var455
/* : String */;
3570 val
* var457
/* : NativeArray[String] */;
3571 static val
* varonce456
;
3572 static val
* varonce458
;
3573 val
* var459
/* : String */;
3574 char* var460
/* : NativeString */;
3575 val
* var461
/* : String */;
3576 val
* var462
/* : String */;
3577 val
* var463
/* : String */;
3578 static val
* varonce464
;
3579 val
* var465
/* : String */;
3580 char* var466
/* : NativeString */;
3581 val
* var467
/* : String */;
3582 val
* var469
/* : NativeArray[String] */;
3583 static val
* varonce468
;
3584 static val
* varonce470
;
3585 val
* var471
/* : String */;
3586 char* var472
/* : NativeString */;
3587 val
* var473
/* : String */;
3588 static val
* varonce474
;
3589 val
* var475
/* : String */;
3590 char* var476
/* : NativeString */;
3591 val
* var477
/* : String */;
3592 static val
* varonce478
;
3593 val
* var479
/* : String */;
3594 char* var480
/* : NativeString */;
3595 val
* var481
/* : String */;
3596 static val
* varonce482
;
3597 val
* var483
/* : String */;
3598 char* var484
/* : NativeString */;
3599 val
* var485
/* : String */;
3600 val
* var486
/* : String */;
3601 val
* var487
/* : String */;
3602 static val
* varonce488
;
3603 val
* var489
/* : String */;
3604 char* var490
/* : NativeString */;
3605 val
* var491
/* : String */;
3606 static val
* varonce492
;
3607 val
* var493
/* : String */;
3608 char* var494
/* : NativeString */;
3609 val
* var495
/* : String */;
3613 if (unlikely(varonce
==NULL
)) {
3614 var1
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
3615 if (likely(varonce2
!=NULL
)) {
3619 var5
= core__flat___NativeString___to_s_full(var4
, 3l, 3l);
3623 ((struct instance_core__NativeArray
*)var1
)->values
[0]=var3
;
3624 if (likely(varonce6
!=NULL
)) {
3628 var9
= core__flat___NativeString___to_s_full(var8
, 5l, 5l);
3632 ((struct instance_core__NativeArray
*)var1
)->values
[2]=var7
;
3633 if (likely(varonce10
!=NULL
)) {
3637 var13
= core__flat___NativeString___to_s_full(var12
, 3l, 3l);
3641 ((struct instance_core__NativeArray
*)var1
)->values
[4]=var11
;
3647 var14
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_value
);
3649 ((struct instance_core__NativeArray
*)var1
)->values
[1]=var14
;
3651 var15
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
3653 ((struct instance_core__NativeArray
*)var1
)->values
[3]=var15
;
3655 var16
= ((val
*(*)(val
* self
))(var1
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var1
); /* native_to_s on <var1:NativeArray[String]>*/
3659 nitc___nitc__AbstractCompilerVisitor___add(self
, var16
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
3662 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
3663 var19
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
3664 if (unlikely(var19
== NULL
)) {
3665 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
3666 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
3670 RET_LABEL18
:(void)0;
3673 var_compiler
= var17
;
3675 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
3676 var22
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
3678 RET_LABEL21
:(void)0;
3681 if (var20
== NULL
) {
3682 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3683 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1772);
3686 { /* Inline abstract_compiler#StaticFrame#arguments (var20) on <var20:nullable StaticFrame> */
3687 if (unlikely(var20
== NULL
)) {
3688 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3689 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1921);
3692 var25
= var20
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___arguments
].val
; /* _arguments on <var20:nullable StaticFrame> */
3693 if (unlikely(var25
== NULL
)) {
3694 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _arguments");
3695 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1921);
3699 RET_LABEL24
:(void)0;
3703 var26
= core___core__SequenceRead___Collection__first(var23
);
3707 var27
= nitc___nitc__SeparateCompilerVisitor___type_info(self
, var_recv
);
3709 var_recv_type_info
= var27
;
3711 var28
= nitc___nitc__AbstractCompilerVisitor___bool_type(self
);
3714 var29
= nitc___nitc__AbstractCompilerVisitor___new_var(self
, var28
);
3717 if (likely(varonce30
!=NULL
)) {
3721 var33
= core__flat___NativeString___to_s_full(var32
, 6l, 6l);
3726 var34
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var31
);
3729 if (unlikely(varonce35
==NULL
)) {
3730 var36
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
3731 if (likely(varonce37
!=NULL
)) {
3735 var40
= core__flat___NativeString___to_s_full(var39
, 4l, 4l);
3739 ((struct instance_core__NativeArray
*)var36
)->values
[0]=var38
;
3740 if (likely(varonce41
!=NULL
)) {
3744 var44
= core__flat___NativeString___to_s_full(var43
, 1l, 1l);
3748 ((struct instance_core__NativeArray
*)var36
)->values
[2]=var42
;
3753 ((struct instance_core__NativeArray
*)var36
)->values
[1]=var_cltype
;
3755 var45
= ((val
*(*)(val
* self
))(var36
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var36
); /* native_to_s on <var36:NativeArray[String]>*/
3759 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var45
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateCompilerVisitor>*/
3761 if (likely(varonce46
!=NULL
)) {
3765 var49
= core__flat___NativeString___to_s_full(var48
, 6l, 6l);
3770 var50
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var47
);
3773 if (unlikely(varonce51
==NULL
)) {
3774 var52
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
3775 if (likely(varonce53
!=NULL
)) {
3779 var56
= core__flat___NativeString___to_s_full(var55
, 4l, 4l);
3783 ((struct instance_core__NativeArray
*)var52
)->values
[0]=var54
;
3784 if (likely(varonce57
!=NULL
)) {
3788 var60
= core__flat___NativeString___to_s_full(var59
, 1l, 1l);
3792 ((struct instance_core__NativeArray
*)var52
)->values
[2]=var58
;
3797 ((struct instance_core__NativeArray
*)var52
)->values
[1]=var_idtype
;
3799 var61
= ((val
*(*)(val
* self
))(var52
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var52
); /* native_to_s on <var52:NativeArray[String]>*/
3803 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var61
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateCompilerVisitor>*/
3806 var62
= nitc___nitc__SeparateCompilerVisitor___maybe_null(self
, var_value
);
3808 var_maybe_null
= var62
;
3809 if (likely(varonce63
!=NULL
)) {
3813 var66
= core__flat___NativeString___to_s_full(var65
, 1l, 1l);
3817 var_accept_null
= var64
;
3818 var_ntype
= var_mtype
;
3819 /* <var_ntype:MType> isa MNullableType */
3820 cltype
= type_nitc__MNullableType
.color
;
3821 idtype
= type_nitc__MNullableType
.id
;
3822 if(cltype
>= var_ntype
->type
->table_size
) {
3825 var67
= var_ntype
->type
->type_table
[cltype
] == idtype
;
3829 { /* Inline model#MProxyType#mtype (var_ntype) on <var_ntype:MType(MNullableType)> */
3830 var70
= var_ntype
->attrs
[COLOR_nitc__model__MProxyType___mtype
].val
; /* _mtype on <var_ntype:MType(MNullableType)> */
3831 if (unlikely(var70
== NULL
)) {
3832 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3833 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1625);
3837 RET_LABEL69
:(void)0;
3841 if (likely(varonce71
!=NULL
)) {
3845 var74
= core__flat___NativeString___to_s_full(var73
, 1l, 1l);
3849 var_accept_null
= var72
;
3853 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_value) on <var_value:RuntimeVariable> */
3854 var77
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_value:RuntimeVariable> */
3855 if (unlikely(var77
== NULL
)) {
3856 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
3857 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
3861 RET_LABEL76
:(void)0;
3865 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
3866 var80
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
3868 RET_LABEL79
:(void)0;
3871 if (var78
== NULL
) {
3872 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3873 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1790);
3876 { /* Inline abstract_compiler#StaticFrame#mpropdef (var78) on <var78:nullable StaticFrame> */
3877 if (unlikely(var78
== NULL
)) {
3878 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3879 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1914);
3882 var83
= var78
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var78:nullable StaticFrame> */
3883 if (unlikely(var83
== NULL
)) {
3884 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
3885 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1914);
3889 RET_LABEL82
:(void)0;
3893 { /* Inline model#MPropDef#mclassdef (var81) on <var81:MPropDef> */
3894 var86
= var81
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var81:MPropDef> */
3895 if (unlikely(var86
== NULL
)) {
3896 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
3897 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
3901 RET_LABEL85
:(void)0;
3905 { /* Inline model#MClassDef#mmodule (var84) on <var84:MClassDef> */
3906 var89
= var84
->attrs
[COLOR_nitc__model__MClassDef___mmodule
].val
; /* _mmodule on <var84:MClassDef> */
3907 if (unlikely(var89
== NULL
)) {
3908 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
3909 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 573);
3913 RET_LABEL88
:(void)0;
3917 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
3918 var92
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
3920 RET_LABEL91
:(void)0;
3923 if (var90
== NULL
) {
3924 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3925 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1790);
3928 { /* Inline abstract_compiler#StaticFrame#mpropdef (var90) on <var90:nullable StaticFrame> */
3929 if (unlikely(var90
== NULL
)) {
3930 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3931 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1914);
3934 var95
= var90
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var90:nullable StaticFrame> */
3935 if (unlikely(var95
== NULL
)) {
3936 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
3937 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1914);
3941 RET_LABEL94
:(void)0;
3945 { /* Inline model#MPropDef#mclassdef (var93) on <var93:MPropDef> */
3946 var98
= var93
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var93:MPropDef> */
3947 if (unlikely(var98
== NULL
)) {
3948 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
3949 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
3953 RET_LABEL97
:(void)0;
3957 { /* Inline model#MClassDef#bound_mtype (var96) on <var96:MClassDef> */
3958 var101
= var96
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var96:MClassDef> */
3959 if (unlikely(var101
== NULL
)) {
3960 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
3961 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
3965 RET_LABEL100
:(void)0;
3969 var102
= nitc___nitc__MType___is_subtype(var75
, var87
, var99
, var_mtype
);
3972 if (unlikely(varonce103
==NULL
)) {
3973 var104
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
3974 if (likely(varonce105
!=NULL
)) {
3975 var106
= varonce105
;
3977 var107
= " = 1; /* easy ";
3978 var108
= core__flat___NativeString___to_s_full(var107
, 14l, 14l);
3980 varonce105
= var106
;
3982 ((struct instance_core__NativeArray
*)var104
)->values
[1]=var106
;
3983 if (likely(varonce109
!=NULL
)) {
3984 var110
= varonce109
;
3987 var112
= core__flat___NativeString___to_s_full(var111
, 5l, 5l);
3989 varonce109
= var110
;
3991 ((struct instance_core__NativeArray
*)var104
)->values
[3]=var110
;
3992 if (likely(varonce113
!=NULL
)) {
3993 var114
= varonce113
;
3996 var116
= core__flat___NativeString___to_s_full(var115
, 2l, 2l);
3998 varonce113
= var114
;
4000 ((struct instance_core__NativeArray
*)var104
)->values
[5]=var114
;
4002 var104
= varonce103
;
4006 var117
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
4008 ((struct instance_core__NativeArray
*)var104
)->values
[0]=var117
;
4010 var118
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_value
);
4012 ((struct instance_core__NativeArray
*)var104
)->values
[2]=var118
;
4014 var119
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
4016 ((struct instance_core__NativeArray
*)var104
)->values
[4]=var119
;
4018 var120
= ((val
*(*)(val
* self
))(var104
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var104
); /* native_to_s on <var104:NativeArray[String]>*/
4020 varonce103
= var104
;
4022 nitc___nitc__AbstractCompilerVisitor___add(self
, var120
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4025 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var_compiler) on <var_compiler:SeparateCompiler> */
4026 var123
= var_compiler
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var_compiler:SeparateCompiler> */
4027 if (unlikely(var123
== NULL
)) {
4028 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
4029 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
4033 RET_LABEL122
:(void)0;
4037 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var121) on <var121:ModelBuilder> */
4038 var126
= var121
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var121:ModelBuilder> */
4039 if (unlikely(var126
== NULL
)) {
4040 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
4041 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
4045 RET_LABEL125
:(void)0;
4049 { /* Inline abstract_compiler#ToolContext#opt_typing_test_metrics (var124) on <var124:ToolContext> */
4050 var129
= var124
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics
].val
; /* _opt_typing_test_metrics on <var124:ToolContext> */
4051 if (unlikely(var129
== NULL
)) {
4052 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
4053 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 60);
4057 RET_LABEL128
:(void)0;
4061 { /* Inline opts#Option#value (var127) on <var127:OptionBool> */
4062 var132
= var127
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var127:OptionBool> */
4064 RET_LABEL131
:(void)0;
4067 var133
= (short int)((long)(var130
)>>2);
4070 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
4071 var136
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
4072 if (unlikely(var136
== NULL
)) {
4073 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
4074 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
4078 RET_LABEL135
:(void)0;
4082 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_skipped (var134) on <var134:AbstractCompiler(SeparateCompiler)> */
4083 var139
= var134
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_skipped
].val
; /* _count_type_test_skipped on <var134:AbstractCompiler(SeparateCompiler)> */
4084 if (unlikely(var139
== NULL
)) {
4085 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_skipped");
4086 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1048);
4090 RET_LABEL138
:(void)0;
4096 var141
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_
, var_140
);
4099 { /* Inline kernel#Int#+ (var141,1l) on <var141:nullable Object(Int)> */
4100 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
4101 /* <1l:Int> isa OTHER */
4102 var144
= 1; /* easy <1l:Int> isa OTHER*/
4103 if (unlikely(!var144
)) {
4104 var_class_name
= type_core__Int
.name
;
4105 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
4106 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
4109 var147
= (long)(var141
)>>2;
4110 var148
= var147
+ 1l;
4113 RET_LABEL143
:(void)0;
4117 var149
= (val
*)(var142
<<2|1);
4118 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_
, var_140
, var149
); /* Direct call hash_collection#HashMap#[]= on <var_:HashMap[String, Int]>*/
4120 if (unlikely(varonce150
==NULL
)) {
4121 var151
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
4122 if (likely(varonce152
!=NULL
)) {
4123 var153
= varonce152
;
4125 var154
= "count_type_test_skipped_";
4126 var155
= core__flat___NativeString___to_s_full(var154
, 24l, 24l);
4128 varonce152
= var153
;
4130 ((struct instance_core__NativeArray
*)var151
)->values
[0]=var153
;
4131 if (likely(varonce156
!=NULL
)) {
4132 var157
= varonce156
;
4135 var159
= core__flat___NativeString___to_s_full(var158
, 3l, 3l);
4137 varonce156
= var157
;
4139 ((struct instance_core__NativeArray
*)var151
)->values
[2]=var157
;
4141 var151
= varonce150
;
4144 ((struct instance_core__NativeArray
*)var151
)->values
[1]=var_tag
;
4146 var160
= ((val
*(*)(val
* self
))(var151
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var151
); /* native_to_s on <var151:NativeArray[String]>*/
4148 varonce150
= var151
;
4150 nitc___nitc__AbstractCompilerVisitor___add(self
, var160
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4159 var161
= ((short int(*)(val
* self
))(var_ntype
->class->vft
[COLOR_nitc__model__MType__need_anchor
]))(var_ntype
); /* need_anchor on <var_ntype:MType>*/
4162 if (likely(varonce162
!=NULL
)) {
4163 var163
= varonce162
;
4165 var164
= "type_struct";
4166 var165
= core__flat___NativeString___to_s_full(var164
, 11l, 11l);
4168 varonce162
= var163
;
4171 var166
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var163
);
4173 var_type_struct
= var166
;
4174 if (unlikely(varonce167
==NULL
)) {
4175 var168
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
4176 if (likely(varonce169
!=NULL
)) {
4177 var170
= varonce169
;
4179 var171
= "const struct type* ";
4180 var172
= core__flat___NativeString___to_s_full(var171
, 19l, 19l);
4182 varonce169
= var170
;
4184 ((struct instance_core__NativeArray
*)var168
)->values
[0]=var170
;
4185 if (likely(varonce173
!=NULL
)) {
4186 var174
= varonce173
;
4189 var176
= core__flat___NativeString___to_s_full(var175
, 1l, 1l);
4191 varonce173
= var174
;
4193 ((struct instance_core__NativeArray
*)var168
)->values
[2]=var174
;
4195 var168
= varonce167
;
4198 ((struct instance_core__NativeArray
*)var168
)->values
[1]=var_type_struct
;
4200 var177
= ((val
*(*)(val
* self
))(var168
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var168
); /* native_to_s on <var168:NativeArray[String]>*/
4202 varonce167
= var168
;
4204 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var177
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateCompilerVisitor>*/
4207 nitc___nitc__SeparateCompilerVisitor___hardening_live_open_type(self
, var_mtype
); /* Direct call separate_compiler#SeparateCompilerVisitor#hardening_live_open_type on <self:SeparateCompilerVisitor>*/
4210 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
4211 var180
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
4213 RET_LABEL179
:(void)0;
4216 if (var178
== NULL
) {
4217 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4218 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1805);
4221 { /* Inline abstract_compiler#StaticFrame#mpropdef (var178) on <var178:nullable StaticFrame> */
4222 if (unlikely(var178
== NULL
)) {
4223 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4224 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1914);
4227 var183
= var178
->attrs
[COLOR_nitc__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var178:nullable StaticFrame> */
4228 if (unlikely(var183
== NULL
)) {
4229 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
4230 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1914);
4234 RET_LABEL182
:(void)0;
4238 { /* Inline model#MPropDef#mclassdef (var181) on <var181:MPropDef> */
4239 var186
= var181
->attrs
[COLOR_nitc__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var181:MPropDef> */
4240 if (unlikely(var186
== NULL
)) {
4241 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
4242 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2227);
4246 RET_LABEL185
:(void)0;
4250 nitc___nitc__SeparateCompilerVisitor___link_unresolved_type(self
, var184
, var_mtype
); /* Direct call separate_compiler#SeparateCompilerVisitor#link_unresolved_type on <self:SeparateCompilerVisitor>*/
4253 var187
= nitc__separate_compiler___MEntity___const_color(var_mtype
);
4256 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var187
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
4258 if (unlikely(varonce188
==NULL
)) {
4259 var189
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
4260 if (likely(varonce190
!=NULL
)) {
4261 var191
= varonce190
;
4264 var193
= core__flat___NativeString___to_s_full(var192
, 3l, 3l);
4266 varonce190
= var191
;
4268 ((struct instance_core__NativeArray
*)var189
)->values
[1]=var191
;
4269 if (likely(varonce194
!=NULL
)) {
4270 var195
= varonce194
;
4272 var196
= "->resolution_table->types[";
4273 var197
= core__flat___NativeString___to_s_full(var196
, 26l, 26l);
4275 varonce194
= var195
;
4277 ((struct instance_core__NativeArray
*)var189
)->values
[3]=var195
;
4278 if (likely(varonce198
!=NULL
)) {
4279 var199
= varonce198
;
4282 var201
= core__flat___NativeString___to_s_full(var200
, 2l, 2l);
4284 varonce198
= var199
;
4286 ((struct instance_core__NativeArray
*)var189
)->values
[5]=var199
;
4288 var189
= varonce188
;
4291 ((struct instance_core__NativeArray
*)var189
)->values
[0]=var_type_struct
;
4292 ((struct instance_core__NativeArray
*)var189
)->values
[2]=var_recv_type_info
;
4294 var202
= nitc__separate_compiler___MEntity___const_color(var_mtype
);
4296 ((struct instance_core__NativeArray
*)var189
)->values
[4]=var202
;
4298 var203
= ((val
*(*)(val
* self
))(var189
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var189
); /* native_to_s on <var189:NativeArray[String]>*/
4300 varonce188
= var189
;
4302 nitc___nitc__AbstractCompilerVisitor___add(self
, var203
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4305 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var_compiler) on <var_compiler:SeparateCompiler> */
4306 var206
= var_compiler
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var_compiler:SeparateCompiler> */
4307 if (unlikely(var206
== NULL
)) {
4308 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
4309 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
4313 RET_LABEL205
:(void)0;
4317 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var204) on <var204:ModelBuilder> */
4318 var209
= var204
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var204:ModelBuilder> */
4319 if (unlikely(var209
== NULL
)) {
4320 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
4321 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
4325 RET_LABEL208
:(void)0;
4329 { /* Inline abstract_compiler#ToolContext#opt_typing_test_metrics (var207) on <var207:ToolContext> */
4330 var212
= var207
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics
].val
; /* _opt_typing_test_metrics on <var207:ToolContext> */
4331 if (unlikely(var212
== NULL
)) {
4332 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
4333 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 60);
4337 RET_LABEL211
:(void)0;
4341 { /* Inline opts#Option#value (var210) on <var210:OptionBool> */
4342 var215
= var210
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var210:OptionBool> */
4344 RET_LABEL214
:(void)0;
4347 var216
= (short int)((long)(var213
)>>2);
4350 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
4351 var219
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
4352 if (unlikely(var219
== NULL
)) {
4353 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
4354 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
4358 RET_LABEL218
:(void)0;
4362 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_unresolved (var217) on <var217:AbstractCompiler(SeparateCompiler)> */
4363 var222
= var217
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_unresolved
].val
; /* _count_type_test_unresolved on <var217:AbstractCompiler(SeparateCompiler)> */
4364 if (unlikely(var222
== NULL
)) {
4365 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_unresolved");
4366 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1047);
4370 RET_LABEL221
:(void)0;
4376 var225
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_223
, var_224
);
4379 { /* Inline kernel#Int#+ (var225,1l) on <var225:nullable Object(Int)> */
4380 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
4381 /* <1l:Int> isa OTHER */
4382 var228
= 1; /* easy <1l:Int> isa OTHER*/
4383 if (unlikely(!var228
)) {
4384 var_class_name231
= type_core__Int
.name
;
4385 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name231
);
4386 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
4389 var232
= (long)(var225
)>>2;
4390 var233
= var232
+ 1l;
4393 RET_LABEL227
:(void)0;
4397 var234
= (val
*)(var226
<<2|1);
4398 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_223
, var_224
, var234
); /* Direct call hash_collection#HashMap#[]= on <var_223:HashMap[String, Int]>*/
4400 if (unlikely(varonce235
==NULL
)) {
4401 var236
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
4402 if (likely(varonce237
!=NULL
)) {
4403 var238
= varonce237
;
4405 var239
= "count_type_test_unresolved_";
4406 var240
= core__flat___NativeString___to_s_full(var239
, 27l, 27l);
4408 varonce237
= var238
;
4410 ((struct instance_core__NativeArray
*)var236
)->values
[0]=var238
;
4411 if (likely(varonce241
!=NULL
)) {
4412 var242
= varonce241
;
4415 var244
= core__flat___NativeString___to_s_full(var243
, 3l, 3l);
4417 varonce241
= var242
;
4419 ((struct instance_core__NativeArray
*)var236
)->values
[2]=var242
;
4421 var236
= varonce235
;
4424 ((struct instance_core__NativeArray
*)var236
)->values
[1]=var_tag
;
4426 var245
= ((val
*(*)(val
* self
))(var236
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var236
); /* native_to_s on <var236:NativeArray[String]>*/
4428 varonce235
= var236
;
4430 nitc___nitc__AbstractCompilerVisitor___add(self
, var245
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4435 nitc___nitc__SeparateCompilerVisitor___hardening_cast_type(self
, var_type_struct
); /* Direct call separate_compiler#SeparateCompilerVisitor#hardening_cast_type on <self:SeparateCompilerVisitor>*/
4437 if (unlikely(varonce246
==NULL
)) {
4438 var247
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
4439 if (likely(varonce248
!=NULL
)) {
4440 var249
= varonce248
;
4443 var251
= core__flat___NativeString___to_s_full(var250
, 3l, 3l);
4445 varonce248
= var249
;
4447 ((struct instance_core__NativeArray
*)var247
)->values
[1]=var249
;
4448 if (likely(varonce252
!=NULL
)) {
4449 var253
= varonce252
;
4451 var254
= "->color;";
4452 var255
= core__flat___NativeString___to_s_full(var254
, 8l, 8l);
4454 varonce252
= var253
;
4456 ((struct instance_core__NativeArray
*)var247
)->values
[3]=var253
;
4458 var247
= varonce246
;
4461 ((struct instance_core__NativeArray
*)var247
)->values
[0]=var_cltype
;
4462 ((struct instance_core__NativeArray
*)var247
)->values
[2]=var_type_struct
;
4464 var256
= ((val
*(*)(val
* self
))(var247
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var247
); /* native_to_s on <var247:NativeArray[String]>*/
4466 varonce246
= var247
;
4468 nitc___nitc__AbstractCompilerVisitor___add(self
, var256
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4470 if (unlikely(varonce257
==NULL
)) {
4471 var258
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
4472 if (likely(varonce259
!=NULL
)) {
4473 var260
= varonce259
;
4476 var262
= core__flat___NativeString___to_s_full(var261
, 3l, 3l);
4478 varonce259
= var260
;
4480 ((struct instance_core__NativeArray
*)var258
)->values
[1]=var260
;
4481 if (likely(varonce263
!=NULL
)) {
4482 var264
= varonce263
;
4485 var266
= core__flat___NativeString___to_s_full(var265
, 5l, 5l);
4487 varonce263
= var264
;
4489 ((struct instance_core__NativeArray
*)var258
)->values
[3]=var264
;
4491 var258
= varonce257
;
4494 ((struct instance_core__NativeArray
*)var258
)->values
[0]=var_idtype
;
4495 ((struct instance_core__NativeArray
*)var258
)->values
[2]=var_type_struct
;
4497 var267
= ((val
*(*)(val
* self
))(var258
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var258
); /* native_to_s on <var258:NativeArray[String]>*/
4499 varonce257
= var258
;
4501 nitc___nitc__AbstractCompilerVisitor___add(self
, var267
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4503 var_269
= var_maybe_null
;
4504 if (var_maybe_null
){
4505 if (likely(varonce270
!=NULL
)) {
4506 var271
= varonce270
;
4509 var273
= core__flat___NativeString___to_s_full(var272
, 1l, 1l);
4511 varonce270
= var271
;
4514 var274
= ((short int(*)(val
* self
, val
* p0
))(var_accept_null
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_accept_null
, var271
); /* == on <var_accept_null:String>*/
4521 if (likely(varonce275
!=NULL
)) {
4522 var276
= varonce275
;
4524 var277
= "is_nullable";
4525 var278
= core__flat___NativeString___to_s_full(var277
, 11l, 11l);
4527 varonce275
= var276
;
4530 var279
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var276
);
4532 var_is_nullable
= var279
;
4533 if (unlikely(varonce280
==NULL
)) {
4534 var281
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
4535 if (likely(varonce282
!=NULL
)) {
4536 var283
= varonce282
;
4538 var284
= "short int ";
4539 var285
= core__flat___NativeString___to_s_full(var284
, 10l, 10l);
4541 varonce282
= var283
;
4543 ((struct instance_core__NativeArray
*)var281
)->values
[0]=var283
;
4544 if (likely(varonce286
!=NULL
)) {
4545 var287
= varonce286
;
4548 var289
= core__flat___NativeString___to_s_full(var288
, 1l, 1l);
4550 varonce286
= var287
;
4552 ((struct instance_core__NativeArray
*)var281
)->values
[2]=var287
;
4554 var281
= varonce280
;
4557 ((struct instance_core__NativeArray
*)var281
)->values
[1]=var_is_nullable
;
4559 var290
= ((val
*(*)(val
* self
))(var281
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var281
); /* native_to_s on <var281:NativeArray[String]>*/
4561 varonce280
= var281
;
4563 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var290
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateCompilerVisitor>*/
4565 if (unlikely(varonce291
==NULL
)) {
4566 var292
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
4567 if (likely(varonce293
!=NULL
)) {
4568 var294
= varonce293
;
4571 var296
= core__flat___NativeString___to_s_full(var295
, 3l, 3l);
4573 varonce293
= var294
;
4575 ((struct instance_core__NativeArray
*)var292
)->values
[1]=var294
;
4576 if (likely(varonce297
!=NULL
)) {
4577 var298
= varonce297
;
4579 var299
= "->is_nullable;";
4580 var300
= core__flat___NativeString___to_s_full(var299
, 14l, 14l);
4582 varonce297
= var298
;
4584 ((struct instance_core__NativeArray
*)var292
)->values
[3]=var298
;
4586 var292
= varonce291
;
4589 ((struct instance_core__NativeArray
*)var292
)->values
[0]=var_is_nullable
;
4590 ((struct instance_core__NativeArray
*)var292
)->values
[2]=var_type_struct
;
4592 var301
= ((val
*(*)(val
* self
))(var292
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var292
); /* native_to_s on <var292:NativeArray[String]>*/
4594 varonce291
= var292
;
4596 nitc___nitc__AbstractCompilerVisitor___add(self
, var301
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4599 var302
= core___core__String___Object__to_s(var_is_nullable
);
4601 var_accept_null
= var302
;
4605 /* <var_ntype:MType> isa MClassType */
4606 cltype304
= type_nitc__MClassType
.color
;
4607 idtype305
= type_nitc__MClassType
.id
;
4608 if(cltype304
>= var_ntype
->type
->table_size
) {
4611 var303
= var_ntype
->type
->type_table
[cltype304
] == idtype305
;
4615 { /* Inline separate_compiler#SeparateCompiler#undead_types (var_compiler) on <var_compiler:SeparateCompiler> */
4616 var308
= var_compiler
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___undead_types
].val
; /* _undead_types on <var_compiler:SeparateCompiler> */
4617 if (unlikely(var308
== NULL
)) {
4618 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _undead_types");
4619 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 146);
4623 RET_LABEL307
:(void)0;
4627 ((void(*)(val
* self
, val
* p0
))((((long)var306
&3)?class_info
[((long)var306
&3)]:var306
->class)->vft
[COLOR_core__abstract_collection__SimpleCollection__add
]))(var306
, var_mtype
); /* add on <var306:Set[MType]>*/
4629 if (unlikely(varonce309
==NULL
)) {
4630 var310
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
4631 if (likely(varonce311
!=NULL
)) {
4632 var312
= varonce311
;
4635 var314
= core__flat___NativeString___to_s_full(var313
, 5l, 5l);
4637 varonce311
= var312
;
4639 ((struct instance_core__NativeArray
*)var310
)->values
[0]=var312
;
4641 var310
= varonce309
;
4645 var315
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType>*/
4647 ((struct instance_core__NativeArray
*)var310
)->values
[1]=var315
;
4649 var316
= ((val
*(*)(val
* self
))(var310
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var310
); /* native_to_s on <var310:NativeArray[String]>*/
4651 varonce309
= var310
;
4653 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var316
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
4655 if (unlikely(varonce317
==NULL
)) {
4656 var318
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
4657 if (likely(varonce319
!=NULL
)) {
4658 var320
= varonce319
;
4661 var322
= core__flat___NativeString___to_s_full(var321
, 7l, 7l);
4663 varonce319
= var320
;
4665 ((struct instance_core__NativeArray
*)var318
)->values
[0]=var320
;
4666 if (likely(varonce323
!=NULL
)) {
4667 var324
= varonce323
;
4670 var326
= core__flat___NativeString___to_s_full(var325
, 1l, 1l);
4672 varonce323
= var324
;
4674 ((struct instance_core__NativeArray
*)var318
)->values
[2]=var324
;
4676 var318
= varonce317
;
4680 var327
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType>*/
4682 ((struct instance_core__NativeArray
*)var318
)->values
[1]=var327
;
4684 var328
= ((val
*(*)(val
* self
))(var318
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var318
); /* native_to_s on <var318:NativeArray[String]>*/
4686 varonce317
= var318
;
4688 nitc___nitc__SeparateCompilerVisitor___hardening_cast_type(self
, var328
); /* Direct call separate_compiler#SeparateCompilerVisitor#hardening_cast_type on <self:SeparateCompilerVisitor>*/
4690 if (unlikely(varonce329
==NULL
)) {
4691 var330
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
4692 if (likely(varonce331
!=NULL
)) {
4693 var332
= varonce331
;
4695 var333
= " = type_";
4696 var334
= core__flat___NativeString___to_s_full(var333
, 8l, 8l);
4698 varonce331
= var332
;
4700 ((struct instance_core__NativeArray
*)var330
)->values
[1]=var332
;
4701 if (likely(varonce335
!=NULL
)) {
4702 var336
= varonce335
;
4705 var338
= core__flat___NativeString___to_s_full(var337
, 7l, 7l);
4707 varonce335
= var336
;
4709 ((struct instance_core__NativeArray
*)var330
)->values
[3]=var336
;
4711 var330
= varonce329
;
4714 ((struct instance_core__NativeArray
*)var330
)->values
[0]=var_cltype
;
4716 var339
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType>*/
4718 ((struct instance_core__NativeArray
*)var330
)->values
[2]=var339
;
4720 var340
= ((val
*(*)(val
* self
))(var330
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var330
); /* native_to_s on <var330:NativeArray[String]>*/
4722 varonce329
= var330
;
4724 nitc___nitc__AbstractCompilerVisitor___add(self
, var340
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4726 if (unlikely(varonce341
==NULL
)) {
4727 var342
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
4728 if (likely(varonce343
!=NULL
)) {
4729 var344
= varonce343
;
4731 var345
= " = type_";
4732 var346
= core__flat___NativeString___to_s_full(var345
, 8l, 8l);
4734 varonce343
= var344
;
4736 ((struct instance_core__NativeArray
*)var342
)->values
[1]=var344
;
4737 if (likely(varonce347
!=NULL
)) {
4738 var348
= varonce347
;
4741 var350
= core__flat___NativeString___to_s_full(var349
, 4l, 4l);
4743 varonce347
= var348
;
4745 ((struct instance_core__NativeArray
*)var342
)->values
[3]=var348
;
4747 var342
= varonce341
;
4750 ((struct instance_core__NativeArray
*)var342
)->values
[0]=var_idtype
;
4752 var351
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype
); /* c_name on <var_mtype:MType>*/
4754 ((struct instance_core__NativeArray
*)var342
)->values
[2]=var351
;
4756 var352
= ((val
*(*)(val
* self
))(var342
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var342
); /* native_to_s on <var342:NativeArray[String]>*/
4758 varonce341
= var342
;
4760 nitc___nitc__AbstractCompilerVisitor___add(self
, var352
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4763 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var_compiler) on <var_compiler:SeparateCompiler> */
4764 var355
= var_compiler
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var_compiler:SeparateCompiler> */
4765 if (unlikely(var355
== NULL
)) {
4766 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
4767 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
4771 RET_LABEL354
:(void)0;
4775 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var353) on <var353:ModelBuilder> */
4776 var358
= var353
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var353:ModelBuilder> */
4777 if (unlikely(var358
== NULL
)) {
4778 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
4779 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
4783 RET_LABEL357
:(void)0;
4787 { /* Inline abstract_compiler#ToolContext#opt_typing_test_metrics (var356) on <var356:ToolContext> */
4788 var361
= var356
->attrs
[COLOR_nitc__abstract_compiler__ToolContext___opt_typing_test_metrics
].val
; /* _opt_typing_test_metrics on <var356:ToolContext> */
4789 if (unlikely(var361
== NULL
)) {
4790 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_typing_test_metrics");
4791 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 60);
4795 RET_LABEL360
:(void)0;
4799 { /* Inline opts#Option#value (var359) on <var359:OptionBool> */
4800 var364
= var359
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var359:OptionBool> */
4802 RET_LABEL363
:(void)0;
4805 var365
= (short int)((long)(var362
)>>2);
4808 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
4809 var368
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
4810 if (unlikely(var368
== NULL
)) {
4811 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
4812 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
4816 RET_LABEL367
:(void)0;
4820 { /* Inline abstract_compiler#AbstractCompiler#count_type_test_resolved (var366) on <var366:AbstractCompiler(SeparateCompiler)> */
4821 var371
= var366
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___count_type_test_resolved
].val
; /* _count_type_test_resolved on <var366:AbstractCompiler(SeparateCompiler)> */
4822 if (unlikely(var371
== NULL
)) {
4823 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _count_type_test_resolved");
4824 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1046);
4828 RET_LABEL370
:(void)0;
4834 var374
= core___core__HashMap___core__abstract_collection__MapRead___91d_93d(var_372
, var_373
);
4837 { /* Inline kernel#Int#+ (var374,1l) on <var374:nullable Object(Int)> */
4838 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
4839 /* <1l:Int> isa OTHER */
4840 var377
= 1; /* easy <1l:Int> isa OTHER*/
4841 if (unlikely(!var377
)) {
4842 var_class_name380
= type_core__Int
.name
;
4843 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name380
);
4844 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 731);
4847 var381
= (long)(var374
)>>2;
4848 var382
= var381
+ 1l;
4851 RET_LABEL376
:(void)0;
4855 var383
= (val
*)(var375
<<2|1);
4856 core___core__HashMap___core__abstract_collection__Map___91d_93d_61d(var_372
, var_373
, var383
); /* Direct call hash_collection#HashMap#[]= on <var_372:HashMap[String, Int]>*/
4858 if (unlikely(varonce384
==NULL
)) {
4859 var385
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
4860 if (likely(varonce386
!=NULL
)) {
4861 var387
= varonce386
;
4863 var388
= "count_type_test_resolved_";
4864 var389
= core__flat___NativeString___to_s_full(var388
, 25l, 25l);
4866 varonce386
= var387
;
4868 ((struct instance_core__NativeArray
*)var385
)->values
[0]=var387
;
4869 if (likely(varonce390
!=NULL
)) {
4870 var391
= varonce390
;
4873 var393
= core__flat___NativeString___to_s_full(var392
, 3l, 3l);
4875 varonce390
= var391
;
4877 ((struct instance_core__NativeArray
*)var385
)->values
[2]=var391
;
4879 var385
= varonce384
;
4882 ((struct instance_core__NativeArray
*)var385
)->values
[1]=var_tag
;
4884 var394
= ((val
*(*)(val
* self
))(var385
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var385
); /* native_to_s on <var385:NativeArray[String]>*/
4886 varonce384
= var385
;
4888 nitc___nitc__AbstractCompilerVisitor___add(self
, var394
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4893 if (unlikely(varonce395
==NULL
)) {
4894 var396
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
4895 if (likely(varonce397
!=NULL
)) {
4896 var398
= varonce397
;
4898 var399
= "PRINT_ERROR(\"NOT YET IMPLEMENTED: type_test(%s, ";
4899 var400
= core__flat___NativeString___to_s_full(var399
, 48l, 48l);
4901 varonce397
= var398
;
4903 ((struct instance_core__NativeArray
*)var396
)->values
[0]=var398
;
4904 if (likely(varonce401
!=NULL
)) {
4905 var402
= varonce401
;
4907 var403
= ").\\n\", \"";
4908 var404
= core__flat___NativeString___to_s_full(var403
, 8l, 8l);
4910 varonce401
= var402
;
4912 ((struct instance_core__NativeArray
*)var396
)->values
[2]=var402
;
4913 if (likely(varonce405
!=NULL
)) {
4914 var406
= varonce405
;
4916 var407
= "\"); fatal_exit(1);";
4917 var408
= core__flat___NativeString___to_s_full(var407
, 18l, 18l);
4919 varonce405
= var406
;
4921 ((struct instance_core__NativeArray
*)var396
)->values
[4]=var406
;
4923 var396
= varonce395
;
4927 var409
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
4929 ((struct instance_core__NativeArray
*)var396
)->values
[1]=var409
;
4931 var410
= nitc___nitc__RuntimeVariable___core__abstract_text__Object__inspect(var_value
);
4933 ((struct instance_core__NativeArray
*)var396
)->values
[3]=var410
;
4935 var411
= ((val
*(*)(val
* self
))(var396
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var396
); /* native_to_s on <var396:NativeArray[String]>*/
4937 varonce395
= var396
;
4939 nitc___nitc__AbstractCompilerVisitor___add(self
, var411
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4943 if (var_maybe_null
){
4944 if (unlikely(varonce412
==NULL
)) {
4945 var413
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
4946 if (likely(varonce414
!=NULL
)) {
4947 var415
= varonce414
;
4950 var417
= core__flat___NativeString___to_s_full(var416
, 3l, 3l);
4952 varonce414
= var415
;
4954 ((struct instance_core__NativeArray
*)var413
)->values
[0]=var415
;
4955 if (likely(varonce418
!=NULL
)) {
4956 var419
= varonce418
;
4958 var420
= " == NULL) {";
4959 var421
= core__flat___NativeString___to_s_full(var420
, 11l, 11l);
4961 varonce418
= var419
;
4963 ((struct instance_core__NativeArray
*)var413
)->values
[2]=var419
;
4965 var413
= varonce412
;
4969 var422
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
4971 ((struct instance_core__NativeArray
*)var413
)->values
[1]=var422
;
4973 var423
= ((val
*(*)(val
* self
))(var413
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var413
); /* native_to_s on <var413:NativeArray[String]>*/
4975 varonce412
= var413
;
4977 nitc___nitc__AbstractCompilerVisitor___add(self
, var423
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
4979 if (unlikely(varonce424
==NULL
)) {
4980 var425
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
4981 if (likely(varonce426
!=NULL
)) {
4982 var427
= varonce426
;
4985 var429
= core__flat___NativeString___to_s_full(var428
, 3l, 3l);
4987 varonce426
= var427
;
4989 ((struct instance_core__NativeArray
*)var425
)->values
[1]=var427
;
4990 if (likely(varonce430
!=NULL
)) {
4991 var431
= varonce430
;
4994 var433
= core__flat___NativeString___to_s_full(var432
, 1l, 1l);
4996 varonce430
= var431
;
4998 ((struct instance_core__NativeArray
*)var425
)->values
[3]=var431
;
5000 var425
= varonce424
;
5004 var434
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
5006 ((struct instance_core__NativeArray
*)var425
)->values
[0]=var434
;
5007 ((struct instance_core__NativeArray
*)var425
)->values
[2]=var_accept_null
;
5009 var435
= ((val
*(*)(val
* self
))(var425
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var425
); /* native_to_s on <var425:NativeArray[String]>*/
5011 varonce424
= var425
;
5013 nitc___nitc__AbstractCompilerVisitor___add(self
, var435
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5015 if (likely(varonce436
!=NULL
)) {
5016 var437
= varonce436
;
5018 var438
= "} else {";
5019 var439
= core__flat___NativeString___to_s_full(var438
, 8l, 8l);
5021 varonce436
= var437
;
5024 nitc___nitc__AbstractCompilerVisitor___add(self
, var437
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5029 var440
= nitc___nitc__SeparateCompilerVisitor___type_info(self
, var_value
);
5031 var_value_type_info
= var440
;
5032 if (unlikely(varonce441
==NULL
)) {
5033 var442
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
5034 if (likely(varonce443
!=NULL
)) {
5035 var444
= varonce443
;
5038 var446
= core__flat___NativeString___to_s_full(var445
, 3l, 3l);
5040 varonce443
= var444
;
5042 ((struct instance_core__NativeArray
*)var442
)->values
[0]=var444
;
5043 if (likely(varonce447
!=NULL
)) {
5044 var448
= varonce447
;
5047 var450
= core__flat___NativeString___to_s_full(var449
, 4l, 4l);
5049 varonce447
= var448
;
5051 ((struct instance_core__NativeArray
*)var442
)->values
[2]=var448
;
5052 if (likely(varonce451
!=NULL
)) {
5053 var452
= varonce451
;
5055 var453
= "->table_size) {";
5056 var454
= core__flat___NativeString___to_s_full(var453
, 15l, 15l);
5058 varonce451
= var452
;
5060 ((struct instance_core__NativeArray
*)var442
)->values
[4]=var452
;
5062 var442
= varonce441
;
5065 ((struct instance_core__NativeArray
*)var442
)->values
[1]=var_cltype
;
5066 ((struct instance_core__NativeArray
*)var442
)->values
[3]=var_value_type_info
;
5068 var455
= ((val
*(*)(val
* self
))(var442
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var442
); /* native_to_s on <var442:NativeArray[String]>*/
5070 varonce441
= var442
;
5072 nitc___nitc__AbstractCompilerVisitor___add(self
, var455
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5074 if (unlikely(varonce456
==NULL
)) {
5075 var457
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
5076 if (likely(varonce458
!=NULL
)) {
5077 var459
= varonce458
;
5080 var461
= core__flat___NativeString___to_s_full(var460
, 5l, 5l);
5082 varonce458
= var459
;
5084 ((struct instance_core__NativeArray
*)var457
)->values
[1]=var459
;
5086 var457
= varonce456
;
5090 var462
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
5092 ((struct instance_core__NativeArray
*)var457
)->values
[0]=var462
;
5094 var463
= ((val
*(*)(val
* self
))(var457
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var457
); /* native_to_s on <var457:NativeArray[String]>*/
5096 varonce456
= var457
;
5098 nitc___nitc__AbstractCompilerVisitor___add(self
, var463
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5100 if (likely(varonce464
!=NULL
)) {
5101 var465
= varonce464
;
5103 var466
= "} else {";
5104 var467
= core__flat___NativeString___to_s_full(var466
, 8l, 8l);
5106 varonce464
= var465
;
5109 nitc___nitc__AbstractCompilerVisitor___add(self
, var465
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5111 if (unlikely(varonce468
==NULL
)) {
5112 var469
= NEW_core__NativeArray(8l, &type_core__NativeArray__core__String
);
5113 if (likely(varonce470
!=NULL
)) {
5114 var471
= varonce470
;
5117 var473
= core__flat___NativeString___to_s_full(var472
, 3l, 3l);
5119 varonce470
= var471
;
5121 ((struct instance_core__NativeArray
*)var469
)->values
[1]=var471
;
5122 if (likely(varonce474
!=NULL
)) {
5123 var475
= varonce474
;
5125 var476
= "->type_table[";
5126 var477
= core__flat___NativeString___to_s_full(var476
, 13l, 13l);
5128 varonce474
= var475
;
5130 ((struct instance_core__NativeArray
*)var469
)->values
[3]=var475
;
5131 if (likely(varonce478
!=NULL
)) {
5132 var479
= varonce478
;
5135 var481
= core__flat___NativeString___to_s_full(var480
, 5l, 5l);
5137 varonce478
= var479
;
5139 ((struct instance_core__NativeArray
*)var469
)->values
[5]=var479
;
5140 if (likely(varonce482
!=NULL
)) {
5141 var483
= varonce482
;
5144 var485
= core__flat___NativeString___to_s_full(var484
, 1l, 1l);
5146 varonce482
= var483
;
5148 ((struct instance_core__NativeArray
*)var469
)->values
[7]=var483
;
5150 var469
= varonce468
;
5154 var486
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
5156 ((struct instance_core__NativeArray
*)var469
)->values
[0]=var486
;
5157 ((struct instance_core__NativeArray
*)var469
)->values
[2]=var_value_type_info
;
5158 ((struct instance_core__NativeArray
*)var469
)->values
[4]=var_cltype
;
5159 ((struct instance_core__NativeArray
*)var469
)->values
[6]=var_idtype
;
5161 var487
= ((val
*(*)(val
* self
))(var469
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var469
); /* native_to_s on <var469:NativeArray[String]>*/
5163 varonce468
= var469
;
5165 nitc___nitc__AbstractCompilerVisitor___add(self
, var487
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5167 if (likely(varonce488
!=NULL
)) {
5168 var489
= varonce488
;
5171 var491
= core__flat___NativeString___to_s_full(var490
, 1l, 1l);
5173 varonce488
= var489
;
5176 nitc___nitc__AbstractCompilerVisitor___add(self
, var489
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5178 if (var_maybe_null
){
5179 if (likely(varonce492
!=NULL
)) {
5180 var493
= varonce492
;
5183 var495
= core__flat___NativeString___to_s_full(var494
, 1l, 1l);
5185 varonce492
= var493
;
5188 nitc___nitc__AbstractCompilerVisitor___add(self
, var493
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5197 /* method separate_compiler#SeparateCompilerVisitor#is_same_type_test for (self: SeparateCompilerVisitor, RuntimeVariable, RuntimeVariable): RuntimeVariable */
5198 val
* nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__is_same_type_test(val
* self
, val
* p0
, val
* p1
) {
5199 val
* var
/* : RuntimeVariable */;
5200 val
* var_value1
/* var value1: RuntimeVariable */;
5201 val
* var_value2
/* var value2: RuntimeVariable */;
5202 val
* var1
/* : MClassType */;
5203 val
* var2
/* : RuntimeVariable */;
5204 val
* var_res
/* var res: RuntimeVariable */;
5205 short int var3
/* : Bool */;
5206 val
* var4
/* : MType */;
5207 val
* var6
/* : MType */;
5208 short int var7
/* : Bool */;
5209 short int var_
/* var : Bool */;
5210 val
* var8
/* : MType */;
5211 val
* var10
/* : MType */;
5212 short int var11
/* : Bool */;
5213 short int var12
/* : Bool */;
5214 val
* var_tmp
/* var tmp: RuntimeVariable */;
5215 val
* var13
/* : MType */;
5216 val
* var15
/* : MType */;
5217 short int var16
/* : Bool */;
5218 val
* var17
/* : MType */;
5219 val
* var19
/* : MType */;
5220 val
* var20
/* : MType */;
5221 val
* var22
/* : MType */;
5222 short int var23
/* : Bool */;
5223 val
* var_other
/* var other: nullable Object */;
5224 short int var25
/* : Bool */;
5225 short int var27
/* : Bool */;
5226 val
* var28
/* : NativeArray[String] */;
5227 static val
* varonce
;
5228 static val
* varonce29
;
5229 val
* var30
/* : String */;
5230 char* var31
/* : NativeString */;
5231 val
* var32
/* : String */;
5232 static val
* varonce33
;
5233 val
* var34
/* : String */;
5234 char* var35
/* : NativeString */;
5235 val
* var36
/* : String */;
5236 static val
* varonce37
;
5237 val
* var38
/* : String */;
5238 char* var39
/* : NativeString */;
5239 val
* var40
/* : String */;
5240 val
* var41
/* : String */;
5241 val
* var42
/* : MType */;
5242 val
* var44
/* : MType */;
5243 val
* var45
/* : String */;
5244 val
* var46
/* : MType */;
5245 val
* var48
/* : MType */;
5246 val
* var49
/* : String */;
5247 val
* var50
/* : String */;
5248 val
* var51
/* : MType */;
5249 val
* var53
/* : MType */;
5250 short int var54
/* : Bool */;
5251 val
* var56
/* : NativeArray[String] */;
5252 static val
* varonce55
;
5253 static val
* varonce57
;
5254 val
* var58
/* : String */;
5255 char* var59
/* : NativeString */;
5256 val
* var60
/* : String */;
5257 static val
* varonce61
;
5258 val
* var62
/* : String */;
5259 char* var63
/* : NativeString */;
5260 val
* var64
/* : String */;
5261 static val
* varonce65
;
5262 val
* var66
/* : String */;
5263 char* var67
/* : NativeString */;
5264 val
* var68
/* : String */;
5265 val
* var69
/* : String */;
5266 val
* var70
/* : MType */;
5267 val
* var72
/* : MType */;
5268 val
* var73
/* : String */;
5269 val
* var74
/* : MType */;
5270 val
* var76
/* : MType */;
5271 val
* var77
/* : String */;
5272 val
* var78
/* : String */;
5273 val
* var79
/* : MType */;
5274 val
* var81
/* : MType */;
5275 short int var82
/* : Bool */;
5278 const char* var_class_name
;
5279 val
* var_mtype1
/* var mtype1: MClassType */;
5280 val
* var84
/* : NativeArray[String] */;
5281 static val
* varonce83
;
5282 static val
* varonce85
;
5283 val
* var86
/* : String */;
5284 char* var87
/* : NativeString */;
5285 val
* var88
/* : String */;
5286 val
* var89
/* : String */;
5287 val
* var90
/* : String */;
5288 val
* var92
/* : NativeArray[String] */;
5289 static val
* varonce91
;
5290 static val
* varonce93
;
5291 val
* var94
/* : String */;
5292 char* var95
/* : NativeString */;
5293 val
* var96
/* : String */;
5294 static val
* varonce97
;
5295 val
* var98
/* : String */;
5296 char* var99
/* : NativeString */;
5297 val
* var100
/* : String */;
5298 static val
* varonce101
;
5299 val
* var102
/* : String */;
5300 char* var103
/* : NativeString */;
5301 val
* var104
/* : String */;
5302 static val
* varonce105
;
5303 val
* var106
/* : String */;
5304 char* var107
/* : NativeString */;
5305 val
* var108
/* : String */;
5306 val
* var109
/* : String */;
5307 val
* var110
/* : String */;
5308 val
* var111
/* : String */;
5309 val
* var112
/* : String */;
5310 val
* var113
/* : String */;
5311 val
* var115
/* : NativeArray[String] */;
5312 static val
* varonce114
;
5313 static val
* varonce116
;
5314 val
* var117
/* : String */;
5315 char* var118
/* : NativeString */;
5316 val
* var119
/* : String */;
5317 static val
* varonce120
;
5318 val
* var121
/* : String */;
5319 char* var122
/* : NativeString */;
5320 val
* var123
/* : String */;
5321 static val
* varonce124
;
5322 val
* var125
/* : String */;
5323 char* var126
/* : NativeString */;
5324 val
* var127
/* : String */;
5325 static val
* varonce128
;
5326 val
* var129
/* : String */;
5327 char* var130
/* : NativeString */;
5328 val
* var131
/* : String */;
5329 static val
* varonce132
;
5330 val
* var133
/* : String */;
5331 char* var134
/* : NativeString */;
5332 val
* var135
/* : String */;
5333 static val
* varonce136
;
5334 val
* var137
/* : String */;
5335 char* var138
/* : NativeString */;
5336 val
* var139
/* : String */;
5337 static val
* varonce140
;
5338 val
* var141
/* : String */;
5339 char* var142
/* : NativeString */;
5340 val
* var143
/* : String */;
5341 val
* var144
/* : String */;
5342 val
* var145
/* : String */;
5343 val
* var146
/* : String */;
5344 val
* var147
/* : String */;
5345 val
* var148
/* : String */;
5346 val
* var149
/* : String */;
5347 val
* var150
/* : String */;
5348 val
* var151
/* : String */;
5352 var1
= nitc___nitc__AbstractCompilerVisitor___bool_type(self
);
5355 var2
= nitc___nitc__AbstractCompilerVisitor___new_var(self
, var1
);
5359 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value2) on <var_value2:RuntimeVariable> */
5360 var6
= var_value2
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value2:RuntimeVariable> */
5361 if (unlikely(var6
== NULL
)) {
5362 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5363 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5371 var7
= ((short int(*)(val
* self
))(var4
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var4
); /* is_c_primitive on <var4:MType>*/
5376 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value1) on <var_value1:RuntimeVariable> */
5377 var10
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value1:RuntimeVariable> */
5378 if (unlikely(var10
== NULL
)) {
5379 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5380 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5388 var11
= ((short int(*)(val
* self
))(var8
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var8
); /* is_c_primitive on <var8:MType>*/
5396 var_tmp
= var_value1
;
5397 var_value1
= var_value2
;
5398 var_value2
= var_tmp
;
5402 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value1) on <var_value1:RuntimeVariable> */
5403 var15
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value1:RuntimeVariable> */
5404 if (unlikely(var15
== NULL
)) {
5405 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5406 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5410 RET_LABEL14
:(void)0;
5414 var16
= ((short int(*)(val
* self
))(var13
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var13
); /* is_c_primitive on <var13:MType>*/
5418 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value2) on <var_value2:RuntimeVariable> */
5419 var19
= var_value2
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value2:RuntimeVariable> */
5420 if (unlikely(var19
== NULL
)) {
5421 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5422 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5426 RET_LABEL18
:(void)0;
5430 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value1) on <var_value1:RuntimeVariable> */
5431 var22
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value1:RuntimeVariable> */
5432 if (unlikely(var22
== NULL
)) {
5433 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5434 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5438 RET_LABEL21
:(void)0;
5442 { /* Inline kernel#Object#== (var17,var20) on <var17:MType> */
5445 { /* Inline kernel#Object#is_same_instance (var17,var_other) on <var17:MType> */
5446 var27
= var17
== var_other
;
5449 RET_LABEL26
:(void)0;
5454 RET_LABEL24
:(void)0;
5458 if (unlikely(varonce
==NULL
)) {
5459 var28
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
5460 if (likely(varonce29
!=NULL
)) {
5463 var31
= " = 1; /* is_same_type_test: compatible types ";
5464 var32
= core__flat___NativeString___to_s_full(var31
, 45l, 45l);
5468 ((struct instance_core__NativeArray
*)var28
)->values
[1]=var30
;
5469 if (likely(varonce33
!=NULL
)) {
5473 var36
= core__flat___NativeString___to_s_full(var35
, 5l, 5l);
5477 ((struct instance_core__NativeArray
*)var28
)->values
[3]=var34
;
5478 if (likely(varonce37
!=NULL
)) {
5482 var40
= core__flat___NativeString___to_s_full(var39
, 3l, 3l);
5486 ((struct instance_core__NativeArray
*)var28
)->values
[5]=var38
;
5492 var41
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
5494 ((struct instance_core__NativeArray
*)var28
)->values
[0]=var41
;
5496 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value1) on <var_value1:RuntimeVariable> */
5497 var44
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value1:RuntimeVariable> */
5498 if (unlikely(var44
== NULL
)) {
5499 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5500 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5504 RET_LABEL43
:(void)0;
5508 var45
= ((val
*(*)(val
* self
))(var42
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var42
); /* to_s on <var42:MType>*/
5510 ((struct instance_core__NativeArray
*)var28
)->values
[2]=var45
;
5512 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value2) on <var_value2:RuntimeVariable> */
5513 var48
= var_value2
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value2:RuntimeVariable> */
5514 if (unlikely(var48
== NULL
)) {
5515 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5516 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5520 RET_LABEL47
:(void)0;
5524 var49
= ((val
*(*)(val
* self
))(var46
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var46
); /* to_s on <var46:MType>*/
5526 ((struct instance_core__NativeArray
*)var28
)->values
[4]=var49
;
5528 var50
= ((val
*(*)(val
* self
))(var28
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var28
); /* native_to_s on <var28:NativeArray[String]>*/
5532 nitc___nitc__AbstractCompilerVisitor___add(self
, var50
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5536 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value2) on <var_value2:RuntimeVariable> */
5537 var53
= var_value2
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value2:RuntimeVariable> */
5538 if (unlikely(var53
== NULL
)) {
5539 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5540 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5544 RET_LABEL52
:(void)0;
5548 var54
= ((short int(*)(val
* self
))(var51
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var51
); /* is_c_primitive on <var51:MType>*/
5551 if (unlikely(varonce55
==NULL
)) {
5552 var56
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
5553 if (likely(varonce57
!=NULL
)) {
5556 var59
= " = 0; /* is_same_type_test: incompatible types ";
5557 var60
= core__flat___NativeString___to_s_full(var59
, 47l, 47l);
5561 ((struct instance_core__NativeArray
*)var56
)->values
[1]=var58
;
5562 if (likely(varonce61
!=NULL
)) {
5566 var64
= core__flat___NativeString___to_s_full(var63
, 5l, 5l);
5570 ((struct instance_core__NativeArray
*)var56
)->values
[3]=var62
;
5571 if (likely(varonce65
!=NULL
)) {
5575 var68
= core__flat___NativeString___to_s_full(var67
, 2l, 2l);
5579 ((struct instance_core__NativeArray
*)var56
)->values
[5]=var66
;
5585 var69
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
5587 ((struct instance_core__NativeArray
*)var56
)->values
[0]=var69
;
5589 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value1) on <var_value1:RuntimeVariable> */
5590 var72
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value1:RuntimeVariable> */
5591 if (unlikely(var72
== NULL
)) {
5592 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5593 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5597 RET_LABEL71
:(void)0;
5601 var73
= ((val
*(*)(val
* self
))(var70
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var70
); /* to_s on <var70:MType>*/
5603 ((struct instance_core__NativeArray
*)var56
)->values
[2]=var73
;
5605 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value2) on <var_value2:RuntimeVariable> */
5606 var76
= var_value2
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value2:RuntimeVariable> */
5607 if (unlikely(var76
== NULL
)) {
5608 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5609 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5613 RET_LABEL75
:(void)0;
5617 var77
= ((val
*(*)(val
* self
))(var74
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var74
); /* to_s on <var74:MType>*/
5619 ((struct instance_core__NativeArray
*)var56
)->values
[4]=var77
;
5621 var78
= ((val
*(*)(val
* self
))(var56
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var56
); /* native_to_s on <var56:NativeArray[String]>*/
5625 nitc___nitc__AbstractCompilerVisitor___add(self
, var78
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5629 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value1) on <var_value1:RuntimeVariable> */
5630 var81
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value1:RuntimeVariable> */
5631 if (unlikely(var81
== NULL
)) {
5632 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
5633 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
5637 RET_LABEL80
:(void)0;
5640 /* <var79:MType> isa MClassType */
5641 cltype
= type_nitc__MClassType
.color
;
5642 idtype
= type_nitc__MClassType
.id
;
5643 if(cltype
>= var79
->type
->table_size
) {
5646 var82
= var79
->type
->type_table
[cltype
] == idtype
;
5648 if (unlikely(!var82
)) {
5649 var_class_name
= var79
== NULL ?
"null" : var79
->type
->name
;
5650 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name
);
5651 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1869);
5655 if (unlikely(varonce83
==NULL
)) {
5656 var84
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
5657 if (likely(varonce85
!=NULL
)) {
5661 var88
= core__flat___NativeString___to_s_full(var87
, 6l, 6l);
5665 ((struct instance_core__NativeArray
*)var84
)->values
[0]=var86
;
5671 var89
= ((val
*(*)(val
* self
))(var_mtype1
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype1
); /* c_name on <var_mtype1:MClassType>*/
5673 ((struct instance_core__NativeArray
*)var84
)->values
[1]=var89
;
5675 var90
= ((val
*(*)(val
* self
))(var84
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var84
); /* native_to_s on <var84:NativeArray[String]>*/
5679 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var90
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
5681 if (unlikely(varonce91
==NULL
)) {
5682 var92
= NEW_core__NativeArray(8l, &type_core__NativeArray__core__String
);
5683 if (likely(varonce93
!=NULL
)) {
5687 var96
= core__flat___NativeString___to_s_full(var95
, 4l, 4l);
5691 ((struct instance_core__NativeArray
*)var92
)->values
[1]=var94
;
5692 if (likely(varonce97
!=NULL
)) {
5695 var99
= " != NULL) && (";
5696 var100
= core__flat___NativeString___to_s_full(var99
, 14l, 14l);
5700 ((struct instance_core__NativeArray
*)var92
)->values
[3]=var98
;
5701 if (likely(varonce101
!=NULL
)) {
5702 var102
= varonce101
;
5704 var103
= " == &class_";
5705 var104
= core__flat___NativeString___to_s_full(var103
, 11l, 11l);
5707 varonce101
= var102
;
5709 ((struct instance_core__NativeArray
*)var92
)->values
[5]=var102
;
5710 if (likely(varonce105
!=NULL
)) {
5711 var106
= varonce105
;
5713 var107
= "); /* is_same_type_test */";
5714 var108
= core__flat___NativeString___to_s_full(var107
, 26l, 26l);
5716 varonce105
= var106
;
5718 ((struct instance_core__NativeArray
*)var92
)->values
[7]=var106
;
5724 var109
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
5726 ((struct instance_core__NativeArray
*)var92
)->values
[0]=var109
;
5728 var110
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
5730 ((struct instance_core__NativeArray
*)var92
)->values
[2]=var110
;
5732 var111
= nitc___nitc__SeparateCompilerVisitor___class_info(self
, var_value2
);
5734 ((struct instance_core__NativeArray
*)var92
)->values
[4]=var111
;
5736 var112
= ((val
*(*)(val
* self
))(var_mtype1
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_mtype1
); /* c_name on <var_mtype1:MClassType>*/
5738 ((struct instance_core__NativeArray
*)var92
)->values
[6]=var112
;
5740 var113
= ((val
*(*)(val
* self
))(var92
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var92
); /* native_to_s on <var92:NativeArray[String]>*/
5744 nitc___nitc__AbstractCompilerVisitor___add(self
, var113
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5749 if (unlikely(varonce114
==NULL
)) {
5750 var115
= NEW_core__NativeArray(14l, &type_core__NativeArray__core__String
);
5751 if (likely(varonce116
!=NULL
)) {
5752 var117
= varonce116
;
5755 var119
= core__flat___NativeString___to_s_full(var118
, 4l, 4l);
5757 varonce116
= var117
;
5759 ((struct instance_core__NativeArray
*)var115
)->values
[1]=var117
;
5760 if (likely(varonce120
!=NULL
)) {
5761 var121
= varonce120
;
5764 var123
= core__flat___NativeString___to_s_full(var122
, 4l, 4l);
5766 varonce120
= var121
;
5768 ((struct instance_core__NativeArray
*)var115
)->values
[3]=var121
;
5769 if (likely(varonce124
!=NULL
)) {
5770 var125
= varonce124
;
5773 var127
= core__flat___NativeString___to_s_full(var126
, 6l, 6l);
5775 varonce124
= var125
;
5777 ((struct instance_core__NativeArray
*)var115
)->values
[5]=var125
;
5778 if (likely(varonce128
!=NULL
)) {
5779 var129
= varonce128
;
5781 var130
= " != NULL && ";
5782 var131
= core__flat___NativeString___to_s_full(var130
, 12l, 12l);
5784 varonce128
= var129
;
5786 ((struct instance_core__NativeArray
*)var115
)->values
[7]=var129
;
5787 if (likely(varonce132
!=NULL
)) {
5788 var133
= varonce132
;
5790 var134
= " != NULL && ";
5791 var135
= core__flat___NativeString___to_s_full(var134
, 12l, 12l);
5793 varonce132
= var133
;
5795 ((struct instance_core__NativeArray
*)var115
)->values
[9]=var133
;
5796 if (likely(varonce136
!=NULL
)) {
5797 var137
= varonce136
;
5800 var139
= core__flat___NativeString___to_s_full(var138
, 4l, 4l);
5802 varonce136
= var137
;
5804 ((struct instance_core__NativeArray
*)var115
)->values
[11]=var137
;
5805 if (likely(varonce140
!=NULL
)) {
5806 var141
= varonce140
;
5808 var142
= "); /* is_same_type_test */";
5809 var143
= core__flat___NativeString___to_s_full(var142
, 26l, 26l);
5811 varonce140
= var141
;
5813 ((struct instance_core__NativeArray
*)var115
)->values
[13]=var141
;
5815 var115
= varonce114
;
5819 var144
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
5821 ((struct instance_core__NativeArray
*)var115
)->values
[0]=var144
;
5823 var145
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
5825 ((struct instance_core__NativeArray
*)var115
)->values
[2]=var145
;
5827 var146
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
5829 ((struct instance_core__NativeArray
*)var115
)->values
[4]=var146
;
5831 var147
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
5833 ((struct instance_core__NativeArray
*)var115
)->values
[6]=var147
;
5835 var148
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
5837 ((struct instance_core__NativeArray
*)var115
)->values
[8]=var148
;
5839 var149
= nitc___nitc__SeparateCompilerVisitor___class_info(self
, var_value1
);
5841 ((struct instance_core__NativeArray
*)var115
)->values
[10]=var149
;
5843 var150
= nitc___nitc__SeparateCompilerVisitor___class_info(self
, var_value2
);
5845 ((struct instance_core__NativeArray
*)var115
)->values
[12]=var150
;
5847 var151
= ((val
*(*)(val
* self
))(var115
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var115
); /* native_to_s on <var115:NativeArray[String]>*/
5849 varonce114
= var115
;
5851 nitc___nitc__AbstractCompilerVisitor___add(self
, var151
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
5859 /* method separate_compiler#SeparateCompilerVisitor#class_name_string for (self: SeparateCompilerVisitor, RuntimeVariable): String */
5860 val
* nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__class_name_string(val
* self
, val
* p0
) {
5861 val
* var
/* : String */;
5862 val
* var_value
/* var value: RuntimeVariable */;
5863 static val
* varonce
;
5864 val
* var1
/* : String */;
5865 char* var2
/* : NativeString */;
5866 val
* var3
/* : String */;
5867 val
* var4
/* : String */;
5868 val
* var_res
/* var res: String */;
5869 val
* var6
/* : NativeArray[String] */;
5870 static val
* varonce5
;
5871 static val
* varonce7
;
5872 val
* var8
/* : String */;
5873 char* var9
/* : NativeString */;
5874 val
* var10
/* : String */;
5875 static val
* varonce11
;
5876 val
* var12
/* : String */;
5877 char* var13
/* : NativeString */;
5878 val
* var14
/* : String */;
5879 val
* var15
/* : String */;
5880 val
* var16
/* : MType */;
5881 val
* var18
/* : MType */;
5882 short int var19
/* : Bool */;
5883 short int var20
/* : Bool */;
5884 val
* var22
/* : NativeArray[String] */;
5885 static val
* varonce21
;
5886 static val
* varonce23
;
5887 val
* var24
/* : String */;
5888 char* var25
/* : NativeString */;
5889 val
* var26
/* : String */;
5890 static val
* varonce27
;
5891 val
* var28
/* : String */;
5892 char* var29
/* : NativeString */;
5893 val
* var30
/* : String */;
5894 static val
* varonce31
;
5895 val
* var32
/* : String */;
5896 char* var33
/* : NativeString */;
5897 val
* var34
/* : String */;
5898 val
* var35
/* : String */;
5899 val
* var36
/* : String */;
5900 val
* var37
/* : String */;
5901 short int var38
/* : Bool */;
5902 short int var39
/* : Bool */;
5903 val
* var40
/* : MType */;
5904 val
* var42
/* : MType */;
5905 short int var43
/* : Bool */;
5908 short int var_
/* var : Bool */;
5909 val
* var44
/* : MType */;
5910 val
* var46
/* : MType */;
5911 short int var47
/* : Bool */;
5914 const char* var_class_name
;
5915 val
* var50
/* : MClass */;
5916 val
* var52
/* : MClass */;
5917 val
* var53
/* : MClassKind */;
5918 val
* var55
/* : MClassKind */;
5919 val
* var56
/* : Sys */;
5920 val
* var57
/* : MClassKind */;
5921 short int var58
/* : Bool */;
5922 val
* var_other
/* var other: nullable Object */;
5923 short int var60
/* : Bool */;
5924 short int var62
/* : Bool */;
5925 short int var_63
/* var : Bool */;
5926 val
* var64
/* : MType */;
5927 val
* var66
/* : MType */;
5928 short int var67
/* : Bool */;
5931 const char* var_class_name70
;
5932 val
* var71
/* : String */;
5933 static val
* varonce72
;
5934 val
* var73
/* : String */;
5935 char* var74
/* : NativeString */;
5936 val
* var75
/* : String */;
5937 short int var76
/* : Bool */;
5938 val
* var_other78
/* var other: nullable Object */;
5939 short int var79
/* : Bool */;
5940 short int var80
/* : Bool */;
5941 val
* var82
/* : NativeArray[String] */;
5942 static val
* varonce81
;
5943 static val
* varonce83
;
5944 val
* var84
/* : String */;
5945 char* var85
/* : NativeString */;
5946 val
* var86
/* : String */;
5947 static val
* varonce87
;
5948 val
* var88
/* : String */;
5949 char* var89
/* : NativeString */;
5950 val
* var90
/* : String */;
5951 val
* var91
/* : MType */;
5952 val
* var93
/* : MType */;
5953 short int var94
/* : Bool */;
5956 const char* var_class_name97
;
5957 val
* var98
/* : MClass */;
5958 val
* var100
/* : MClass */;
5959 val
* var101
/* : String */;
5960 val
* var102
/* : String */;
5961 val
* var104
/* : NativeArray[String] */;
5962 static val
* varonce103
;
5963 static val
* varonce105
;
5964 val
* var106
/* : String */;
5965 char* var107
/* : NativeString */;
5966 val
* var108
/* : String */;
5967 val
* var109
/* : MType */;
5968 val
* var111
/* : MType */;
5969 val
* var112
/* : String */;
5970 val
* var113
/* : String */;
5971 val
* var115
/* : NativeArray[String] */;
5972 static val
* varonce114
;
5973 static val
* varonce116
;
5974 val
* var117
/* : String */;
5975 char* var118
/* : NativeString */;
5976 val
* var119
/* : String */;
5977 static val
* varonce120
;
5978 val
* var121
/* : String */;
5979 char* var122
/* : NativeString */;
5980 val
* var123
/* : String */;
5981 val
* var124
/* : MType */;
5982 val
* var126
/* : MType */;
5983 val
* var127
/* : String */;
5984 val
* var128
/* : String */;
5986 if (likely(varonce
!=NULL
)) {
5989 var2
= "var_class_name";
5990 var3
= core__flat___NativeString___to_s_full(var2
, 14l, 14l);
5995 var4
= nitc___nitc__AbstractCompilerVisitor___get_name(self
, var1
);
5998 if (unlikely(varonce5
==NULL
)) {
5999 var6
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
6000 if (likely(varonce7
!=NULL
)) {
6003 var9
= "const char* ";
6004 var10
= core__flat___NativeString___to_s_full(var9
, 12l, 12l);
6008 ((struct instance_core__NativeArray
*)var6
)->values
[0]=var8
;
6009 if (likely(varonce11
!=NULL
)) {
6013 var14
= core__flat___NativeString___to_s_full(var13
, 1l, 1l);
6017 ((struct instance_core__NativeArray
*)var6
)->values
[2]=var12
;
6022 ((struct instance_core__NativeArray
*)var6
)->values
[1]=var_res
;
6024 var15
= ((val
*(*)(val
* self
))(var6
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var6
); /* native_to_s on <var6:NativeArray[String]>*/
6028 nitc___nitc__AbstractCompilerVisitor___add_decl(self
, var15
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <self:SeparateCompilerVisitor>*/
6031 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
6032 var18
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6033 if (unlikely(var18
== NULL
)) {
6034 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6035 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
6039 RET_LABEL17
:(void)0;
6043 var19
= ((short int(*)(val
* self
))(var16
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var16
); /* is_c_primitive on <var16:MType>*/
6047 if (unlikely(varonce21
==NULL
)) {
6048 var22
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
6049 if (likely(varonce23
!=NULL
)) {
6053 var26
= core__flat___NativeString___to_s_full(var25
, 3l, 3l);
6057 ((struct instance_core__NativeArray
*)var22
)->values
[1]=var24
;
6058 if (likely(varonce27
!=NULL
)) {
6061 var29
= " == NULL ? \"null\" : ";
6062 var30
= core__flat___NativeString___to_s_full(var29
, 20l, 20l);
6066 ((struct instance_core__NativeArray
*)var22
)->values
[3]=var28
;
6067 if (likely(varonce31
!=NULL
)) {
6071 var34
= core__flat___NativeString___to_s_full(var33
, 7l, 7l);
6075 ((struct instance_core__NativeArray
*)var22
)->values
[5]=var32
;
6080 ((struct instance_core__NativeArray
*)var22
)->values
[0]=var_res
;
6082 var35
= ((val
*(*)(val
* self
))(var_value
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value
); /* to_s on <var_value:RuntimeVariable>*/
6084 ((struct instance_core__NativeArray
*)var22
)->values
[2]=var35
;
6086 var36
= nitc___nitc__SeparateCompilerVisitor___type_info(self
, var_value
);
6088 ((struct instance_core__NativeArray
*)var22
)->values
[4]=var36
;
6090 var37
= ((val
*(*)(val
* self
))(var22
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var22
); /* native_to_s on <var22:NativeArray[String]>*/
6094 nitc___nitc__AbstractCompilerVisitor___add(self
, var37
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6098 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
6099 var42
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6100 if (unlikely(var42
== NULL
)) {
6101 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6102 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
6106 RET_LABEL41
:(void)0;
6109 /* <var40:MType> isa MClassType */
6110 cltype
= type_nitc__MClassType
.color
;
6111 idtype
= type_nitc__MClassType
.id
;
6112 if(cltype
>= var40
->type
->table_size
) {
6115 var43
= var40
->type
->type_table
[cltype
] == idtype
;
6120 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
6121 var46
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6122 if (unlikely(var46
== NULL
)) {
6123 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6124 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
6128 RET_LABEL45
:(void)0;
6131 /* <var44:MType> isa MClassType */
6132 cltype48
= type_nitc__MClassType
.color
;
6133 idtype49
= type_nitc__MClassType
.id
;
6134 if(cltype48
>= var44
->type
->table_size
) {
6137 var47
= var44
->type
->type_table
[cltype48
] == idtype49
;
6139 if (unlikely(!var47
)) {
6140 var_class_name
= var44
== NULL ?
"null" : var44
->type
->name
;
6141 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name
);
6142 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1885);
6146 { /* Inline model#MClassType#mclass (var44) on <var44:MType(MClassType)> */
6147 var52
= var44
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var44:MType(MClassType)> */
6148 if (unlikely(var52
== NULL
)) {
6149 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6150 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
6154 RET_LABEL51
:(void)0;
6158 { /* Inline model#MClass#kind (var50) on <var50:MClass> */
6159 var55
= var50
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var50:MClass> */
6160 if (unlikely(var55
== NULL
)) {
6161 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
6162 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
6166 RET_LABEL54
:(void)0;
6171 var57
= nitc__model___core__Sys___extern_kind(var56
);
6174 { /* Inline kernel#Object#== (var53,var57) on <var53:MClassKind> */
6177 { /* Inline kernel#Object#is_same_instance (var53,var_other) on <var53:MClassKind> */
6178 var62
= var53
== var_other
;
6181 RET_LABEL61
:(void)0;
6186 RET_LABEL59
:(void)0;
6196 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
6197 var66
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6198 if (unlikely(var66
== NULL
)) {
6199 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6200 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
6204 RET_LABEL65
:(void)0;
6207 /* <var64:MType> isa MClassType */
6208 cltype68
= type_nitc__MClassType
.color
;
6209 idtype69
= type_nitc__MClassType
.id
;
6210 if(cltype68
>= var64
->type
->table_size
) {
6213 var67
= var64
->type
->type_table
[cltype68
] == idtype69
;
6215 if (unlikely(!var67
)) {
6216 var_class_name70
= var64
== NULL ?
"null" : var64
->type
->name
;
6217 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name70
);
6218 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1886);
6222 var71
= nitc___nitc__MType___nitc__model_base__MEntity__name(var64
);
6224 if (likely(varonce72
!=NULL
)) {
6227 var74
= "NativeString";
6228 var75
= core__flat___NativeString___to_s_full(var74
, 12l, 12l);
6233 { /* Inline kernel#Object#!= (var71,var73) on <var71:String> */
6234 var_other78
= var73
;
6236 var79
= ((short int(*)(val
* self
, val
* p0
))(var71
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var71
, var_other78
); /* == on <var71:String>*/
6241 RET_LABEL77
:(void)0;
6249 if (unlikely(varonce81
==NULL
)) {
6250 var82
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
6251 if (likely(varonce83
!=NULL
)) {
6255 var86
= core__flat___NativeString___to_s_full(var85
, 4l, 4l);
6259 ((struct instance_core__NativeArray
*)var82
)->values
[1]=var84
;
6260 if (likely(varonce87
!=NULL
)) {
6264 var90
= core__flat___NativeString___to_s_full(var89
, 2l, 2l);
6268 ((struct instance_core__NativeArray
*)var82
)->values
[3]=var88
;
6273 ((struct instance_core__NativeArray
*)var82
)->values
[0]=var_res
;
6275 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
6276 var93
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6277 if (unlikely(var93
== NULL
)) {
6278 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6279 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
6283 RET_LABEL92
:(void)0;
6286 /* <var91:MType> isa MClassType */
6287 cltype95
= type_nitc__MClassType
.color
;
6288 idtype96
= type_nitc__MClassType
.id
;
6289 if(cltype95
>= var91
->type
->table_size
) {
6292 var94
= var91
->type
->type_table
[cltype95
] == idtype96
;
6294 if (unlikely(!var94
)) {
6295 var_class_name97
= var91
== NULL ?
"null" : var91
->type
->name
;
6296 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name97
);
6297 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1887);
6301 { /* Inline model#MClassType#mclass (var91) on <var91:MType(MClassType)> */
6302 var100
= var91
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var91:MType(MClassType)> */
6303 if (unlikely(var100
== NULL
)) {
6304 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
6305 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
6309 RET_LABEL99
:(void)0;
6313 var101
= ((val
*(*)(val
* self
))(var98
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var98
); /* to_s on <var98:MClass>*/
6315 ((struct instance_core__NativeArray
*)var82
)->values
[2]=var101
;
6317 var102
= ((val
*(*)(val
* self
))(var82
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var82
); /* native_to_s on <var82:NativeArray[String]>*/
6321 nitc___nitc__AbstractCompilerVisitor___add(self
, var102
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6324 if (unlikely(varonce103
==NULL
)) {
6325 var104
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
6326 if (likely(varonce105
!=NULL
)) {
6327 var106
= varonce105
;
6330 var108
= core__flat___NativeString___to_s_full(var107
, 5l, 5l);
6332 varonce105
= var106
;
6334 ((struct instance_core__NativeArray
*)var104
)->values
[0]=var106
;
6336 var104
= varonce103
;
6340 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
6341 var111
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6342 if (unlikely(var111
== NULL
)) {
6343 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6344 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
6348 RET_LABEL110
:(void)0;
6352 var112
= ((val
*(*)(val
* self
))(var109
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var109
); /* c_name on <var109:MType>*/
6354 ((struct instance_core__NativeArray
*)var104
)->values
[1]=var112
;
6356 var113
= ((val
*(*)(val
* self
))(var104
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var104
); /* native_to_s on <var104:NativeArray[String]>*/
6358 varonce103
= var104
;
6360 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var113
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
6362 if (unlikely(varonce114
==NULL
)) {
6363 var115
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
6364 if (likely(varonce116
!=NULL
)) {
6365 var117
= varonce116
;
6367 var118
= " = type_";
6368 var119
= core__flat___NativeString___to_s_full(var118
, 8l, 8l);
6370 varonce116
= var117
;
6372 ((struct instance_core__NativeArray
*)var115
)->values
[1]=var117
;
6373 if (likely(varonce120
!=NULL
)) {
6374 var121
= varonce120
;
6377 var123
= core__flat___NativeString___to_s_full(var122
, 6l, 6l);
6379 varonce120
= var121
;
6381 ((struct instance_core__NativeArray
*)var115
)->values
[3]=var121
;
6383 var115
= varonce114
;
6386 ((struct instance_core__NativeArray
*)var115
)->values
[0]=var_res
;
6388 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value) on <var_value:RuntimeVariable> */
6389 var126
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value:RuntimeVariable> */
6390 if (unlikely(var126
== NULL
)) {
6391 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
6392 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
6396 RET_LABEL125
:(void)0;
6400 var127
= ((val
*(*)(val
* self
))(var124
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var124
); /* c_name on <var124:MType>*/
6402 ((struct instance_core__NativeArray
*)var115
)->values
[2]=var127
;
6404 var128
= ((val
*(*)(val
* self
))(var115
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var115
); /* native_to_s on <var115:NativeArray[String]>*/
6406 varonce114
= var115
;
6408 nitc___nitc__AbstractCompilerVisitor___add(self
, var128
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
6417 /* method separate_compiler#SeparateCompilerVisitor#equal_test for (self: SeparateCompilerVisitor, RuntimeVariable, RuntimeVariable): RuntimeVariable */
6418 val
* nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__equal_test(val
* self
, val
* p0
, val
* p1
) {
6419 val
* var
/* : RuntimeVariable */;
6420 val
* var_value1
/* var value1: RuntimeVariable */;
6421 val
* var_value2
/* var value2: RuntimeVariable */;
6422 val
* var1
/* : MClassType */;
6423 val
* var2
/* : RuntimeVariable */;
6424 val
* var_res
/* var res: RuntimeVariable */;
6425 short int var3
/* : Bool */;
6426 val
* var4
/* : MType */;
6427 val
* var6
/* : MType */;
6428 short int var7
/* : Bool */;
6429 short int var_
/* var : Bool */;
6430 val
* var8
/* : MType */;
6431 val
* var10
/* : MType */;
6432 short int var11
/* : Bool */;
6433 short int var12
/* : Bool */;
6434 val
* var_tmp
/* var tmp: RuntimeVariable */;
6435 val
* var13
/* : MType */;
6436 val
* var15
/* : MType */;
6437 short int var16
/* : Bool */;
6438 val
* var17
/* : MType */;
6439 val
* var19
/* : MType */;
6440 val
* var_t1
/* var t1: MType */;
6441 val
* var20
/* : MType */;
6442 val
* var22
/* : MType */;
6443 short int var23
/* : Bool */;
6444 val
* var_other
/* var other: nullable Object */;
6445 short int var25
/* : Bool */;
6446 short int var27
/* : Bool */;
6447 val
* var28
/* : MType */;
6448 val
* var30
/* : MType */;
6449 short int var31
/* : Bool */;
6450 short int var33
/* : Bool */;
6451 short int var35
/* : Bool */;
6452 val
* var36
/* : NativeArray[String] */;
6453 static val
* varonce
;
6454 static val
* varonce37
;
6455 val
* var38
/* : String */;
6456 char* var39
/* : NativeString */;
6457 val
* var40
/* : String */;
6458 static val
* varonce41
;
6459 val
* var42
/* : String */;
6460 char* var43
/* : NativeString */;
6461 val
* var44
/* : String */;
6462 static val
* varonce45
;
6463 val
* var46
/* : String */;
6464 char* var47
/* : NativeString */;
6465 val
* var48
/* : String */;
6466 val
* var49
/* : String */;
6467 val
* var50
/* : String */;
6468 val
* var51
/* : String */;
6469 val
* var52
/* : String */;
6470 val
* var53
/* : Array[String] */;
6471 val
* var_tests
/* var tests: Array[String] */;
6472 val
* var54
/* : MType */;
6473 val
* var56
/* : MType */;
6474 val
* var_t2
/* var t2: MType */;
6475 short int var57
/* : Bool */;
6478 val
* var59
/* : NativeArray[String] */;
6479 static val
* varonce58
;
6480 static val
* varonce60
;
6481 val
* var61
/* : String */;
6482 char* var62
/* : NativeString */;
6483 val
* var63
/* : String */;
6484 static val
* varonce64
;
6485 val
* var65
/* : String */;
6486 char* var66
/* : NativeString */;
6487 val
* var67
/* : String */;
6488 val
* var68
/* : String */;
6489 val
* var69
/* : String */;
6490 val
* var70
/* : MType */;
6491 val
* var72
/* : MType */;
6492 short int var73
/* : Bool */;
6495 val
* var77
/* : NativeArray[String] */;
6496 static val
* varonce76
;
6497 static val
* varonce78
;
6498 val
* var79
/* : String */;
6499 char* var80
/* : NativeString */;
6500 val
* var81
/* : String */;
6501 static val
* varonce82
;
6502 val
* var83
/* : String */;
6503 char* var84
/* : NativeString */;
6504 val
* var85
/* : String */;
6505 static val
* varonce86
;
6506 val
* var87
/* : String */;
6507 char* var88
/* : NativeString */;
6508 val
* var89
/* : String */;
6509 val
* var90
/* : String */;
6510 val
* var91
/* : String */;
6511 val
* var92
/* : String */;
6512 val
* var93
/* : String */;
6513 short int var94
/* : Bool */;
6514 short int var96
/* : Bool */;
6515 short int var98
/* : Bool */;
6516 short int var99
/* : Bool */;
6517 val
* var101
/* : NativeArray[String] */;
6518 static val
* varonce100
;
6519 static val
* varonce102
;
6520 val
* var103
/* : String */;
6521 char* var104
/* : NativeString */;
6522 val
* var105
/* : String */;
6523 static val
* varonce106
;
6524 val
* var107
/* : String */;
6525 char* var108
/* : NativeString */;
6526 val
* var109
/* : String */;
6527 static val
* varonce110
;
6528 val
* var111
/* : String */;
6529 char* var112
/* : NativeString */;
6530 val
* var113
/* : String */;
6531 val
* var114
/* : String */;
6532 val
* var115
/* : String */;
6533 val
* var116
/* : String */;
6534 val
* var117
/* : String */;
6535 short int var118
/* : Bool */;
6536 short int var120
/* : Bool */;
6537 val
* var122
/* : NativeArray[String] */;
6538 static val
* varonce121
;
6539 static val
* varonce123
;
6540 val
* var124
/* : String */;
6541 char* var125
/* : NativeString */;
6542 val
* var126
/* : String */;
6543 static val
* varonce127
;
6544 val
* var128
/* : String */;
6545 char* var129
/* : NativeString */;
6546 val
* var130
/* : String */;
6547 static val
* varonce131
;
6548 val
* var132
/* : String */;
6549 char* var133
/* : NativeString */;
6550 val
* var134
/* : String */;
6551 val
* var135
/* : String */;
6552 long var136
/* : Int */;
6553 long var138
/* : Int */;
6554 val
* var139
/* : String */;
6555 val
* var140
/* : String */;
6556 val
* var142
/* : NativeArray[String] */;
6557 static val
* varonce141
;
6558 static val
* varonce143
;
6559 val
* var144
/* : String */;
6560 char* var145
/* : NativeString */;
6561 val
* var146
/* : String */;
6562 val
* var147
/* : String */;
6563 val
* var148
/* : String */;
6564 val
* var150
/* : NativeArray[String] */;
6565 static val
* varonce149
;
6566 static val
* varonce151
;
6567 val
* var152
/* : String */;
6568 char* var153
/* : NativeString */;
6569 val
* var154
/* : String */;
6570 static val
* varonce155
;
6571 val
* var156
/* : String */;
6572 char* var157
/* : NativeString */;
6573 val
* var158
/* : String */;
6574 static val
* varonce159
;
6575 val
* var160
/* : String */;
6576 char* var161
/* : NativeString */;
6577 val
* var162
/* : String */;
6578 val
* var163
/* : String */;
6579 val
* var164
/* : String */;
6580 val
* var165
/* : String */;
6581 short int var166
/* : Bool */;
6582 val
* var168
/* : NativeArray[String] */;
6583 static val
* varonce167
;
6584 static val
* varonce169
;
6585 val
* var170
/* : String */;
6586 char* var171
/* : NativeString */;
6587 val
* var172
/* : String */;
6588 static val
* varonce173
;
6589 val
* var174
/* : String */;
6590 char* var175
/* : NativeString */;
6591 val
* var176
/* : String */;
6592 static val
* varonce177
;
6593 val
* var178
/* : String */;
6594 char* var179
/* : NativeString */;
6595 val
* var180
/* : String */;
6596 val
* var181
/* : String */;
6597 val
* var182
/* : String */;
6598 val
* var184
/* : NativeArray[String] */;
6599 static val
* varonce183
;
6600 static val
* varonce185
;
6601 val
* var186
/* : String */;
6602 char* var187
/* : NativeString */;
6603 val
* var188
/* : String */;
6604 static val
* varonce189
;
6605 val
* var190
/* : String */;
6606 char* var191
/* : NativeString */;
6607 val
* var192
/* : String */;
6608 static val
* varonce193
;
6609 val
* var194
/* : String */;
6610 char* var195
/* : NativeString */;
6611 val
* var196
/* : String */;
6612 val
* var197
/* : String */;
6613 val
* var198
/* : RuntimeVariable */;
6614 val
* var199
/* : String */;
6615 val
* var200
/* : String */;
6616 val
* var201
/* : String */;
6617 short int var202
/* : Bool */;
6618 val
* var204
/* : NativeArray[String] */;
6619 static val
* varonce203
;
6620 static val
* varonce205
;
6621 val
* var206
/* : String */;
6622 char* var207
/* : NativeString */;
6623 val
* var208
/* : String */;
6624 static val
* varonce209
;
6625 val
* var210
/* : String */;
6626 char* var211
/* : NativeString */;
6627 val
* var212
/* : String */;
6628 val
* var213
/* : String */;
6629 val
* var214
/* : String */;
6630 short int var_maybe_null
/* var maybe_null: Bool */;
6631 val
* var215
/* : Array[String] */;
6632 val
* var_test
/* var test: Array[String] */;
6633 val
* var216
/* : MType */;
6634 val
* var218
/* : MType */;
6635 val
* var_t1219
/* var t1: MType */;
6636 short int var220
/* : Bool */;
6639 val
* var224
/* : NativeArray[String] */;
6640 static val
* varonce223
;
6641 static val
* varonce225
;
6642 val
* var226
/* : String */;
6643 char* var227
/* : NativeString */;
6644 val
* var228
/* : String */;
6645 val
* var229
/* : String */;
6646 val
* var230
/* : String */;
6647 val
* var231
/* : MType */;
6648 val
* var233
/* : MType */;
6649 val
* var234
/* : MType */;
6650 val
* var236
/* : MType */;
6651 val
* var_t2237
/* var t2: MType */;
6652 short int var238
/* : Bool */;
6655 val
* var242
/* : NativeArray[String] */;
6656 static val
* varonce241
;
6657 static val
* varonce243
;
6658 val
* var244
/* : String */;
6659 char* var245
/* : NativeString */;
6660 val
* var246
/* : String */;
6661 val
* var247
/* : String */;
6662 val
* var248
/* : String */;
6663 val
* var249
/* : MType */;
6664 val
* var251
/* : MType */;
6665 short int var_incompatible
/* var incompatible: Bool */;
6666 short int var252
/* : Bool */;
6667 val
* var_primitive
/* var primitive: nullable Object */;
6668 short int var253
/* : Bool */;
6669 short int var255
/* : Bool */;
6670 short int var257
/* : Bool */;
6671 short int var258
/* : Bool */;
6672 short int var259
/* : Bool */;
6673 short int var260
/* : Bool */;
6674 short int var262
/* : Bool */;
6675 val
* var264
/* : NativeArray[String] */;
6676 static val
* varonce263
;
6677 static val
* varonce265
;
6678 val
* var266
/* : String */;
6679 char* var267
/* : NativeString */;
6680 val
* var268
/* : String */;
6681 static val
* varonce269
;
6682 val
* var270
/* : String */;
6683 char* var271
/* : NativeString */;
6684 val
* var272
/* : String */;
6685 static val
* varonce273
;
6686 val
* var274
/* : String */;
6687 char* var275
/* : NativeString */;
6688 val
* var276
/* : String */;
6689 val
* var277
/* : String */;
6690 val
* var278
/* : String */;
6691 val
* var279
/* : String */;
6692 val
* var280
/* : String */;
6693 val
* var281
/* : AbstractCompiler */;
6694 val
* var283
/* : AbstractCompiler */;
6695 val
* var284
/* : ModelBuilder */;
6696 val
* var286
/* : ModelBuilder */;
6697 val
* var287
/* : ToolContext */;
6698 val
* var289
/* : ToolContext */;
6699 val
* var290
/* : OptionBool */;
6700 val
* var292
/* : OptionBool */;
6701 val
* var293
/* : nullable Object */;
6702 val
* var295
/* : nullable Object */;
6703 short int var296
/* : Bool */;
6704 short int var297
/* : Bool */;
6705 val
* var299
/* : NativeArray[String] */;
6706 static val
* varonce298
;
6707 static val
* varonce300
;
6708 val
* var301
/* : String */;
6709 char* var302
/* : NativeString */;
6710 val
* var303
/* : String */;
6711 static val
* varonce304
;
6712 val
* var305
/* : String */;
6713 char* var306
/* : NativeString */;
6714 val
* var307
/* : String */;
6715 val
* var308
/* : String */;
6716 val
* var309
/* : String */;
6717 val
* var311
/* : NativeArray[String] */;
6718 static val
* varonce310
;
6719 static val
* varonce312
;
6720 val
* var313
/* : String */;
6721 char* var314
/* : NativeString */;
6722 val
* var315
/* : String */;
6723 static val
* varonce316
;
6724 val
* var317
/* : String */;
6725 char* var318
/* : NativeString */;
6726 val
* var319
/* : String */;
6727 val
* var320
/* : String */;
6728 val
* var321
/* : String */;
6729 val
* var322
/* : String */;
6730 short int var323
/* : Bool */;
6731 short int var324
/* : Bool */;
6732 short int var325
/* : Bool */;
6733 short int var327
/* : Bool */;
6734 val
* var329
/* : NativeArray[String] */;
6735 static val
* varonce328
;
6736 static val
* varonce330
;
6737 val
* var331
/* : String */;
6738 char* var332
/* : NativeString */;
6739 val
* var333
/* : String */;
6740 static val
* varonce334
;
6741 val
* var335
/* : String */;
6742 char* var336
/* : NativeString */;
6743 val
* var337
/* : String */;
6744 static val
* varonce338
;
6745 val
* var339
/* : String */;
6746 char* var340
/* : NativeString */;
6747 val
* var341
/* : String */;
6748 val
* var342
/* : String */;
6749 val
* var343
/* : String */;
6750 val
* var344
/* : String */;
6751 val
* var345
/* : String */;
6752 val
* var346
/* : AbstractCompiler */;
6753 val
* var348
/* : AbstractCompiler */;
6754 val
* var349
/* : ModelBuilder */;
6755 val
* var351
/* : ModelBuilder */;
6756 val
* var352
/* : ToolContext */;
6757 val
* var354
/* : ToolContext */;
6758 val
* var355
/* : OptionBool */;
6759 val
* var357
/* : OptionBool */;
6760 val
* var358
/* : nullable Object */;
6761 val
* var360
/* : nullable Object */;
6762 short int var361
/* : Bool */;
6763 short int var362
/* : Bool */;
6764 val
* var364
/* : NativeArray[String] */;
6765 static val
* varonce363
;
6766 static val
* varonce365
;
6767 val
* var366
/* : String */;
6768 char* var367
/* : NativeString */;
6769 val
* var368
/* : String */;
6770 static val
* varonce369
;
6771 val
* var370
/* : String */;
6772 char* var371
/* : NativeString */;
6773 val
* var372
/* : String */;
6774 val
* var373
/* : String */;
6775 val
* var374
/* : String */;
6776 val
* var376
/* : NativeArray[String] */;
6777 static val
* varonce375
;
6778 static val
* varonce377
;
6779 val
* var378
/* : String */;
6780 char* var379
/* : NativeString */;
6781 val
* var380
/* : String */;
6782 static val
* varonce381
;
6783 val
* var382
/* : String */;
6784 char* var383
/* : NativeString */;
6785 val
* var384
/* : String */;
6786 val
* var385
/* : String */;
6787 val
* var386
/* : String */;
6788 val
* var387
/* : String */;
6789 val
* var389
/* : NativeArray[String] */;
6790 static val
* varonce388
;
6791 static val
* varonce390
;
6792 val
* var391
/* : String */;
6793 char* var392
/* : NativeString */;
6794 val
* var393
/* : String */;
6795 static val
* varonce394
;
6796 val
* var395
/* : String */;
6797 char* var396
/* : NativeString */;
6798 val
* var397
/* : String */;
6799 static val
* varonce398
;
6800 val
* var399
/* : String */;
6801 char* var400
/* : NativeString */;
6802 val
* var401
/* : String */;
6803 static val
* varonce402
;
6804 val
* var403
/* : String */;
6805 char* var404
/* : NativeString */;
6806 val
* var405
/* : String */;
6807 static val
* varonce406
;
6808 val
* var407
/* : String */;
6809 char* var408
/* : NativeString */;
6810 val
* var409
/* : String */;
6811 val
* var410
/* : String */;
6812 val
* var411
/* : String */;
6813 val
* var412
/* : String */;
6814 val
* var413
/* : String */;
6815 val
* var414
/* : String */;
6816 val
* var415
/* : String */;
6817 val
* var417
/* : NativeArray[String] */;
6818 static val
* varonce416
;
6819 static val
* varonce418
;
6820 val
* var419
/* : String */;
6821 char* var420
/* : NativeString */;
6822 val
* var421
/* : String */;
6823 static val
* varonce422
;
6824 val
* var423
/* : String */;
6825 char* var424
/* : NativeString */;
6826 val
* var425
/* : String */;
6827 static val
* varonce426
;
6828 val
* var427
/* : String */;
6829 char* var428
/* : NativeString */;
6830 val
* var429
/* : String */;
6831 val
* var430
/* : String */;
6832 val
* var431
/* : String */;
6833 val
* var432
/* : String */;
6834 val
* var433
/* : String */;
6835 short int var434
/* : Bool */;
6836 short int var435
/* : Bool */;
6837 val
* var_other437
/* var other: nullable Object */;
6838 short int var438
/* : Bool */;
6839 short int var439
/* : Bool */;
6840 short int var440
/* : Bool */;
6841 short int var442
/* : Bool */;
6842 val
* var444
/* : NativeArray[String] */;
6843 static val
* varonce443
;
6844 static val
* varonce445
;
6845 val
* var446
/* : String */;
6846 char* var447
/* : NativeString */;
6847 val
* var448
/* : String */;
6848 static val
* varonce449
;
6849 val
* var450
/* : String */;
6850 char* var451
/* : NativeString */;
6851 val
* var452
/* : String */;
6852 static val
* varonce453
;
6853 val
* var454
/* : String */;
6854 char* var455
/* : NativeString */;
6855 val
* var456
/* : String */;
6856 val
* var457
/* : String */;
6857 val
* var458
/* : String */;
6858 val
* var459
/* : String */;
6859 val
* var460
/* : String */;
6860 val
* var462
/* : NativeArray[String] */;
6861 static val
* varonce461
;
6862 static val
* varonce463
;
6863 val
* var464
/* : String */;
6864 char* var465
/* : NativeString */;
6865 val
* var466
/* : String */;
6866 static val
* varonce467
;
6867 val
* var468
/* : String */;
6868 char* var469
/* : NativeString */;
6869 val
* var470
/* : String */;
6870 static val
* varonce471
;
6871 val
* var472
/* : String */;
6872 char* var473
/* : NativeString */;
6873 val
* var474
/* : String */;
6874 static val
* varonce475
;
6875 val
* var476
/* : String */;
6876 char* var477
/* : NativeString */;
6877 val
* var478
/* : String */;
6878 static val
* varonce479
;
6879 val
* var480
/* : String */;
6880 char* var481
/* : NativeString */;
6881 val
* var482
/* : String */;
6882 val
* var483
/* : String */;
6883 val
* var484
/* : String */;
6884 val
* var485
/* : String */;
6885 val
* var486
/* : String */;
6886 val
* var487
/* : String */;
6887 short int var488
/* : Bool */;
6888 short int var489
/* : Bool */;
6889 short int var_490
/* var : Bool */;
6890 short int var491
/* : Bool */;
6891 val
* var492
/* : AbstractCompiler */;
6892 val
* var494
/* : AbstractCompiler */;
6893 val
* var495
/* : ModelBuilder */;
6894 val
* var497
/* : ModelBuilder */;
6895 val
* var498
/* : ToolContext */;
6896 val
* var500
/* : ToolContext */;
6897 val
* var501
/* : OptionBool */;
6898 val
* var503
/* : OptionBool */;
6899 val
* var504
/* : nullable Object */;
6900 val
* var506
/* : nullable Object */;
6901 short int var507
/* : Bool */;
6902 short int var508
/* : Bool */;
6903 val
* var510
/* : NativeArray[String] */;
6904 static val
* varonce509
;
6905 static val
* varonce511
;
6906 val
* var512
/* : String */;
6907 char* var513
/* : NativeString */;
6908 val
* var514
/* : String */;
6909 static val
* varonce515
;
6910 val
* var516
/* : String */;
6911 char* var517
/* : NativeString */;
6912 val
* var518
/* : String */;
6913 static val
* varonce519
;
6914 val
* var520
/* : String */;
6915 char* var521
/* : NativeString */;
6916 val
* var522
/* : String */;
6917 val
* var523
/* : String */;
6918 val
* var524
/* : String */;
6919 val
* var525
/* : String */;
6920 val
* var527
/* : NativeArray[String] */;
6921 static val
* varonce526
;
6922 static val
* varonce528
;
6923 val
* var529
/* : String */;
6924 char* var530
/* : NativeString */;
6925 val
* var531
/* : String */;
6926 static val
* varonce532
;
6927 val
* var533
/* : String */;
6928 char* var534
/* : NativeString */;
6929 val
* var535
/* : String */;
6930 val
* var536
/* : String */;
6931 val
* var537
/* : String */;
6932 val
* var538
/* : String */;
6933 val
* var539
/* : Array[String] */;
6934 val
* var_s
/* var s: Array[String] */;
6935 val
* var540
/* : AbstractCompiler */;
6936 val
* var542
/* : AbstractCompiler */;
6937 val
* var543
/* : HashMap[MClass, Int] */;
6938 val
* var545
/* : HashMap[MClass, Int] */;
6939 val
* var_546
/* var : HashMap[MClass, Int] */;
6940 val
* var547
/* : MapIterator[nullable Object, nullable Object] */;
6941 val
* var_548
/* var : MapIterator[MClass, Int] */;
6942 short int var549
/* : Bool */;
6943 val
* var550
/* : nullable Object */;
6944 val
* var_t
/* var t: MClass */;
6945 val
* var551
/* : nullable Object */;
6946 long var552
/* : Int */;
6947 long var_v
/* var v: Int */;
6948 val
* var553
/* : MClassType */;
6949 val
* var555
/* : MClassType */;
6950 short int var556
/* : Bool */;
6951 short int var558
/* : Bool */;
6952 val
* var561
/* : NativeArray[String] */;
6953 static val
* varonce560
;
6954 static val
* varonce562
;
6955 val
* var563
/* : String */;
6956 char* var564
/* : NativeString */;
6957 val
* var565
/* : String */;
6958 static val
* varonce566
;
6959 val
* var567
/* : String */;
6960 char* var568
/* : NativeString */;
6961 val
* var569
/* : String */;
6962 static val
* varonce570
;
6963 val
* var571
/* : String */;
6964 char* var572
/* : NativeString */;
6965 val
* var573
/* : String */;
6966 static val
* varonce574
;
6967 val
* var575
/* : String */;
6968 char* var576
/* : NativeString */;
6969 val
* var577
/* : String */;
6970 static val
* varonce578
;
6971 val
* var579
/* : String */;
6972 char* var580
/* : NativeString */;
6973 val
* var581
/* : String */;
6974 static val
* varonce582
;
6975 val
* var583
/* : String */;
6976 char* var584
/* : NativeString */;
6977 val
* var585
/* : String */;
6978 static val
* varonce586
;
6979 val
* var587
/* : String */;
6980 char* var588
/* : NativeString */;
6981 val
* var589
/* : String */;
6982 val
* var590
/* : String */;
6983 val
* var591
/* : String */;
6984 val
* var592
/* : String */;
6985 val
* var593
/* : String */;
6986 val
* var594
/* : String */;
6987 val
* var595
/* : String */;
6988 val
* var596
/* : String */;
6989 short int var598
/* : Bool */;
6990 val
* var600
/* : NativeArray[String] */;
6991 static val
* varonce599
;
6992 static val
* varonce601
;
6993 val
* var602
/* : String */;
6994 char* var603
/* : NativeString */;
6995 val
* var604
/* : String */;
6996 static val
* varonce605
;
6997 val
* var606
/* : String */;
6998 char* var607
/* : NativeString */;
6999 val
* var608
/* : String */;
7000 static val
* varonce609
;
7001 val
* var610
/* : String */;
7002 char* var611
/* : NativeString */;
7003 val
* var612
/* : String */;
7004 val
* var613
/* : String */;
7005 val
* var614
/* : String */;
7006 val
* var615
/* : String */;
7007 val
* var616
/* : String */;
7008 val
* var618
/* : NativeArray[String] */;
7009 static val
* varonce617
;
7010 static val
* varonce619
;
7011 val
* var620
/* : String */;
7012 char* var621
/* : NativeString */;
7013 val
* var622
/* : String */;
7014 static val
* varonce623
;
7015 val
* var624
/* : String */;
7016 char* var625
/* : NativeString */;
7017 val
* var626
/* : String */;
7018 static val
* varonce627
;
7019 val
* var628
/* : String */;
7020 char* var629
/* : NativeString */;
7021 val
* var630
/* : String */;
7022 val
* var631
/* : String */;
7023 val
* var632
/* : String */;
7024 val
* var634
/* : NativeArray[String] */;
7025 static val
* varonce633
;
7026 static val
* varonce635
;
7027 val
* var636
/* : String */;
7028 char* var637
/* : NativeString */;
7029 val
* var638
/* : String */;
7030 static val
* varonce639
;
7031 val
* var640
/* : String */;
7032 char* var641
/* : NativeString */;
7033 val
* var642
/* : String */;
7034 static val
* varonce643
;
7035 val
* var644
/* : String */;
7036 char* var645
/* : NativeString */;
7037 val
* var646
/* : String */;
7038 val
* var647
/* : String */;
7039 val
* var648
/* : String */;
7040 val
* var649
/* : String */;
7041 val
* var650
/* : String */;
7042 val
* var652
/* : NativeArray[String] */;
7043 static val
* varonce651
;
7044 static val
* varonce653
;
7045 val
* var654
/* : String */;
7046 char* var655
/* : NativeString */;
7047 val
* var656
/* : String */;
7048 static val
* varonce657
;
7049 val
* var658
/* : String */;
7050 char* var659
/* : NativeString */;
7051 val
* var660
/* : String */;
7052 static val
* varonce661
;
7053 val
* var662
/* : String */;
7054 char* var663
/* : NativeString */;
7055 val
* var664
/* : String */;
7056 static val
* varonce665
;
7057 val
* var666
/* : String */;
7058 char* var667
/* : NativeString */;
7059 val
* var668
/* : String */;
7060 val
* var669
/* : String */;
7061 val
* var670
/* : String */;
7062 val
* var671
/* : String */;
7063 static val
* varonce672
;
7064 val
* var673
/* : String */;
7065 char* var674
/* : NativeString */;
7066 val
* var675
/* : String */;
7067 val
* var676
/* : String */;
7068 val
* var677
/* : String */;
7072 var1
= nitc___nitc__AbstractCompilerVisitor___bool_type(self
);
7075 var2
= nitc___nitc__AbstractCompilerVisitor___new_var(self
, var1
);
7079 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value2) on <var_value2:RuntimeVariable> */
7080 var6
= var_value2
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value2:RuntimeVariable> */
7081 if (unlikely(var6
== NULL
)) {
7082 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
7083 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
7091 var7
= ((short int(*)(val
* self
))(var4
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var4
); /* is_c_primitive on <var4:MType>*/
7096 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value1) on <var_value1:RuntimeVariable> */
7097 var10
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value1:RuntimeVariable> */
7098 if (unlikely(var10
== NULL
)) {
7099 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
7100 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
7108 var11
= ((short int(*)(val
* self
))(var8
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var8
); /* is_c_primitive on <var8:MType>*/
7116 var_tmp
= var_value1
;
7117 var_value1
= var_value2
;
7118 var_value2
= var_tmp
;
7122 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value1) on <var_value1:RuntimeVariable> */
7123 var15
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value1:RuntimeVariable> */
7124 if (unlikely(var15
== NULL
)) {
7125 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
7126 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
7130 RET_LABEL14
:(void)0;
7134 var16
= ((short int(*)(val
* self
))(var13
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var13
); /* is_c_primitive on <var13:MType>*/
7138 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value1) on <var_value1:RuntimeVariable> */
7139 var19
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value1:RuntimeVariable> */
7140 if (unlikely(var19
== NULL
)) {
7141 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
7142 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
7146 RET_LABEL18
:(void)0;
7151 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_value1) on <var_value1:RuntimeVariable> */
7152 var22
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_value1:RuntimeVariable> */
7153 if (unlikely(var22
== NULL
)) {
7154 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
7155 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
7159 RET_LABEL21
:(void)0;
7163 { /* Inline kernel#Object#== (var_t1,var20) on <var_t1:MType> */
7166 { /* Inline kernel#Object#is_same_instance (var_t1,var_other) on <var_t1:MType> */
7167 var27
= var_t1
== var_other
;
7170 RET_LABEL26
:(void)0;
7175 RET_LABEL24
:(void)0;
7178 if (unlikely(!var23
)) {
7179 PRINT_ERROR("Runtime error: %s", "Assert failed");
7180 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 1905);
7184 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_value2) on <var_value2:RuntimeVariable> */
7185 var30
= var_value2
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_value2:RuntimeVariable> */
7186 if (unlikely(var30
== NULL
)) {
7187 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
7188 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1870);
7192 RET_LABEL29
:(void)0;
7196 { /* Inline kernel#Object#== (var28,var_t1) on <var28:MType> */
7199 { /* Inline kernel#Object#is_same_instance (var28,var_other) on <var28:MType> */
7200 var35
= var28
== var_other
;
7203 RET_LABEL34
:(void)0;
7208 RET_LABEL32
:(void)0;
7212 if (unlikely(varonce
==NULL
)) {
7213 var36
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
7214 if (likely(varonce37
!=NULL
)) {
7218 var40
= core__flat___NativeString___to_s_full(var39
, 3l, 3l);
7222 ((struct instance_core__NativeArray
*)var36
)->values
[1]=var38
;
7223 if (likely(varonce41
!=NULL
)) {
7227 var44
= core__flat___NativeString___to_s_full(var43
, 4l, 4l);
7231 ((struct instance_core__NativeArray
*)var36
)->values
[3]=var42
;
7232 if (likely(varonce45
!=NULL
)) {
7236 var48
= core__flat___NativeString___to_s_full(var47
, 1l, 1l);
7240 ((struct instance_core__NativeArray
*)var36
)->values
[5]=var46
;
7246 var49
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
7248 ((struct instance_core__NativeArray
*)var36
)->values
[0]=var49
;
7250 var50
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
7252 ((struct instance_core__NativeArray
*)var36
)->values
[2]=var50
;
7254 var51
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
7256 ((struct instance_core__NativeArray
*)var36
)->values
[4]=var51
;
7258 var52
= ((val
*(*)(val
* self
))(var36
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var36
); /* native_to_s on <var36:NativeArray[String]>*/
7262 nitc___nitc__AbstractCompilerVisitor___add(self
, var52
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
7268 var53
= NEW_core__Array(&type_core__Array__core__String
);
7270 core___core__Array___core__kernel__Object__init(var53
); /* Direct call array#Array#init on <var53:Array[String]>*/
7274 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_value2) on <var_value2:RuntimeVariable> */
7275 var56
= var_value2
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_value2:RuntimeVariable> */
7276 if (unlikely(var56
== NULL
)) {
7277 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
7278 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
7282 RET_LABEL55
:(void)0;
7286 /* <var_t2:MType> isa MNullableType */
7287 cltype
= type_nitc__MNullableType
.color
;
7288 idtype
= type_nitc__MNullableType
.id
;
7289 if(cltype
>= var_t2
->type
->table_size
) {
7292 var57
= var_t2
->type
->type_table
[cltype
] == idtype
;
7295 if (unlikely(varonce58
==NULL
)) {
7296 var59
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
7297 if (likely(varonce60
!=NULL
)) {
7301 var63
= core__flat___NativeString___to_s_full(var62
, 1l, 1l);
7305 ((struct instance_core__NativeArray
*)var59
)->values
[0]=var61
;
7306 if (likely(varonce64
!=NULL
)) {
7309 var66
= " != NULL)";
7310 var67
= core__flat___NativeString___to_s_full(var66
, 9l, 9l);
7314 ((struct instance_core__NativeArray
*)var59
)->values
[2]=var65
;
7320 var68
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
7322 ((struct instance_core__NativeArray
*)var59
)->values
[1]=var68
;
7324 var69
= ((val
*(*)(val
* self
))(var59
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var59
); /* native_to_s on <var59:NativeArray[String]>*/
7328 core___core__Array___core__abstract_collection__SimpleCollection__add(var_tests
, var69
); /* Direct call array#Array#add on <var_tests:Array[String]>*/
7331 { /* Inline model#MProxyType#mtype (var_t2) on <var_t2:MType(MNullableType)> */
7332 var72
= var_t2
->attrs
[COLOR_nitc__model__MProxyType___mtype
].val
; /* _mtype on <var_t2:MType(MNullableType)> */
7333 if (unlikely(var72
== NULL
)) {
7334 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
7335 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1625);
7339 RET_LABEL71
:(void)0;
7344 /* <var_t2:MType> isa MNullType */
7345 cltype74
= type_nitc__MNullType
.color
;
7346 idtype75
= type_nitc__MNullType
.id
;
7347 if(cltype74
>= var_t2
->type
->table_size
) {
7350 var73
= var_t2
->type
->type_table
[cltype74
] == idtype75
;
7353 if (unlikely(varonce76
==NULL
)) {
7354 var77
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
7355 if (likely(varonce78
!=NULL
)) {
7358 var80
= " = 0; /* incompatible types ";
7359 var81
= core__flat___NativeString___to_s_full(var80
, 28l, 28l);
7363 ((struct instance_core__NativeArray
*)var77
)->values
[1]=var79
;
7364 if (likely(varonce82
!=NULL
)) {
7368 var85
= core__flat___NativeString___to_s_full(var84
, 5l, 5l);
7372 ((struct instance_core__NativeArray
*)var77
)->values
[3]=var83
;
7373 if (likely(varonce86
!=NULL
)) {
7377 var89
= core__flat___NativeString___to_s_full(var88
, 2l, 2l);
7381 ((struct instance_core__NativeArray
*)var77
)->values
[5]=var87
;
7387 var90
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
7389 ((struct instance_core__NativeArray
*)var77
)->values
[0]=var90
;
7391 var91
= ((val
*(*)(val
* self
))(var_t1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t1
); /* to_s on <var_t1:MType>*/
7393 ((struct instance_core__NativeArray
*)var77
)->values
[2]=var91
;
7395 var92
= ((val
*(*)(val
* self
))(var_t2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t2
); /* to_s on <var_t2:MType(MNullType)>*/
7397 ((struct instance_core__NativeArray
*)var77
)->values
[4]=var92
;
7399 var93
= ((val
*(*)(val
* self
))(var77
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var77
); /* native_to_s on <var77:NativeArray[String]>*/
7403 nitc___nitc__AbstractCompilerVisitor___add(self
, var93
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
7411 { /* Inline kernel#Object#== (var_t2,var_t1) on <var_t2:MType> */
7414 { /* Inline kernel#Object#is_same_instance (var_t2,var_other) on <var_t2:MType> */
7415 var98
= var_t2
== var_other
;
7418 RET_LABEL97
:(void)0;
7423 RET_LABEL95
:(void)0;
7429 var99
= ((short int(*)(val
* self
))(var_t2
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var_t2
); /* is_c_primitive on <var_t2:MType>*/
7432 if (unlikely(varonce100
==NULL
)) {
7433 var101
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
7434 if (likely(varonce102
!=NULL
)) {
7435 var103
= varonce102
;
7437 var104
= " = 0; /* incompatible types ";
7438 var105
= core__flat___NativeString___to_s_full(var104
, 28l, 28l);
7440 varonce102
= var103
;
7442 ((struct instance_core__NativeArray
*)var101
)->values
[1]=var103
;
7443 if (likely(varonce106
!=NULL
)) {
7444 var107
= varonce106
;
7447 var109
= core__flat___NativeString___to_s_full(var108
, 5l, 5l);
7449 varonce106
= var107
;
7451 ((struct instance_core__NativeArray
*)var101
)->values
[3]=var107
;
7452 if (likely(varonce110
!=NULL
)) {
7453 var111
= varonce110
;
7456 var113
= core__flat___NativeString___to_s_full(var112
, 2l, 2l);
7458 varonce110
= var111
;
7460 ((struct instance_core__NativeArray
*)var101
)->values
[5]=var111
;
7462 var101
= varonce100
;
7466 var114
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
7468 ((struct instance_core__NativeArray
*)var101
)->values
[0]=var114
;
7470 var115
= ((val
*(*)(val
* self
))(var_t1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t1
); /* to_s on <var_t1:MType>*/
7472 ((struct instance_core__NativeArray
*)var101
)->values
[2]=var115
;
7474 var116
= ((val
*(*)(val
* self
))(var_t2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t2
); /* to_s on <var_t2:MType>*/
7476 ((struct instance_core__NativeArray
*)var101
)->values
[4]=var116
;
7478 var117
= ((val
*(*)(val
* self
))(var101
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var101
); /* native_to_s on <var101:NativeArray[String]>*/
7480 varonce100
= var101
;
7482 nitc___nitc__AbstractCompilerVisitor___add(self
, var117
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
7488 { /* Inline separate_compiler#MType#is_tagged (var_t1) on <var_t1:MType> */
7489 var120
= var_t1
->attrs
[COLOR_nitc__separate_compiler__MType___is_tagged
].s
; /* _is_tagged on <var_t1:MType> */
7491 RET_LABEL119
:(void)0;
7495 if (unlikely(varonce121
==NULL
)) {
7496 var122
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
7497 if (likely(varonce123
!=NULL
)) {
7498 var124
= varonce123
;
7501 var126
= core__flat___NativeString___to_s_full(var125
, 1l, 1l);
7503 varonce123
= var124
;
7505 ((struct instance_core__NativeArray
*)var122
)->values
[0]=var124
;
7506 if (likely(varonce127
!=NULL
)) {
7507 var128
= varonce127
;
7510 var130
= core__flat___NativeString___to_s_full(var129
, 4l, 4l);
7512 varonce127
= var128
;
7514 ((struct instance_core__NativeArray
*)var122
)->values
[2]=var128
;
7515 if (likely(varonce131
!=NULL
)) {
7516 var132
= varonce131
;
7519 var134
= core__flat___NativeString___to_s_full(var133
, 1l, 1l);
7521 varonce131
= var132
;
7523 ((struct instance_core__NativeArray
*)var122
)->values
[4]=var132
;
7525 var122
= varonce121
;
7529 var135
= nitc___nitc__SeparateCompilerVisitor___extract_tag(self
, var_value2
);
7531 ((struct instance_core__NativeArray
*)var122
)->values
[1]=var135
;
7533 { /* Inline separate_compiler#MType#tag_value (var_t1) on <var_t1:MType> */
7534 var138
= var_t1
->attrs
[COLOR_nitc__separate_compiler__MType___tag_value
].l
; /* _tag_value on <var_t1:MType> */
7536 RET_LABEL137
:(void)0;
7539 var139
= core__flat___Int___core__abstract_text__Object__to_s(var136
);
7540 ((struct instance_core__NativeArray
*)var122
)->values
[3]=var139
;
7542 var140
= ((val
*(*)(val
* self
))(var122
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var122
); /* native_to_s on <var122:NativeArray[String]>*/
7544 varonce121
= var122
;
7546 core___core__Array___core__abstract_collection__SimpleCollection__add(var_tests
, var140
); /* Direct call array#Array#add on <var_tests:Array[String]>*/
7549 if (unlikely(varonce141
==NULL
)) {
7550 var142
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
7551 if (likely(varonce143
!=NULL
)) {
7552 var144
= varonce143
;
7555 var146
= core__flat___NativeString___to_s_full(var145
, 6l, 6l);
7557 varonce143
= var144
;
7559 ((struct instance_core__NativeArray
*)var142
)->values
[0]=var144
;
7561 var142
= varonce141
;
7565 var147
= ((val
*(*)(val
* self
))(var_t1
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_t1
); /* c_name on <var_t1:MType>*/
7567 ((struct instance_core__NativeArray
*)var142
)->values
[1]=var147
;
7569 var148
= ((val
*(*)(val
* self
))(var142
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var142
); /* native_to_s on <var142:NativeArray[String]>*/
7571 varonce141
= var142
;
7573 nitc___nitc__AbstractCompilerVisitor___require_declaration(self
, var148
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
7575 if (unlikely(varonce149
==NULL
)) {
7576 var150
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
7577 if (likely(varonce151
!=NULL
)) {
7578 var152
= varonce151
;
7581 var154
= core__flat___NativeString___to_s_full(var153
, 1l, 1l);
7583 varonce151
= var152
;
7585 ((struct instance_core__NativeArray
*)var150
)->values
[0]=var152
;
7586 if (likely(varonce155
!=NULL
)) {
7587 var156
= varonce155
;
7589 var157
= " == &class_";
7590 var158
= core__flat___NativeString___to_s_full(var157
, 11l, 11l);
7592 varonce155
= var156
;
7594 ((struct instance_core__NativeArray
*)var150
)->values
[2]=var156
;
7595 if (likely(varonce159
!=NULL
)) {
7596 var160
= varonce159
;
7599 var162
= core__flat___NativeString___to_s_full(var161
, 1l, 1l);
7601 varonce159
= var160
;
7603 ((struct instance_core__NativeArray
*)var150
)->values
[4]=var160
;
7605 var150
= varonce149
;
7609 var163
= nitc___nitc__SeparateCompilerVisitor___class_info(self
, var_value2
);
7611 ((struct instance_core__NativeArray
*)var150
)->values
[1]=var163
;
7613 var164
= ((val
*(*)(val
* self
))(var_t1
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_t1
); /* c_name on <var_t1:MType>*/
7615 ((struct instance_core__NativeArray
*)var150
)->values
[3]=var164
;
7617 var165
= ((val
*(*)(val
* self
))(var150
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var150
); /* native_to_s on <var150:NativeArray[String]>*/
7619 varonce149
= var150
;
7621 core___core__Array___core__abstract_collection__SimpleCollection__add(var_tests
, var165
); /* Direct call array#Array#add on <var_tests:Array[String]>*/
7627 var166
= core___core__Collection___not_empty(var_tests
);
7630 if (unlikely(varonce167
==NULL
)) {
7631 var168
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
7632 if (likely(varonce169
!=NULL
)) {
7633 var170
= varonce169
;
7636 var172
= core__flat___NativeString___to_s_full(var171
, 4l, 4l);
7638 varonce169
= var170
;
7640 ((struct instance_core__NativeArray
*)var168
)->values
[0]=var170
;
7641 if (likely(varonce173
!=NULL
)) {
7642 var174
= varonce173
;
7645 var176
= core__flat___NativeString___to_s_full(var175
, 3l, 3l);
7647 varonce173
= var174
;
7649 ((struct instance_core__NativeArray
*)var168
)->values
[2]=var174
;
7651 var168
= varonce167
;
7654 if (likely(varonce177
!=NULL
)) {
7655 var178
= varonce177
;
7658 var180
= core__flat___NativeString___to_s_full(var179
, 4l, 4l);
7660 varonce177
= var178
;
7663 var181
= core__abstract_text___Collection___join(var_tests
, var178
);
7665 ((struct instance_core__NativeArray
*)var168
)->values
[1]=var181
;
7667 var182
= ((val
*(*)(val
* self
))(var168
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var168
); /* native_to_s on <var168:NativeArray[String]>*/
7669 varonce167
= var168
;
7671 nitc___nitc__AbstractCompilerVisitor___add(self
, var182
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
7675 if (unlikely(varonce183
==NULL
)) {
7676 var184
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
7677 if (likely(varonce185
!=NULL
)) {
7678 var186
= varonce185
;
7681 var188
= core__flat___NativeString___to_s_full(var187
, 3l, 3l);
7683 varonce185
= var186
;
7685 ((struct instance_core__NativeArray
*)var184
)->values
[1]=var186
;
7686 if (likely(varonce189
!=NULL
)) {
7687 var190
= varonce189
;
7690 var192
= core__flat___NativeString___to_s_full(var191
, 4l, 4l);
7692 varonce189
= var190
;
7694 ((struct instance_core__NativeArray
*)var184
)->values
[3]=var190
;
7695 if (likely(varonce193
!=NULL
)) {
7696 var194
= varonce193
;
7699 var196
= core__flat___NativeString___to_s_full(var195
, 1l, 1l);
7701 varonce193
= var194
;
7703 ((struct instance_core__NativeArray
*)var184
)->values
[5]=var194
;
7705 var184
= varonce183
;
7709 var197
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
7711 ((struct instance_core__NativeArray
*)var184
)->values
[0]=var197
;
7713 var198
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__autobox(self
, var_value2
, var_t1
);
7716 var199
= ((val
*(*)(val
* self
))(var198
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var198
); /* to_s on <var198:RuntimeVariable>*/
7718 ((struct instance_core__NativeArray
*)var184
)->values
[2]=var199
;
7720 var200
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
7722 ((struct instance_core__NativeArray
*)var184
)->values
[4]=var200
;
7724 var201
= ((val
*(*)(val
* self
))(var184
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var184
); /* native_to_s on <var184:NativeArray[String]>*/
7726 varonce183
= var184
;
7728 nitc___nitc__AbstractCompilerVisitor___add(self
, var201
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
7731 var202
= core___core__Collection___not_empty(var_tests
);
7734 if (unlikely(varonce203
==NULL
)) {
7735 var204
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
7736 if (likely(varonce205
!=NULL
)) {
7737 var206
= varonce205
;
7740 var208
= core__flat___NativeString___to_s_full(var207
, 7l, 7l);
7742 varonce205
= var206
;
7744 ((struct instance_core__NativeArray
*)var204
)->values
[0]=var206
;
7745 if (likely(varonce209
!=NULL
)) {
7746 var210
= varonce209
;
7749 var212
= core__flat___NativeString___to_s_full(var211
, 5l, 5l);
7751 varonce209
= var210
;
7753 ((struct instance_core__NativeArray
*)var204
)->values
[2]=var210
;
7755 var204
= varonce203
;
7759 var213
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
7761 ((struct instance_core__NativeArray
*)var204
)->values
[1]=var213
;
7763 var214
= ((val
*(*)(val
* self
))(var204
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var204
); /* native_to_s on <var204:NativeArray[String]>*/
7765 varonce203
= var204
;
7767 nitc___nitc__AbstractCompilerVisitor___add(self
, var214
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
7776 var215
= NEW_core__Array(&type_core__Array__core__String
);
7778 core___core__Array___core__kernel__Object__init(var215
); /* Direct call array#Array#init on <var215:Array[String]>*/
7782 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_value1) on <var_value1:RuntimeVariable> */
7783 var218
= var_value1
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_value1:RuntimeVariable> */
7784 if (unlikely(var218
== NULL
)) {
7785 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
7786 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
7790 RET_LABEL217
:(void)0;
7794 /* <var_t1219:MType> isa MNullableType */
7795 cltype221
= type_nitc__MNullableType
.color
;
7796 idtype222
= type_nitc__MNullableType
.id
;
7797 if(cltype221
>= var_t1219
->type
->table_size
) {
7800 var220
= var_t1219
->type
->type_table
[cltype221
] == idtype222
;
7803 if (unlikely(varonce223
==NULL
)) {
7804 var224
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
7805 if (likely(varonce225
!=NULL
)) {
7806 var226
= varonce225
;
7808 var227
= " != NULL";
7809 var228
= core__flat___NativeString___to_s_full(var227
, 8l, 8l);
7811 varonce225
= var226
;
7813 ((struct instance_core__NativeArray
*)var224
)->values
[1]=var226
;
7815 var224
= varonce223
;
7819 var229
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
7821 ((struct instance_core__NativeArray
*)var224
)->values
[0]=var229
;
7823 var230
= ((val
*(*)(val
* self
))(var224
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var224
); /* native_to_s on <var224:NativeArray[String]>*/
7825 varonce223
= var224
;
7827 core___core__Array___core__abstract_collection__SimpleCollection__add(var_test
, var230
); /* Direct call array#Array#add on <var_test:Array[String]>*/
7830 { /* Inline model#MProxyType#mtype (var_t1219) on <var_t1219:MType(MNullableType)> */
7831 var233
= var_t1219
->attrs
[COLOR_nitc__model__MProxyType___mtype
].val
; /* _mtype on <var_t1219:MType(MNullableType)> */
7832 if (unlikely(var233
== NULL
)) {
7833 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
7834 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1625);
7838 RET_LABEL232
:(void)0;
7846 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_value2) on <var_value2:RuntimeVariable> */
7847 var236
= var_value2
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_value2:RuntimeVariable> */
7848 if (unlikely(var236
== NULL
)) {
7849 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
7850 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
7854 RET_LABEL235
:(void)0;
7858 /* <var_t2237:MType> isa MNullableType */
7859 cltype239
= type_nitc__MNullableType
.color
;
7860 idtype240
= type_nitc__MNullableType
.id
;
7861 if(cltype239
>= var_t2237
->type
->table_size
) {
7864 var238
= var_t2237
->type
->type_table
[cltype239
] == idtype240
;
7867 if (unlikely(varonce241
==NULL
)) {
7868 var242
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
7869 if (likely(varonce243
!=NULL
)) {
7870 var244
= varonce243
;
7872 var245
= " != NULL";
7873 var246
= core__flat___NativeString___to_s_full(var245
, 8l, 8l);
7875 varonce243
= var244
;
7877 ((struct instance_core__NativeArray
*)var242
)->values
[1]=var244
;
7879 var242
= varonce241
;
7883 var247
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
7885 ((struct instance_core__NativeArray
*)var242
)->values
[0]=var247
;
7887 var248
= ((val
*(*)(val
* self
))(var242
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var242
); /* native_to_s on <var242:NativeArray[String]>*/
7889 varonce241
= var242
;
7891 core___core__Array___core__abstract_collection__SimpleCollection__add(var_test
, var248
); /* Direct call array#Array#add on <var_test:Array[String]>*/
7894 { /* Inline model#MProxyType#mtype (var_t2237) on <var_t2237:MType(MNullableType)> */
7895 var251
= var_t2237
->attrs
[COLOR_nitc__model__MProxyType___mtype
].val
; /* _mtype on <var_t2237:MType(MNullableType)> */
7896 if (unlikely(var251
== NULL
)) {
7897 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
7898 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1625);
7902 RET_LABEL250
:(void)0;
7909 var_incompatible
= 0;
7911 var252
= ((short int(*)(val
* self
))(var_t1219
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var_t1219
); /* is_c_primitive on <var_t1219:MType>*/
7914 var_primitive
= var_t1219
;
7916 { /* Inline kernel#Object#== (var_t1219,var_t2237) on <var_t1219:MType> */
7917 var_other
= var_t2237
;
7919 { /* Inline kernel#Object#is_same_instance (var_t1219,var_other) on <var_t1219:MType> */
7920 var257
= var_t1219
== var_other
;
7923 RET_LABEL256
:(void)0;
7928 RET_LABEL254
:(void)0;
7934 var258
= ((short int(*)(val
* self
))(var_t2237
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var_t2237
); /* is_c_primitive on <var_t2237:MType>*/
7937 var_incompatible
= 1;
7940 var259
= nitc___nitc__SeparateCompilerVisitor___can_be_primitive(self
, var_value2
);
7944 { /* Inline separate_compiler#MType#is_tagged (var_t1219) on <var_t1219:MType> */
7945 var262
= var_t1219
->attrs
[COLOR_nitc__separate_compiler__MType___is_tagged
].s
; /* _is_tagged on <var_t1219:MType> */
7947 RET_LABEL261
:(void)0;
7951 if (unlikely(varonce263
==NULL
)) {
7952 var264
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
7953 if (likely(varonce265
!=NULL
)) {
7954 var266
= varonce265
;
7957 var268
= core__flat___NativeString___to_s_full(var267
, 3l, 3l);
7959 varonce265
= var266
;
7961 ((struct instance_core__NativeArray
*)var264
)->values
[1]=var266
;
7962 if (likely(varonce269
!=NULL
)) {
7963 var270
= varonce269
;
7966 var272
= core__flat___NativeString___to_s_full(var271
, 4l, 4l);
7968 varonce269
= var270
;
7970 ((struct instance_core__NativeArray
*)var264
)->values
[3]=var270
;
7971 if (likely(varonce273
!=NULL
)) {
7972 var274
= varonce273
;
7975 var276
= core__flat___NativeString___to_s_full(var275
, 1l, 1l);
7977 varonce273
= var274
;
7979 ((struct instance_core__NativeArray
*)var264
)->values
[5]=var274
;
7981 var264
= varonce263
;
7985 var277
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
7987 ((struct instance_core__NativeArray
*)var264
)->values
[0]=var277
;
7989 var278
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
7991 ((struct instance_core__NativeArray
*)var264
)->values
[2]=var278
;
7993 var279
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
7995 ((struct instance_core__NativeArray
*)var264
)->values
[4]=var279
;
7997 var280
= ((val
*(*)(val
* self
))(var264
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var264
); /* native_to_s on <var264:NativeArray[String]>*/
7999 varonce263
= var264
;
8001 nitc___nitc__AbstractCompilerVisitor___add(self
, var280
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8008 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
8009 var283
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
8010 if (unlikely(var283
== NULL
)) {
8011 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8012 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
8016 RET_LABEL282
:(void)0;
8020 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var281) on <var281:AbstractCompiler(SeparateCompiler)> */
8021 var286
= var281
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var281:AbstractCompiler(SeparateCompiler)> */
8022 if (unlikely(var286
== NULL
)) {
8023 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
8024 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
8028 RET_LABEL285
:(void)0;
8032 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var284) on <var284:ModelBuilder> */
8033 var289
= var284
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var284:ModelBuilder> */
8034 if (unlikely(var289
== NULL
)) {
8035 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
8036 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
8040 RET_LABEL288
:(void)0;
8044 { /* Inline separate_compiler#ToolContext#opt_no_tag_primitives (var287) on <var287:ToolContext> */
8045 var292
= var287
->attrs
[COLOR_nitc__separate_compiler__ToolContext___opt_no_tag_primitives
].val
; /* _opt_no_tag_primitives on <var287:ToolContext> */
8046 if (unlikely(var292
== NULL
)) {
8047 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_tag_primitives");
8048 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 32);
8052 RET_LABEL291
:(void)0;
8056 { /* Inline opts#Option#value (var290) on <var290:OptionBool> */
8057 var295
= var290
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var290:OptionBool> */
8059 RET_LABEL294
:(void)0;
8062 var296
= (short int)((long)(var293
)>>2);
8065 if (unlikely(varonce298
==NULL
)) {
8066 var299
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
8067 if (likely(varonce300
!=NULL
)) {
8068 var301
= varonce300
;
8071 var303
= core__flat___NativeString___to_s_full(var302
, 2l, 2l);
8073 varonce300
= var301
;
8075 ((struct instance_core__NativeArray
*)var299
)->values
[0]=var301
;
8076 if (likely(varonce304
!=NULL
)) {
8077 var305
= varonce304
;
8080 var307
= core__flat___NativeString___to_s_full(var306
, 1l, 1l);
8082 varonce304
= var305
;
8084 ((struct instance_core__NativeArray
*)var299
)->values
[2]=var305
;
8086 var299
= varonce298
;
8090 var308
= nitc___nitc__SeparateCompilerVisitor___extract_tag(self
, var_value2
);
8092 ((struct instance_core__NativeArray
*)var299
)->values
[1]=var308
;
8094 var309
= ((val
*(*)(val
* self
))(var299
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var299
); /* native_to_s on <var299:NativeArray[String]>*/
8096 varonce298
= var299
;
8098 core___core__Array___core__abstract_collection__SimpleCollection__add(var_test
, var309
); /* Direct call array#Array#add on <var_test:Array[String]>*/
8102 if (unlikely(varonce310
==NULL
)) {
8103 var311
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
8104 if (likely(varonce312
!=NULL
)) {
8105 var313
= varonce312
;
8107 var314
= "->class == ";
8108 var315
= core__flat___NativeString___to_s_full(var314
, 11l, 11l);
8110 varonce312
= var313
;
8112 ((struct instance_core__NativeArray
*)var311
)->values
[1]=var313
;
8113 if (likely(varonce316
!=NULL
)) {
8114 var317
= varonce316
;
8117 var319
= core__flat___NativeString___to_s_full(var318
, 7l, 7l);
8119 varonce316
= var317
;
8121 ((struct instance_core__NativeArray
*)var311
)->values
[3]=var317
;
8123 var311
= varonce310
;
8127 var320
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
8129 ((struct instance_core__NativeArray
*)var311
)->values
[0]=var320
;
8131 var321
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
8133 ((struct instance_core__NativeArray
*)var311
)->values
[2]=var321
;
8135 var322
= ((val
*(*)(val
* self
))(var311
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var311
); /* native_to_s on <var311:NativeArray[String]>*/
8137 varonce310
= var311
;
8139 core___core__Array___core__abstract_collection__SimpleCollection__add(var_test
, var322
); /* Direct call array#Array#add on <var_test:Array[String]>*/
8142 var_incompatible
= 1;
8148 var323
= ((short int(*)(val
* self
))(var_t2237
->class->vft
[COLOR_nitc__abstract_compiler__MType__is_c_primitive
]))(var_t2237
); /* is_c_primitive on <var_t2237:MType>*/
8151 var_primitive
= var_t2237
;
8153 var324
= nitc___nitc__SeparateCompilerVisitor___can_be_primitive(self
, var_value1
);
8157 { /* Inline separate_compiler#MType#is_tagged (var_t2237) on <var_t2237:MType> */
8158 var327
= var_t2237
->attrs
[COLOR_nitc__separate_compiler__MType___is_tagged
].s
; /* _is_tagged on <var_t2237:MType> */
8160 RET_LABEL326
:(void)0;
8164 if (unlikely(varonce328
==NULL
)) {
8165 var329
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
8166 if (likely(varonce330
!=NULL
)) {
8167 var331
= varonce330
;
8170 var333
= core__flat___NativeString___to_s_full(var332
, 3l, 3l);
8172 varonce330
= var331
;
8174 ((struct instance_core__NativeArray
*)var329
)->values
[1]=var331
;
8175 if (likely(varonce334
!=NULL
)) {
8176 var335
= varonce334
;
8179 var337
= core__flat___NativeString___to_s_full(var336
, 4l, 4l);
8181 varonce334
= var335
;
8183 ((struct instance_core__NativeArray
*)var329
)->values
[3]=var335
;
8184 if (likely(varonce338
!=NULL
)) {
8185 var339
= varonce338
;
8188 var341
= core__flat___NativeString___to_s_full(var340
, 1l, 1l);
8190 varonce338
= var339
;
8192 ((struct instance_core__NativeArray
*)var329
)->values
[5]=var339
;
8194 var329
= varonce328
;
8198 var342
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
8200 ((struct instance_core__NativeArray
*)var329
)->values
[0]=var342
;
8202 var343
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
8204 ((struct instance_core__NativeArray
*)var329
)->values
[2]=var343
;
8206 var344
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
8208 ((struct instance_core__NativeArray
*)var329
)->values
[4]=var344
;
8210 var345
= ((val
*(*)(val
* self
))(var329
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var329
); /* native_to_s on <var329:NativeArray[String]>*/
8212 varonce328
= var329
;
8214 nitc___nitc__AbstractCompilerVisitor___add(self
, var345
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8221 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
8222 var348
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
8223 if (unlikely(var348
== NULL
)) {
8224 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8225 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
8229 RET_LABEL347
:(void)0;
8233 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var346) on <var346:AbstractCompiler(SeparateCompiler)> */
8234 var351
= var346
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var346:AbstractCompiler(SeparateCompiler)> */
8235 if (unlikely(var351
== NULL
)) {
8236 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
8237 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
8241 RET_LABEL350
:(void)0;
8245 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var349) on <var349:ModelBuilder> */
8246 var354
= var349
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var349:ModelBuilder> */
8247 if (unlikely(var354
== NULL
)) {
8248 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
8249 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
8253 RET_LABEL353
:(void)0;
8257 { /* Inline separate_compiler#ToolContext#opt_no_tag_primitives (var352) on <var352:ToolContext> */
8258 var357
= var352
->attrs
[COLOR_nitc__separate_compiler__ToolContext___opt_no_tag_primitives
].val
; /* _opt_no_tag_primitives on <var352:ToolContext> */
8259 if (unlikely(var357
== NULL
)) {
8260 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_tag_primitives");
8261 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 32);
8265 RET_LABEL356
:(void)0;
8269 { /* Inline opts#Option#value (var355) on <var355:OptionBool> */
8270 var360
= var355
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var355:OptionBool> */
8272 RET_LABEL359
:(void)0;
8275 var361
= (short int)((long)(var358
)>>2);
8278 if (unlikely(varonce363
==NULL
)) {
8279 var364
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
8280 if (likely(varonce365
!=NULL
)) {
8281 var366
= varonce365
;
8284 var368
= core__flat___NativeString___to_s_full(var367
, 2l, 2l);
8286 varonce365
= var366
;
8288 ((struct instance_core__NativeArray
*)var364
)->values
[0]=var366
;
8289 if (likely(varonce369
!=NULL
)) {
8290 var370
= varonce369
;
8293 var372
= core__flat___NativeString___to_s_full(var371
, 1l, 1l);
8295 varonce369
= var370
;
8297 ((struct instance_core__NativeArray
*)var364
)->values
[2]=var370
;
8299 var364
= varonce363
;
8303 var373
= nitc___nitc__SeparateCompilerVisitor___extract_tag(self
, var_value1
);
8305 ((struct instance_core__NativeArray
*)var364
)->values
[1]=var373
;
8307 var374
= ((val
*(*)(val
* self
))(var364
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var364
); /* native_to_s on <var364:NativeArray[String]>*/
8309 varonce363
= var364
;
8311 core___core__Array___core__abstract_collection__SimpleCollection__add(var_test
, var374
); /* Direct call array#Array#add on <var_test:Array[String]>*/
8315 if (unlikely(varonce375
==NULL
)) {
8316 var376
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
8317 if (likely(varonce377
!=NULL
)) {
8318 var378
= varonce377
;
8320 var379
= "->class == ";
8321 var380
= core__flat___NativeString___to_s_full(var379
, 11l, 11l);
8323 varonce377
= var378
;
8325 ((struct instance_core__NativeArray
*)var376
)->values
[1]=var378
;
8326 if (likely(varonce381
!=NULL
)) {
8327 var382
= varonce381
;
8330 var384
= core__flat___NativeString___to_s_full(var383
, 7l, 7l);
8332 varonce381
= var382
;
8334 ((struct instance_core__NativeArray
*)var376
)->values
[3]=var382
;
8336 var376
= varonce375
;
8340 var385
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
8342 ((struct instance_core__NativeArray
*)var376
)->values
[0]=var385
;
8344 var386
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
8346 ((struct instance_core__NativeArray
*)var376
)->values
[2]=var386
;
8348 var387
= ((val
*(*)(val
* self
))(var376
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var376
); /* native_to_s on <var376:NativeArray[String]>*/
8350 varonce375
= var376
;
8352 core___core__Array___core__abstract_collection__SimpleCollection__add(var_test
, var387
); /* Direct call array#Array#add on <var_test:Array[String]>*/
8355 var_incompatible
= 1;
8358 var_primitive
= ((val
*)NULL
);
8361 if (var_incompatible
){
8362 if (var_maybe_null
){
8363 if (unlikely(varonce388
==NULL
)) {
8364 var389
= NEW_core__NativeArray(10l, &type_core__NativeArray__core__String
);
8365 if (likely(varonce390
!=NULL
)) {
8366 var391
= varonce390
;
8369 var393
= core__flat___NativeString___to_s_full(var392
, 3l, 3l);
8371 varonce390
= var391
;
8373 ((struct instance_core__NativeArray
*)var389
)->values
[1]=var391
;
8374 if (likely(varonce394
!=NULL
)) {
8375 var395
= varonce394
;
8378 var397
= core__flat___NativeString___to_s_full(var396
, 4l, 4l);
8380 varonce394
= var395
;
8382 ((struct instance_core__NativeArray
*)var389
)->values
[3]=var395
;
8383 if (likely(varonce398
!=NULL
)) {
8384 var399
= varonce398
;
8386 var400
= "; /* incompatible types ";
8387 var401
= core__flat___NativeString___to_s_full(var400
, 24l, 24l);
8389 varonce398
= var399
;
8391 ((struct instance_core__NativeArray
*)var389
)->values
[5]=var399
;
8392 if (likely(varonce402
!=NULL
)) {
8393 var403
= varonce402
;
8396 var405
= core__flat___NativeString___to_s_full(var404
, 5l, 5l);
8398 varonce402
= var403
;
8400 ((struct instance_core__NativeArray
*)var389
)->values
[7]=var403
;
8401 if (likely(varonce406
!=NULL
)) {
8402 var407
= varonce406
;
8404 var408
= "; but may be NULL*/";
8405 var409
= core__flat___NativeString___to_s_full(var408
, 19l, 19l);
8407 varonce406
= var407
;
8409 ((struct instance_core__NativeArray
*)var389
)->values
[9]=var407
;
8411 var389
= varonce388
;
8415 var410
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
8417 ((struct instance_core__NativeArray
*)var389
)->values
[0]=var410
;
8419 var411
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
8421 ((struct instance_core__NativeArray
*)var389
)->values
[2]=var411
;
8423 var412
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
8425 ((struct instance_core__NativeArray
*)var389
)->values
[4]=var412
;
8427 var413
= ((val
*(*)(val
* self
))(var_t1219
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t1219
); /* to_s on <var_t1219:MType>*/
8429 ((struct instance_core__NativeArray
*)var389
)->values
[6]=var413
;
8431 var414
= ((val
*(*)(val
* self
))(var_t2237
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t2237
); /* to_s on <var_t2237:MType>*/
8433 ((struct instance_core__NativeArray
*)var389
)->values
[8]=var414
;
8435 var415
= ((val
*(*)(val
* self
))(var389
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var389
); /* native_to_s on <var389:NativeArray[String]>*/
8437 varonce388
= var389
;
8439 nitc___nitc__AbstractCompilerVisitor___add(self
, var415
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8444 if (unlikely(varonce416
==NULL
)) {
8445 var417
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
8446 if (likely(varonce418
!=NULL
)) {
8447 var419
= varonce418
;
8449 var420
= " = 0; /* incompatible types ";
8450 var421
= core__flat___NativeString___to_s_full(var420
, 28l, 28l);
8452 varonce418
= var419
;
8454 ((struct instance_core__NativeArray
*)var417
)->values
[1]=var419
;
8455 if (likely(varonce422
!=NULL
)) {
8456 var423
= varonce422
;
8459 var425
= core__flat___NativeString___to_s_full(var424
, 5l, 5l);
8461 varonce422
= var423
;
8463 ((struct instance_core__NativeArray
*)var417
)->values
[3]=var423
;
8464 if (likely(varonce426
!=NULL
)) {
8465 var427
= varonce426
;
8467 var428
= "; cannot be NULL */";
8468 var429
= core__flat___NativeString___to_s_full(var428
, 19l, 19l);
8470 varonce426
= var427
;
8472 ((struct instance_core__NativeArray
*)var417
)->values
[5]=var427
;
8474 var417
= varonce416
;
8478 var430
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
8480 ((struct instance_core__NativeArray
*)var417
)->values
[0]=var430
;
8482 var431
= ((val
*(*)(val
* self
))(var_t1219
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t1219
); /* to_s on <var_t1219:MType>*/
8484 ((struct instance_core__NativeArray
*)var417
)->values
[2]=var431
;
8486 var432
= ((val
*(*)(val
* self
))(var_t2237
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t2237
); /* to_s on <var_t2237:MType>*/
8488 ((struct instance_core__NativeArray
*)var417
)->values
[4]=var432
;
8490 var433
= ((val
*(*)(val
* self
))(var417
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var417
); /* native_to_s on <var417:NativeArray[String]>*/
8492 varonce416
= var417
;
8494 nitc___nitc__AbstractCompilerVisitor___add(self
, var433
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8501 if (var_primitive
== NULL
) {
8502 var434
= 0; /* is null */
8504 var434
= 1; /* arg is null and recv is not */
8507 { /* Inline kernel#Object#!= (var_primitive,((val*)NULL)) on <var_primitive:nullable Object(nullable MType)> */
8508 var_other437
= ((val
*)NULL
);
8510 var438
= ((short int(*)(val
* self
, val
* p0
))(var_primitive
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_primitive
, var_other437
); /* == on <var_primitive:nullable MType(MType)>*/
8515 RET_LABEL436
:(void)0;
8521 { /* Inline separate_compiler#MType#is_tagged (var_primitive) on <var_primitive:nullable Object(MType)> */
8522 var442
= var_primitive
->attrs
[COLOR_nitc__separate_compiler__MType___is_tagged
].s
; /* _is_tagged on <var_primitive:nullable Object(MType)> */
8524 RET_LABEL441
:(void)0;
8528 if (unlikely(varonce443
==NULL
)) {
8529 var444
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
8530 if (likely(varonce445
!=NULL
)) {
8531 var446
= varonce445
;
8534 var448
= core__flat___NativeString___to_s_full(var447
, 3l, 3l);
8536 varonce445
= var446
;
8538 ((struct instance_core__NativeArray
*)var444
)->values
[1]=var446
;
8539 if (likely(varonce449
!=NULL
)) {
8540 var450
= varonce449
;
8543 var452
= core__flat___NativeString___to_s_full(var451
, 4l, 4l);
8545 varonce449
= var450
;
8547 ((struct instance_core__NativeArray
*)var444
)->values
[3]=var450
;
8548 if (likely(varonce453
!=NULL
)) {
8549 var454
= varonce453
;
8552 var456
= core__flat___NativeString___to_s_full(var455
, 1l, 1l);
8554 varonce453
= var454
;
8556 ((struct instance_core__NativeArray
*)var444
)->values
[5]=var454
;
8558 var444
= varonce443
;
8562 var457
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
8564 ((struct instance_core__NativeArray
*)var444
)->values
[0]=var457
;
8566 var458
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
8568 ((struct instance_core__NativeArray
*)var444
)->values
[2]=var458
;
8570 var459
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
8572 ((struct instance_core__NativeArray
*)var444
)->values
[4]=var459
;
8574 var460
= ((val
*(*)(val
* self
))(var444
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var444
); /* native_to_s on <var444:NativeArray[String]>*/
8576 varonce443
= var444
;
8578 nitc___nitc__AbstractCompilerVisitor___add(self
, var460
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
8584 if (unlikely(varonce461
==NULL
)) {
8585 var462
= NEW_core__NativeArray(9l, &type_core__NativeArray__core__String
);
8586 if (likely(varonce463
!=NULL
)) {
8587 var464
= varonce463
;
8589 var465
= "((struct instance_";
8590 var466
= core__flat___NativeString___to_s_full(var465
, 18l, 18l);
8592 varonce463
= var464
;
8594 ((struct instance_core__NativeArray
*)var462
)->values
[0]=var464
;
8595 if (likely(varonce467
!=NULL
)) {
8596 var468
= varonce467
;
8599 var470
= core__flat___NativeString___to_s_full(var469
, 2l, 2l);
8601 varonce467
= var468
;
8603 ((struct instance_core__NativeArray
*)var462
)->values
[2]=var468
;
8604 if (likely(varonce471
!=NULL
)) {
8605 var472
= varonce471
;
8607 var473
= ")->value == ((struct instance_";
8608 var474
= core__flat___NativeString___to_s_full(var473
, 30l, 30l);
8610 varonce471
= var472
;
8612 ((struct instance_core__NativeArray
*)var462
)->values
[4]=var472
;
8613 if (likely(varonce475
!=NULL
)) {
8614 var476
= varonce475
;
8617 var478
= core__flat___NativeString___to_s_full(var477
, 2l, 2l);
8619 varonce475
= var476
;
8621 ((struct instance_core__NativeArray
*)var462
)->values
[6]=var476
;
8622 if (likely(varonce479
!=NULL
)) {
8623 var480
= varonce479
;
8625 var481
= ")->value";
8626 var482
= core__flat___NativeString___to_s_full(var481
, 8l, 8l);
8628 varonce479
= var480
;
8630 ((struct instance_core__NativeArray
*)var462
)->values
[8]=var480
;
8632 var462
= varonce461
;
8636 var483
= ((val
*(*)(val
* self
))(var_primitive
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_primitive
); /* c_name on <var_primitive:nullable Object(MType)>*/
8638 ((struct instance_core__NativeArray
*)var462
)->values
[1]=var483
;
8640 var484
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
8642 ((struct instance_core__NativeArray
*)var462
)->values
[3]=var484
;
8644 var485
= ((val
*(*)(val
* self
))(var_primitive
->class->vft
[COLOR_nitc__model_base__MEntity__c_name
]))(var_primitive
); /* c_name on <var_primitive:nullable Object(MType)>*/
8646 ((struct instance_core__NativeArray
*)var462
)->values
[5]=var485
;
8648 var486
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
8650 ((struct instance_core__NativeArray
*)var462
)->values
[7]=var486
;
8652 var487
= ((val
*(*)(val
* self
))(var462
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var462
); /* native_to_s on <var462:NativeArray[String]>*/
8654 varonce461
= var462
;
8656 core___core__Array___core__abstract_collection__SimpleCollection__add(var_test
, var487
); /* Direct call array#Array#add on <var_test:Array[String]>*/
8660 var489
= nitc___nitc__SeparateCompilerVisitor___can_be_primitive(self
, var_value1
);
8665 var491
= nitc___nitc__SeparateCompilerVisitor___can_be_primitive(self
, var_value2
);
8673 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
8674 var494
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
8675 if (unlikely(var494
== NULL
)) {
8676 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8677 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
8681 RET_LABEL493
:(void)0;
8685 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var492) on <var492:AbstractCompiler(SeparateCompiler)> */
8686 var497
= var492
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var492:AbstractCompiler(SeparateCompiler)> */
8687 if (unlikely(var497
== NULL
)) {
8688 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
8689 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 538);
8693 RET_LABEL496
:(void)0;
8697 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var495) on <var495:ModelBuilder> */
8698 var500
= var495
->attrs
[COLOR_nitc__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var495:ModelBuilder> */
8699 if (unlikely(var500
== NULL
)) {
8700 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
8701 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelbuilder_base
, 47);
8705 RET_LABEL499
:(void)0;
8709 { /* Inline separate_compiler#ToolContext#opt_no_tag_primitives (var498) on <var498:ToolContext> */
8710 var503
= var498
->attrs
[COLOR_nitc__separate_compiler__ToolContext___opt_no_tag_primitives
].val
; /* _opt_no_tag_primitives on <var498:ToolContext> */
8711 if (unlikely(var503
== NULL
)) {
8712 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_tag_primitives");
8713 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 32);
8717 RET_LABEL502
:(void)0;
8721 { /* Inline opts#Option#value (var501) on <var501:OptionBool> */
8722 var506
= var501
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var501:OptionBool> */
8724 RET_LABEL505
:(void)0;
8727 var507
= (short int)((long)(var504
)>>2);
8730 if (unlikely(varonce509
==NULL
)) {
8731 var510
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
8732 if (likely(varonce511
!=NULL
)) {
8733 var512
= varonce511
;
8736 var514
= core__flat___NativeString___to_s_full(var513
, 2l, 2l);
8738 varonce511
= var512
;
8740 ((struct instance_core__NativeArray
*)var510
)->values
[0]=var512
;
8741 if (likely(varonce515
!=NULL
)) {
8742 var516
= varonce515
;
8745 var518
= core__flat___NativeString___to_s_full(var517
, 7l, 7l);
8747 varonce515
= var516
;
8749 ((struct instance_core__NativeArray
*)var510
)->values
[2]=var516
;
8750 if (likely(varonce519
!=NULL
)) {
8751 var520
= varonce519
;
8754 var522
= core__flat___NativeString___to_s_full(var521
, 1l, 1l);
8756 varonce519
= var520
;
8758 ((struct instance_core__NativeArray
*)var510
)->values
[4]=var520
;
8760 var510
= varonce509
;
8764 var523
= nitc___nitc__SeparateCompilerVisitor___extract_tag(self
, var_value1
);
8766 ((struct instance_core__NativeArray
*)var510
)->values
[1]=var523
;
8768 var524
= nitc___nitc__SeparateCompilerVisitor___extract_tag(self
, var_value2
);
8770 ((struct instance_core__NativeArray
*)var510
)->values
[3]=var524
;
8772 var525
= ((val
*(*)(val
* self
))(var510
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var510
); /* native_to_s on <var510:NativeArray[String]>*/
8774 varonce509
= var510
;
8776 core___core__Array___core__abstract_collection__SimpleCollection__add(var_test
, var525
); /* Direct call array#Array#add on <var_test:Array[String]>*/
8780 if (unlikely(varonce526
==NULL
)) {
8781 var527
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
8782 if (likely(varonce528
!=NULL
)) {
8783 var529
= varonce528
;
8785 var530
= "->class == ";
8786 var531
= core__flat___NativeString___to_s_full(var530
, 11l, 11l);
8788 varonce528
= var529
;
8790 ((struct instance_core__NativeArray
*)var527
)->values
[1]=var529
;
8791 if (likely(varonce532
!=NULL
)) {
8792 var533
= varonce532
;
8795 var535
= core__flat___NativeString___to_s_full(var534
, 7l, 7l);
8797 varonce532
= var533
;
8799 ((struct instance_core__NativeArray
*)var527
)->values
[3]=var533
;
8801 var527
= varonce526
;
8805 var536
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
8807 ((struct instance_core__NativeArray
*)var527
)->values
[0]=var536
;
8809 var537
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
8811 ((struct instance_core__NativeArray
*)var527
)->values
[2]=var537
;
8813 var538
= ((val
*(*)(val
* self
))(var527
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var527
); /* native_to_s on <var527:NativeArray[String]>*/
8815 varonce526
= var527
;
8817 core___core__Array___core__abstract_collection__SimpleCollection__add(var_test
, var538
); /* Direct call array#Array#add on <var_test:Array[String]>*/
8819 var539
= NEW_core__Array(&type_core__Array__core__String
);
8821 core___core__Array___core__kernel__Object__init(var539
); /* Direct call array#Array#init on <var539:Array[String]>*/
8825 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
8826 var542
= self
->attrs
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
8827 if (unlikely(var542
== NULL
)) {
8828 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
8829 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1133);
8833 RET_LABEL541
:(void)0;
8837 { /* Inline separate_compiler#SeparateCompiler#box_kinds (var540) on <var540:AbstractCompiler(SeparateCompiler)> */
8838 var545
= var540
->attrs
[COLOR_nitc__separate_compiler__SeparateCompiler___box_kinds
].val
; /* _box_kinds on <var540:AbstractCompiler(SeparateCompiler)> */
8839 if (unlikely(var545
== NULL
)) {
8840 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _box_kinds");
8841 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__separate_compiler
, 264);
8845 RET_LABEL544
:(void)0;
8850 var547
= core___core__HashMap___core__abstract_collection__MapRead__iterator(var_546
);
8855 var549
= ((short int(*)(val
* self
))((((long)var_548
&3)?class_info
[((long)var_548
&3)]:var_548
->class)->vft
[COLOR_core__abstract_collection__MapIterator__is_ok
]))(var_548
); /* is_ok on <var_548:MapIterator[MClass, Int]>*/
8862 var550
= ((val
*(*)(val
* self
))((((long)var_548
&3)?class_info
[((long)var_548
&3)]:var_548
->class)->vft
[COLOR_core__abstract_collection__MapIterator__key
]))(var_548
); /* key on <var_548:MapIterator[MClass, Int]>*/
8866 var551
= ((val
*(*)(val
* self
))((((long)var_548
&3)?class_info
[((long)var_548
&3)]:var_548
->class)->vft
[COLOR_core__abstract_collection__MapIterator__item
]))(var_548
); /* item on <var_548:MapIterator[MClass, Int]>*/
8868 var552
= (long)(var551
)>>2;
8871 { /* Inline model#MClass#mclass_type (var_t) on <var_t:MClass> */
8872 var555
= var_t
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_t:MClass> */
8873 if (unlikely(var555
== NULL
)) {
8874 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
8875 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
8879 RET_LABEL554
:(void)0;
8883 { /* Inline separate_compiler#MType#is_tagged (var553) on <var553:MClassType> */
8884 var558
= var553
->attrs
[COLOR_nitc__separate_compiler__MType___is_tagged
].s
; /* _is_tagged on <var553:MClassType> */
8886 RET_LABEL557
:(void)0;
8890 goto BREAK_label559
;
8893 if (unlikely(varonce560
==NULL
)) {
8894 var561
= NEW_core__NativeArray(13l, &type_core__NativeArray__core__String
);
8895 if (likely(varonce562
!=NULL
)) {
8896 var563
= varonce562
;
8899 var565
= core__flat___NativeString___to_s_full(var564
, 1l, 1l);
8901 varonce562
= var563
;
8903 ((struct instance_core__NativeArray
*)var561
)->values
[0]=var563
;
8904 if (likely(varonce566
!=NULL
)) {
8905 var567
= varonce566
;
8907 var568
= "->class->box_kind == ";
8908 var569
= core__flat___NativeString___to_s_full(var568
, 21l, 21l);
8910 varonce566
= var567
;
8912 ((struct instance_core__NativeArray
*)var561
)->values
[2]=var567
;
8913 if (likely(varonce570
!=NULL
)) {
8914 var571
= varonce570
;
8916 var572
= " && ((struct instance_";
8917 var573
= core__flat___NativeString___to_s_full(var572
, 22l, 22l);
8919 varonce570
= var571
;
8921 ((struct instance_core__NativeArray
*)var561
)->values
[4]=var571
;
8922 if (likely(varonce574
!=NULL
)) {
8923 var575
= varonce574
;
8926 var577
= core__flat___NativeString___to_s_full(var576
, 2l, 2l);
8928 varonce574
= var575
;
8930 ((struct instance_core__NativeArray
*)var561
)->values
[6]=var575
;
8931 if (likely(varonce578
!=NULL
)) {
8932 var579
= varonce578
;
8934 var580
= ")->value == ((struct instance_";
8935 var581
= core__flat___NativeString___to_s_full(var580
, 30l, 30l);
8937 varonce578
= var579
;
8939 ((struct instance_core__NativeArray
*)var561
)->values
[8]=var579
;
8940 if (likely(varonce582
!=NULL
)) {
8941 var583
= varonce582
;
8944 var585
= core__flat___NativeString___to_s_full(var584
, 2l, 2l);
8946 varonce582
= var583
;
8948 ((struct instance_core__NativeArray
*)var561
)->values
[10]=var583
;
8949 if (likely(varonce586
!=NULL
)) {
8950 var587
= varonce586
;
8952 var588
= ")->value)";
8953 var589
= core__flat___NativeString___to_s_full(var588
, 9l, 9l);
8955 varonce586
= var587
;
8957 ((struct instance_core__NativeArray
*)var561
)->values
[12]=var587
;
8959 var561
= varonce560
;
8963 var590
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
8965 ((struct instance_core__NativeArray
*)var561
)->values
[1]=var590
;
8966 var591
= core__flat___Int___core__abstract_text__Object__to_s(var_v
);
8967 ((struct instance_core__NativeArray
*)var561
)->values
[3]=var591
;
8969 var592
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_t
);
8971 ((struct instance_core__NativeArray
*)var561
)->values
[5]=var592
;
8973 var593
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
8975 ((struct instance_core__NativeArray
*)var561
)->values
[7]=var593
;
8977 var594
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_t
);
8979 ((struct instance_core__NativeArray
*)var561
)->values
[9]=var594
;
8981 var595
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
8983 ((struct instance_core__NativeArray
*)var561
)->values
[11]=var595
;
8985 var596
= ((val
*(*)(val
* self
))(var561
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var561
); /* native_to_s on <var561:NativeArray[String]>*/
8987 varonce560
= var561
;
8989 core___core__Array___core__abstract_collection__SimpleCollection__add(var_s
, var596
); /* Direct call array#Array#add on <var_s:Array[String]>*/
8991 BREAK_label559
: (void)0;
8993 ((void(*)(val
* self
))((((long)var_548
&3)?class_info
[((long)var_548
&3)]:var_548
->class)->vft
[COLOR_core__abstract_collection__MapIterator__next
]))(var_548
); /* next on <var_548:MapIterator[MClass, Int]>*/
8996 BREAK_label
: (void)0;
8998 { /* Inline abstract_collection#MapIterator#finish (var_548) on <var_548:MapIterator[MClass, Int]> */
8999 RET_LABEL597
:(void)0;
9003 var598
= core___core__AbstractArrayRead___core__abstract_collection__Collection__is_empty(var_s
);
9006 if (unlikely(varonce599
==NULL
)) {
9007 var600
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
9008 if (likely(varonce601
!=NULL
)) {
9009 var602
= varonce601
;
9012 var604
= core__flat___NativeString___to_s_full(var603
, 3l, 3l);
9014 varonce601
= var602
;
9016 ((struct instance_core__NativeArray
*)var600
)->values
[1]=var602
;
9017 if (likely(varonce605
!=NULL
)) {
9018 var606
= varonce605
;
9021 var608
= core__flat___NativeString___to_s_full(var607
, 4l, 4l);
9023 varonce605
= var606
;
9025 ((struct instance_core__NativeArray
*)var600
)->values
[3]=var606
;
9026 if (likely(varonce609
!=NULL
)) {
9027 var610
= varonce609
;
9030 var612
= core__flat___NativeString___to_s_full(var611
, 1l, 1l);
9032 varonce609
= var610
;
9034 ((struct instance_core__NativeArray
*)var600
)->values
[5]=var610
;
9036 var600
= varonce599
;
9040 var613
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
9042 ((struct instance_core__NativeArray
*)var600
)->values
[0]=var613
;
9044 var614
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
9046 ((struct instance_core__NativeArray
*)var600
)->values
[2]=var614
;
9048 var615
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
9050 ((struct instance_core__NativeArray
*)var600
)->values
[4]=var615
;
9052 var616
= ((val
*(*)(val
* self
))(var600
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var600
); /* native_to_s on <var600:NativeArray[String]>*/
9054 varonce599
= var600
;
9056 nitc___nitc__AbstractCompilerVisitor___add(self
, var616
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
9062 if (unlikely(varonce617
==NULL
)) {
9063 var618
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
9064 if (likely(varonce619
!=NULL
)) {
9065 var620
= varonce619
;
9068 var622
= core__flat___NativeString___to_s_full(var621
, 1l, 1l);
9070 varonce619
= var620
;
9072 ((struct instance_core__NativeArray
*)var618
)->values
[0]=var620
;
9073 if (likely(varonce623
!=NULL
)) {
9074 var624
= varonce623
;
9077 var626
= core__flat___NativeString___to_s_full(var625
, 1l, 1l);
9079 varonce623
= var624
;
9081 ((struct instance_core__NativeArray
*)var618
)->values
[2]=var624
;
9083 var618
= varonce617
;
9086 if (likely(varonce627
!=NULL
)) {
9087 var628
= varonce627
;
9090 var630
= core__flat___NativeString___to_s_full(var629
, 4l, 4l);
9092 varonce627
= var628
;
9095 var631
= core__abstract_text___Collection___join(var_s
, var628
);
9097 ((struct instance_core__NativeArray
*)var618
)->values
[1]=var631
;
9099 var632
= ((val
*(*)(val
* self
))(var618
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var618
); /* native_to_s on <var618:NativeArray[String]>*/
9101 varonce617
= var618
;
9103 core___core__Array___core__abstract_collection__SimpleCollection__add(var_test
, var632
); /* Direct call array#Array#add on <var_test:Array[String]>*/
9106 if (unlikely(varonce633
==NULL
)) {
9107 var634
= NEW_core__NativeArray(6l, &type_core__NativeArray__core__String
);
9108 if (likely(varonce635
!=NULL
)) {
9109 var636
= varonce635
;
9112 var638
= core__flat___NativeString___to_s_full(var637
, 3l, 3l);
9114 varonce635
= var636
;
9116 ((struct instance_core__NativeArray
*)var634
)->values
[1]=var636
;
9117 if (likely(varonce639
!=NULL
)) {
9118 var640
= varonce639
;
9121 var642
= core__flat___NativeString___to_s_full(var641
, 4l, 4l);
9123 varonce639
= var640
;
9125 ((struct instance_core__NativeArray
*)var634
)->values
[3]=var640
;
9126 if (likely(varonce643
!=NULL
)) {
9127 var644
= varonce643
;
9130 var646
= core__flat___NativeString___to_s_full(var645
, 1l, 1l);
9132 varonce643
= var644
;
9134 ((struct instance_core__NativeArray
*)var634
)->values
[5]=var644
;
9136 var634
= varonce633
;
9140 var647
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
9142 ((struct instance_core__NativeArray
*)var634
)->values
[0]=var647
;
9144 var648
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
9146 ((struct instance_core__NativeArray
*)var634
)->values
[2]=var648
;
9148 var649
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
9150 ((struct instance_core__NativeArray
*)var634
)->values
[4]=var649
;
9152 var650
= ((val
*(*)(val
* self
))(var634
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var634
); /* native_to_s on <var634:NativeArray[String]>*/
9154 varonce633
= var634
;
9156 nitc___nitc__AbstractCompilerVisitor___add(self
, var650
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
9162 if (unlikely(varonce651
==NULL
)) {
9163 var652
= NEW_core__NativeArray(8l, &type_core__NativeArray__core__String
);
9164 if (likely(varonce653
!=NULL
)) {
9165 var654
= varonce653
;
9168 var656
= core__flat___NativeString___to_s_full(var655
, 3l, 3l);
9170 varonce653
= var654
;
9172 ((struct instance_core__NativeArray
*)var652
)->values
[1]=var654
;
9173 if (likely(varonce657
!=NULL
)) {
9174 var658
= varonce657
;
9177 var660
= core__flat___NativeString___to_s_full(var659
, 4l, 4l);
9179 varonce657
= var658
;
9181 ((struct instance_core__NativeArray
*)var652
)->values
[3]=var658
;
9182 if (likely(varonce661
!=NULL
)) {
9183 var662
= varonce661
;
9186 var664
= core__flat___NativeString___to_s_full(var663
, 5l, 5l);
9188 varonce661
= var662
;
9190 ((struct instance_core__NativeArray
*)var652
)->values
[5]=var662
;
9191 if (likely(varonce665
!=NULL
)) {
9192 var666
= varonce665
;
9195 var668
= core__flat___NativeString___to_s_full(var667
, 2l, 2l);
9197 varonce665
= var666
;
9199 ((struct instance_core__NativeArray
*)var652
)->values
[7]=var666
;
9201 var652
= varonce651
;
9205 var669
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
9207 ((struct instance_core__NativeArray
*)var652
)->values
[0]=var669
;
9209 var670
= ((val
*(*)(val
* self
))(var_value1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value1
); /* to_s on <var_value1:RuntimeVariable>*/
9211 ((struct instance_core__NativeArray
*)var652
)->values
[2]=var670
;
9213 var671
= ((val
*(*)(val
* self
))(var_value2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_value2
); /* to_s on <var_value2:RuntimeVariable>*/
9215 ((struct instance_core__NativeArray
*)var652
)->values
[4]=var671
;
9216 if (likely(varonce672
!=NULL
)) {
9217 var673
= varonce672
;
9220 var675
= core__flat___NativeString___to_s_full(var674
, 4l, 4l);
9222 varonce672
= var673
;
9225 var676
= core__abstract_text___Collection___join(var_test
, var673
);
9227 ((struct instance_core__NativeArray
*)var652
)->values
[6]=var676
;
9229 var677
= ((val
*(*)(val
* self
))(var652
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var652
); /* native_to_s on <var652:NativeArray[String]>*/
9231 varonce651
= var652
;
9233 nitc___nitc__AbstractCompilerVisitor___add(self
, var677
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
9240 /* method separate_compiler#SeparateCompilerVisitor#can_be_primitive for (self: SeparateCompilerVisitor, RuntimeVariable): Bool */
9241 short int nitc___nitc__SeparateCompilerVisitor___can_be_primitive(val
* self
, val
* p0
) {
9242 short int var
/* : Bool */;
9243 val
* var_value
/* var value: RuntimeVariable */;
9244 val
* var1
/* : MType */;
9245 val
* var3
/* : MType */;
9246 val
* var4
/* : MType */;
9247 val
* var_t
/* var t: MType */;
9248 short int var5
/* : Bool */;
9251 short int var6
/* : Bool */;
9252 val
* var7
/* : MClass */;
9253 val
* var9
/* : MClass */;
9254 val
* var10
/* : MClassKind */;
9255 val
* var12
/* : MClassKind */;
9256 val
* var_k
/* var k: MClassKind */;
9257 short int var13
/* : Bool */;
9258 val
* var14
/* : Sys */;
9259 val
* var15
/* : MClassKind */;
9260 short int var16
/* : Bool */;
9261 val
* var_other
/* var other: nullable Object */;
9262 short int var18
/* : Bool */;
9263 short int var20
/* : Bool */;
9264 short int var_
/* var : Bool */;
9265 short int var21
/* : Bool */;
9268 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_value) on <var_value:RuntimeVariable> */
9269 var3
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_value:RuntimeVariable> */
9270 if (unlikely(var3
== NULL
)) {
9271 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
9272 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
9280 var4
= ((val
*(*)(val
* self
))(var1
->class->vft
[COLOR_nitc__model__MType__undecorate
]))(var1
); /* undecorate on <var1:MType>*/
9283 /* <var_t:MType> isa MClassType */
9284 cltype
= type_nitc__MClassType
.color
;
9285 idtype
= type_nitc__MClassType
.id
;
9286 if(cltype
>= var_t
->type
->table_size
) {
9289 var5
= var_t
->type
->type_table
[cltype
] == idtype
;
9298 { /* Inline model#MClassType#mclass (var_t) on <var_t:MType(MClassType)> */
9299 var9
= var_t
->attrs
[COLOR_nitc__model__MClassType___mclass
].val
; /* _mclass on <var_t:MType(MClassType)> */
9300 if (unlikely(var9
== NULL
)) {
9301 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
9302 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1163);
9310 { /* Inline model#MClass#kind (var7) on <var7:MClass> */
9311 var12
= var7
->attrs
[COLOR_nitc__model__MClass___kind
].val
; /* _kind on <var7:MClass> */
9312 if (unlikely(var12
== NULL
)) {
9313 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
9314 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 459);
9318 RET_LABEL11
:(void)0;
9324 var15
= nitc__model___core__Sys___interface_kind(var14
);
9327 { /* Inline kernel#Object#== (var_k,var15) on <var_k:MClassKind> */
9330 { /* Inline kernel#Object#is_same_instance (var_k,var_other) on <var_k:MClassKind> */
9331 var20
= var_k
== var_other
;
9334 RET_LABEL19
:(void)0;
9339 RET_LABEL17
:(void)0;
9347 var21
= nitc__abstract_compiler___MClassType___MType__is_c_primitive(var_t
);
9356 /* method separate_compiler#SeparateCompilerVisitor#maybe_null for (self: SeparateCompilerVisitor, RuntimeVariable): Bool */
9357 short int nitc___nitc__SeparateCompilerVisitor___maybe_null(val
* self
, val
* p0
) {
9358 short int var
/* : Bool */;
9359 val
* var_value
/* var value: RuntimeVariable */;
9360 val
* var1
/* : MType */;
9361 val
* var3
/* : MType */;
9362 val
* var_t
/* var t: MType */;
9363 short int var4
/* : Bool */;
9364 short int var5
/* : Bool */;
9367 short int var_
/* var : Bool */;
9368 short int var6
/* : Bool */;
9373 { /* Inline abstract_compiler#RuntimeVariable#mcasttype (var_value) on <var_value:RuntimeVariable> */
9374 var3
= var_value
->attrs
[COLOR_nitc__abstract_compiler__RuntimeVariable___mcasttype
].val
; /* _mcasttype on <var_value:RuntimeVariable> */
9375 if (unlikely(var3
== NULL
)) {
9376 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mcasttype");
9377 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__abstract_compiler
, 1873);
9385 /* <var_t:MType> isa MNullableType */
9386 cltype
= type_nitc__MNullableType
.color
;
9387 idtype
= type_nitc__MNullableType
.id
;
9388 if(cltype
>= var_t
->type
->table_size
) {
9391 var5
= var_t
->type
->type_table
[cltype
] == idtype
;
9397 /* <var_t:MType> isa MNullType */
9398 cltype7
= type_nitc__MNullType
.color
;
9399 idtype8
= type_nitc__MNullType
.id
;
9400 if(cltype7
>= var_t
->type
->table_size
) {
9403 var6
= var_t
->type
->type_table
[cltype7
] == idtype8
;
9412 /* method separate_compiler#SeparateCompilerVisitor#array_instance for (self: SeparateCompilerVisitor, Array[RuntimeVariable], MType): RuntimeVariable */
9413 val
* nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__array_instance(val
* self
, val
* p0
, val
* p1
) {
9414 val
* var
/* : RuntimeVariable */;
9415 val
* var_array
/* var array: Array[RuntimeVariable] */;
9416 val
* var_elttype
/* var elttype: MType */;
9417 val
* var1
/* : MModule */;
9418 val
* var2
/* : MClass */;
9419 val
* var_nclass
/* var nclass: MClass */;
9420 val
* var3
/* : MModule */;
9421 val
* var4
/* : MClass */;
9422 val
* var_arrayclass
/* var arrayclass: MClass */;
9423 val
* var5
/* : Array[MType] */;
9424 val
* var_
/* var : Array[MType] */;
9425 val
* var6
/* : MClassType */;
9426 val
* var_arraytype
/* var arraytype: MClassType */;
9427 val
* var7
/* : RuntimeVariable */;
9428 val
* var_res
/* var res: RuntimeVariable */;
9429 val
* var8
/* : NativeArray[String] */;
9430 static val
* varonce
;
9431 static val
* varonce9
;
9432 val
* var10
/* : String */;
9433 char* var11
/* : NativeString */;
9434 val
* var12
/* : String */;
9435 static val
* varonce13
;
9436 val
* var14
/* : String */;
9437 char* var15
/* : NativeString */;
9438 val
* var16
/* : String */;
9439 static val
* varonce17
;
9440 val
* var18
/* : String */;
9441 char* var19
/* : NativeString */;
9442 val
* var20
/* : String */;
9443 val
* var21
/* : String */;
9444 val
* var22
/* : String */;
9445 val
* var23
/* : String */;
9446 long var24
/* : Int */;
9447 long var26
/* : Int */;
9448 val
* var27
/* : RuntimeVariable */;
9449 val
* var_length
/* var length: RuntimeVariable */;
9450 val
* var28
/* : RuntimeVariable */;
9451 val
* var_nat
/* var nat: RuntimeVariable */;
9452 long var_i
/* var i: Int */;
9453 long var29
/* : Int */;
9454 long var31
/* : Int */;
9455 long var_32
/* var : Int */;
9456 short int var33
/* : Bool */;
9457 short int var35
/* : Bool */;
9460 const char* var_class_name
;
9461 short int var36
/* : Bool */;
9462 val
* var37
/* : nullable Object */;
9463 val
* var38
/* : MClassType */;
9464 val
* var39
/* : RuntimeVariable */;
9465 val
* var_r
/* var r: RuntimeVariable */;
9466 val
* var41
/* : NativeArray[String] */;
9467 static val
* varonce40
;
9468 static val
* varonce42
;
9469 val
* var43
/* : String */;
9470 char* var44
/* : NativeString */;
9471 val
* var45
/* : String */;
9472 static val
* varonce46
;
9473 val
* var47
/* : String */;
9474 char* var48
/* : NativeString */;
9475 val
* var49
/* : String */;
9476 static val
* varonce50
;
9477 val
* var51
/* : String */;
9478 char* var52
/* : NativeString */;
9479 val
* var53
/* : String */;
9480 static val
* varonce54
;
9481 val
* var55
/* : String */;
9482 char* var56
/* : NativeString */;
9483 val
* var57
/* : String */;
9484 static val
* varonce58
;
9485 val
* var59
/* : String */;
9486 char* var60
/* : NativeString */;
9487 val
* var61
/* : String */;
9488 val
* var62
/* : String */;
9489 val
* var63
/* : String */;
9490 val
* var64
/* : String */;
9491 val
* var65
/* : String */;
9492 val
* var66
/* : String */;
9493 long var67
/* : Int */;
9494 static val
* varonce68
;
9495 val
* var69
/* : String */;
9496 char* var70
/* : NativeString */;
9497 val
* var71
/* : String */;
9498 val
* var72
/* : MClassDef */;
9499 val
* var74
/* : MClassDef */;
9500 val
* var75
/* : MClassType */;
9501 val
* var77
/* : MClassType */;
9502 val
* var78
/* : MMethod */;
9503 val
* var79
/* : Array[RuntimeVariable] */;
9504 val
* var_80
/* var : Array[RuntimeVariable] */;
9505 val
* var81
/* : nullable RuntimeVariable */;
9506 static val
* varonce82
;
9507 val
* var83
/* : String */;
9508 char* var84
/* : NativeString */;
9509 val
* var85
/* : String */;
9513 var1
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
9516 var2
= nitc__model___MModule___native_array_class(var1
);
9520 var3
= nitc___nitc__AbstractCompilerVisitor___mmodule(self
);
9523 var4
= nitc__model___MModule___array_class(var3
);
9525 var_arrayclass
= var4
;
9526 var5
= NEW_core__Array(&type_core__Array__nitc__MType
);
9528 core___core__Array___with_capacity(var5
, 1l); /* Direct call array#Array#with_capacity on <var5:Array[MType]>*/
9532 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_
, var_elttype
); /* Direct call array#AbstractArray#push on <var_:Array[MType]>*/
9535 var6
= nitc___nitc__MClass___get_mtype(var_arrayclass
, var_
);
9537 var_arraytype
= var6
;
9539 var7
= ((val
*(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor__init_instance
]))(self
, var_arraytype
); /* init_instance on <self:SeparateCompilerVisitor>*/
9542 if (unlikely(varonce
==NULL
)) {
9543 var8
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
9544 if (likely(varonce9
!=NULL
)) {
9548 var12
= core__flat___NativeString___to_s_full(var11
, 5l, 5l);
9552 ((struct instance_core__NativeArray
*)var8
)->values
[0]=var10
;
9553 if (likely(varonce13
!=NULL
)) {
9556 var15
= " = array_instance Array[";
9557 var16
= core__flat___NativeString___to_s_full(var15
, 24l, 24l);
9561 ((struct instance_core__NativeArray
*)var8
)->values
[2]=var14
;
9562 if (likely(varonce17
!=NULL
)) {
9566 var20
= core__flat___NativeString___to_s_full(var19
, 4l, 4l);
9570 ((struct instance_core__NativeArray
*)var8
)->values
[4]=var18
;
9576 var21
= ((val
*(*)(val
* self
))(var_res
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_res
); /* to_s on <var_res:RuntimeVariable>*/
9578 ((struct instance_core__NativeArray
*)var8
)->values
[1]=var21
;
9580 var22
= ((val
*(*)(val
* self
))(var_elttype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_elttype
); /* to_s on <var_elttype:MType>*/
9582 ((struct instance_core__NativeArray
*)var8
)->values
[3]=var22
;
9584 var23
= ((val
*(*)(val
* self
))(var8
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var8
); /* native_to_s on <var8:NativeArray[String]>*/
9588 nitc___nitc__AbstractCompilerVisitor___add(self
, var23
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
9591 { /* Inline array#AbstractArrayRead#length (var_array) on <var_array:Array[RuntimeVariable]> */
9592 var26
= var_array
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_array:Array[RuntimeVariable]> */
9594 RET_LABEL25
:(void)0;
9598 var27
= nitc___nitc__AbstractCompilerVisitor___int_instance(self
, var24
);
9602 var28
= ((val
*(*)(val
* self
, val
* p0
, val
* p1
))(self
->class->vft
[COLOR_nitc__abstract_compiler__AbstractCompilerVisitor__native_array_instance
]))(self
, var_elttype
, var_length
); /* native_array_instance on <self:SeparateCompilerVisitor>*/
9607 { /* Inline array#AbstractArrayRead#length (var_array) on <var_array:Array[RuntimeVariable]> */
9608 var31
= var_array
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_array:Array[RuntimeVariable]> */
9610 RET_LABEL30
:(void)0;
9616 { /* Inline kernel#Int#< (var_i,var_32) on <var_i:Int> */
9617 /* Covariant cast for argument 0 (i) <var_32:Int> isa OTHER */
9618 /* <var_32:Int> isa OTHER */
9619 var35
= 1; /* easy <var_32:Int> isa OTHER*/
9620 if (unlikely(!var35
)) {
9621 var_class_name
= type_core__Int
.name
;
9622 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
9623 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 728);
9626 var36
= var_i
< var_32
;
9629 RET_LABEL34
:(void)0;
9637 var37
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_array
, var_i
);
9640 var38
= nitc___nitc__AbstractCompilerVisitor___object_type(self
);
9643 var39
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__autobox(self
, var37
, var38
);
9646 if (unlikely(varonce40
==NULL
)) {
9647 var41
= NEW_core__NativeArray(9l, &type_core__NativeArray__core__String
);
9648 if (likely(varonce42
!=NULL
)) {
9651 var44
= "((struct instance_";
9652 var45
= core__flat___NativeString___to_s_full(var44
, 18l, 18l);
9656 ((struct instance_core__NativeArray
*)var41
)->values
[0]=var43
;
9657 if (likely(varonce46
!=NULL
)) {
9661 var49
= core__flat___NativeString___to_s_full(var48
, 2l, 2l);
9665 ((struct instance_core__NativeArray
*)var41
)->values
[2]=var47
;
9666 if (likely(varonce50
!=NULL
)) {
9669 var52
= ")->values[";
9670 var53
= core__flat___NativeString___to_s_full(var52
, 10l, 10l);
9674 ((struct instance_core__NativeArray
*)var41
)->values
[4]=var51
;
9675 if (likely(varonce54
!=NULL
)) {
9678 var56
= "] = (val*) ";
9679 var57
= core__flat___NativeString___to_s_full(var56
, 11l, 11l);
9683 ((struct instance_core__NativeArray
*)var41
)->values
[6]=var55
;
9684 if (likely(varonce58
!=NULL
)) {
9688 var61
= core__flat___NativeString___to_s_full(var60
, 1l, 1l);
9692 ((struct instance_core__NativeArray
*)var41
)->values
[8]=var59
;
9698 var62
= nitc___nitc__MClass___nitc__model_base__MEntity__c_name(var_nclass
);
9700 ((struct instance_core__NativeArray
*)var41
)->values
[1]=var62
;
9702 var63
= ((val
*(*)(val
* self
))(var_nat
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_nat
); /* to_s on <var_nat:RuntimeVariable>*/
9704 ((struct instance_core__NativeArray
*)var41
)->values
[3]=var63
;
9705 var64
= core__flat___Int___core__abstract_text__Object__to_s(var_i
);
9706 ((struct instance_core__NativeArray
*)var41
)->values
[5]=var64
;
9708 var65
= ((val
*(*)(val
* self
))(var_r
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_r
); /* to_s on <var_r:RuntimeVariable>*/
9710 ((struct instance_core__NativeArray
*)var41
)->values
[7]=var65
;
9712 var66
= ((val
*(*)(val
* self
))(var41
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var41
); /* native_to_s on <var41:NativeArray[String]>*/
9716 nitc___nitc__AbstractCompilerVisitor___add(self
, var66
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
9719 var67
= core___core__Int___Discrete__successor(var_i
, 1l);
9723 BREAK_label
: (void)0;
9724 if (likely(varonce68
!=NULL
)) {
9727 var70
= "with_native";
9728 var71
= core__flat___NativeString___to_s_full(var70
, 11l, 11l);
9733 { /* Inline model#MClass#intro (var_arrayclass) on <var_arrayclass:MClass> */
9734 var74
= var_arrayclass
->attrs
[COLOR_nitc__model__MClass___intro
].val
; /* _intro on <var_arrayclass:MClass> */
9735 if (unlikely(var74
== NULL
)) {
9736 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
9737 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 483);
9741 RET_LABEL73
:(void)0;
9745 { /* Inline model#MClassDef#bound_mtype (var72) on <var72:MClassDef> */
9746 var77
= var72
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var72:MClassDef> */
9747 if (unlikely(var77
== NULL
)) {
9748 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
9749 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
9753 RET_LABEL76
:(void)0;
9757 var78
= nitc___nitc__AbstractCompilerVisitor___get_property(self
, var69
, var75
);
9759 var79
= NEW_core__Array(&type_core__Array__nitc__RuntimeVariable
);
9761 core___core__Array___with_capacity(var79
, 3l); /* Direct call array#Array#with_capacity on <var79:Array[RuntimeVariable]>*/
9765 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_80
, var_res
); /* Direct call array#AbstractArray#push on <var_80:Array[RuntimeVariable]>*/
9768 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_80
, var_nat
); /* Direct call array#AbstractArray#push on <var_80:Array[RuntimeVariable]>*/
9771 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_80
, var_length
); /* Direct call array#AbstractArray#push on <var_80:Array[RuntimeVariable]>*/
9774 var81
= nitc___nitc__SeparateCompilerVisitor___nitc__abstract_compiler__AbstractCompilerVisitor__send(self
, var78
, var_80
);
9776 if (likely(varonce82
!=NULL
)) {
9780 var85
= core__flat___NativeString___to_s_full(var84
, 1l, 1l);
9785 nitc___nitc__AbstractCompilerVisitor___add(self
, var83
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/