1 #include "nit__auto_super_init.sep.0.h"
2 /* method auto_super_init#ToolContext#auto_super_init_phase for (self: ToolContext): Phase */
3 val
* nit__auto_super_init___ToolContext___auto_super_init_phase(val
* self
) {
4 val
* var
/* : Phase */;
5 val
* var1
/* : Phase */;
6 var1
= self
->attrs
[COLOR_nit__auto_super_init__ToolContext___auto_super_init_phase
].val
; /* _auto_super_init_phase on <self:ToolContext> */
7 if (unlikely(var1
== NULL
)) {
8 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _auto_super_init_phase");
9 PRINT_ERROR(" (%s:%d)\n", FILE_nit__auto_super_init
, 25);
16 /* method auto_super_init#AutoSuperInitPhase#process_npropdef for (self: AutoSuperInitPhase, APropdef) */
17 void nit__auto_super_init___nit__auto_super_init__AutoSuperInitPhase___nit__phase__Phase__process_npropdef(val
* self
, val
* p0
) {
18 val
* var_npropdef
/* var npropdef: APropdef */;
19 short int var
/* : Bool */;
22 val
* var1
/* : ToolContext */;
23 val
* var3
/* : ToolContext */;
24 val
* var4
/* : ModelBuilder */;
26 /* <var_npropdef:APropdef> isa AMethPropdef */
27 cltype
= type_nit__AMethPropdef
.color
;
28 idtype
= type_nit__AMethPropdef
.id
;
29 if(cltype
>= var_npropdef
->type
->table_size
) {
32 var
= var_npropdef
->type
->type_table
[cltype
] == idtype
;
36 { /* Inline phase#Phase#toolcontext (self) on <self:AutoSuperInitPhase> */
37 var3
= self
->attrs
[COLOR_nit__phase__Phase___toolcontext
].val
; /* _toolcontext on <self:AutoSuperInitPhase> */
38 if (unlikely(var3
== NULL
)) {
39 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
40 PRINT_ERROR(" (%s:%d)\n", FILE_nit__phase
, 201);
48 var4
= nit__modelbuilder_base___ToolContext___modelbuilder(var1
);
51 nit__auto_super_init___AMethPropdef___do_auto_super_init(var_npropdef
, var4
); /* Direct call auto_super_init#AMethPropdef#do_auto_super_init on <var_npropdef:APropdef(AMethPropdef)>*/
57 /* method auto_super_init#AutoSuperInitVisitor#visit for (self: AutoSuperInitVisitor, ANode) */
58 void nit__auto_super_init___nit__auto_super_init__AutoSuperInitVisitor___nit__parser_nodes__Visitor__visit(val
* self
, val
* p0
) {
59 val
* var_n
/* var n: ANode */;
62 ((void (*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_nit__auto_super_init__ANode__accept_auto_super_init
]))(var_n
, self
) /* accept_auto_super_init on <var_n:ANode>*/;
65 ((void (*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_nit__parser_nodes__ANode__visit_all
]))(var_n
, self
) /* visit_all on <var_n:ANode>*/;
69 /* method auto_super_init#AutoSuperInitVisitor#has_explicit_super_init for (self: AutoSuperInitVisitor): nullable ANode */
70 val
* nit__auto_super_init___nit__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init(val
* self
) {
71 val
* var
/* : nullable ANode */;
72 val
* var1
/* : nullable ANode */;
73 var1
= self
->attrs
[COLOR_nit__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init
].val
; /* _has_explicit_super_init on <self:AutoSuperInitVisitor> */
78 /* method auto_super_init#AutoSuperInitVisitor#has_explicit_super_init= for (self: AutoSuperInitVisitor, nullable ANode) */
79 void nit__auto_super_init___nit__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init_61d(val
* self
, val
* p0
) {
80 self
->attrs
[COLOR_nit__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init
].val
= p0
; /* _has_explicit_super_init on <self:AutoSuperInitVisitor> */
83 /* method auto_super_init#AutoSuperInitVisitor#is_broken for (self: AutoSuperInitVisitor): Bool */
84 short int nit__auto_super_init___nit__auto_super_init__AutoSuperInitVisitor___is_broken(val
* self
) {
85 short int var
/* : Bool */;
86 short int var1
/* : Bool */;
87 var1
= self
->attrs
[COLOR_nit__auto_super_init__AutoSuperInitVisitor___is_broken
].s
; /* _is_broken on <self:AutoSuperInitVisitor> */
92 /* method auto_super_init#AutoSuperInitVisitor#is_broken= for (self: AutoSuperInitVisitor, Bool) */
93 void nit__auto_super_init___nit__auto_super_init__AutoSuperInitVisitor___is_broken_61d(val
* self
, short int p0
) {
94 self
->attrs
[COLOR_nit__auto_super_init__AutoSuperInitVisitor___is_broken
].s
= p0
; /* _is_broken on <self:AutoSuperInitVisitor> */
97 /* method auto_super_init#AMethPropdef#auto_super_inits for (self: AMethPropdef): nullable Array[CallSite] */
98 val
* nit__auto_super_init___AMethPropdef___auto_super_inits(val
* self
) {
99 val
* var
/* : nullable Array[CallSite] */;
100 val
* var1
/* : nullable Array[CallSite] */;
101 var1
= self
->attrs
[COLOR_nit__auto_super_init__AMethPropdef___auto_super_inits
].val
; /* _auto_super_inits on <self:AMethPropdef> */
106 /* method auto_super_init#AMethPropdef#auto_super_inits= for (self: AMethPropdef, nullable Array[CallSite]) */
107 void nit__auto_super_init___AMethPropdef___auto_super_inits_61d(val
* self
, val
* p0
) {
108 self
->attrs
[COLOR_nit__auto_super_init__AMethPropdef___auto_super_inits
].val
= p0
; /* _auto_super_inits on <self:AMethPropdef> */
111 /* method auto_super_init#AMethPropdef#auto_super_call for (self: AMethPropdef): Bool */
112 short int nit__auto_super_init___AMethPropdef___auto_super_call(val
* self
) {
113 short int var
/* : Bool */;
114 short int var1
/* : Bool */;
115 var1
= self
->attrs
[COLOR_nit__auto_super_init__AMethPropdef___auto_super_call
].s
; /* _auto_super_call on <self:AMethPropdef> */
120 /* method auto_super_init#AMethPropdef#auto_super_call= for (self: AMethPropdef, Bool) */
121 void nit__auto_super_init___AMethPropdef___auto_super_call_61d(val
* self
, short int p0
) {
122 self
->attrs
[COLOR_nit__auto_super_init__AMethPropdef___auto_super_call
].s
= p0
; /* _auto_super_call on <self:AMethPropdef> */
125 /* method auto_super_init#AMethPropdef#do_auto_super_init for (self: AMethPropdef, ModelBuilder) */
126 void nit__auto_super_init___AMethPropdef___do_auto_super_init(val
* self
, val
* p0
) {
127 val
* var_modelbuilder
/* var modelbuilder: ModelBuilder */;
128 val
* var
/* : nullable ANode */;
129 val
* var2
/* : nullable ANode */;
130 short int var3
/* : Bool */;
133 const char* var_class_name
;
134 val
* var4
/* : nullable MClassDef */;
135 val
* var6
/* : nullable MClassDef */;
136 val
* var_mclassdef
/* var mclassdef: MClassDef */;
137 val
* var7
/* : nullable MPropDef */;
138 val
* var9
/* : nullable MPropDef */;
139 val
* var_mpropdef
/* var mpropdef: MMethodDef */;
140 val
* var10
/* : MClassDef */;
141 val
* var12
/* : MClassDef */;
142 val
* var13
/* : MModule */;
143 val
* var15
/* : MModule */;
144 val
* var_mmodule
/* var mmodule: MModule */;
145 val
* var16
/* : MClassType */;
146 val
* var18
/* : MClassType */;
147 val
* var_anchor
/* var anchor: MClassType */;
148 val
* var19
/* : MClass */;
149 val
* var21
/* : MClass */;
150 val
* var22
/* : MClassType */;
151 val
* var24
/* : MClassType */;
152 val
* var_recvtype
/* var recvtype: MClassType */;
154 val
* var25
/* : String */;
155 char* var26
/* : NativeString */;
156 long var27
/* : Int */;
157 val
* var28
/* : FlatString */;
158 val
* var29
/* : nullable AAnnotation */;
159 val
* var_nosuper
/* var nosuper: nullable AAnnotation */;
160 short int var30
/* : Bool */;
161 val
* var31
/* : MProperty */;
162 val
* var33
/* : MProperty */;
163 short int var34
/* : Bool */;
164 short int var36
/* : Bool */;
165 short int var37
/* : Bool */;
166 short int var_
/* var : Bool */;
167 val
* var38
/* : MProperty */;
168 val
* var40
/* : MProperty */;
169 short int var41
/* : Bool */;
170 short int var43
/* : Bool */;
171 val
* var44
/* : null */;
172 short int var45
/* : Bool */;
173 short int var46
/* : Bool */;
174 val
* var_other
/* var other: nullable Object */;
175 short int var48
/* : Bool */;
176 short int var49
/* : Bool */;
177 static val
* varonce50
;
178 val
* var51
/* : String */;
179 char* var52
/* : NativeString */;
180 long var53
/* : Int */;
181 val
* var54
/* : FlatString */;
182 val
* var55
/* : MClassDef */;
183 val
* var57
/* : MClassDef */;
184 short int var58
/* : Bool */;
185 short int var59
/* : Bool */;
186 short int var60
/* : Bool */;
187 short int var_skip
/* var skip: Bool */;
188 val
* var61
/* : nullable POSetElement[MClassDef] */;
189 val
* var63
/* : nullable POSetElement[MClassDef] */;
190 val
* var64
/* : Collection[nullable Object] */;
191 val
* var_65
/* var : Collection[MClassDef] */;
192 val
* var66
/* : Iterator[nullable Object] */;
193 val
* var_67
/* var : Iterator[MClassDef] */;
194 short int var68
/* : Bool */;
195 val
* var69
/* : nullable Object */;
196 val
* var_cd
/* var cd: MClassDef */;
197 val
* var70
/* : MClass */;
198 val
* var72
/* : MClass */;
199 val
* var73
/* : MClassKind */;
200 val
* var75
/* : MClassKind */;
201 short int var76
/* : Bool */;
202 short int var78
/* : Bool */;
203 short int var79
/* : Bool */;
204 val
* var81
/* : nullable AExpr */;
205 val
* var83
/* : nullable AExpr */;
206 val
* var_nblock
/* var nblock: nullable AExpr */;
207 val
* var84
/* : null */;
208 short int var85
/* : Bool */;
209 short int var86
/* : Bool */;
210 short int var88
/* : Bool */;
211 short int var89
/* : Bool */;
212 val
* var90
/* : AutoSuperInitVisitor */;
213 val
* var_v
/* var v: AutoSuperInitVisitor */;
214 val
* var92
/* : nullable ANode */;
215 val
* var94
/* : nullable ANode */;
216 val
* var_anode
/* var anode: nullable ANode */;
217 val
* var95
/* : null */;
218 short int var96
/* : Bool */;
219 short int var97
/* : Bool */;
220 short int var99
/* : Bool */;
221 short int var100
/* : Bool */;
222 val
* var101
/* : null */;
223 short int var102
/* : Bool */;
224 short int var103
/* : Bool */;
225 short int var105
/* : Bool */;
226 short int var106
/* : Bool */;
227 static val
* varonce107
;
228 val
* var108
/* : String */;
229 char* var109
/* : NativeString */;
230 long var110
/* : Int */;
231 val
* var111
/* : FlatString */;
232 short int var112
/* : Bool */;
233 short int var114
/* : Bool */;
234 val
* var115
/* : null */;
235 short int var116
/* : Bool */;
236 short int var117
/* : Bool */;
237 short int var119
/* : Bool */;
238 short int var120
/* : Bool */;
239 short int var121
/* : Bool */;
240 short int var122
/* : Bool */;
241 short int var123
/* : Bool */;
242 short int var125
/* : Bool */;
243 val
* var127
/* : Array[CallSite] */;
244 val
* var_auto_super_inits
/* var auto_super_inits: Array[CallSite] */;
245 val
* var128
/* : Array[MClassType] */;
246 val
* var130
/* : Array[MClassType] */;
247 val
* var_131
/* var : Array[MClassType] */;
248 val
* var132
/* : ArrayIterator[nullable Object] */;
249 val
* var_133
/* var : ArrayIterator[MClassType] */;
250 short int var134
/* : Bool */;
251 val
* var135
/* : nullable Object */;
252 val
* var_msupertype
/* var msupertype: MClassType */;
253 val
* var136
/* : MClass */;
254 val
* var138
/* : MClass */;
255 val
* var139
/* : MClassKind */;
256 val
* var141
/* : MClassKind */;
257 short int var142
/* : Bool */;
258 short int var144
/* : Bool */;
259 short int var145
/* : Bool */;
260 val
* var147
/* : MClassType */;
261 val
* var149
/* : MClassType */;
262 val
* var150
/* : MClassType */;
263 val
* var151
/* : MProperty */;
264 val
* var153
/* : MProperty */;
265 val
* var154
/* : String */;
266 val
* var156
/* : String */;
267 val
* var157
/* : nullable MProperty */;
268 val
* var_candidate
/* var candidate: nullable MProperty */;
269 val
* var158
/* : null */;
270 short int var159
/* : Bool */;
271 short int var160
/* : Bool */;
272 val
* var_other162
/* var other: nullable Object */;
273 short int var163
/* : Bool */;
274 short int var165
/* : Bool */;
275 static val
* varonce166
;
276 val
* var167
/* : String */;
277 char* var168
/* : NativeString */;
278 long var169
/* : Int */;
279 val
* var170
/* : FlatString */;
280 val
* var171
/* : nullable MProperty */;
281 val
* var172
/* : null */;
282 short int var173
/* : Bool */;
283 short int var174
/* : Bool */;
284 short int var176
/* : Bool */;
285 short int var178
/* : Bool */;
286 static val
* varonce179
;
287 val
* var180
/* : String */;
288 char* var181
/* : NativeString */;
289 long var182
/* : Int */;
290 val
* var183
/* : FlatString */;
291 static val
* varonce184
;
292 val
* var185
/* : String */;
293 char* var186
/* : NativeString */;
294 long var187
/* : Int */;
295 val
* var188
/* : FlatString */;
296 val
* var189
/* : MProperty */;
297 val
* var191
/* : MProperty */;
298 val
* var192
/* : String */;
299 val
* var194
/* : String */;
300 static val
* varonce195
;
301 val
* var196
/* : String */;
302 char* var197
/* : NativeString */;
303 long var198
/* : Int */;
304 val
* var199
/* : FlatString */;
305 static val
* varonce200
;
306 val
* var201
/* : String */;
307 char* var202
/* : NativeString */;
308 long var203
/* : Int */;
309 val
* var204
/* : FlatString */;
310 val
* var205
/* : Array[Object] */;
311 long var206
/* : Int */;
312 val
* var207
/* : NativeArray[Object] */;
313 val
* var208
/* : String */;
314 short int var209
/* : Bool */;
317 short int var212
/* : Bool */;
318 short int var214
/* : Bool */;
319 val
* var215
/* : Array[MPropDef] */;
320 val
* var_candidatedefs
/* var candidatedefs: Array[MMethodDef] */;
321 val
* var216
/* : nullable Object */;
322 val
* var_candidatedef
/* var candidatedef: MMethodDef */;
323 val
* var217
/* : nullable MSignature */;
324 val
* var218
/* : nullable MSignature */;
325 val
* var220
/* : nullable MSignature */;
326 val
* var221
/* : nullable MSignature */;
327 val
* var223
/* : nullable MSignature */;
328 val
* var_msignature
/* var msignature: nullable MSignature */;
329 short int var224
/* : Bool */;
330 val
* var225
/* : MSignature */;
331 val
* var226
/* : CallSite */;
332 short int var227
/* : Bool */;
333 short int var228
/* : Bool */;
334 val
* var_callsite
/* var callsite: CallSite */;
335 val
* var231
/* : nullable MMethod */;
336 val
* var233
/* : nullable MMethod */;
337 val
* var_the_root_init_mmethod
/* var the_root_init_mmethod: nullable MMethod */;
338 short int var234
/* : Bool */;
339 val
* var235
/* : null */;
340 short int var236
/* : Bool */;
341 short int var237
/* : Bool */;
342 short int var239
/* : Bool */;
343 short int var240
/* : Bool */;
344 short int var_241
/* var : Bool */;
345 short int var242
/* : Bool */;
346 val
* var243
/* : Array[MPropDef] */;
347 val
* var_candidatedefs244
/* var candidatedefs: Array[MMethodDef] */;
348 val
* var245
/* : nullable Object */;
349 val
* var_candidatedef246
/* var candidatedef: MMethodDef */;
350 long var247
/* : Int */;
351 long var249
/* : Int */;
352 long var250
/* : Int */;
353 short int var251
/* : Bool */;
354 short int var253
/* : Bool */;
357 const char* var_class_name256
;
358 short int var257
/* : Bool */;
359 val
* var_258
/* var : Array[MMethodDef] */;
360 val
* var259
/* : ArrayIterator[nullable Object] */;
361 val
* var_260
/* var : ArrayIterator[MMethodDef] */;
362 short int var261
/* : Bool */;
363 val
* var262
/* : nullable Object */;
364 val
* var_spd
/* var spd: MMethodDef */;
365 val
* var263
/* : Array[MProperty] */;
366 val
* var265
/* : Array[MProperty] */;
367 long var266
/* : Int */;
368 long var268
/* : Int */;
369 val
* var269
/* : Array[MProperty] */;
370 val
* var271
/* : Array[MProperty] */;
371 long var272
/* : Int */;
372 long var274
/* : Int */;
373 short int var275
/* : Bool */;
374 short int var277
/* : Bool */;
377 const char* var_class_name280
;
378 short int var281
/* : Bool */;
379 val
* var_284
/* var : Array[MMethodDef] */;
380 val
* var285
/* : ArrayIterator[nullable Object] */;
381 val
* var_286
/* var : ArrayIterator[MMethodDef] */;
382 short int var287
/* : Bool */;
383 val
* var288
/* : nullable Object */;
384 val
* var_spd289
/* var spd: MMethodDef */;
385 long var290
/* : Int */;
386 long var_i
/* var i: Int */;
387 val
* var291
/* : Array[MProperty] */;
388 val
* var293
/* : Array[MProperty] */;
389 val
* var_294
/* var : Array[MProperty] */;
390 val
* var295
/* : ArrayIterator[nullable Object] */;
391 val
* var_296
/* var : ArrayIterator[MProperty] */;
392 short int var297
/* : Bool */;
393 val
* var298
/* : nullable Object */;
394 val
* var_p
/* var p: MProperty */;
395 val
* var299
/* : Array[MProperty] */;
396 val
* var301
/* : Array[MProperty] */;
397 val
* var302
/* : nullable Object */;
398 short int var303
/* : Bool */;
399 short int var305
/* : Bool */;
400 short int var306
/* : Bool */;
401 static val
* varonce307
;
402 val
* var308
/* : String */;
403 char* var309
/* : NativeString */;
404 long var310
/* : Int */;
405 val
* var311
/* : FlatString */;
406 static val
* varonce312
;
407 val
* var313
/* : String */;
408 char* var314
/* : NativeString */;
409 long var315
/* : Int */;
410 val
* var316
/* : FlatString */;
411 val
* var317
/* : Array[MProperty] */;
412 val
* var319
/* : Array[MProperty] */;
413 static val
* varonce320
;
414 val
* var321
/* : String */;
415 char* var322
/* : NativeString */;
416 long var323
/* : Int */;
417 val
* var324
/* : FlatString */;
418 val
* var325
/* : String */;
419 static val
* varonce326
;
420 val
* var327
/* : String */;
421 char* var328
/* : NativeString */;
422 long var329
/* : Int */;
423 val
* var330
/* : FlatString */;
424 static val
* varonce331
;
425 val
* var332
/* : String */;
426 char* var333
/* : NativeString */;
427 long var334
/* : Int */;
428 val
* var335
/* : FlatString */;
429 val
* var336
/* : Array[MProperty] */;
430 val
* var338
/* : Array[MProperty] */;
431 static val
* varonce339
;
432 val
* var340
/* : String */;
433 char* var341
/* : NativeString */;
434 long var342
/* : Int */;
435 val
* var343
/* : FlatString */;
436 val
* var344
/* : String */;
437 static val
* varonce345
;
438 val
* var346
/* : String */;
439 char* var347
/* : NativeString */;
440 long var348
/* : Int */;
441 val
* var349
/* : FlatString */;
442 val
* var350
/* : Array[Object] */;
443 long var351
/* : Int */;
444 val
* var352
/* : NativeArray[Object] */;
445 val
* var353
/* : String */;
446 long var354
/* : Int */;
447 long var355
/* : Int */;
448 short int var357
/* : Bool */;
451 const char* var_class_name360
;
452 long var361
/* : Int */;
453 val
* var366
/* : nullable MSignature */;
454 val
* var367
/* : nullable MSignature */;
455 val
* var369
/* : nullable MSignature */;
456 val
* var370
/* : nullable MSignature */;
457 val
* var372
/* : nullable MSignature */;
458 val
* var_msignature373
/* var msignature: nullable MSignature */;
459 short int var374
/* : Bool */;
460 val
* var375
/* : MSignature */;
461 val
* var376
/* : CallSite */;
462 short int var377
/* : Bool */;
463 short int var378
/* : Bool */;
464 val
* var_callsite379
/* var callsite: CallSite */;
465 short int var380
/* : Bool */;
466 static val
* varonce381
;
467 val
* var382
/* : String */;
468 char* var383
/* : NativeString */;
469 long var384
/* : Int */;
470 val
* var385
/* : FlatString */;
471 static val
* varonce386
;
472 val
* var387
/* : String */;
473 char* var388
/* : NativeString */;
474 long var389
/* : Int */;
475 val
* var390
/* : FlatString */;
476 val
* var391
/* : Array[Object] */;
477 long var392
/* : Int */;
478 val
* var393
/* : NativeArray[Object] */;
479 val
* var394
/* : String */;
480 val
* var_395
/* var : Array[CallSite] */;
481 val
* var396
/* : ArrayIterator[nullable Object] */;
482 val
* var_397
/* var : ArrayIterator[CallSite] */;
483 short int var398
/* : Bool */;
484 val
* var399
/* : nullable Object */;
485 val
* var_auto_super_init
/* var auto_super_init: CallSite */;
486 val
* var400
/* : MMethodDef */;
487 val
* var402
/* : MMethodDef */;
488 val
* var_auto_super_init_def
/* var auto_super_init_def: MMethodDef */;
489 val
* var403
/* : nullable MSignature */;
490 val
* var405
/* : nullable MSignature */;
491 val
* var_msig
/* var msig: MSignature */;
492 val
* var406
/* : MSignature */;
493 val
* var408
/* : MSignature */;
494 val
* var_supermsig
/* var supermsig: MSignature */;
495 long var409
/* : Int */;
496 long var410
/* : Int */;
497 short int var411
/* : Bool */;
498 short int var413
/* : Bool */;
501 const char* var_class_name416
;
502 short int var417
/* : Bool */;
503 static val
* varonce418
;
504 val
* var419
/* : String */;
505 char* var420
/* : NativeString */;
506 long var421
/* : Int */;
507 val
* var422
/* : FlatString */;
508 static val
* varonce423
;
509 val
* var424
/* : String */;
510 char* var425
/* : NativeString */;
511 long var426
/* : Int */;
512 val
* var427
/* : FlatString */;
513 long var428
/* : Int */;
514 static val
* varonce429
;
515 val
* var430
/* : String */;
516 char* var431
/* : NativeString */;
517 long var432
/* : Int */;
518 val
* var433
/* : FlatString */;
519 long var434
/* : Int */;
520 static val
* varonce435
;
521 val
* var436
/* : String */;
522 char* var437
/* : NativeString */;
523 long var438
/* : Int */;
524 val
* var439
/* : FlatString */;
525 val
* var440
/* : Array[Object] */;
526 long var441
/* : Int */;
527 val
* var442
/* : NativeArray[Object] */;
528 val
* var443
/* : Object */;
529 val
* var444
/* : Object */;
530 val
* var445
/* : String */;
531 long var447
/* : Int */;
532 long var_i448
/* var i: Int */;
533 val
* var449
/* : Array[MParameter] */;
534 val
* var451
/* : Array[MParameter] */;
535 val
* var_452
/* var : Array[MParameter] */;
536 val
* var453
/* : ArrayIterator[nullable Object] */;
537 val
* var_454
/* var : ArrayIterator[MParameter] */;
538 short int var455
/* : Bool */;
539 val
* var456
/* : nullable Object */;
540 val
* var_sp
/* var sp: MParameter */;
541 val
* var457
/* : Array[MParameter] */;
542 val
* var459
/* : Array[MParameter] */;
543 val
* var460
/* : nullable Object */;
544 val
* var_p461
/* var p: MParameter */;
545 val
* var462
/* : MType */;
546 val
* var464
/* : MType */;
547 val
* var_sub
/* var sub: MType */;
548 val
* var465
/* : MType */;
549 val
* var467
/* : MType */;
550 val
* var_sup
/* var sup: MType */;
551 short int var468
/* : Bool */;
552 short int var469
/* : Bool */;
553 static val
* varonce470
;
554 val
* var471
/* : String */;
555 char* var472
/* : NativeString */;
556 long var473
/* : Int */;
557 val
* var474
/* : FlatString */;
558 static val
* varonce475
;
559 val
* var476
/* : String */;
560 char* var477
/* : NativeString */;
561 long var478
/* : Int */;
562 val
* var479
/* : FlatString */;
563 static val
* varonce480
;
564 val
* var481
/* : String */;
565 char* var482
/* : NativeString */;
566 long var483
/* : Int */;
567 val
* var484
/* : FlatString */;
568 val
* var485
/* : MType */;
569 val
* var487
/* : MType */;
570 static val
* varonce488
;
571 val
* var489
/* : String */;
572 char* var490
/* : NativeString */;
573 long var491
/* : Int */;
574 val
* var492
/* : FlatString */;
575 val
* var493
/* : String */;
576 val
* var495
/* : String */;
577 static val
* varonce496
;
578 val
* var497
/* : String */;
579 char* var498
/* : NativeString */;
580 long var499
/* : Int */;
581 val
* var500
/* : FlatString */;
582 val
* var501
/* : MType */;
583 val
* var503
/* : MType */;
584 static val
* varonce504
;
585 val
* var505
/* : String */;
586 char* var506
/* : NativeString */;
587 long var507
/* : Int */;
588 val
* var508
/* : FlatString */;
589 val
* var509
/* : Array[Object] */;
590 long var510
/* : Int */;
591 val
* var511
/* : NativeArray[Object] */;
592 val
* var512
/* : Object */;
593 val
* var513
/* : String */;
594 long var515
/* : Int */;
595 long var516
/* : Int */;
596 short int var518
/* : Bool */;
599 const char* var_class_name521
;
600 long var522
/* : Int */;
601 var_modelbuilder
= p0
;
603 { /* Inline parser_nodes#ANode#parent (self) on <self:AMethPropdef> */
604 var2
= self
->attrs
[COLOR_nit__parser_nodes__ANode___parent
].val
; /* _parent on <self:AMethPropdef> */
609 /* <var:nullable ANode> isa AClassdef */
610 cltype
= type_nit__AClassdef
.color
;
611 idtype
= type_nit__AClassdef
.id
;
615 if(cltype
>= var
->type
->table_size
) {
618 var3
= var
->type
->type_table
[cltype
] == idtype
;
621 if (unlikely(!var3
)) {
622 var_class_name
= var
== NULL ?
"null" : var
->type
->name
;
623 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AClassdef", var_class_name
);
624 PRINT_ERROR(" (%s:%d)\n", FILE_nit__auto_super_init
, 59);
628 { /* Inline modelize_class#AClassdef#mclassdef (var) on <var:nullable ANode(AClassdef)> */
629 var6
= var
->attrs
[COLOR_nit__modelize_class__AClassdef___mclassdef
].val
; /* _mclassdef on <var:nullable ANode(AClassdef)> */
634 if (unlikely(var4
== NULL
)) {
635 PRINT_ERROR("Runtime error: %s", "Cast failed");
636 PRINT_ERROR(" (%s:%d)\n", FILE_nit__auto_super_init
, 59);
639 var_mclassdef
= var4
;
641 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:AMethPropdef> */
642 var9
= self
->attrs
[COLOR_nit__modelize_property__APropdef___mpropdef
].val
; /* _mpropdef on <self:AMethPropdef> */
647 if (unlikely(var7
== NULL
)) {
648 PRINT_ERROR("Runtime error: %s", "Cast failed");
649 PRINT_ERROR(" (%s:%d)\n", FILE_nit__auto_super_init
, 60);
654 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:MMethodDef> */
655 var12
= var_mpropdef
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mpropdef:MMethodDef> */
656 if (unlikely(var12
== NULL
)) {
657 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
658 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2010);
666 { /* Inline model#MClassDef#mmodule (var10) on <var10:MClassDef> */
667 var15
= var10
->attrs
[COLOR_nit__model__MClassDef___mmodule
].val
; /* _mmodule on <var10:MClassDef> */
668 if (unlikely(var15
== NULL
)) {
669 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
670 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 489);
679 { /* Inline model#MClassDef#bound_mtype (var_mclassdef) on <var_mclassdef:MClassDef> */
680 var18
= var_mclassdef
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_mclassdef:MClassDef> */
681 if (unlikely(var18
== NULL
)) {
682 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
683 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 495);
692 { /* Inline model#MClassDef#mclass (var_mclassdef) on <var_mclassdef:MClassDef> */
693 var21
= var_mclassdef
->attrs
[COLOR_nit__model__MClassDef___mclass
].val
; /* _mclass on <var_mclassdef:MClassDef> */
694 if (unlikely(var21
== NULL
)) {
695 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
696 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 492);
704 { /* Inline model#MClass#mclass_type (var19) on <var19:MClass> */
705 var24
= var19
->attrs
[COLOR_nit__model__MClass___mclass_type
].val
; /* _mclass_type on <var19:MClass> */
706 if (unlikely(var24
== NULL
)) {
707 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
708 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 438);
715 var_recvtype
= var22
;
721 var28
= standard___standard__NativeString___to_s_with_length(var26
, var27
);
726 var29
= nit__annotation___Prod___get_single_annotation(self
, var25
, var_modelbuilder
);
730 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
731 var33
= var_mpropdef
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:MMethodDef> */
732 if (unlikely(var33
== NULL
)) {
733 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
734 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2013);
742 { /* Inline model#MMethod#is_init (var31) on <var31:MProperty(MMethod)> */
743 var36
= var31
->attrs
[COLOR_nit__model__MMethod___is_init
].s
; /* _is_init on <var31:MProperty(MMethod)> */
754 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
755 var40
= var_mpropdef
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:MMethodDef> */
756 if (unlikely(var40
== NULL
)) {
757 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
758 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2013);
766 { /* Inline model#MMethod#is_new (var38) on <var38:MProperty(MMethod)> */
767 var43
= var38
->attrs
[COLOR_nit__model__MMethod___is_new
].s
; /* _is_new on <var38:MProperty(MMethod)> */
776 if (var_nosuper
== NULL
) {
777 var45
= 0; /* is null */
779 var45
= 1; /* arg is null and recv is not */
782 { /* Inline kernel#Object#!= (var_nosuper,var44) on <var_nosuper:nullable AAnnotation> */
785 var48
= ((short int (*)(val
* self
, val
* p0
))(var_nosuper
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_nosuper
, var_other
) /* == on <var_nosuper:nullable AAnnotation(AAnnotation)>*/;
798 var52
= "Error: nosuper only in `init`";
800 var54
= standard___standard__NativeString___to_s_with_length(var52
, var53
);
805 nit___nit__ModelBuilder___error(var_modelbuilder
, var_nosuper
, var51
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
813 { /* Inline model#MPropDef#mclassdef (var_mpropdef) on <var_mpropdef:MMethodDef> */
814 var57
= var_mpropdef
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var_mpropdef:MMethodDef> */
815 if (unlikely(var57
== NULL
)) {
816 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
817 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2010);
825 var58
= nit___nit__MClassDef___is_intro(var55
);
835 { /* Inline model#MClassDef#in_hierarchy (var_mclassdef) on <var_mclassdef:MClassDef> */
836 var63
= var_mclassdef
->attrs
[COLOR_nit__model__MClassDef___in_hierarchy
].val
; /* _in_hierarchy on <var_mclassdef:MClassDef> */
842 PRINT_ERROR("Runtime error: %s", "Receiver is null");
843 PRINT_ERROR(" (%s:%d)\n", FILE_nit__auto_super_init
, 79);
846 var64
= poset___poset__POSetElement___direct_greaters(var61
);
850 var66
= ((val
* (*)(val
* self
))(var_65
->class->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_65
) /* iterator on <var_65:Collection[MClassDef]>*/;
855 var68
= ((short int (*)(val
* self
))(var_67
->class->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_67
) /* is_ok on <var_67:Iterator[MClassDef]>*/;
859 var69
= ((val
* (*)(val
* self
))(var_67
->class->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_67
) /* item on <var_67:Iterator[MClassDef]>*/;
863 { /* Inline model#MClassDef#mclass (var_cd) on <var_cd:MClassDef> */
864 var72
= var_cd
->attrs
[COLOR_nit__model__MClassDef___mclass
].val
; /* _mclass on <var_cd:MClassDef> */
865 if (unlikely(var72
== NULL
)) {
866 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
867 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 492);
875 { /* Inline model#MClass#kind (var70) on <var70:MClass> */
876 var75
= var70
->attrs
[COLOR_nit__model__MClass___kind
].val
; /* _kind on <var70:MClass> */
877 if (unlikely(var75
== NULL
)) {
878 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
879 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 399);
887 { /* Inline model#MClassKind#need_init (var73) on <var73:MClassKind> */
888 var78
= var73
->attrs
[COLOR_nit__model__MClassKind___need_init
].s
; /* _need_init on <var73:MClassKind> */
899 ((void (*)(val
* self
))(var_67
->class->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_67
) /* next on <var_67:Iterator[MClassDef]>*/;
905 BREAK_label
: (void)0;
907 { /* Inline abstract_collection#Iterator#finish (var_67) on <var_67:Iterator[MClassDef]> */
916 { /* Inline parser_nodes#AMethPropdef#n_block (self) on <self:AMethPropdef> */
917 var83
= self
->attrs
[COLOR_nit__parser_nodes__AMethPropdef___n_block
].val
; /* _n_block on <self:AMethPropdef> */
924 if (var_nblock
== NULL
) {
925 var85
= 0; /* is null */
927 var85
= 1; /* arg is null and recv is not */
930 { /* Inline kernel#Object#!= (var_nblock,var84) on <var_nblock:nullable AExpr> */
933 var88
= ((short int (*)(val
* self
, val
* p0
))(var_nblock
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_nblock
, var_other
) /* == on <var_nblock:nullable AExpr(AExpr)>*/;
943 var90
= NEW_nit__auto_super_init__AutoSuperInitVisitor(&type_nit__auto_super_init__AutoSuperInitVisitor
);
945 { /* Inline kernel#Object#init (var90) on <var90:AutoSuperInitVisitor> */
951 nit___nit__Visitor___enter_visit(var_v
, var_nblock
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:AutoSuperInitVisitor>*/
954 { /* Inline auto_super_init#AutoSuperInitVisitor#has_explicit_super_init (var_v) on <var_v:AutoSuperInitVisitor> */
955 var94
= var_v
->attrs
[COLOR_nit__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init
].val
; /* _has_explicit_super_init on <var_v:AutoSuperInitVisitor> */
962 if (var_anode
== NULL
) {
963 var96
= 0; /* is null */
965 var96
= 1; /* arg is null and recv is not */
968 { /* Inline kernel#Object#!= (var_anode,var95) on <var_anode:nullable ANode> */
971 var99
= ((short int (*)(val
* self
, val
* p0
))(var_anode
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_anode
, var_other
) /* == on <var_anode:nullable ANode(ANode)>*/;
982 if (var_nosuper
== NULL
) {
983 var102
= 0; /* is null */
985 var102
= 1; /* arg is null and recv is not */
988 { /* Inline kernel#Object#!= (var_nosuper,var101) on <var_nosuper:nullable AAnnotation> */
991 var105
= ((short int (*)(val
* self
, val
* p0
))(var_nosuper
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_nosuper
, var_other
) /* == on <var_nosuper:nullable AAnnotation(AAnnotation)>*/;
996 RET_LABEL104
:(void)0;
1002 var108
= varonce107
;
1004 var109
= "Error: method is annotated nosuper but a constructor call is present";
1006 var111
= standard___standard__NativeString___to_s_with_length(var109
, var110
);
1008 varonce107
= var108
;
1011 nit___nit__ModelBuilder___error(var_modelbuilder
, var_anode
, var108
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
1019 { /* Inline auto_super_init#AutoSuperInitVisitor#is_broken (var_v) on <var_v:AutoSuperInitVisitor> */
1020 var114
= var_v
->attrs
[COLOR_nit__auto_super_init__AutoSuperInitVisitor___is_broken
].s
; /* _is_broken on <var_v:AutoSuperInitVisitor> */
1022 RET_LABEL113
:(void)0;
1032 if (var_nosuper
== NULL
) {
1033 var116
= 0; /* is null */
1035 var116
= 1; /* arg is null and recv is not */
1038 { /* Inline kernel#Object#!= (var_nosuper,var115) on <var_nosuper:nullable AAnnotation> */
1041 var119
= ((short int (*)(val
* self
, val
* p0
))(var_nosuper
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_nosuper
, var_other
) /* == on <var_nosuper:nullable AAnnotation(AAnnotation)>*/;
1046 RET_LABEL118
:(void)0;
1055 var121
= nit___nit__MPropDef___is_intro(var_mpropdef
);
1061 { /* Inline auto_super_init#AMethPropdef#auto_super_call= (self,var123) on <self:AMethPropdef> */
1062 self
->attrs
[COLOR_nit__auto_super_init__AMethPropdef___auto_super_call
].s
= var123
; /* _auto_super_call on <self:AMethPropdef> */
1063 RET_LABEL124
:(void)0;
1068 { /* Inline modelize_property#MPropDef#has_supercall= (var_mpropdef,var125) on <var_mpropdef:MMethodDef> */
1069 var_mpropdef
->attrs
[COLOR_nit__modelize_property__MPropDef___has_supercall
].s
= var125
; /* _has_supercall on <var_mpropdef:MMethodDef> */
1070 RET_LABEL126
:(void)0;
1076 var127
= NEW_standard__Array(&type_standard__Array__nit__CallSite
);
1078 standard___standard__Array___standard__kernel__Object__init(var127
); /* Direct call array#Array#init on <var127:Array[CallSite]>*/
1080 var_auto_super_inits
= var127
;
1082 { /* Inline model#MClassDef#supertypes (var_mclassdef) on <var_mclassdef:MClassDef> */
1083 var130
= var_mclassdef
->attrs
[COLOR_nit__model__MClassDef___supertypes
].val
; /* _supertypes on <var_mclassdef:MClassDef> */
1084 if (unlikely(var130
== NULL
)) {
1085 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _supertypes");
1086 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 566);
1090 RET_LABEL129
:(void)0;
1095 var132
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_131
);
1100 var134
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_133
);
1104 var135
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_133
);
1106 var_msupertype
= var135
;
1108 { /* Inline model#MClassType#mclass (var_msupertype) on <var_msupertype:MClassType> */
1109 var138
= var_msupertype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_msupertype:MClassType> */
1110 if (unlikely(var138
== NULL
)) {
1111 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
1112 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1058);
1116 RET_LABEL137
:(void)0;
1120 { /* Inline model#MClass#kind (var136) on <var136:MClass> */
1121 var141
= var136
->attrs
[COLOR_nit__model__MClass___kind
].val
; /* _kind on <var136:MClass> */
1122 if (unlikely(var141
== NULL
)) {
1123 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _kind");
1124 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 399);
1128 RET_LABEL140
:(void)0;
1132 { /* Inline model#MClassKind#need_init (var139) on <var139:MClassKind> */
1133 var144
= var139
->attrs
[COLOR_nit__model__MClassKind___need_init
].s
; /* _need_init on <var139:MClassKind> */
1135 RET_LABEL143
:(void)0;
1140 goto BREAK_label146
;
1144 { /* Inline model#MClassDef#bound_mtype (var_mclassdef) on <var_mclassdef:MClassDef> */
1145 var149
= var_mclassdef
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_mclassdef:MClassDef> */
1146 if (unlikely(var149
== NULL
)) {
1147 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
1148 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 495);
1152 RET_LABEL148
:(void)0;
1156 var150
= nit___nit__MClassType___MType__anchor_to(var_msupertype
, var_mmodule
, var147
);
1158 var_msupertype
= var150
;
1160 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
1161 var153
= var_mpropdef
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:MMethodDef> */
1162 if (unlikely(var153
== NULL
)) {
1163 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1164 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2013);
1168 RET_LABEL152
:(void)0;
1172 { /* Inline model#MProperty#name (var151) on <var151:MProperty(MMethod)> */
1173 var156
= var151
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var151:MProperty(MMethod)> */
1174 if (unlikely(var156
== NULL
)) {
1175 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1176 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1741);
1180 RET_LABEL155
:(void)0;
1184 var157
= nit___nit__ModelBuilder___try_get_mproperty_by_name2(var_modelbuilder
, self
, var_mmodule
, var_msupertype
, var154
);
1186 var_candidate
= var157
;
1188 if (var_candidate
== NULL
) {
1189 var159
= 1; /* is null */
1191 var159
= 0; /* arg is null but recv is not */
1194 { /* Inline kernel#Object#== (var_candidate,var158) on <var_candidate:nullable MProperty> */
1195 var_other162
= var158
;
1197 { /* Inline kernel#Object#is_same_instance (var_candidate,var_other162) on <var_candidate:nullable MProperty(MProperty)> */
1198 var165
= var_candidate
== var_other162
;
1201 RET_LABEL164
:(void)0;
1206 RET_LABEL161
:(void)0;
1212 var167
= varonce166
;
1216 var170
= standard___standard__NativeString___to_s_with_length(var168
, var169
);
1218 varonce166
= var167
;
1221 var171
= nit___nit__ModelBuilder___try_get_mproperty_by_name2(var_modelbuilder
, self
, var_mmodule
, var_msupertype
, var167
);
1223 var_candidate
= var171
;
1227 if (var_candidate
== NULL
) {
1228 var173
= 1; /* is null */
1230 var173
= 0; /* arg is null but recv is not */
1233 { /* Inline kernel#Object#== (var_candidate,var172) on <var_candidate:nullable MProperty> */
1234 var_other162
= var172
;
1236 { /* Inline kernel#Object#is_same_instance (var_candidate,var_other162) on <var_candidate:nullable MProperty(MProperty)> */
1237 var178
= var_candidate
== var_other162
;
1240 RET_LABEL177
:(void)0;
1245 RET_LABEL175
:(void)0;
1251 var180
= varonce179
;
1253 var181
= "Error: Cannot do an implicit constructor call in ";
1255 var183
= standard___standard__NativeString___to_s_with_length(var181
, var182
);
1257 varonce179
= var180
;
1260 var185
= varonce184
;
1262 var186
= "; there is no constructor named ";
1264 var188
= standard___standard__NativeString___to_s_with_length(var186
, var187
);
1266 varonce184
= var185
;
1269 { /* Inline model#MPropDef#mproperty (var_mpropdef) on <var_mpropdef:MMethodDef> */
1270 var191
= var_mpropdef
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <var_mpropdef:MMethodDef> */
1271 if (unlikely(var191
== NULL
)) {
1272 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1273 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2013);
1277 RET_LABEL190
:(void)0;
1281 { /* Inline model#MProperty#name (var189) on <var189:MProperty(MMethod)> */
1282 var194
= var189
->attrs
[COLOR_nit__model__MProperty___name
].val
; /* _name on <var189:MProperty(MMethod)> */
1283 if (unlikely(var194
== NULL
)) {
1284 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
1285 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1741);
1289 RET_LABEL193
:(void)0;
1293 var196
= varonce195
;
1297 var199
= standard___standard__NativeString___to_s_with_length(var197
, var198
);
1299 varonce195
= var196
;
1302 var201
= varonce200
;
1306 var204
= standard___standard__NativeString___to_s_with_length(var202
, var203
);
1308 varonce200
= var201
;
1310 var205
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1311 { /* var205 = array_instance Array[Object] */
1313 var207
= NEW_standard__NativeArray(var206
, &type_standard__NativeArray__standard__Object
);
1314 ((struct instance_standard__NativeArray
*)var207
)->values
[0] = (val
*) var180
;
1315 ((struct instance_standard__NativeArray
*)var207
)->values
[1] = (val
*) var_mpropdef
;
1316 ((struct instance_standard__NativeArray
*)var207
)->values
[2] = (val
*) var185
;
1317 ((struct instance_standard__NativeArray
*)var207
)->values
[3] = (val
*) var192
;
1318 ((struct instance_standard__NativeArray
*)var207
)->values
[4] = (val
*) var196
;
1319 ((struct instance_standard__NativeArray
*)var207
)->values
[5] = (val
*) var_msupertype
;
1320 ((struct instance_standard__NativeArray
*)var207
)->values
[6] = (val
*) var201
;
1322 ((void (*)(val
* self
, val
* p0
, long p1
))(var205
->class->vft
[COLOR_standard__array__Array__with_native
]))(var205
, var207
, var206
) /* with_native on <var205:Array[Object]>*/;
1326 var208
= ((val
* (*)(val
* self
))(var205
->class->vft
[COLOR_standard__string__Object__to_s
]))(var205
) /* to_s on <var205:Array[Object]>*/;
1329 nit___nit__ModelBuilder___error(var_modelbuilder
, self
, var208
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
1334 /* <var_candidate:nullable MProperty(MProperty)> isa MMethod */
1335 cltype210
= type_nit__MMethod
.color
;
1336 idtype211
= type_nit__MMethod
.id
;
1337 if(cltype210
>= var_candidate
->type
->table_size
) {
1340 var209
= var_candidate
->type
->type_table
[cltype210
] == idtype211
;
1342 if (unlikely(!var209
)) {
1343 PRINT_ERROR("Runtime error: %s", "Assert failed");
1344 PRINT_ERROR(" (%s:%d)\n", FILE_nit__auto_super_init
, 125);
1348 { /* Inline model#MMethod#is_root_init (var_candidate) on <var_candidate:nullable MProperty(MMethod)> */
1349 var214
= var_candidate
->attrs
[COLOR_nit__model__MMethod___is_root_init
].s
; /* _is_root_init on <var_candidate:nullable MProperty(MMethod)> */
1351 RET_LABEL213
:(void)0;
1355 goto BREAK_label146
;
1359 var215
= nit___nit__MProperty___lookup_definitions(var_candidate
, var_mmodule
, var_anchor
);
1361 var_candidatedefs
= var215
;
1363 var216
= standard___standard__SequenceRead___Collection__first(var_candidatedefs
);
1365 var_candidatedef
= var216
;
1367 { /* Inline model#MMethodDef#new_msignature (var_candidatedef) on <var_candidatedef:MMethodDef> */
1368 var220
= var_candidatedef
->attrs
[COLOR_nit__model__MMethodDef___new_msignature
].val
; /* _new_msignature on <var_candidatedef:MMethodDef> */
1370 RET_LABEL219
:(void)0;
1377 { /* Inline model#MMethodDef#msignature (var_candidatedef) on <var_candidatedef:MMethodDef> */
1378 var223
= var_candidatedef
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
; /* _msignature on <var_candidatedef:MMethodDef> */
1380 RET_LABEL222
:(void)0;
1385 var_msignature
= var217
;
1387 if (var_msignature
== NULL
) {
1388 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1389 PRINT_ERROR(" (%s:%d)\n", FILE_nit__auto_super_init
, 135);
1392 var225
= nit___nit__MSignature___MType__resolve_for(var_msignature
, var_recvtype
, var_anchor
, var_mmodule
, var224
);
1394 var_msignature
= var225
;
1395 var226
= NEW_nit__CallSite(&type_nit__CallSite
);
1399 ((void (*)(val
* self
, val
* p0
))(var226
->class->vft
[COLOR_nit__typing__CallSite__node_61d
]))(var226
, self
) /* node= on <var226:CallSite>*/;
1402 ((void (*)(val
* self
, val
* p0
))(var226
->class->vft
[COLOR_nit__typing__CallSite__recv_61d
]))(var226
, var_recvtype
) /* recv= on <var226:CallSite>*/;
1405 ((void (*)(val
* self
, val
* p0
))(var226
->class->vft
[COLOR_nit__typing__CallSite__mmodule_61d
]))(var226
, var_mmodule
) /* mmodule= on <var226:CallSite>*/;
1408 ((void (*)(val
* self
, val
* p0
))(var226
->class->vft
[COLOR_nit__typing__CallSite__anchor_61d
]))(var226
, var_anchor
) /* anchor= on <var226:CallSite>*/;
1411 ((void (*)(val
* self
, short int p0
))(var226
->class->vft
[COLOR_nit__typing__CallSite__recv_is_self_61d
]))(var226
, var227
) /* recv_is_self= on <var226:CallSite>*/;
1414 ((void (*)(val
* self
, val
* p0
))(var226
->class->vft
[COLOR_nit__typing__CallSite__mproperty_61d
]))(var226
, var_candidate
) /* mproperty= on <var226:CallSite>*/;
1417 ((void (*)(val
* self
, val
* p0
))(var226
->class->vft
[COLOR_nit__typing__CallSite__mpropdef_61d
]))(var226
, var_candidatedef
) /* mpropdef= on <var226:CallSite>*/;
1420 ((void (*)(val
* self
, val
* p0
))(var226
->class->vft
[COLOR_nit__typing__CallSite__msignature_61d
]))(var226
, var_msignature
) /* msignature= on <var226:CallSite>*/;
1423 ((void (*)(val
* self
, short int p0
))(var226
->class->vft
[COLOR_nit__typing__CallSite__erasure_cast_61d
]))(var226
, var228
) /* erasure_cast= on <var226:CallSite>*/;
1426 ((void (*)(val
* self
))(var226
->class->vft
[COLOR_standard__kernel__Object__init
]))(var226
) /* init on <var226:CallSite>*/;
1428 var_callsite
= var226
;
1430 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_auto_super_inits
, var_callsite
); /* Direct call array#Array#add on <var_auto_super_inits:Array[CallSite]>*/
1432 BREAK_label146
: (void)0;
1434 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_133
); /* Direct call array#ArrayIterator#next on <var_133:ArrayIterator[MClassType]>*/
1437 goto BREAK_label229
;
1440 BREAK_label229
: (void)0;
1442 { /* Inline abstract_collection#Iterator#finish (var_133) on <var_133:ArrayIterator[MClassType]> */
1443 RET_LABEL230
:(void)0;
1447 { /* Inline modelize_property#ModelBuilder#the_root_init_mmethod (var_modelbuilder) on <var_modelbuilder:ModelBuilder> */
1448 var233
= var_modelbuilder
->attrs
[COLOR_nit__modelize_property__ModelBuilder___the_root_init_mmethod
].val
; /* _the_root_init_mmethod on <var_modelbuilder:ModelBuilder> */
1450 RET_LABEL232
:(void)0;
1453 var_the_root_init_mmethod
= var231
;
1455 if (var_the_root_init_mmethod
== NULL
) {
1456 var236
= 0; /* is null */
1458 var236
= 1; /* arg is null and recv is not */
1461 { /* Inline kernel#Object#!= (var_the_root_init_mmethod,var235) on <var_the_root_init_mmethod:nullable MMethod> */
1464 var239
= ((short int (*)(val
* self
, val
* p0
))(var_the_root_init_mmethod
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_the_root_init_mmethod
, var_other
) /* == on <var_the_root_init_mmethod:nullable MMethod(MMethod)>*/;
1469 RET_LABEL238
:(void)0;
1476 var242
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var_auto_super_inits
);
1484 var243
= nit___nit__MProperty___lookup_definitions(var_the_root_init_mmethod
, var_mmodule
, var_anchor
);
1486 var_candidatedefs244
= var243
;
1488 var245
= standard___standard__SequenceRead___Collection__first(var_candidatedefs244
);
1490 var_candidatedef246
= var245
;
1492 { /* Inline array#AbstractArrayRead#length (var_candidatedefs244) on <var_candidatedefs244:Array[MMethodDef]> */
1493 var249
= var_candidatedefs244
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var_candidatedefs244:Array[MMethodDef]> */
1495 RET_LABEL248
:(void)0;
1500 { /* Inline kernel#Int#> (var247,var250) on <var247:Int> */
1501 /* Covariant cast for argument 0 (i) <var250:Int> isa OTHER */
1502 /* <var250:Int> isa OTHER */
1503 var253
= 1; /* easy <var250:Int> isa OTHER*/
1504 if (unlikely(!var253
)) {
1505 var_class_name256
= type_standard__Int
.name
;
1506 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name256
);
1507 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 412);
1510 var257
= var247
> var250
;
1513 RET_LABEL252
:(void)0;
1517 var_258
= var_candidatedefs244
;
1519 var259
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_258
);
1524 var261
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_260
);
1528 var262
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_260
);
1532 { /* Inline model#MMethodDef#initializers (var_spd) on <var_spd:MMethodDef> */
1533 var265
= var_spd
->attrs
[COLOR_nit__model__MMethodDef___initializers
].val
; /* _initializers on <var_spd:MMethodDef> */
1534 if (unlikely(var265
== NULL
)) {
1535 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers");
1536 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2146);
1540 RET_LABEL264
:(void)0;
1544 { /* Inline array#AbstractArrayRead#length (var263) on <var263:Array[MProperty]> */
1545 var268
= var263
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var263:Array[MProperty]> */
1547 RET_LABEL267
:(void)0;
1551 { /* Inline model#MMethodDef#initializers (var_candidatedef246) on <var_candidatedef246:MMethodDef> */
1552 var271
= var_candidatedef246
->attrs
[COLOR_nit__model__MMethodDef___initializers
].val
; /* _initializers on <var_candidatedef246:MMethodDef> */
1553 if (unlikely(var271
== NULL
)) {
1554 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers");
1555 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2146);
1559 RET_LABEL270
:(void)0;
1563 { /* Inline array#AbstractArrayRead#length (var269) on <var269:Array[MProperty]> */
1564 var274
= var269
->attrs
[COLOR_standard__array__AbstractArrayRead___length
].l
; /* _length on <var269:Array[MProperty]> */
1566 RET_LABEL273
:(void)0;
1570 { /* Inline kernel#Int#> (var266,var272) on <var266:Int> */
1571 /* Covariant cast for argument 0 (i) <var272:Int> isa OTHER */
1572 /* <var272:Int> isa OTHER */
1573 var277
= 1; /* easy <var272:Int> isa OTHER*/
1574 if (unlikely(!var277
)) {
1575 var_class_name280
= type_standard__Int
.name
;
1576 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name280
);
1577 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 412);
1580 var281
= var266
> var272
;
1583 RET_LABEL276
:(void)0;
1587 var_candidatedef246
= var_spd
;
1591 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_260
); /* Direct call array#ArrayIterator#next on <var_260:ArrayIterator[MMethodDef]>*/
1594 goto BREAK_label282
;
1597 BREAK_label282
: (void)0;
1599 { /* Inline abstract_collection#Iterator#finish (var_260) on <var_260:ArrayIterator[MMethodDef]> */
1600 RET_LABEL283
:(void)0;
1603 var_284
= var_candidatedefs244
;
1605 var285
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_284
);
1610 var287
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_286
);
1614 var288
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_286
);
1616 var_spd289
= var288
;
1620 { /* Inline model#MMethodDef#initializers (var_spd289) on <var_spd289:MMethodDef> */
1621 var293
= var_spd289
->attrs
[COLOR_nit__model__MMethodDef___initializers
].val
; /* _initializers on <var_spd289:MMethodDef> */
1622 if (unlikely(var293
== NULL
)) {
1623 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers");
1624 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2146);
1628 RET_LABEL292
:(void)0;
1633 var295
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_294
);
1638 var297
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_296
);
1642 var298
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_296
);
1646 { /* Inline model#MMethodDef#initializers (var_candidatedef246) on <var_candidatedef246:MMethodDef> */
1647 var301
= var_candidatedef246
->attrs
[COLOR_nit__model__MMethodDef___initializers
].val
; /* _initializers on <var_candidatedef246:MMethodDef> */
1648 if (unlikely(var301
== NULL
)) {
1649 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers");
1650 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2146);
1654 RET_LABEL300
:(void)0;
1658 var302
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var299
, var_i
);
1661 { /* Inline kernel#Object#!= (var_p,var302) on <var_p:MProperty> */
1664 var305
= ((short int (*)(val
* self
, val
* p0
))(var_p
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_p
, var_other
) /* == on <var_p:MProperty>*/;
1669 RET_LABEL304
:(void)0;
1674 var308
= varonce307
;
1676 var309
= "Error: Cannot do an implicit constructor call to comflicting for inherited inits ";
1678 var311
= standard___standard__NativeString___to_s_with_length(var309
, var310
);
1680 varonce307
= var308
;
1683 var313
= varonce312
;
1687 var316
= standard___standard__NativeString___to_s_with_length(var314
, var315
);
1689 varonce312
= var313
;
1692 { /* Inline model#MMethodDef#initializers (var_spd289) on <var_spd289:MMethodDef> */
1693 var319
= var_spd289
->attrs
[COLOR_nit__model__MMethodDef___initializers
].val
; /* _initializers on <var_spd289:MMethodDef> */
1694 if (unlikely(var319
== NULL
)) {
1695 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers");
1696 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2146);
1700 RET_LABEL318
:(void)0;
1704 var321
= varonce320
;
1708 var324
= standard___standard__NativeString___to_s_with_length(var322
, var323
);
1710 varonce320
= var321
;
1713 var325
= standard__string___Collection___join(var317
, var321
);
1716 var327
= varonce326
;
1720 var330
= standard___standard__NativeString___to_s_with_length(var328
, var329
);
1722 varonce326
= var327
;
1725 var332
= varonce331
;
1729 var335
= standard___standard__NativeString___to_s_with_length(var333
, var334
);
1731 varonce331
= var332
;
1734 { /* Inline model#MMethodDef#initializers (var_candidatedef246) on <var_candidatedef246:MMethodDef> */
1735 var338
= var_candidatedef246
->attrs
[COLOR_nit__model__MMethodDef___initializers
].val
; /* _initializers on <var_candidatedef246:MMethodDef> */
1736 if (unlikely(var338
== NULL
)) {
1737 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _initializers");
1738 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2146);
1742 RET_LABEL337
:(void)0;
1746 var340
= varonce339
;
1750 var343
= standard___standard__NativeString___to_s_with_length(var341
, var342
);
1752 varonce339
= var340
;
1755 var344
= standard__string___Collection___join(var336
, var340
);
1758 var346
= varonce345
;
1760 var347
= "). NOTE: Do not mix old-style and new-style init!";
1762 var349
= standard___standard__NativeString___to_s_with_length(var347
, var348
);
1764 varonce345
= var346
;
1766 var350
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1767 { /* var350 = array_instance Array[Object] */
1769 var352
= NEW_standard__NativeArray(var351
, &type_standard__NativeArray__standard__Object
);
1770 ((struct instance_standard__NativeArray
*)var352
)->values
[0] = (val
*) var308
;
1771 ((struct instance_standard__NativeArray
*)var352
)->values
[1] = (val
*) var_spd289
;
1772 ((struct instance_standard__NativeArray
*)var352
)->values
[2] = (val
*) var313
;
1773 ((struct instance_standard__NativeArray
*)var352
)->values
[3] = (val
*) var325
;
1774 ((struct instance_standard__NativeArray
*)var352
)->values
[4] = (val
*) var327
;
1775 ((struct instance_standard__NativeArray
*)var352
)->values
[5] = (val
*) var_candidatedef246
;
1776 ((struct instance_standard__NativeArray
*)var352
)->values
[6] = (val
*) var332
;
1777 ((struct instance_standard__NativeArray
*)var352
)->values
[7] = (val
*) var344
;
1778 ((struct instance_standard__NativeArray
*)var352
)->values
[8] = (val
*) var346
;
1780 ((void (*)(val
* self
, val
* p0
, long p1
))(var350
->class->vft
[COLOR_standard__array__Array__with_native
]))(var350
, var352
, var351
) /* with_native on <var350:Array[Object]>*/;
1784 var353
= ((val
* (*)(val
* self
))(var350
->class->vft
[COLOR_standard__string__Object__to_s
]))(var350
) /* to_s on <var350:Array[Object]>*/;
1787 nit___nit__ModelBuilder___error(var_modelbuilder
, self
, var353
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
1794 { /* Inline kernel#Int#+ (var_i,var354) on <var_i:Int> */
1795 /* Covariant cast for argument 0 (i) <var354:Int> isa OTHER */
1796 /* <var354:Int> isa OTHER */
1797 var357
= 1; /* easy <var354:Int> isa OTHER*/
1798 if (unlikely(!var357
)) {
1799 var_class_name360
= type_standard__Int
.name
;
1800 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name360
);
1801 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
1804 var361
= var_i
+ var354
;
1807 RET_LABEL356
:(void)0;
1812 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_296
); /* Direct call array#ArrayIterator#next on <var_296:ArrayIterator[MProperty]>*/
1815 goto BREAK_label362
;
1818 BREAK_label362
: (void)0;
1820 { /* Inline abstract_collection#Iterator#finish (var_296) on <var_296:ArrayIterator[MProperty]> */
1821 RET_LABEL363
:(void)0;
1825 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_286
); /* Direct call array#ArrayIterator#next on <var_286:ArrayIterator[MMethodDef]>*/
1828 goto BREAK_label364
;
1831 BREAK_label364
: (void)0;
1833 { /* Inline abstract_collection#Iterator#finish (var_286) on <var_286:ArrayIterator[MMethodDef]> */
1834 RET_LABEL365
:(void)0;
1840 { /* Inline model#MMethodDef#new_msignature (var_candidatedef246) on <var_candidatedef246:MMethodDef> */
1841 var369
= var_candidatedef246
->attrs
[COLOR_nit__model__MMethodDef___new_msignature
].val
; /* _new_msignature on <var_candidatedef246:MMethodDef> */
1843 RET_LABEL368
:(void)0;
1850 { /* Inline model#MMethodDef#msignature (var_candidatedef246) on <var_candidatedef246:MMethodDef> */
1851 var372
= var_candidatedef246
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
; /* _msignature on <var_candidatedef246:MMethodDef> */
1853 RET_LABEL371
:(void)0;
1858 var_msignature373
= var366
;
1860 if (var_msignature373
== NULL
) {
1861 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1862 PRINT_ERROR(" (%s:%d)\n", FILE_nit__auto_super_init
, 169);
1865 var375
= nit___nit__MSignature___MType__resolve_for(var_msignature373
, var_recvtype
, var_anchor
, var_mmodule
, var374
);
1867 var_msignature373
= var375
;
1868 var376
= NEW_nit__CallSite(&type_nit__CallSite
);
1872 ((void (*)(val
* self
, val
* p0
))(var376
->class->vft
[COLOR_nit__typing__CallSite__node_61d
]))(var376
, self
) /* node= on <var376:CallSite>*/;
1875 ((void (*)(val
* self
, val
* p0
))(var376
->class->vft
[COLOR_nit__typing__CallSite__recv_61d
]))(var376
, var_recvtype
) /* recv= on <var376:CallSite>*/;
1878 ((void (*)(val
* self
, val
* p0
))(var376
->class->vft
[COLOR_nit__typing__CallSite__mmodule_61d
]))(var376
, var_mmodule
) /* mmodule= on <var376:CallSite>*/;
1881 ((void (*)(val
* self
, val
* p0
))(var376
->class->vft
[COLOR_nit__typing__CallSite__anchor_61d
]))(var376
, var_anchor
) /* anchor= on <var376:CallSite>*/;
1884 ((void (*)(val
* self
, short int p0
))(var376
->class->vft
[COLOR_nit__typing__CallSite__recv_is_self_61d
]))(var376
, var377
) /* recv_is_self= on <var376:CallSite>*/;
1887 ((void (*)(val
* self
, val
* p0
))(var376
->class->vft
[COLOR_nit__typing__CallSite__mproperty_61d
]))(var376
, var_the_root_init_mmethod
) /* mproperty= on <var376:CallSite>*/;
1890 ((void (*)(val
* self
, val
* p0
))(var376
->class->vft
[COLOR_nit__typing__CallSite__mpropdef_61d
]))(var376
, var_candidatedef246
) /* mpropdef= on <var376:CallSite>*/;
1893 ((void (*)(val
* self
, val
* p0
))(var376
->class->vft
[COLOR_nit__typing__CallSite__msignature_61d
]))(var376
, var_msignature373
) /* msignature= on <var376:CallSite>*/;
1896 ((void (*)(val
* self
, short int p0
))(var376
->class->vft
[COLOR_nit__typing__CallSite__erasure_cast_61d
]))(var376
, var378
) /* erasure_cast= on <var376:CallSite>*/;
1899 ((void (*)(val
* self
))(var376
->class->vft
[COLOR_standard__kernel__Object__init
]))(var376
) /* init on <var376:CallSite>*/;
1901 var_callsite379
= var376
;
1903 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_auto_super_inits
, var_callsite379
); /* Direct call array#Array#add on <var_auto_super_inits:Array[CallSite]>*/
1908 var380
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var_auto_super_inits
);
1912 var382
= varonce381
;
1914 var383
= "Error: No constructors to call implicitely in ";
1916 var385
= standard___standard__NativeString___to_s_with_length(var383
, var384
);
1918 varonce381
= var382
;
1921 var387
= varonce386
;
1923 var388
= ". Call one explicitely.";
1925 var390
= standard___standard__NativeString___to_s_with_length(var388
, var389
);
1927 varonce386
= var387
;
1929 var391
= NEW_standard__Array(&type_standard__Array__standard__Object
);
1930 { /* var391 = array_instance Array[Object] */
1932 var393
= NEW_standard__NativeArray(var392
, &type_standard__NativeArray__standard__Object
);
1933 ((struct instance_standard__NativeArray
*)var393
)->values
[0] = (val
*) var382
;
1934 ((struct instance_standard__NativeArray
*)var393
)->values
[1] = (val
*) var_mpropdef
;
1935 ((struct instance_standard__NativeArray
*)var393
)->values
[2] = (val
*) var387
;
1937 ((void (*)(val
* self
, val
* p0
, long p1
))(var391
->class->vft
[COLOR_standard__array__Array__with_native
]))(var391
, var393
, var392
) /* with_native on <var391:Array[Object]>*/;
1941 var394
= ((val
* (*)(val
* self
))(var391
->class->vft
[COLOR_standard__string__Object__to_s
]))(var391
) /* to_s on <var391:Array[Object]>*/;
1944 nit___nit__ModelBuilder___error(var_modelbuilder
, self
, var394
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
1949 var_395
= var_auto_super_inits
;
1951 var396
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_395
);
1956 var398
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_397
);
1960 var399
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_397
);
1962 var_auto_super_init
= var399
;
1964 { /* Inline typing#CallSite#mpropdef (var_auto_super_init) on <var_auto_super_init:CallSite> */
1965 var402
= var_auto_super_init
->attrs
[COLOR_nit__typing__CallSite___mpropdef
].val
; /* _mpropdef on <var_auto_super_init:CallSite> */
1966 if (unlikely(var402
== NULL
)) {
1967 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
1968 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 490);
1972 RET_LABEL401
:(void)0;
1975 var_auto_super_init_def
= var400
;
1977 { /* Inline model#MMethodDef#msignature (var_mpropdef) on <var_mpropdef:MMethodDef> */
1978 var405
= var_mpropdef
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
; /* _msignature on <var_mpropdef:MMethodDef> */
1980 RET_LABEL404
:(void)0;
1983 if (unlikely(var403
== NULL
)) {
1984 PRINT_ERROR("Runtime error: %s", "Cast failed");
1985 PRINT_ERROR(" (%s:%d)\n", FILE_nit__auto_super_init
, 182);
1990 { /* Inline typing#CallSite#msignature (var_auto_super_init) on <var_auto_super_init:CallSite> */
1991 var408
= var_auto_super_init
->attrs
[COLOR_nit__typing__CallSite___msignature
].val
; /* _msignature on <var_auto_super_init:CallSite> */
1992 if (unlikely(var408
== NULL
)) {
1993 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature");
1994 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 494);
1998 RET_LABEL407
:(void)0;
2001 var_supermsig
= var406
;
2003 var409
= nit___nit__MSignature___arity(var_supermsig
);
2006 var410
= nit___nit__MSignature___arity(var_msig
);
2009 { /* Inline kernel#Int#> (var409,var410) on <var409:Int> */
2010 /* Covariant cast for argument 0 (i) <var410:Int> isa OTHER */
2011 /* <var410:Int> isa OTHER */
2012 var413
= 1; /* easy <var410:Int> isa OTHER*/
2013 if (unlikely(!var413
)) {
2014 var_class_name416
= type_standard__Int
.name
;
2015 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name416
);
2016 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 412);
2019 var417
= var409
> var410
;
2022 RET_LABEL412
:(void)0;
2027 var419
= varonce418
;
2029 var420
= "Error: Cannot do an implicit constructor call to ";
2031 var422
= standard___standard__NativeString___to_s_with_length(var420
, var421
);
2033 varonce418
= var419
;
2036 var424
= varonce423
;
2038 var425
= ". Expected at least ";
2040 var427
= standard___standard__NativeString___to_s_with_length(var425
, var426
);
2042 varonce423
= var424
;
2045 var428
= nit___nit__MSignature___arity(var_supermsig
);
2048 var430
= varonce429
;
2050 var431
= " arguments, got ";
2052 var433
= standard___standard__NativeString___to_s_with_length(var431
, var432
);
2054 varonce429
= var430
;
2057 var434
= nit___nit__MSignature___arity(var_msig
);
2060 var436
= varonce435
;
2064 var439
= standard___standard__NativeString___to_s_with_length(var437
, var438
);
2066 varonce435
= var436
;
2068 var440
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2069 { /* var440 = array_instance Array[Object] */
2071 var442
= NEW_standard__NativeArray(var441
, &type_standard__NativeArray__standard__Object
);
2072 ((struct instance_standard__NativeArray
*)var442
)->values
[0] = (val
*) var419
;
2073 ((struct instance_standard__NativeArray
*)var442
)->values
[1] = (val
*) var_auto_super_init_def
;
2074 ((struct instance_standard__NativeArray
*)var442
)->values
[2] = (val
*) var_supermsig
;
2075 ((struct instance_standard__NativeArray
*)var442
)->values
[3] = (val
*) var424
;
2076 var443
= BOX_standard__Int(var428
); /* autobox from Int to Object */
2077 ((struct instance_standard__NativeArray
*)var442
)->values
[4] = (val
*) var443
;
2078 ((struct instance_standard__NativeArray
*)var442
)->values
[5] = (val
*) var430
;
2079 var444
= BOX_standard__Int(var434
); /* autobox from Int to Object */
2080 ((struct instance_standard__NativeArray
*)var442
)->values
[6] = (val
*) var444
;
2081 ((struct instance_standard__NativeArray
*)var442
)->values
[7] = (val
*) var436
;
2083 ((void (*)(val
* self
, val
* p0
, long p1
))(var440
->class->vft
[COLOR_standard__array__Array__with_native
]))(var440
, var442
, var441
) /* with_native on <var440:Array[Object]>*/;
2087 var445
= ((val
* (*)(val
* self
))(var440
->class->vft
[COLOR_standard__string__Object__to_s
]))(var440
) /* to_s on <var440:Array[Object]>*/;
2090 nit___nit__ModelBuilder___error(var_modelbuilder
, self
, var445
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
2092 goto BREAK_label446
;
2098 { /* Inline model#MSignature#mparameters (var_supermsig) on <var_supermsig:MSignature> */
2099 var451
= var_supermsig
->attrs
[COLOR_nit__model__MSignature___mparameters
].val
; /* _mparameters on <var_supermsig:MSignature> */
2100 if (unlikely(var451
== NULL
)) {
2101 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
2102 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1592);
2106 RET_LABEL450
:(void)0;
2111 var453
= standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(var_452
);
2116 var455
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(var_454
);
2120 var456
= standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(var_454
);
2124 { /* Inline model#MSignature#mparameters (var_msig) on <var_msig:MSignature> */
2125 var459
= var_msig
->attrs
[COLOR_nit__model__MSignature___mparameters
].val
; /* _mparameters on <var_msig:MSignature> */
2126 if (unlikely(var459
== NULL
)) {
2127 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
2128 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1592);
2132 RET_LABEL458
:(void)0;
2136 var460
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var457
, var_i448
);
2140 { /* Inline model#MParameter#mtype (var_p461) on <var_p461:MParameter> */
2141 var464
= var_p461
->attrs
[COLOR_nit__model__MParameter___mtype
].val
; /* _mtype on <var_p461:MParameter> */
2142 if (unlikely(var464
== NULL
)) {
2143 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2144 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1690);
2148 RET_LABEL463
:(void)0;
2153 { /* Inline model#MParameter#mtype (var_sp) on <var_sp:MParameter> */
2154 var467
= var_sp
->attrs
[COLOR_nit__model__MParameter___mtype
].val
; /* _mtype on <var_sp:MParameter> */
2155 if (unlikely(var467
== NULL
)) {
2156 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2157 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1690);
2161 RET_LABEL466
:(void)0;
2166 var468
= nit___nit__MType___is_subtype(var_sub
, var_mmodule
, var_anchor
, var_sup
);
2171 var471
= varonce470
;
2173 var472
= "Error: Cannot do an implicit constructor call to ";
2175 var474
= standard___standard__NativeString___to_s_with_length(var472
, var473
);
2177 varonce470
= var471
;
2180 var476
= varonce475
;
2182 var477
= ". Expected argument #";
2184 var479
= standard___standard__NativeString___to_s_with_length(var477
, var478
);
2186 varonce475
= var476
;
2189 var481
= varonce480
;
2191 var482
= " of type ";
2193 var484
= standard___standard__NativeString___to_s_with_length(var482
, var483
);
2195 varonce480
= var481
;
2198 { /* Inline model#MParameter#mtype (var_sp) on <var_sp:MParameter> */
2199 var487
= var_sp
->attrs
[COLOR_nit__model__MParameter___mtype
].val
; /* _mtype on <var_sp:MParameter> */
2200 if (unlikely(var487
== NULL
)) {
2201 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2202 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1690);
2206 RET_LABEL486
:(void)0;
2210 var489
= varonce488
;
2212 var490
= ", got implicit argument ";
2214 var492
= standard___standard__NativeString___to_s_with_length(var490
, var491
);
2216 varonce488
= var489
;
2219 { /* Inline model#MParameter#name (var_p461) on <var_p461:MParameter> */
2220 var495
= var_p461
->attrs
[COLOR_nit__model__MParameter___name
].val
; /* _name on <var_p461:MParameter> */
2221 if (unlikely(var495
== NULL
)) {
2222 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
2223 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1687);
2227 RET_LABEL494
:(void)0;
2231 var497
= varonce496
;
2233 var498
= " of type ";
2235 var500
= standard___standard__NativeString___to_s_with_length(var498
, var499
);
2237 varonce496
= var497
;
2240 { /* Inline model#MParameter#mtype (var_p461) on <var_p461:MParameter> */
2241 var503
= var_p461
->attrs
[COLOR_nit__model__MParameter___mtype
].val
; /* _mtype on <var_p461:MParameter> */
2242 if (unlikely(var503
== NULL
)) {
2243 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2244 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1690);
2248 RET_LABEL502
:(void)0;
2252 var505
= varonce504
;
2256 var508
= standard___standard__NativeString___to_s_with_length(var506
, var507
);
2258 varonce504
= var505
;
2260 var509
= NEW_standard__Array(&type_standard__Array__standard__Object
);
2261 { /* var509 = array_instance Array[Object] */
2263 var511
= NEW_standard__NativeArray(var510
, &type_standard__NativeArray__standard__Object
);
2264 ((struct instance_standard__NativeArray
*)var511
)->values
[0] = (val
*) var471
;
2265 ((struct instance_standard__NativeArray
*)var511
)->values
[1] = (val
*) var_auto_super_init_def
;
2266 ((struct instance_standard__NativeArray
*)var511
)->values
[2] = (val
*) var_supermsig
;
2267 ((struct instance_standard__NativeArray
*)var511
)->values
[3] = (val
*) var476
;
2268 var512
= BOX_standard__Int(var_i448
); /* autobox from Int to Object */
2269 ((struct instance_standard__NativeArray
*)var511
)->values
[4] = (val
*) var512
;
2270 ((struct instance_standard__NativeArray
*)var511
)->values
[5] = (val
*) var481
;
2271 ((struct instance_standard__NativeArray
*)var511
)->values
[6] = (val
*) var485
;
2272 ((struct instance_standard__NativeArray
*)var511
)->values
[7] = (val
*) var489
;
2273 ((struct instance_standard__NativeArray
*)var511
)->values
[8] = (val
*) var493
;
2274 ((struct instance_standard__NativeArray
*)var511
)->values
[9] = (val
*) var497
;
2275 ((struct instance_standard__NativeArray
*)var511
)->values
[10] = (val
*) var501
;
2276 ((struct instance_standard__NativeArray
*)var511
)->values
[11] = (val
*) var505
;
2278 ((void (*)(val
* self
, val
* p0
, long p1
))(var509
->class->vft
[COLOR_standard__array__Array__with_native
]))(var509
, var511
, var510
) /* with_native on <var509:Array[Object]>*/;
2282 var513
= ((val
* (*)(val
* self
))(var509
->class->vft
[COLOR_standard__string__Object__to_s
]))(var509
) /* to_s on <var509:Array[Object]>*/;
2285 nit___nit__ModelBuilder___error(var_modelbuilder
, self
, var513
); /* Direct call modelbuilder_base#ModelBuilder#error on <var_modelbuilder:ModelBuilder>*/
2287 goto BREAK_label514
;
2292 { /* Inline kernel#Int#+ (var_i448,var515) on <var_i448:Int> */
2293 /* Covariant cast for argument 0 (i) <var515:Int> isa OTHER */
2294 /* <var515:Int> isa OTHER */
2295 var518
= 1; /* easy <var515:Int> isa OTHER*/
2296 if (unlikely(!var518
)) {
2297 var_class_name521
= type_standard__Int
.name
;
2298 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name521
);
2299 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 413);
2302 var522
= var_i448
+ var515
;
2305 RET_LABEL517
:(void)0;
2310 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_454
); /* Direct call array#ArrayIterator#next on <var_454:ArrayIterator[MParameter]>*/
2313 goto BREAK_label514
;
2316 BREAK_label514
: (void)0;
2318 { /* Inline abstract_collection#Iterator#finish (var_454) on <var_454:ArrayIterator[MParameter]> */
2319 RET_LABEL523
:(void)0;
2322 BREAK_label446
: (void)0;
2324 standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(var_397
); /* Direct call array#ArrayIterator#next on <var_397:ArrayIterator[CallSite]>*/
2327 goto BREAK_label524
;
2330 BREAK_label524
: (void)0;
2332 { /* Inline abstract_collection#Iterator#finish (var_397) on <var_397:ArrayIterator[CallSite]> */
2333 RET_LABEL525
:(void)0;
2337 { /* Inline auto_super_init#AMethPropdef#auto_super_inits= (self,var_auto_super_inits) on <self:AMethPropdef> */
2338 self
->attrs
[COLOR_nit__auto_super_init__AMethPropdef___auto_super_inits
].val
= var_auto_super_inits
; /* _auto_super_inits on <self:AMethPropdef> */
2339 RET_LABEL526
:(void)0;
2344 /* method auto_super_init#ANode#accept_auto_super_init for (self: ANode, AutoSuperInitVisitor) */
2345 void nit__auto_super_init___ANode___accept_auto_super_init(val
* self
, val
* p0
) {
2346 val
* var_v
/* var v: AutoSuperInitVisitor */;
2350 /* method auto_super_init#ASendExpr#accept_auto_super_init for (self: ASendExpr, AutoSuperInitVisitor) */
2351 void nit__auto_super_init___ASendExpr___ANode__accept_auto_super_init(val
* self
, val
* p0
) {
2352 val
* var_v
/* var v: AutoSuperInitVisitor */;
2353 val
* var
/* : nullable CallSite */;
2354 val
* var2
/* : nullable CallSite */;
2355 val
* var_callsite
/* var callsite: nullable CallSite */;
2356 val
* var3
/* : null */;
2357 short int var4
/* : Bool */;
2358 short int var5
/* : Bool */;
2359 val
* var_other
/* var other: nullable Object */;
2360 short int var7
/* : Bool */;
2361 short int var9
/* : Bool */;
2362 short int var10
/* : Bool */;
2363 val
* var12
/* : MMethod */;
2364 val
* var14
/* : MMethod */;
2365 short int var15
/* : Bool */;
2366 short int var17
/* : Bool */;
2369 { /* Inline typing#ASendExpr#callsite (self) on <self:ASendExpr> */
2370 var2
= self
->attrs
[COLOR_nit__typing__ASendExpr___callsite
].val
; /* _callsite on <self:ASendExpr> */
2377 if (var_callsite
== NULL
) {
2378 var4
= 1; /* is null */
2380 var4
= 0; /* arg is null but recv is not */
2383 { /* Inline kernel#Object#== (var_callsite,var3) on <var_callsite:nullable CallSite> */
2386 { /* Inline kernel#Object#is_same_instance (var_callsite,var_other) on <var_callsite:nullable CallSite(CallSite)> */
2387 var9
= var_callsite
== var_other
;
2402 { /* Inline auto_super_init#AutoSuperInitVisitor#is_broken= (var_v,var10) on <var_v:AutoSuperInitVisitor> */
2403 var_v
->attrs
[COLOR_nit__auto_super_init__AutoSuperInitVisitor___is_broken
].s
= var10
; /* _is_broken on <var_v:AutoSuperInitVisitor> */
2404 RET_LABEL11
:(void)0;
2411 { /* Inline typing#CallSite#mproperty (var_callsite) on <var_callsite:nullable CallSite(CallSite)> */
2412 var14
= var_callsite
->attrs
[COLOR_nit__typing__CallSite___mproperty
].val
; /* _mproperty on <var_callsite:nullable CallSite(CallSite)> */
2413 if (unlikely(var14
== NULL
)) {
2414 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
2415 PRINT_ERROR(" (%s:%d)\n", FILE_nit__typing
, 487);
2419 RET_LABEL13
:(void)0;
2423 { /* Inline model#MMethod#is_init (var12) on <var12:MMethod> */
2424 var17
= var12
->attrs
[COLOR_nit__model__MMethod___is_init
].s
; /* _is_init on <var12:MMethod> */
2426 RET_LABEL16
:(void)0;
2431 { /* Inline auto_super_init#AutoSuperInitVisitor#has_explicit_super_init= (var_v,self) on <var_v:AutoSuperInitVisitor> */
2432 var_v
->attrs
[COLOR_nit__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init
].val
= self
; /* _has_explicit_super_init on <var_v:AutoSuperInitVisitor> */
2433 RET_LABEL18
:(void)0;
2440 /* method auto_super_init#ASuperExpr#accept_auto_super_init for (self: ASuperExpr, AutoSuperInitVisitor) */
2441 void nit__auto_super_init___ASuperExpr___ANode__accept_auto_super_init(val
* self
, val
* p0
) {
2442 val
* var_v
/* var v: AutoSuperInitVisitor */;
2445 { /* Inline auto_super_init#AutoSuperInitVisitor#has_explicit_super_init= (var_v,self) on <var_v:AutoSuperInitVisitor> */
2446 var_v
->attrs
[COLOR_nit__auto_super_init__AutoSuperInitVisitor___has_explicit_super_init
].val
= self
; /* _has_explicit_super_init on <var_v:AutoSuperInitVisitor> */