1 #include "nit__separate_compiler.sep.0.h"
2 /* method separate_compiler#SeparateCompilerVisitor#native_array_instance for (self: SeparateCompilerVisitor, MType, RuntimeVariable): RuntimeVariable */
3 val
* nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__native_array_instance(val
* self
, val
* p0
, val
* p1
) {
4 val
* var
/* : RuntimeVariable */;
5 val
* var_elttype
/* var elttype: MType */;
6 val
* var_length
/* var length: RuntimeVariable */;
7 val
* var1
/* : MModule */;
8 val
* var2
/* : MClassType */;
9 val
* var_mtype
/* var mtype: MClassType */;
10 val
* var3
/* : NativeArray[String] */;
13 val
* var5
/* : String */;
14 char* var6
/* : NativeString */;
15 val
* var7
/* : FlatString */;
16 val
* var8
/* : MClass */;
17 val
* var10
/* : MClass */;
18 val
* var11
/* : String */;
19 val
* var12
/* : String */;
20 short int var13
/* : Bool */;
23 val
* var14
/* : AbstractCompiler */;
24 val
* var16
/* : AbstractCompiler */;
25 val
* var_compiler
/* var compiler: SeparateCompiler */;
26 val
* var17
/* : MModule */;
27 val
* var19
/* : MModule */;
28 val
* var20
/* : MClassType */;
29 val
* var21
/* : RuntimeVariable */;
30 short int var22
/* : Bool */;
31 short int var24
/* : Bool */;
32 val
* var25
/* : nullable StaticFrame */;
33 val
* var27
/* : nullable StaticFrame */;
34 val
* var28
/* : MPropDef */;
35 val
* var30
/* : MPropDef */;
36 val
* var31
/* : MClassDef */;
37 val
* var33
/* : MClassDef */;
38 val
* var34
/* : nullable StaticFrame */;
39 val
* var36
/* : nullable StaticFrame */;
40 val
* var37
/* : Array[RuntimeVariable] */;
41 val
* var39
/* : Array[RuntimeVariable] */;
42 val
* var40
/* : nullable Object */;
43 val
* var_recv
/* var recv: RuntimeVariable */;
44 val
* var41
/* : String */;
45 val
* var_recv_type_info
/* var recv_type_info: String */;
46 val
* var42
/* : String */;
47 val
* var44
/* : NativeArray[String] */;
48 static val
* varonce43
;
49 static val
* varonce45
;
50 val
* var46
/* : String */;
51 char* var47
/* : NativeString */;
52 val
* var48
/* : FlatString */;
53 static val
* varonce49
;
54 val
* var50
/* : String */;
55 char* var51
/* : NativeString */;
56 val
* var52
/* : FlatString */;
57 static val
* varonce53
;
58 val
* var54
/* : String */;
59 char* var55
/* : NativeString */;
60 val
* var56
/* : FlatString */;
61 static val
* varonce57
;
62 val
* var58
/* : String */;
63 char* var59
/* : NativeString */;
64 val
* var60
/* : FlatString */;
65 static val
* varonce61
;
66 val
* var62
/* : String */;
67 char* var63
/* : NativeString */;
68 val
* var64
/* : FlatString */;
69 val
* var65
/* : MClass */;
70 val
* var67
/* : MClass */;
71 val
* var68
/* : String */;
72 val
* var69
/* : String */;
73 val
* var70
/* : String */;
74 val
* var71
/* : String */;
75 val
* var72
/* : RuntimeVariable */;
76 val
* var73
/* : Set[MType] */;
77 val
* var75
/* : Set[MType] */;
78 val
* var77
/* : NativeArray[String] */;
79 static val
* varonce76
;
80 static val
* varonce78
;
81 val
* var79
/* : String */;
82 char* var80
/* : NativeString */;
83 val
* var81
/* : FlatString */;
84 val
* var82
/* : String */;
85 val
* var83
/* : String */;
86 val
* var85
/* : NativeArray[String] */;
87 static val
* varonce84
;
88 static val
* varonce86
;
89 val
* var87
/* : String */;
90 char* var88
/* : NativeString */;
91 val
* var89
/* : FlatString */;
92 static val
* varonce90
;
93 val
* var91
/* : String */;
94 char* var92
/* : NativeString */;
95 val
* var93
/* : FlatString */;
96 static val
* varonce94
;
97 val
* var95
/* : String */;
98 char* var96
/* : NativeString */;
99 val
* var97
/* : FlatString */;
100 static val
* varonce98
;
101 val
* var99
/* : String */;
102 char* var100
/* : NativeString */;
103 val
* var101
/* : FlatString */;
104 val
* var102
/* : MClass */;
105 val
* var104
/* : MClass */;
106 val
* var105
/* : String */;
107 val
* var106
/* : String */;
108 val
* var107
/* : String */;
109 val
* var108
/* : String */;
110 val
* var109
/* : RuntimeVariable */;
114 var1
= nit___nit__AbstractCompilerVisitor___mmodule(self
);
117 var2
= nit__model___MModule___native_array_type(var1
, var_elttype
);
120 if (unlikely(varonce
==NULL
)) {
121 var3
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
122 if (likely(varonce4
!=NULL
)) {
126 var7
= standard___standard__NativeString___to_s_with_length(var6
, 4l);
130 ((struct instance_standard__NativeArray
*)var3
)->values
[0]=var5
;
136 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MClassType> */
137 var10
= var_mtype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MClassType> */
138 if (unlikely(var10
== NULL
)) {
139 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
140 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1138);
148 var11
= nit___nit__MClass___nit__model_base__MEntity__c_name(var8
);
150 ((struct instance_standard__NativeArray
*)var3
)->values
[1]=var11
;
152 var12
= ((val
*(*)(val
* self
))(var3
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var3
); /* native_to_s on <var3:NativeArray[String]>*/
156 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var12
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
158 /* <var_mtype:MClassType> isa MGenericType */
159 cltype
= type_nit__MGenericType
.color
;
160 idtype
= type_nit__MGenericType
.id
;
161 if(cltype
>= var_mtype
->type
->table_size
) {
164 var13
= var_mtype
->type
->type_table
[cltype
] == idtype
;
166 if (unlikely(!var13
)) {
167 PRINT_ERROR("Runtime error: %s", "Assert failed");
168 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2035);
172 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
173 var16
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
174 if (unlikely(var16
== NULL
)) {
175 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
176 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
183 var_compiler
= var14
;
185 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var_compiler) on <var_compiler:SeparateCompiler> */
186 var19
= var_compiler
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var_compiler:SeparateCompiler> */
187 if (unlikely(var19
== NULL
)) {
188 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
189 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 515);
197 var20
= nit__model___MModule___int_type(var17
);
200 var21
= nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__autobox(self
, var_length
, var20
);
204 { /* Inline model#MGenericType#need_anchor (var_mtype) on <var_mtype:MClassType(MGenericType)> */
205 var24
= var_mtype
->attrs
[COLOR_nit__model__MGenericType___need_anchor
].s
; /* _need_anchor on <var_mtype:MClassType(MGenericType)> */
212 nit___nit__SeparateCompilerVisitor___hardening_live_open_type(self
, var_mtype
); /* Direct call separate_compiler#SeparateCompilerVisitor#hardening_live_open_type on <self:SeparateCompilerVisitor>*/
215 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
216 var27
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
222 PRINT_ERROR("Runtime error: %s", "Receiver is null");
223 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2040);
226 { /* Inline abstract_compiler#StaticFrame#mpropdef (var25) on <var25:nullable StaticFrame> */
227 if (unlikely(var25
== NULL
)) {
228 PRINT_ERROR("Runtime error: %s", "Receiver is null");
229 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1828);
232 var30
= var25
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var25:nullable StaticFrame> */
233 if (unlikely(var30
== NULL
)) {
234 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
235 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1828);
243 { /* Inline model#MPropDef#mclassdef (var28) on <var28:MPropDef> */
244 var33
= var28
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var28:MPropDef> */
245 if (unlikely(var33
== NULL
)) {
246 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
247 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
255 nit___nit__SeparateCompilerVisitor___link_unresolved_type(self
, var31
, var_mtype
); /* Direct call separate_compiler#SeparateCompilerVisitor#link_unresolved_type on <self:SeparateCompilerVisitor>*/
258 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
259 var36
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
265 PRINT_ERROR("Runtime error: %s", "Receiver is null");
266 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2041);
269 { /* Inline abstract_compiler#StaticFrame#arguments (var34) on <var34:nullable StaticFrame> */
270 if (unlikely(var34
== NULL
)) {
271 PRINT_ERROR("Runtime error: %s", "Receiver is null");
272 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1835);
275 var39
= var34
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___arguments
].val
; /* _arguments on <var34:nullable StaticFrame> */
276 if (unlikely(var39
== NULL
)) {
277 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _arguments");
278 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1835);
286 var40
= standard___standard__SequenceRead___Collection__first(var37
);
290 var41
= nit___nit__SeparateCompilerVisitor___type_info(self
, var_recv
);
292 var_recv_type_info
= var41
;
294 var42
= nit__separate_compiler___MEntity___const_color(var_mtype
);
297 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var42
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
299 if (unlikely(varonce43
==NULL
)) {
300 var44
= NEW_standard__NativeArray(9l, &type_standard__NativeArray__standard__String
);
301 if (likely(varonce45
!=NULL
)) {
305 var48
= standard___standard__NativeString___to_s_with_length(var47
, 4l);
309 ((struct instance_standard__NativeArray
*)var44
)->values
[0]=var46
;
310 if (likely(varonce49
!=NULL
)) {
314 var52
= standard___standard__NativeString___to_s_with_length(var51
, 1l);
318 ((struct instance_standard__NativeArray
*)var44
)->values
[2]=var50
;
319 if (likely(varonce53
!=NULL
)) {
323 var56
= standard___standard__NativeString___to_s_with_length(var55
, 2l);
327 ((struct instance_standard__NativeArray
*)var44
)->values
[4]=var54
;
328 if (likely(varonce57
!=NULL
)) {
331 var59
= "->resolution_table->types[";
332 var60
= standard___standard__NativeString___to_s_with_length(var59
, 26l);
336 ((struct instance_standard__NativeArray
*)var44
)->values
[6]=var58
;
337 if (likely(varonce61
!=NULL
)) {
341 var64
= standard___standard__NativeString___to_s_with_length(var63
, 2l);
345 ((struct instance_standard__NativeArray
*)var44
)->values
[8]=var62
;
351 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MClassType(MGenericType)> */
352 var67
= var_mtype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MClassType(MGenericType)> */
353 if (unlikely(var67
== NULL
)) {
354 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
355 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1138);
363 var68
= nit___nit__MClass___nit__model_base__MEntity__c_name(var65
);
365 ((struct instance_standard__NativeArray
*)var44
)->values
[1]=var68
;
367 var69
= ((val
*(*)(val
* self
))(var_length
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_length
); /* to_s on <var_length:RuntimeVariable>*/
369 ((struct instance_standard__NativeArray
*)var44
)->values
[3]=var69
;
370 ((struct instance_standard__NativeArray
*)var44
)->values
[5]=var_recv_type_info
;
372 var70
= nit__separate_compiler___MEntity___const_color(var_mtype
);
374 ((struct instance_standard__NativeArray
*)var44
)->values
[7]=var70
;
376 var71
= ((val
*(*)(val
* self
))(var44
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var44
); /* native_to_s on <var44:NativeArray[String]>*/
380 var72
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var71
, var_mtype
);
387 { /* Inline separate_compiler#SeparateCompiler#undead_types (var_compiler) on <var_compiler:SeparateCompiler> */
388 var75
= var_compiler
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___undead_types
].val
; /* _undead_types on <var_compiler:SeparateCompiler> */
389 if (unlikely(var75
== NULL
)) {
390 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _undead_types");
391 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 146);
399 ((void(*)(val
* self
, val
* p0
))((((long)var73
&3)?class_info
[((long)var73
&3)]:var73
->class)->vft
[COLOR_standard__abstract_collection__SimpleCollection__add
]))(var73
, var_mtype
); /* add on <var73:Set[MType]>*/
401 if (unlikely(varonce76
==NULL
)) {
402 var77
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
403 if (likely(varonce78
!=NULL
)) {
407 var81
= standard___standard__NativeString___to_s_with_length(var80
, 5l);
411 ((struct instance_standard__NativeArray
*)var77
)->values
[0]=var79
;
417 var82
= nit___nit__MGenericType___nit__model_base__MEntity__c_name(var_mtype
);
419 ((struct instance_standard__NativeArray
*)var77
)->values
[1]=var82
;
421 var83
= ((val
*(*)(val
* self
))(var77
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var77
); /* native_to_s on <var77:NativeArray[String]>*/
425 nit___nit__AbstractCompilerVisitor___require_declaration(self
, var83
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <self:SeparateCompilerVisitor>*/
427 if (unlikely(varonce84
==NULL
)) {
428 var85
= NEW_standard__NativeArray(7l, &type_standard__NativeArray__standard__String
);
429 if (likely(varonce86
!=NULL
)) {
433 var89
= standard___standard__NativeString___to_s_with_length(var88
, 4l);
437 ((struct instance_standard__NativeArray
*)var85
)->values
[0]=var87
;
438 if (likely(varonce90
!=NULL
)) {
442 var93
= standard___standard__NativeString___to_s_with_length(var92
, 1l);
446 ((struct instance_standard__NativeArray
*)var85
)->values
[2]=var91
;
447 if (likely(varonce94
!=NULL
)) {
451 var97
= standard___standard__NativeString___to_s_with_length(var96
, 8l);
455 ((struct instance_standard__NativeArray
*)var85
)->values
[4]=var95
;
456 if (likely(varonce98
!=NULL
)) {
460 var101
= standard___standard__NativeString___to_s_with_length(var100
, 1l);
464 ((struct instance_standard__NativeArray
*)var85
)->values
[6]=var99
;
470 { /* Inline model#MClassType#mclass (var_mtype) on <var_mtype:MClassType(MGenericType)> */
471 var104
= var_mtype
->attrs
[COLOR_nit__model__MClassType___mclass
].val
; /* _mclass on <var_mtype:MClassType(MGenericType)> */
472 if (unlikely(var104
== NULL
)) {
473 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass");
474 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1138);
478 RET_LABEL103
:(void)0;
482 var105
= nit___nit__MClass___nit__model_base__MEntity__c_name(var102
);
484 ((struct instance_standard__NativeArray
*)var85
)->values
[1]=var105
;
486 var106
= ((val
*(*)(val
* self
))(var_length
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_length
); /* to_s on <var_length:RuntimeVariable>*/
488 ((struct instance_standard__NativeArray
*)var85
)->values
[3]=var106
;
490 var107
= nit___nit__MGenericType___nit__model_base__MEntity__c_name(var_mtype
);
492 ((struct instance_standard__NativeArray
*)var85
)->values
[5]=var107
;
494 var108
= ((val
*(*)(val
* self
))(var85
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var85
); /* native_to_s on <var85:NativeArray[String]>*/
498 var109
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var108
, var_mtype
);
505 /* method separate_compiler#SeparateCompilerVisitor#native_array_def for (self: SeparateCompilerVisitor, String, nullable MType, Array[RuntimeVariable]) */
506 void nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__native_array_def(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
507 val
* var_pname
/* var pname: String */;
508 val
* var_ret_type
/* var ret_type: nullable MType */;
509 val
* var_arguments
/* var arguments: Array[RuntimeVariable] */;
510 val
* var
/* : nullable Object */;
511 val
* var1
/* : MType */;
512 val
* var3
/* : MType */;
513 val
* var_elttype
/* var elttype: MType */;
514 val
* var4
/* : MModule */;
515 val
* var5
/* : MClass */;
516 val
* var_nclass
/* var nclass: MClass */;
517 val
* var6
/* : NativeArray[String] */;
519 static val
* varonce7
;
520 val
* var8
/* : String */;
521 char* var9
/* : NativeString */;
522 val
* var10
/* : FlatString */;
523 static val
* varonce11
;
524 val
* var12
/* : String */;
525 char* var13
/* : NativeString */;
526 val
* var14
/* : FlatString */;
527 static val
* varonce15
;
528 val
* var16
/* : String */;
529 char* var17
/* : NativeString */;
530 val
* var18
/* : FlatString */;
531 val
* var19
/* : String */;
532 val
* var20
/* : nullable Object */;
533 val
* var21
/* : String */;
534 val
* var22
/* : String */;
535 val
* var_recv
/* var recv: String */;
536 static val
* varonce23
;
537 val
* var24
/* : String */;
538 char* var25
/* : NativeString */;
539 val
* var26
/* : FlatString */;
540 short int var27
/* : Bool */;
541 val
* var29
/* : NativeArray[String] */;
542 static val
* varonce28
;
543 static val
* varonce30
;
544 val
* var31
/* : String */;
545 char* var32
/* : NativeString */;
546 val
* var33
/* : FlatString */;
547 static val
* varonce34
;
548 val
* var35
/* : String */;
549 char* var36
/* : NativeString */;
550 val
* var37
/* : FlatString */;
551 val
* var38
/* : nullable Object */;
552 val
* var39
/* : String */;
553 val
* var40
/* : String */;
554 val
* var41
/* : AbstractCompiler */;
555 val
* var43
/* : AbstractCompiler */;
556 val
* var44
/* : MModule */;
557 val
* var46
/* : MModule */;
558 val
* var47
/* : MClassType */;
559 val
* var48
/* : RuntimeVariable */;
560 val
* var_res
/* var res: RuntimeVariable */;
561 static val
* varonce50
;
562 val
* var51
/* : String */;
563 char* var52
/* : NativeString */;
564 val
* var53
/* : FlatString */;
565 short int var54
/* : Bool */;
566 val
* var56
/* : NativeArray[String] */;
567 static val
* varonce55
;
568 static val
* varonce57
;
569 val
* var58
/* : String */;
570 char* var59
/* : NativeString */;
571 val
* var60
/* : FlatString */;
572 static val
* varonce61
;
573 val
* var62
/* : String */;
574 char* var63
/* : NativeString */;
575 val
* var64
/* : FlatString */;
576 static val
* varonce65
;
577 val
* var66
/* : String */;
578 char* var67
/* : NativeString */;
579 val
* var68
/* : FlatString */;
580 val
* var69
/* : nullable Object */;
581 val
* var70
/* : String */;
582 val
* var71
/* : nullable Object */;
583 val
* var72
/* : String */;
584 val
* var73
/* : String */;
585 static val
* varonce74
;
586 val
* var75
/* : String */;
587 char* var76
/* : NativeString */;
588 val
* var77
/* : FlatString */;
589 short int var78
/* : Bool */;
590 val
* var80
/* : NativeArray[String] */;
591 static val
* varonce79
;
592 static val
* varonce81
;
593 val
* var82
/* : String */;
594 char* var83
/* : NativeString */;
595 val
* var84
/* : FlatString */;
596 static val
* varonce85
;
597 val
* var86
/* : String */;
598 char* var87
/* : NativeString */;
599 val
* var88
/* : FlatString */;
600 static val
* varonce89
;
601 val
* var90
/* : String */;
602 char* var91
/* : NativeString */;
603 val
* var92
/* : FlatString */;
604 val
* var93
/* : String */;
605 val
* var94
/* : nullable Object */;
606 val
* var95
/* : String */;
607 val
* var96
/* : String */;
608 val
* var97
/* : RuntimeVariable */;
609 static val
* varonce98
;
610 val
* var99
/* : String */;
611 char* var100
/* : NativeString */;
612 val
* var101
/* : FlatString */;
613 short int var102
/* : Bool */;
614 val
* var104
/* : NativeArray[String] */;
615 static val
* varonce103
;
616 static val
* varonce105
;
617 val
* var106
/* : String */;
618 char* var107
/* : NativeString */;
619 val
* var108
/* : FlatString */;
620 static val
* varonce109
;
621 val
* var110
/* : String */;
622 char* var111
/* : NativeString */;
623 val
* var112
/* : FlatString */;
624 static val
* varonce113
;
625 val
* var114
/* : String */;
626 char* var115
/* : NativeString */;
627 val
* var116
/* : FlatString */;
628 val
* var117
/* : String */;
629 val
* var118
/* : nullable Object */;
630 val
* var119
/* : String */;
631 val
* var120
/* : String */;
632 val
* var_recv1
/* var recv1: String */;
633 val
* var122
/* : NativeArray[String] */;
634 static val
* varonce121
;
635 static val
* varonce123
;
636 val
* var124
/* : String */;
637 char* var125
/* : NativeString */;
638 val
* var126
/* : FlatString */;
639 static val
* varonce127
;
640 val
* var128
/* : String */;
641 char* var129
/* : NativeString */;
642 val
* var130
/* : FlatString */;
643 static val
* varonce131
;
644 val
* var132
/* : String */;
645 char* var133
/* : NativeString */;
646 val
* var134
/* : FlatString */;
647 static val
* varonce135
;
648 val
* var136
/* : String */;
649 char* var137
/* : NativeString */;
650 val
* var138
/* : FlatString */;
651 static val
* varonce139
;
652 val
* var140
/* : String */;
653 char* var141
/* : NativeString */;
654 val
* var142
/* : FlatString */;
655 val
* var143
/* : nullable Object */;
656 val
* var144
/* : String */;
657 val
* var145
/* : String */;
658 val
* var146
/* : String */;
663 var
= standard___standard__SequenceRead___Collection__first(var_arguments
);
666 { /* Inline abstract_compiler#RuntimeVariable#mtype (var) on <var:nullable Object(RuntimeVariable)> */
667 var3
= var
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var:nullable Object(RuntimeVariable)> */
668 if (unlikely(var3
== NULL
)) {
669 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
670 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
679 var4
= nit___nit__AbstractCompilerVisitor___mmodule(self
);
682 var5
= nit__model___MModule___native_array_class(var4
);
685 if (unlikely(varonce
==NULL
)) {
686 var6
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
687 if (likely(varonce7
!=NULL
)) {
690 var9
= "((struct instance_";
691 var10
= standard___standard__NativeString___to_s_with_length(var9
, 18l);
695 ((struct instance_standard__NativeArray
*)var6
)->values
[0]=var8
;
696 if (likely(varonce11
!=NULL
)) {
700 var14
= standard___standard__NativeString___to_s_with_length(var13
, 2l);
704 ((struct instance_standard__NativeArray
*)var6
)->values
[2]=var12
;
705 if (likely(varonce15
!=NULL
)) {
709 var18
= standard___standard__NativeString___to_s_with_length(var17
, 9l);
713 ((struct instance_standard__NativeArray
*)var6
)->values
[4]=var16
;
719 var19
= nit___nit__MClass___nit__model_base__MEntity__c_name(var_nclass
);
721 ((struct instance_standard__NativeArray
*)var6
)->values
[1]=var19
;
723 var20
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments
, 0l);
726 var21
= ((val
*(*)(val
* self
))(var20
->class->vft
[COLOR_standard__string__Object__to_s
]))(var20
); /* to_s on <var20:nullable Object(RuntimeVariable)>*/
728 ((struct instance_standard__NativeArray
*)var6
)->values
[3]=var21
;
730 var22
= ((val
*(*)(val
* self
))(var6
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var6
); /* native_to_s on <var6:NativeArray[String]>*/
734 if (likely(varonce23
!=NULL
)) {
738 var26
= standard___standard__NativeString___to_s_with_length(var25
, 2l);
743 var27
= ((short int(*)(val
* self
, val
* p0
))(var_pname
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pname
, var24
); /* == on <var_pname:String>*/
746 if (unlikely(varonce28
==NULL
)) {
747 var29
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
748 if (likely(varonce30
!=NULL
)) {
752 var33
= standard___standard__NativeString___to_s_with_length(var32
, 1l);
756 ((struct instance_standard__NativeArray
*)var29
)->values
[1]=var31
;
757 if (likely(varonce34
!=NULL
)) {
761 var37
= standard___standard__NativeString___to_s_with_length(var36
, 1l);
765 ((struct instance_standard__NativeArray
*)var29
)->values
[3]=var35
;
770 ((struct instance_standard__NativeArray
*)var29
)->values
[0]=var_recv
;
772 var38
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments
, 1l);
775 var39
= ((val
*(*)(val
* self
))(var38
->class->vft
[COLOR_standard__string__Object__to_s
]))(var38
); /* to_s on <var38:nullable Object(RuntimeVariable)>*/
777 ((struct instance_standard__NativeArray
*)var29
)->values
[2]=var39
;
779 var40
= ((val
*(*)(val
* self
))(var29
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var29
); /* native_to_s on <var29:NativeArray[String]>*/
783 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
784 var43
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
785 if (unlikely(var43
== NULL
)) {
786 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
787 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
795 { /* Inline abstract_compiler#AbstractCompiler#mainmodule (var41) on <var41:AbstractCompiler(SeparateCompiler)> */
796 var46
= var41
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___mainmodule
].val
; /* _mainmodule on <var41:AbstractCompiler(SeparateCompiler)> */
797 if (unlikely(var46
== NULL
)) {
798 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mainmodule");
799 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 515);
807 var47
= nit__model___MModule___object_type(var44
);
810 var48
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var40
, var47
);
813 if (unlikely(var_ret_type
== NULL
)) {
814 PRINT_ERROR("Runtime error: %s", "Cast failed");
815 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2059);
819 { /* Inline abstract_compiler#RuntimeVariable#mcasttype= (var_res,var_ret_type) on <var_res:RuntimeVariable> */
820 var_res
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mcasttype
].val
= var_ret_type
; /* _mcasttype on <var_res:RuntimeVariable> */
825 nit___nit__AbstractCompilerVisitor___ret(self
, var_res
); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <self:SeparateCompilerVisitor>*/
829 if (likely(varonce50
!=NULL
)) {
833 var53
= standard___standard__NativeString___to_s_with_length(var52
, 3l);
838 var54
= ((short int(*)(val
* self
, val
* p0
))(var_pname
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pname
, var51
); /* == on <var_pname:String>*/
841 if (unlikely(varonce55
==NULL
)) {
842 var56
= NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String
);
843 if (likely(varonce57
!=NULL
)) {
847 var60
= standard___standard__NativeString___to_s_with_length(var59
, 1l);
851 ((struct instance_standard__NativeArray
*)var56
)->values
[1]=var58
;
852 if (likely(varonce61
!=NULL
)) {
856 var64
= standard___standard__NativeString___to_s_with_length(var63
, 2l);
860 ((struct instance_standard__NativeArray
*)var56
)->values
[3]=var62
;
861 if (likely(varonce65
!=NULL
)) {
865 var68
= standard___standard__NativeString___to_s_with_length(var67
, 1l);
869 ((struct instance_standard__NativeArray
*)var56
)->values
[5]=var66
;
874 ((struct instance_standard__NativeArray
*)var56
)->values
[0]=var_recv
;
876 var69
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments
, 1l);
879 var70
= ((val
*(*)(val
* self
))(var69
->class->vft
[COLOR_standard__string__Object__to_s
]))(var69
); /* to_s on <var69:nullable Object(RuntimeVariable)>*/
881 ((struct instance_standard__NativeArray
*)var56
)->values
[2]=var70
;
883 var71
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments
, 2l);
886 var72
= ((val
*(*)(val
* self
))(var71
->class->vft
[COLOR_standard__string__Object__to_s
]))(var71
); /* to_s on <var71:nullable Object(RuntimeVariable)>*/
888 ((struct instance_standard__NativeArray
*)var56
)->values
[4]=var72
;
890 var73
= ((val
*(*)(val
* self
))(var56
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var56
); /* native_to_s on <var56:NativeArray[String]>*/
894 nit___nit__AbstractCompilerVisitor___add(self
, var73
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
898 if (likely(varonce74
!=NULL
)) {
902 var77
= standard___standard__NativeString___to_s_with_length(var76
, 6l);
907 var78
= ((short int(*)(val
* self
, val
* p0
))(var_pname
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pname
, var75
); /* == on <var_pname:String>*/
910 if (unlikely(varonce79
==NULL
)) {
911 var80
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
912 if (likely(varonce81
!=NULL
)) {
915 var83
= "((struct instance_";
916 var84
= standard___standard__NativeString___to_s_with_length(var83
, 18l);
920 ((struct instance_standard__NativeArray
*)var80
)->values
[0]=var82
;
921 if (likely(varonce85
!=NULL
)) {
925 var88
= standard___standard__NativeString___to_s_with_length(var87
, 2l);
929 ((struct instance_standard__NativeArray
*)var80
)->values
[2]=var86
;
930 if (likely(varonce89
!=NULL
)) {
934 var92
= standard___standard__NativeString___to_s_with_length(var91
, 9l);
938 ((struct instance_standard__NativeArray
*)var80
)->values
[4]=var90
;
944 var93
= nit___nit__MClass___nit__model_base__MEntity__c_name(var_nclass
);
946 ((struct instance_standard__NativeArray
*)var80
)->values
[1]=var93
;
948 var94
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments
, 0l);
951 var95
= ((val
*(*)(val
* self
))(var94
->class->vft
[COLOR_standard__string__Object__to_s
]))(var94
); /* to_s on <var94:nullable Object(RuntimeVariable)>*/
953 ((struct instance_standard__NativeArray
*)var80
)->values
[3]=var95
;
955 var96
= ((val
*(*)(val
* self
))(var80
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var80
); /* native_to_s on <var80:NativeArray[String]>*/
958 if (unlikely(var_ret_type
== NULL
)) {
959 PRINT_ERROR("Runtime error: %s", "Cast failed");
960 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2066);
964 var97
= nit___nit__AbstractCompilerVisitor___new_expr(self
, var96
, var_ret_type
);
967 nit___nit__AbstractCompilerVisitor___ret(self
, var97
); /* Direct call abstract_compiler#AbstractCompilerVisitor#ret on <self:SeparateCompilerVisitor>*/
971 if (likely(varonce98
!=NULL
)) {
975 var101
= standard___standard__NativeString___to_s_with_length(var100
, 7l);
980 var102
= ((short int(*)(val
* self
, val
* p0
))(var_pname
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_pname
, var99
); /* == on <var_pname:String>*/
983 if (unlikely(varonce103
==NULL
)) {
984 var104
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
985 if (likely(varonce105
!=NULL
)) {
988 var107
= "((struct instance_";
989 var108
= standard___standard__NativeString___to_s_with_length(var107
, 18l);
993 ((struct instance_standard__NativeArray
*)var104
)->values
[0]=var106
;
994 if (likely(varonce109
!=NULL
)) {
998 var112
= standard___standard__NativeString___to_s_with_length(var111
, 2l);
1000 varonce109
= var110
;
1002 ((struct instance_standard__NativeArray
*)var104
)->values
[2]=var110
;
1003 if (likely(varonce113
!=NULL
)) {
1004 var114
= varonce113
;
1006 var115
= ")->values";
1007 var116
= standard___standard__NativeString___to_s_with_length(var115
, 9l);
1009 varonce113
= var114
;
1011 ((struct instance_standard__NativeArray
*)var104
)->values
[4]=var114
;
1013 var104
= varonce103
;
1017 var117
= nit___nit__MClass___nit__model_base__MEntity__c_name(var_nclass
);
1019 ((struct instance_standard__NativeArray
*)var104
)->values
[1]=var117
;
1021 var118
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments
, 1l);
1024 var119
= ((val
*(*)(val
* self
))(var118
->class->vft
[COLOR_standard__string__Object__to_s
]))(var118
); /* to_s on <var118:nullable Object(RuntimeVariable)>*/
1026 ((struct instance_standard__NativeArray
*)var104
)->values
[3]=var119
;
1028 var120
= ((val
*(*)(val
* self
))(var104
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var104
); /* native_to_s on <var104:NativeArray[String]>*/
1030 varonce103
= var104
;
1032 if (unlikely(varonce121
==NULL
)) {
1033 var122
= NEW_standard__NativeArray(9l, &type_standard__NativeArray__standard__String
);
1034 if (likely(varonce123
!=NULL
)) {
1035 var124
= varonce123
;
1037 var125
= "memmove(";
1038 var126
= standard___standard__NativeString___to_s_with_length(var125
, 8l);
1040 varonce123
= var124
;
1042 ((struct instance_standard__NativeArray
*)var122
)->values
[0]=var124
;
1043 if (likely(varonce127
!=NULL
)) {
1044 var128
= varonce127
;
1047 var130
= standard___standard__NativeString___to_s_with_length(var129
, 2l);
1049 varonce127
= var128
;
1051 ((struct instance_standard__NativeArray
*)var122
)->values
[2]=var128
;
1052 if (likely(varonce131
!=NULL
)) {
1053 var132
= varonce131
;
1056 var134
= standard___standard__NativeString___to_s_with_length(var133
, 2l);
1058 varonce131
= var132
;
1060 ((struct instance_standard__NativeArray
*)var122
)->values
[4]=var132
;
1061 if (likely(varonce135
!=NULL
)) {
1062 var136
= varonce135
;
1064 var137
= "*sizeof(";
1065 var138
= standard___standard__NativeString___to_s_with_length(var137
, 8l);
1067 varonce135
= var136
;
1069 ((struct instance_standard__NativeArray
*)var122
)->values
[6]=var136
;
1070 if (likely(varonce139
!=NULL
)) {
1071 var140
= varonce139
;
1074 var142
= standard___standard__NativeString___to_s_with_length(var141
, 3l);
1076 varonce139
= var140
;
1078 ((struct instance_standard__NativeArray
*)var122
)->values
[8]=var140
;
1080 var122
= varonce121
;
1083 ((struct instance_standard__NativeArray
*)var122
)->values
[1]=var_recv1
;
1084 ((struct instance_standard__NativeArray
*)var122
)->values
[3]=var_recv
;
1086 var143
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var_arguments
, 2l);
1089 var144
= ((val
*(*)(val
* self
))(var143
->class->vft
[COLOR_standard__string__Object__to_s
]))(var143
); /* to_s on <var143:nullable Object(RuntimeVariable)>*/
1091 ((struct instance_standard__NativeArray
*)var122
)->values
[5]=var144
;
1093 var145
= ((val
*(*)(val
* self
))(var_elttype
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var_elttype
); /* ctype on <var_elttype:MType>*/
1095 ((struct instance_standard__NativeArray
*)var122
)->values
[7]=var145
;
1097 var146
= ((val
*(*)(val
* self
))(var122
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var122
); /* native_to_s on <var122:NativeArray[String]>*/
1099 varonce121
= var122
;
1101 nit___nit__AbstractCompilerVisitor___add(self
, var146
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1111 /* method separate_compiler#SeparateCompilerVisitor#native_array_set for (self: SeparateCompilerVisitor, RuntimeVariable, Int, RuntimeVariable) */
1112 void nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__native_array_set(val
* self
, val
* p0
, long p1
, val
* p2
) {
1113 val
* var_nat
/* var nat: RuntimeVariable */;
1114 long var_i
/* var i: Int */;
1115 val
* var_val
/* var val: RuntimeVariable */;
1116 val
* var
/* : MModule */;
1117 val
* var1
/* : MClass */;
1118 val
* var_nclass
/* var nclass: MClass */;
1119 val
* var2
/* : NativeArray[String] */;
1120 static val
* varonce
;
1121 static val
* varonce3
;
1122 val
* var4
/* : String */;
1123 char* var5
/* : NativeString */;
1124 val
* var6
/* : FlatString */;
1125 static val
* varonce7
;
1126 val
* var8
/* : String */;
1127 char* var9
/* : NativeString */;
1128 val
* var10
/* : FlatString */;
1129 static val
* varonce11
;
1130 val
* var12
/* : String */;
1131 char* var13
/* : NativeString */;
1132 val
* var14
/* : FlatString */;
1133 val
* var15
/* : String */;
1134 val
* var16
/* : String */;
1135 val
* var17
/* : String */;
1136 val
* var_recv
/* var recv: String */;
1137 val
* var19
/* : NativeArray[String] */;
1138 static val
* varonce18
;
1139 static val
* varonce20
;
1140 val
* var21
/* : String */;
1141 char* var22
/* : NativeString */;
1142 val
* var23
/* : FlatString */;
1143 static val
* varonce24
;
1144 val
* var25
/* : String */;
1145 char* var26
/* : NativeString */;
1146 val
* var27
/* : FlatString */;
1147 static val
* varonce28
;
1148 val
* var29
/* : String */;
1149 char* var30
/* : NativeString */;
1150 val
* var31
/* : FlatString */;
1151 val
* var32
/* : String */;
1152 val
* var33
/* : String */;
1153 val
* var34
/* : String */;
1158 var
= nit___nit__AbstractCompilerVisitor___mmodule(self
);
1161 var1
= nit__model___MModule___native_array_class(var
);
1164 if (unlikely(varonce
==NULL
)) {
1165 var2
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
1166 if (likely(varonce3
!=NULL
)) {
1169 var5
= "((struct instance_";
1170 var6
= standard___standard__NativeString___to_s_with_length(var5
, 18l);
1174 ((struct instance_standard__NativeArray
*)var2
)->values
[0]=var4
;
1175 if (likely(varonce7
!=NULL
)) {
1179 var10
= standard___standard__NativeString___to_s_with_length(var9
, 2l);
1183 ((struct instance_standard__NativeArray
*)var2
)->values
[2]=var8
;
1184 if (likely(varonce11
!=NULL
)) {
1187 var13
= ")->values";
1188 var14
= standard___standard__NativeString___to_s_with_length(var13
, 9l);
1192 ((struct instance_standard__NativeArray
*)var2
)->values
[4]=var12
;
1198 var15
= nit___nit__MClass___nit__model_base__MEntity__c_name(var_nclass
);
1200 ((struct instance_standard__NativeArray
*)var2
)->values
[1]=var15
;
1202 var16
= ((val
*(*)(val
* self
))(var_nat
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_nat
); /* to_s on <var_nat:RuntimeVariable>*/
1204 ((struct instance_standard__NativeArray
*)var2
)->values
[3]=var16
;
1206 var17
= ((val
*(*)(val
* self
))(var2
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var2
); /* native_to_s on <var2:NativeArray[String]>*/
1210 if (unlikely(varonce18
==NULL
)) {
1211 var19
= NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String
);
1212 if (likely(varonce20
!=NULL
)) {
1216 var23
= standard___standard__NativeString___to_s_with_length(var22
, 1l);
1220 ((struct instance_standard__NativeArray
*)var19
)->values
[1]=var21
;
1221 if (likely(varonce24
!=NULL
)) {
1225 var27
= standard___standard__NativeString___to_s_with_length(var26
, 2l);
1229 ((struct instance_standard__NativeArray
*)var19
)->values
[3]=var25
;
1230 if (likely(varonce28
!=NULL
)) {
1234 var31
= standard___standard__NativeString___to_s_with_length(var30
, 1l);
1238 ((struct instance_standard__NativeArray
*)var19
)->values
[5]=var29
;
1243 ((struct instance_standard__NativeArray
*)var19
)->values
[0]=var_recv
;
1244 var32
= standard__string___Int___Object__to_s(var_i
);
1245 ((struct instance_standard__NativeArray
*)var19
)->values
[2]=var32
;
1247 var33
= ((val
*(*)(val
* self
))(var_val
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_val
); /* to_s on <var_val:RuntimeVariable>*/
1249 ((struct instance_standard__NativeArray
*)var19
)->values
[4]=var33
;
1251 var34
= ((val
*(*)(val
* self
))(var19
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var19
); /* native_to_s on <var19:NativeArray[String]>*/
1255 nit___nit__AbstractCompilerVisitor___add(self
, var34
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <self:SeparateCompilerVisitor>*/
1259 /* method separate_compiler#SeparateCompilerVisitor#link_unresolved_type for (self: SeparateCompilerVisitor, MClassDef, MType) */
1260 void nit___nit__SeparateCompilerVisitor___link_unresolved_type(val
* self
, val
* p0
, val
* p1
) {
1261 val
* var_mclassdef
/* var mclassdef: MClassDef */;
1262 val
* var_mtype
/* var mtype: MType */;
1263 short int var
/* : Bool */;
1264 val
* var1
/* : AbstractCompiler */;
1265 val
* var3
/* : AbstractCompiler */;
1266 val
* var_compiler
/* var compiler: SeparateCompiler */;
1267 val
* var4
/* : Map[MClassDef, Set[MType]] */;
1268 val
* var6
/* : Map[MClassDef, Set[MType]] */;
1269 val
* var7
/* : nullable StaticFrame */;
1270 val
* var9
/* : nullable StaticFrame */;
1271 val
* var10
/* : MPropDef */;
1272 val
* var12
/* : MPropDef */;
1273 val
* var13
/* : MClassDef */;
1274 val
* var15
/* : MClassDef */;
1275 short int var16
/* : Bool */;
1276 short int var17
/* : Bool */;
1277 val
* var18
/* : Map[MClassDef, Set[MType]] */;
1278 val
* var20
/* : Map[MClassDef, Set[MType]] */;
1279 val
* var21
/* : nullable StaticFrame */;
1280 val
* var23
/* : nullable StaticFrame */;
1281 val
* var24
/* : MPropDef */;
1282 val
* var26
/* : MPropDef */;
1283 val
* var27
/* : MClassDef */;
1284 val
* var29
/* : MClassDef */;
1285 val
* var30
/* : HashSet[MType] */;
1286 val
* var31
/* : Map[MClassDef, Set[MType]] */;
1287 val
* var33
/* : Map[MClassDef, Set[MType]] */;
1288 val
* var34
/* : nullable StaticFrame */;
1289 val
* var36
/* : nullable StaticFrame */;
1290 val
* var37
/* : MPropDef */;
1291 val
* var39
/* : MPropDef */;
1292 val
* var40
/* : MClassDef */;
1293 val
* var42
/* : MClassDef */;
1294 val
* var43
/* : nullable Object */;
1298 var
= ((short int(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__model__MType__need_anchor
]))(var_mtype
); /* need_anchor on <var_mtype:MType>*/
1300 if (unlikely(!var
)) {
1301 PRINT_ERROR("Runtime error: %s", "Assert failed");
1302 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2092);
1306 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (self) on <self:SeparateCompilerVisitor> */
1307 var3
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <self:SeparateCompilerVisitor> */
1308 if (unlikely(var3
== NULL
)) {
1309 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
1310 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
1317 var_compiler
= var1
;
1319 { /* Inline separate_compiler#SeparateCompiler#live_unresolved_types (var_compiler) on <var_compiler:SeparateCompiler> */
1320 var6
= var_compiler
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___live_unresolved_types
].val
; /* _live_unresolved_types on <var_compiler:SeparateCompiler> */
1321 if (unlikely(var6
== NULL
)) {
1322 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_unresolved_types");
1323 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 147);
1331 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
1332 var9
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
1338 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1339 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2094);
1342 { /* Inline abstract_compiler#StaticFrame#mpropdef (var7) on <var7:nullable StaticFrame> */
1343 if (unlikely(var7
== NULL
)) {
1344 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1345 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1828);
1348 var12
= var7
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var7:nullable StaticFrame> */
1349 if (unlikely(var12
== NULL
)) {
1350 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
1351 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1828);
1355 RET_LABEL11
:(void)0;
1359 { /* Inline model#MPropDef#mclassdef (var10) on <var10:MPropDef> */
1360 var15
= var10
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var10:MPropDef> */
1361 if (unlikely(var15
== NULL
)) {
1362 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1363 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
1367 RET_LABEL14
:(void)0;
1371 var16
= ((short int(*)(val
* self
, val
* p0
))((((long)var4
&3)?class_info
[((long)var4
&3)]:var4
->class)->vft
[COLOR_standard__abstract_collection__MapRead__has_key
]))(var4
, var13
); /* has_key on <var4:Map[MClassDef, Set[MType]]>*/
1376 { /* Inline separate_compiler#SeparateCompiler#live_unresolved_types (var_compiler) on <var_compiler:SeparateCompiler> */
1377 var20
= var_compiler
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___live_unresolved_types
].val
; /* _live_unresolved_types on <var_compiler:SeparateCompiler> */
1378 if (unlikely(var20
== NULL
)) {
1379 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_unresolved_types");
1380 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 147);
1384 RET_LABEL19
:(void)0;
1388 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
1389 var23
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
1391 RET_LABEL22
:(void)0;
1394 if (var21
== NULL
) {
1395 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1396 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2095);
1399 { /* Inline abstract_compiler#StaticFrame#mpropdef (var21) on <var21:nullable StaticFrame> */
1400 if (unlikely(var21
== NULL
)) {
1401 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1402 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1828);
1405 var26
= var21
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var21:nullable StaticFrame> */
1406 if (unlikely(var26
== NULL
)) {
1407 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
1408 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1828);
1412 RET_LABEL25
:(void)0;
1416 { /* Inline model#MPropDef#mclassdef (var24) on <var24:MPropDef> */
1417 var29
= var24
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var24:MPropDef> */
1418 if (unlikely(var29
== NULL
)) {
1419 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1420 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
1424 RET_LABEL28
:(void)0;
1427 var30
= NEW_standard__HashSet(&type_standard__HashSet__nit__MType
);
1429 standard___standard__HashSet___standard__kernel__Object__init(var30
); /* Direct call hash_collection#HashSet#init on <var30:HashSet[MType]>*/
1432 ((void(*)(val
* self
, val
* p0
, val
* p1
))((((long)var18
&3)?class_info
[((long)var18
&3)]:var18
->class)->vft
[COLOR_standard__abstract_collection__Map___91d_93d_61d
]))(var18
, var27
, var30
); /* []= on <var18:Map[MClassDef, Set[MType]]>*/
1437 { /* Inline separate_compiler#SeparateCompiler#live_unresolved_types (var_compiler) on <var_compiler:SeparateCompiler> */
1438 var33
= var_compiler
->attrs
[COLOR_nit__separate_compiler__SeparateCompiler___live_unresolved_types
].val
; /* _live_unresolved_types on <var_compiler:SeparateCompiler> */
1439 if (unlikely(var33
== NULL
)) {
1440 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _live_unresolved_types");
1441 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 147);
1445 RET_LABEL32
:(void)0;
1449 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame (self) on <self:SeparateCompilerVisitor> */
1450 var36
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
; /* _frame on <self:SeparateCompilerVisitor> */
1452 RET_LABEL35
:(void)0;
1455 if (var34
== NULL
) {
1456 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1457 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2097);
1460 { /* Inline abstract_compiler#StaticFrame#mpropdef (var34) on <var34:nullable StaticFrame> */
1461 if (unlikely(var34
== NULL
)) {
1462 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1463 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1828);
1466 var39
= var34
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___mpropdef
].val
; /* _mpropdef on <var34:nullable StaticFrame> */
1467 if (unlikely(var39
== NULL
)) {
1468 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mpropdef");
1469 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1828);
1473 RET_LABEL38
:(void)0;
1477 { /* Inline model#MPropDef#mclassdef (var37) on <var37:MPropDef> */
1478 var42
= var37
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var37:MPropDef> */
1479 if (unlikely(var42
== NULL
)) {
1480 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1481 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
1485 RET_LABEL41
:(void)0;
1489 var43
= ((val
*(*)(val
* self
, val
* p0
))((((long)var31
&3)?class_info
[((long)var31
&3)]:var31
->class)->vft
[COLOR_standard__abstract_collection__MapRead___91d_93d
]))(var31
, var40
); /* [] on <var31:Map[MClassDef, Set[MType]]>*/
1492 ((void(*)(val
* self
, val
* p0
))((((long)var43
&3)?class_info
[((long)var43
&3)]:var43
->class)->vft
[COLOR_standard__abstract_collection__SimpleCollection__add
]))(var43
, var_mtype
); /* add on <var43:nullable Object(Set[MType])>*/
1496 /* method separate_compiler#MMethodDef#separate_runtime_function for (self: MMethodDef): SeparateRuntimeFunction */
1497 val
* nit__separate_compiler___MMethodDef___separate_runtime_function(val
* self
) {
1498 val
* var
/* : SeparateRuntimeFunction */;
1499 val
* var1
/* : nullable SeparateRuntimeFunction */;
1500 val
* var3
/* : nullable SeparateRuntimeFunction */;
1501 val
* var_res
/* var res: nullable SeparateRuntimeFunction */;
1502 short int var4
/* : Bool */;
1503 short int var5
/* : Bool */;
1504 val
* var_other
/* var other: nullable Object */;
1505 short int var7
/* : Bool */;
1506 short int var9
/* : Bool */;
1507 val
* var10
/* : MClassDef */;
1508 val
* var12
/* : MClassDef */;
1509 val
* var13
/* : MClassType */;
1510 val
* var15
/* : MClassType */;
1511 val
* var_recv
/* var recv: MClassType */;
1512 val
* var16
/* : nullable MSignature */;
1513 val
* var18
/* : nullable MSignature */;
1514 val
* var19
/* : MClassDef */;
1515 val
* var21
/* : MClassDef */;
1516 val
* var22
/* : MModule */;
1517 val
* var24
/* : MModule */;
1518 val
* var25
/* : MSignature */;
1519 val
* var_msignature
/* var msignature: MSignature */;
1520 val
* var26
/* : SeparateRuntimeFunction */;
1521 val
* var27
/* : String */;
1523 { /* Inline separate_compiler#MMethodDef#separate_runtime_function_cache (self) on <self:MMethodDef> */
1524 var3
= self
->attrs
[COLOR_nit__separate_compiler__MMethodDef___separate_runtime_function_cache
].val
; /* _separate_runtime_function_cache on <self:MMethodDef> */
1530 if (var_res
== NULL
) {
1531 var4
= 1; /* is null */
1533 var4
= 0; /* arg is null but recv is not */
1536 { /* Inline kernel#Object#== (var_res,((val*)NULL)) on <var_res:nullable SeparateRuntimeFunction> */
1537 var_other
= ((val
*)NULL
);
1539 { /* Inline kernel#Object#is_same_instance (var_res,var_other) on <var_res:nullable SeparateRuntimeFunction(SeparateRuntimeFunction)> */
1540 var9
= var_res
== var_other
;
1554 { /* Inline model#MPropDef#mclassdef (self) on <self:MMethodDef> */
1555 var12
= self
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <self:MMethodDef> */
1556 if (unlikely(var12
== NULL
)) {
1557 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1558 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
1562 RET_LABEL11
:(void)0;
1566 { /* Inline model#MClassDef#bound_mtype (var10) on <var10:MClassDef> */
1567 var15
= var10
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var10:MClassDef> */
1568 if (unlikely(var15
== NULL
)) {
1569 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
1570 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 556);
1574 RET_LABEL14
:(void)0;
1579 { /* Inline model#MMethodDef#msignature (self) on <self:MMethodDef> */
1580 var18
= self
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
; /* _msignature on <self:MMethodDef> */
1582 RET_LABEL17
:(void)0;
1586 { /* Inline model#MPropDef#mclassdef (self) on <self:MMethodDef> */
1587 var21
= self
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <self:MMethodDef> */
1588 if (unlikely(var21
== NULL
)) {
1589 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1590 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
1594 RET_LABEL20
:(void)0;
1598 { /* Inline model#MClassDef#mmodule (var19) on <var19:MClassDef> */
1599 var24
= var19
->attrs
[COLOR_nit__model__MClassDef___mmodule
].val
; /* _mmodule on <var19:MClassDef> */
1600 if (unlikely(var24
== NULL
)) {
1601 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1602 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 550);
1606 RET_LABEL23
:(void)0;
1609 if (var16
== NULL
) {
1610 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1611 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2108);
1614 var25
= nit___nit__MSignature___MType__resolve_for(var16
, var_recv
, var_recv
, var22
, 1);
1616 var_msignature
= var25
;
1617 var26
= NEW_nit__SeparateRuntimeFunction(&type_nit__SeparateRuntimeFunction
);
1619 var27
= nit___nit__MPropDef___nit__model_base__MEntity__c_name(self
);
1622 ((void(*)(val
* self
, val
* p0
))(var26
->class->vft
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction__mmethoddef_61d
]))(var26
, self
); /* mmethoddef= on <var26:SeparateRuntimeFunction>*/
1625 ((void(*)(val
* self
, val
* p0
))(var26
->class->vft
[COLOR_nit__separate_compiler__SeparateRuntimeFunction__called_recv_61d
]))(var26
, var_recv
); /* called_recv= on <var26:SeparateRuntimeFunction>*/
1628 ((void(*)(val
* self
, val
* p0
))(var26
->class->vft
[COLOR_nit__separate_compiler__SeparateRuntimeFunction__called_signature_61d
]))(var26
, var_msignature
); /* called_signature= on <var26:SeparateRuntimeFunction>*/
1631 ((void(*)(val
* self
, val
* p0
))(var26
->class->vft
[COLOR_nit__separate_compiler__SeparateRuntimeFunction__build_c_name_61d
]))(var26
, var27
); /* build_c_name= on <var26:SeparateRuntimeFunction>*/
1634 ((void(*)(val
* self
))(var26
->class->vft
[COLOR_standard__kernel__Object__init
]))(var26
); /* init on <var26:SeparateRuntimeFunction>*/
1638 { /* Inline separate_compiler#MMethodDef#separate_runtime_function_cache= (self,var_res) on <self:MMethodDef> */
1639 self
->attrs
[COLOR_nit__separate_compiler__MMethodDef___separate_runtime_function_cache
].val
= var_res
; /* _separate_runtime_function_cache on <self:MMethodDef> */
1640 RET_LABEL28
:(void)0;
1650 /* method separate_compiler#MMethodDef#separate_runtime_function_cache for (self: MMethodDef): nullable SeparateRuntimeFunction */
1651 val
* nit__separate_compiler___MMethodDef___separate_runtime_function_cache(val
* self
) {
1652 val
* var
/* : nullable SeparateRuntimeFunction */;
1653 val
* var1
/* : nullable SeparateRuntimeFunction */;
1654 var1
= self
->attrs
[COLOR_nit__separate_compiler__MMethodDef___separate_runtime_function_cache
].val
; /* _separate_runtime_function_cache on <self:MMethodDef> */
1659 /* method separate_compiler#MMethodDef#separate_runtime_function_cache= for (self: MMethodDef, nullable SeparateRuntimeFunction) */
1660 void nit__separate_compiler___MMethodDef___separate_runtime_function_cache_61d(val
* self
, val
* p0
) {
1661 self
->attrs
[COLOR_nit__separate_compiler__MMethodDef___separate_runtime_function_cache
].val
= p0
; /* _separate_runtime_function_cache on <self:MMethodDef> */
1664 /* method separate_compiler#MMethodDef#virtual_runtime_function for (self: MMethodDef): SeparateRuntimeFunction */
1665 val
* nit__separate_compiler___MMethodDef___virtual_runtime_function(val
* self
) {
1666 val
* var
/* : SeparateRuntimeFunction */;
1667 val
* var1
/* : nullable SeparateRuntimeFunction */;
1668 val
* var3
/* : nullable SeparateRuntimeFunction */;
1669 val
* var_res
/* var res: nullable SeparateRuntimeFunction */;
1670 short int var4
/* : Bool */;
1671 short int var5
/* : Bool */;
1672 val
* var_other
/* var other: nullable Object */;
1673 short int var7
/* : Bool */;
1674 short int var9
/* : Bool */;
1675 val
* var10
/* : MProperty */;
1676 val
* var12
/* : MProperty */;
1677 val
* var13
/* : MPropDef */;
1678 val
* var15
/* : MPropDef */;
1679 val
* var16
/* : MClassDef */;
1680 val
* var18
/* : MClassDef */;
1681 val
* var_intromclassdef
/* var intromclassdef: MClassDef */;
1682 val
* var19
/* : MClassType */;
1683 val
* var21
/* : MClassType */;
1684 val
* var_recv
/* var recv: MClassType */;
1685 val
* var22
/* : SeparateRuntimeFunction */;
1686 val
* var23
/* : MType */;
1687 val
* var25
/* : MType */;
1688 short int var26
/* : Bool */;
1689 short int var28
/* : Bool */;
1690 short int var30
/* : Bool */;
1691 val
* var32
/* : MProperty */;
1692 val
* var34
/* : MProperty */;
1693 val
* var35
/* : MPropDef */;
1694 val
* var37
/* : MPropDef */;
1695 val
* var38
/* : nullable MSignature */;
1696 val
* var40
/* : nullable MSignature */;
1697 val
* var41
/* : MModule */;
1698 val
* var43
/* : MModule */;
1699 val
* var44
/* : MSignature */;
1700 val
* var_msignature
/* var msignature: MSignature */;
1701 short int var45
/* : Bool */;
1702 val
* var46
/* : String */;
1703 val
* var47
/* : MType */;
1704 val
* var49
/* : MType */;
1705 val
* var50
/* : String */;
1706 short int var51
/* : Bool */;
1707 short int var_
/* var : Bool */;
1708 val
* var52
/* : MSignature */;
1709 val
* var54
/* : MSignature */;
1710 short int var55
/* : Bool */;
1711 val
* var57
/* : SeparateRuntimeFunction */;
1712 val
* var58
/* : NativeArray[String] */;
1713 static val
* varonce
;
1714 static val
* varonce59
;
1715 val
* var60
/* : String */;
1716 char* var61
/* : NativeString */;
1717 val
* var62
/* : FlatString */;
1718 val
* var63
/* : String */;
1719 val
* var64
/* : String */;
1721 { /* Inline separate_compiler#MMethodDef#virtual_runtime_function_cache (self) on <self:MMethodDef> */
1722 var3
= self
->attrs
[COLOR_nit__separate_compiler__MMethodDef___virtual_runtime_function_cache
].val
; /* _virtual_runtime_function_cache on <self:MMethodDef> */
1728 if (var_res
== NULL
) {
1729 var4
= 1; /* is null */
1731 var4
= 0; /* arg is null but recv is not */
1734 { /* Inline kernel#Object#== (var_res,((val*)NULL)) on <var_res:nullable SeparateRuntimeFunction> */
1735 var_other
= ((val
*)NULL
);
1737 { /* Inline kernel#Object#is_same_instance (var_res,var_other) on <var_res:nullable SeparateRuntimeFunction(SeparateRuntimeFunction)> */
1738 var9
= var_res
== var_other
;
1752 { /* Inline model#MPropDef#mproperty (self) on <self:MMethodDef> */
1753 var12
= self
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <self:MMethodDef> */
1754 if (unlikely(var12
== NULL
)) {
1755 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1756 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2212);
1760 RET_LABEL11
:(void)0;
1764 { /* Inline model#MProperty#intro (var10) on <var10:MProperty(MMethod)> */
1765 var15
= var10
->attrs
[COLOR_nit__model__MProperty___intro
].val
; /* _intro on <var10:MProperty(MMethod)> */
1766 if (unlikely(var15
== NULL
)) {
1767 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
1768 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1968);
1772 RET_LABEL14
:(void)0;
1776 { /* Inline model#MPropDef#mclassdef (var13) on <var13:MPropDef(MMethodDef)> */
1777 var18
= var13
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var13:MPropDef(MMethodDef)> */
1778 if (unlikely(var18
== NULL
)) {
1779 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
1780 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
1784 RET_LABEL17
:(void)0;
1787 var_intromclassdef
= var16
;
1789 { /* Inline model#MClassDef#bound_mtype (var_intromclassdef) on <var_intromclassdef:MClassDef> */
1790 var21
= var_intromclassdef
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var_intromclassdef:MClassDef> */
1791 if (unlikely(var21
== NULL
)) {
1792 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
1793 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 556);
1797 RET_LABEL20
:(void)0;
1802 var22
= nit__separate_compiler___MMethodDef___separate_runtime_function(self
);
1806 { /* Inline separate_compiler#SeparateRuntimeFunction#called_recv (var_res) on <var_res:nullable SeparateRuntimeFunction(SeparateRuntimeFunction)> */
1807 var25
= var_res
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_recv
].val
; /* _called_recv on <var_res:nullable SeparateRuntimeFunction(SeparateRuntimeFunction)> */
1808 if (unlikely(var25
== NULL
)) {
1809 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_recv");
1810 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2170);
1814 RET_LABEL24
:(void)0;
1818 { /* Inline kernel#Object#== (var23,var_recv) on <var23:MType> */
1819 var_other
= var_recv
;
1821 { /* Inline kernel#Object#is_same_instance (var23,var_other) on <var23:MType> */
1822 var30
= var23
== var_other
;
1825 RET_LABEL29
:(void)0;
1830 RET_LABEL27
:(void)0;
1835 { /* Inline separate_compiler#MMethodDef#virtual_runtime_function_cache= (self,var_res) on <self:MMethodDef> */
1836 self
->attrs
[COLOR_nit__separate_compiler__MMethodDef___virtual_runtime_function_cache
].val
= var_res
; /* _virtual_runtime_function_cache on <self:MMethodDef> */
1837 RET_LABEL31
:(void)0;
1845 { /* Inline model#MPropDef#mproperty (self) on <self:MMethodDef> */
1846 var34
= self
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <self:MMethodDef> */
1847 if (unlikely(var34
== NULL
)) {
1848 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
1849 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2212);
1853 RET_LABEL33
:(void)0;
1857 { /* Inline model#MProperty#intro (var32) on <var32:MProperty(MMethod)> */
1858 var37
= var32
->attrs
[COLOR_nit__model__MProperty___intro
].val
; /* _intro on <var32:MProperty(MMethod)> */
1859 if (unlikely(var37
== NULL
)) {
1860 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
1861 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1968);
1865 RET_LABEL36
:(void)0;
1869 { /* Inline model#MMethodDef#msignature (var35) on <var35:MPropDef(MMethodDef)> */
1870 var40
= var35
->attrs
[COLOR_nit__model__MMethodDef___msignature
].val
; /* _msignature on <var35:MPropDef(MMethodDef)> */
1872 RET_LABEL39
:(void)0;
1876 { /* Inline model#MClassDef#mmodule (var_intromclassdef) on <var_intromclassdef:MClassDef> */
1877 var43
= var_intromclassdef
->attrs
[COLOR_nit__model__MClassDef___mmodule
].val
; /* _mmodule on <var_intromclassdef:MClassDef> */
1878 if (unlikely(var43
== NULL
)) {
1879 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
1880 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 550);
1884 RET_LABEL42
:(void)0;
1887 if (var38
== NULL
) {
1888 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1889 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2133);
1892 var44
= nit___nit__MSignature___MType__resolve_for(var38
, var_recv
, var_recv
, var41
, 1);
1894 var_msignature
= var44
;
1896 var46
= nit__abstract_compiler___MClassType___MType__ctype(var_recv
);
1899 { /* Inline separate_compiler#SeparateRuntimeFunction#called_recv (var_res) on <var_res:nullable SeparateRuntimeFunction(SeparateRuntimeFunction)> */
1900 var49
= var_res
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_recv
].val
; /* _called_recv on <var_res:nullable SeparateRuntimeFunction(SeparateRuntimeFunction)> */
1901 if (unlikely(var49
== NULL
)) {
1902 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_recv");
1903 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2170);
1907 RET_LABEL48
:(void)0;
1911 var50
= ((val
*(*)(val
* self
))(var47
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var47
); /* ctype on <var47:MType>*/
1914 var51
= ((short int(*)(val
* self
, val
* p0
))(var46
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var46
, var50
); /* == on <var46:String>*/
1919 { /* Inline separate_compiler#SeparateRuntimeFunction#called_signature (var_res) on <var_res:nullable SeparateRuntimeFunction(SeparateRuntimeFunction)> */
1920 var54
= var_res
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
; /* _called_signature on <var_res:nullable SeparateRuntimeFunction(SeparateRuntimeFunction)> */
1921 if (unlikely(var54
== NULL
)) {
1922 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_signature");
1923 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2173);
1927 RET_LABEL53
:(void)0;
1931 var55
= nit__separate_compiler___MSignature___c_equiv(var_msignature
, var52
);
1939 { /* Inline separate_compiler#MMethodDef#virtual_runtime_function_cache= (self,var_res) on <self:MMethodDef> */
1940 self
->attrs
[COLOR_nit__separate_compiler__MMethodDef___virtual_runtime_function_cache
].val
= var_res
; /* _virtual_runtime_function_cache on <self:MMethodDef> */
1941 RET_LABEL56
:(void)0;
1948 var57
= NEW_nit__SeparateRuntimeFunction(&type_nit__SeparateRuntimeFunction
);
1949 if (unlikely(varonce
==NULL
)) {
1950 var58
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
1951 if (likely(varonce59
!=NULL
)) {
1955 var62
= standard___standard__NativeString___to_s_with_length(var61
, 8l);
1959 ((struct instance_standard__NativeArray
*)var58
)->values
[0]=var60
;
1965 var63
= nit___nit__MPropDef___nit__model_base__MEntity__c_name(self
);
1967 ((struct instance_standard__NativeArray
*)var58
)->values
[1]=var63
;
1969 var64
= ((val
*(*)(val
* self
))(var58
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var58
); /* native_to_s on <var58:NativeArray[String]>*/
1973 ((void(*)(val
* self
, val
* p0
))(var57
->class->vft
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction__mmethoddef_61d
]))(var57
, self
); /* mmethoddef= on <var57:SeparateRuntimeFunction>*/
1976 ((void(*)(val
* self
, val
* p0
))(var57
->class->vft
[COLOR_nit__separate_compiler__SeparateRuntimeFunction__called_recv_61d
]))(var57
, var_recv
); /* called_recv= on <var57:SeparateRuntimeFunction>*/
1979 ((void(*)(val
* self
, val
* p0
))(var57
->class->vft
[COLOR_nit__separate_compiler__SeparateRuntimeFunction__called_signature_61d
]))(var57
, var_msignature
); /* called_signature= on <var57:SeparateRuntimeFunction>*/
1982 ((void(*)(val
* self
, val
* p0
))(var57
->class->vft
[COLOR_nit__separate_compiler__SeparateRuntimeFunction__build_c_name_61d
]))(var57
, var64
); /* build_c_name= on <var57:SeparateRuntimeFunction>*/
1985 ((void(*)(val
* self
))(var57
->class->vft
[COLOR_standard__kernel__Object__init
]))(var57
); /* init on <var57:SeparateRuntimeFunction>*/
1989 { /* Inline separate_compiler#MMethodDef#virtual_runtime_function_cache= (self,var_res) on <self:MMethodDef> */
1990 self
->attrs
[COLOR_nit__separate_compiler__MMethodDef___virtual_runtime_function_cache
].val
= var_res
; /* _virtual_runtime_function_cache on <self:MMethodDef> */
1991 RET_LABEL65
:(void)0;
1995 { /* Inline separate_compiler#SeparateRuntimeFunction#is_thunk= (var_res,1) on <var_res:nullable SeparateRuntimeFunction(SeparateRuntimeFunction)> */
1996 var_res
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___is_thunk
].s
= 1; /* _is_thunk on <var_res:nullable SeparateRuntimeFunction(SeparateRuntimeFunction)> */
1997 RET_LABEL66
:(void)0;
2007 /* method separate_compiler#MMethodDef#virtual_runtime_function_cache for (self: MMethodDef): nullable SeparateRuntimeFunction */
2008 val
* nit__separate_compiler___MMethodDef___virtual_runtime_function_cache(val
* self
) {
2009 val
* var
/* : nullable SeparateRuntimeFunction */;
2010 val
* var1
/* : nullable SeparateRuntimeFunction */;
2011 var1
= self
->attrs
[COLOR_nit__separate_compiler__MMethodDef___virtual_runtime_function_cache
].val
; /* _virtual_runtime_function_cache on <self:MMethodDef> */
2016 /* method separate_compiler#MMethodDef#virtual_runtime_function_cache= for (self: MMethodDef, nullable SeparateRuntimeFunction) */
2017 void nit__separate_compiler___MMethodDef___virtual_runtime_function_cache_61d(val
* self
, val
* p0
) {
2018 self
->attrs
[COLOR_nit__separate_compiler__MMethodDef___virtual_runtime_function_cache
].val
= p0
; /* _virtual_runtime_function_cache on <self:MMethodDef> */
2021 /* method separate_compiler#MSignature#c_equiv for (self: MSignature, MSignature): Bool */
2022 short int nit__separate_compiler___MSignature___c_equiv(val
* self
, val
* p0
) {
2023 short int var
/* : Bool */;
2024 val
* var_other
/* var other: MSignature */;
2025 short int var1
/* : Bool */;
2026 val
* var_other3
/* var other: nullable Object */;
2027 short int var4
/* : Bool */;
2028 short int var6
/* : Bool */;
2029 long var7
/* : Int */;
2030 long var8
/* : Int */;
2031 short int var9
/* : Bool */;
2032 short int var11
/* : Bool */;
2033 short int var12
/* : Bool */;
2034 long var_i
/* var i: Int */;
2035 long var13
/* : Int */;
2036 long var_
/* var : Int */;
2037 short int var14
/* : Bool */;
2038 short int var16
/* : Bool */;
2041 const char* var_class_name
;
2042 short int var17
/* : Bool */;
2043 val
* var18
/* : Array[MParameter] */;
2044 val
* var20
/* : Array[MParameter] */;
2045 val
* var21
/* : nullable Object */;
2046 val
* var22
/* : MType */;
2047 val
* var24
/* : MType */;
2048 val
* var25
/* : String */;
2049 val
* var26
/* : Array[MParameter] */;
2050 val
* var28
/* : Array[MParameter] */;
2051 val
* var29
/* : nullable Object */;
2052 val
* var30
/* : MType */;
2053 val
* var32
/* : MType */;
2054 val
* var33
/* : String */;
2055 short int var34
/* : Bool */;
2056 val
* var_other36
/* var other: nullable Object */;
2057 short int var37
/* : Bool */;
2058 short int var38
/* : Bool */;
2059 long var39
/* : Int */;
2060 val
* var40
/* : nullable MType */;
2061 val
* var42
/* : nullable MType */;
2062 val
* var43
/* : nullable MType */;
2063 val
* var45
/* : nullable MType */;
2064 short int var46
/* : Bool */;
2065 short int var47
/* : Bool */;
2066 short int var49
/* : Bool */;
2067 short int var50
/* : Bool */;
2068 short int var51
/* : Bool */;
2069 val
* var52
/* : nullable MType */;
2070 val
* var54
/* : nullable MType */;
2071 short int var55
/* : Bool */;
2072 short int var56
/* : Bool */;
2073 short int var58
/* : Bool */;
2074 short int var60
/* : Bool */;
2075 short int var_61
/* var : Bool */;
2076 val
* var62
/* : nullable MType */;
2077 val
* var64
/* : nullable MType */;
2078 short int var65
/* : Bool */;
2079 short int var66
/* : Bool */;
2080 short int var68
/* : Bool */;
2081 short int var70
/* : Bool */;
2082 val
* var71
/* : nullable MType */;
2083 val
* var73
/* : nullable MType */;
2084 val
* var74
/* : String */;
2085 val
* var75
/* : nullable MType */;
2086 val
* var77
/* : nullable MType */;
2087 val
* var78
/* : String */;
2088 short int var79
/* : Bool */;
2089 short int var81
/* : Bool */;
2090 short int var82
/* : Bool */;
2093 { /* Inline kernel#Object#== (self,var_other) on <self:MSignature> */
2094 var_other3
= var_other
;
2096 { /* Inline kernel#Object#is_same_instance (self,var_other3) on <self:MSignature> */
2097 var6
= self
== var_other3
;
2114 var7
= nit___nit__MSignature___arity(self
);
2117 var8
= nit___nit__MSignature___arity(var_other
);
2120 { /* Inline kernel#Int#!= (var7,var8) on <var7:Int> */
2121 var11
= var7
== var8
;
2125 RET_LABEL10
:(void)0;
2135 var13
= nit___nit__MSignature___arity(self
);
2140 { /* Inline kernel#Int#< (var_i,var_) on <var_i:Int> */
2141 /* Covariant cast for argument 0 (i) <var_:Int> isa OTHER */
2142 /* <var_:Int> isa OTHER */
2143 var16
= 1; /* easy <var_:Int> isa OTHER*/
2144 if (unlikely(!var16
)) {
2145 var_class_name
= type_standard__Int
.name
;
2146 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
2147 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 534);
2150 var17
= var_i
< var_
;
2153 RET_LABEL15
:(void)0;
2158 { /* Inline model#MSignature#mparameters (self) on <self:MSignature> */
2159 var20
= self
->attrs
[COLOR_nit__model__MSignature___mparameters
].val
; /* _mparameters on <self:MSignature> */
2160 if (unlikely(var20
== NULL
)) {
2161 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
2162 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1756);
2166 RET_LABEL19
:(void)0;
2170 var21
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var18
, var_i
);
2173 { /* Inline model#MParameter#mtype (var21) on <var21:nullable Object(MParameter)> */
2174 var24
= var21
->attrs
[COLOR_nit__model__MParameter___mtype
].val
; /* _mtype on <var21:nullable Object(MParameter)> */
2175 if (unlikely(var24
== NULL
)) {
2176 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2177 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1879);
2181 RET_LABEL23
:(void)0;
2185 var25
= ((val
*(*)(val
* self
))(var22
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var22
); /* ctype on <var22:MType>*/
2188 { /* Inline model#MSignature#mparameters (var_other) on <var_other:MSignature> */
2189 var28
= var_other
->attrs
[COLOR_nit__model__MSignature___mparameters
].val
; /* _mparameters on <var_other:MSignature> */
2190 if (unlikely(var28
== NULL
)) {
2191 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
2192 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1756);
2196 RET_LABEL27
:(void)0;
2200 var29
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var26
, var_i
);
2203 { /* Inline model#MParameter#mtype (var29) on <var29:nullable Object(MParameter)> */
2204 var32
= var29
->attrs
[COLOR_nit__model__MParameter___mtype
].val
; /* _mtype on <var29:nullable Object(MParameter)> */
2205 if (unlikely(var32
== NULL
)) {
2206 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2207 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1879);
2211 RET_LABEL31
:(void)0;
2215 var33
= ((val
*(*)(val
* self
))(var30
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var30
); /* ctype on <var30:MType>*/
2218 { /* Inline kernel#Object#!= (var25,var33) on <var25:String> */
2219 var_other36
= var33
;
2221 var37
= ((short int(*)(val
* self
, val
* p0
))(var25
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var25
, var_other36
); /* == on <var25:String>*/
2226 RET_LABEL35
:(void)0;
2235 var39
= standard___standard__Int___Discrete__successor(var_i
, 1l);
2242 BREAK_label
: (void)0;
2244 { /* Inline model#MSignature#return_mtype (self) on <self:MSignature> */
2245 var42
= self
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <self:MSignature> */
2247 RET_LABEL41
:(void)0;
2251 { /* Inline model#MSignature#return_mtype (var_other) on <var_other:MSignature> */
2252 var45
= var_other
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var_other:MSignature> */
2254 RET_LABEL44
:(void)0;
2257 if (var40
== NULL
) {
2258 var46
= (var43
!= NULL
);
2260 { /* Inline kernel#Object#!= (var40,var43) on <var40:nullable MType> */
2261 var_other36
= var43
;
2263 var49
= ((short int(*)(val
* self
, val
* p0
))(var40
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var40
, var_other36
); /* == on <var40:nullable MType(MType)>*/
2268 RET_LABEL48
:(void)0;
2274 { /* Inline model#MSignature#return_mtype (self) on <self:MSignature> */
2275 var54
= self
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <self:MSignature> */
2277 RET_LABEL53
:(void)0;
2280 if (var52
== NULL
) {
2281 var55
= 1; /* is null */
2283 var55
= 0; /* arg is null but recv is not */
2286 { /* Inline kernel#Object#== (var52,((val*)NULL)) on <var52:nullable MType> */
2287 var_other3
= ((val
*)NULL
);
2289 { /* Inline kernel#Object#is_same_instance (var52,var_other3) on <var52:nullable MType(MType)> */
2290 var60
= var52
== var_other3
;
2293 RET_LABEL59
:(void)0;
2298 RET_LABEL57
:(void)0;
2307 { /* Inline model#MSignature#return_mtype (var_other) on <var_other:MSignature> */
2308 var64
= var_other
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var_other:MSignature> */
2310 RET_LABEL63
:(void)0;
2313 if (var62
== NULL
) {
2314 var65
= 1; /* is null */
2316 var65
= 0; /* arg is null but recv is not */
2319 { /* Inline kernel#Object#== (var62,((val*)NULL)) on <var62:nullable MType> */
2320 var_other3
= ((val
*)NULL
);
2322 { /* Inline kernel#Object#is_same_instance (var62,var_other3) on <var62:nullable MType(MType)> */
2323 var70
= var62
== var_other3
;
2326 RET_LABEL69
:(void)0;
2331 RET_LABEL67
:(void)0;
2343 { /* Inline model#MSignature#return_mtype (self) on <self:MSignature> */
2344 var73
= self
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <self:MSignature> */
2346 RET_LABEL72
:(void)0;
2349 if (var71
== NULL
) {
2350 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2351 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2160);
2354 var74
= ((val
*(*)(val
* self
))(var71
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var71
); /* ctype on <var71:nullable MType>*/
2357 { /* Inline model#MSignature#return_mtype (var_other) on <var_other:MSignature> */
2358 var77
= var_other
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var_other:MSignature> */
2360 RET_LABEL76
:(void)0;
2363 if (var75
== NULL
) {
2364 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2365 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2160);
2368 var78
= ((val
*(*)(val
* self
))(var75
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var75
); /* ctype on <var75:nullable MType>*/
2371 { /* Inline kernel#Object#!= (var74,var78) on <var74:String> */
2372 var_other36
= var78
;
2374 var81
= ((short int(*)(val
* self
, val
* p0
))(var74
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var74
, var_other36
); /* == on <var74:String>*/
2379 RET_LABEL80
:(void)0;
2394 /* method separate_compiler#SeparateRuntimeFunction#called_recv for (self: SeparateRuntimeFunction): MType */
2395 val
* nit___nit__SeparateRuntimeFunction___called_recv(val
* self
) {
2396 val
* var
/* : MType */;
2397 val
* var1
/* : MType */;
2398 var1
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_recv
].val
; /* _called_recv on <self:SeparateRuntimeFunction> */
2399 if (unlikely(var1
== NULL
)) {
2400 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_recv");
2401 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2170);
2408 /* method separate_compiler#SeparateRuntimeFunction#called_recv= for (self: SeparateRuntimeFunction, MType) */
2409 void nit___nit__SeparateRuntimeFunction___called_recv_61d(val
* self
, val
* p0
) {
2410 self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_recv
].val
= p0
; /* _called_recv on <self:SeparateRuntimeFunction> */
2413 /* method separate_compiler#SeparateRuntimeFunction#called_signature for (self: SeparateRuntimeFunction): MSignature */
2414 val
* nit___nit__SeparateRuntimeFunction___called_signature(val
* self
) {
2415 val
* var
/* : MSignature */;
2416 val
* var1
/* : MSignature */;
2417 var1
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
; /* _called_signature on <self:SeparateRuntimeFunction> */
2418 if (unlikely(var1
== NULL
)) {
2419 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_signature");
2420 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2173);
2427 /* method separate_compiler#SeparateRuntimeFunction#called_signature= for (self: SeparateRuntimeFunction, MSignature) */
2428 void nit___nit__SeparateRuntimeFunction___called_signature_61d(val
* self
, val
* p0
) {
2429 self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
= p0
; /* _called_signature on <self:SeparateRuntimeFunction> */
2432 /* method separate_compiler#SeparateRuntimeFunction#build_c_name for (self: SeparateRuntimeFunction): String */
2433 val
* nit___nit__SeparateRuntimeFunction___nit__abstract_compiler__AbstractRuntimeFunction__build_c_name(val
* self
) {
2434 val
* var
/* : String */;
2435 val
* var1
/* : String */;
2436 var1
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___build_c_name
].val
; /* _build_c_name on <self:SeparateRuntimeFunction> */
2437 if (unlikely(var1
== NULL
)) {
2438 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _build_c_name");
2439 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2176);
2446 /* method separate_compiler#SeparateRuntimeFunction#build_c_name= for (self: SeparateRuntimeFunction, String) */
2447 void nit___nit__SeparateRuntimeFunction___build_c_name_61d(val
* self
, val
* p0
) {
2448 self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___build_c_name
].val
= p0
; /* _build_c_name on <self:SeparateRuntimeFunction> */
2451 /* method separate_compiler#SeparateRuntimeFunction#is_thunk for (self: SeparateRuntimeFunction): Bool */
2452 short int nit___nit__SeparateRuntimeFunction___is_thunk(val
* self
) {
2453 short int var
/* : Bool */;
2454 short int var1
/* : Bool */;
2455 var1
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___is_thunk
].s
; /* _is_thunk on <self:SeparateRuntimeFunction> */
2460 /* method separate_compiler#SeparateRuntimeFunction#is_thunk= for (self: SeparateRuntimeFunction, Bool) */
2461 void nit___nit__SeparateRuntimeFunction___is_thunk_61d(val
* self
, short int p0
) {
2462 self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___is_thunk
].s
= p0
; /* _is_thunk on <self:SeparateRuntimeFunction> */
2465 /* method separate_compiler#SeparateRuntimeFunction#to_s for (self: SeparateRuntimeFunction): String */
2466 val
* nit___nit__SeparateRuntimeFunction___standard__string__Object__to_s(val
* self
) {
2467 val
* var
/* : String */;
2468 val
* var1
/* : MMethodDef */;
2469 val
* var3
/* : MMethodDef */;
2470 val
* var4
/* : String */;
2471 val
* var6
/* : String */;
2473 { /* Inline abstract_compiler#AbstractRuntimeFunction#mmethoddef (self) on <self:SeparateRuntimeFunction> */
2474 var3
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction___mmethoddef
].val
; /* _mmethoddef on <self:SeparateRuntimeFunction> */
2475 if (unlikely(var3
== NULL
)) {
2476 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmethoddef");
2477 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1748);
2485 { /* Inline model#MPropDef#to_s (var1) on <var1:MMethodDef> */
2486 var6
= var1
->attrs
[COLOR_nit__model__MPropDef___to_s
].val
; /* _to_s on <var1:MMethodDef> */
2487 if (unlikely(var6
== NULL
)) {
2488 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _to_s");
2489 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2303);
2501 /* method separate_compiler#SeparateRuntimeFunction#c_ret for (self: SeparateRuntimeFunction): String */
2502 val
* nit___nit__SeparateRuntimeFunction___c_ret(val
* self
) {
2503 val
* var
/* : String */;
2504 short int var1
/* : Bool */;
2505 val
* var2
/* : String */;
2506 val
* var3
/* : String */;
2507 val
* var5
/* : MSignature */;
2508 val
* var7
/* : MSignature */;
2509 val
* var8
/* : nullable MType */;
2510 val
* var10
/* : nullable MType */;
2511 val
* var_ret
/* var ret: nullable MType */;
2512 short int var11
/* : Bool */;
2513 short int var12
/* : Bool */;
2514 val
* var_other
/* var other: nullable Object */;
2515 short int var14
/* : Bool */;
2516 short int var15
/* : Bool */;
2517 val
* var16
/* : String */;
2518 static val
* varonce
;
2519 val
* var17
/* : String */;
2520 char* var18
/* : NativeString */;
2521 val
* var19
/* : FlatString */;
2522 var1
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___c_ret
].val
!= NULL
; /* _c_ret on <self:SeparateRuntimeFunction> */
2524 var2
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___c_ret
].val
; /* _c_ret on <self:SeparateRuntimeFunction> */
2525 if (unlikely(var2
== NULL
)) {
2526 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _c_ret");
2527 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2184);
2533 { /* Inline separate_compiler#SeparateRuntimeFunction#called_signature (self) on <self:SeparateRuntimeFunction> */
2534 var7
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
; /* _called_signature on <self:SeparateRuntimeFunction> */
2535 if (unlikely(var7
== NULL
)) {
2536 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_signature");
2537 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2173);
2545 { /* Inline model#MSignature#return_mtype (var5) on <var5:MSignature> */
2546 var10
= var5
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var5:MSignature> */
2552 if (var_ret
== NULL
) {
2553 var11
= 0; /* is null */
2555 var11
= 1; /* arg is null and recv is not */
2558 { /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
2559 var_other
= ((val
*)NULL
);
2561 var14
= ((short int(*)(val
* self
, val
* p0
))(var_ret
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ret
, var_other
); /* == on <var_ret:nullable MType(MType)>*/
2566 RET_LABEL13
:(void)0;
2572 var16
= ((val
*(*)(val
* self
))(var_ret
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var_ret
); /* ctype on <var_ret:nullable MType(MType)>*/
2577 if (likely(varonce
!=NULL
)) {
2581 var19
= standard___standard__NativeString___to_s_with_length(var18
, 4l);
2590 self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___c_ret
].val
= var3
; /* _c_ret on <self:SeparateRuntimeFunction> */
2597 /* method separate_compiler#SeparateRuntimeFunction#c_sig for (self: SeparateRuntimeFunction): String */
2598 val
* nit___nit__SeparateRuntimeFunction___c_sig(val
* self
) {
2599 val
* var
/* : String */;
2600 short int var1
/* : Bool */;
2601 val
* var2
/* : String */;
2602 val
* var3
/* : String */;
2603 val
* var5
/* : FlatBuffer */;
2604 val
* var_sig
/* var sig: FlatBuffer */;
2605 val
* var7
/* : NativeArray[String] */;
2606 static val
* varonce
;
2607 static val
* varonce8
;
2608 val
* var9
/* : String */;
2609 char* var10
/* : NativeString */;
2610 val
* var11
/* : FlatString */;
2611 static val
* varonce12
;
2612 val
* var13
/* : String */;
2613 char* var14
/* : NativeString */;
2614 val
* var15
/* : FlatString */;
2615 val
* var16
/* : MType */;
2616 val
* var18
/* : MType */;
2617 val
* var19
/* : String */;
2618 val
* var20
/* : String */;
2619 long var_i
/* var i: Int */;
2620 val
* var21
/* : MSignature */;
2621 val
* var23
/* : MSignature */;
2622 long var24
/* : Int */;
2623 long var_
/* var : Int */;
2624 short int var25
/* : Bool */;
2625 short int var27
/* : Bool */;
2628 const char* var_class_name
;
2629 short int var28
/* : Bool */;
2630 val
* var29
/* : MSignature */;
2631 val
* var31
/* : MSignature */;
2632 val
* var32
/* : Array[MParameter] */;
2633 val
* var34
/* : Array[MParameter] */;
2634 val
* var35
/* : nullable Object */;
2635 val
* var36
/* : MType */;
2636 val
* var38
/* : MType */;
2637 val
* var_mtype
/* var mtype: MType */;
2638 val
* var39
/* : MSignature */;
2639 val
* var41
/* : MSignature */;
2640 long var42
/* : Int */;
2641 long var44
/* : Int */;
2642 short int var45
/* : Bool */;
2643 short int var47
/* : Bool */;
2644 val
* var48
/* : MMethodDef */;
2645 val
* var50
/* : MMethodDef */;
2646 val
* var51
/* : MClassDef */;
2647 val
* var53
/* : MClassDef */;
2648 val
* var54
/* : MModule */;
2649 val
* var56
/* : MModule */;
2650 val
* var57
/* : MClassType */;
2651 val
* var59
/* : NativeArray[String] */;
2652 static val
* varonce58
;
2653 static val
* varonce60
;
2654 val
* var61
/* : String */;
2655 char* var62
/* : NativeString */;
2656 val
* var63
/* : FlatString */;
2657 static val
* varonce64
;
2658 val
* var65
/* : String */;
2659 char* var66
/* : NativeString */;
2660 val
* var67
/* : FlatString */;
2661 val
* var68
/* : String */;
2662 val
* var69
/* : String */;
2663 val
* var70
/* : String */;
2664 long var71
/* : Int */;
2665 static val
* varonce72
;
2666 val
* var73
/* : String */;
2667 char* var74
/* : NativeString */;
2668 val
* var75
/* : FlatString */;
2669 val
* var76
/* : String */;
2670 var1
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___c_sig
].val
!= NULL
; /* _c_sig on <self:SeparateRuntimeFunction> */
2672 var2
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___c_sig
].val
; /* _c_sig on <self:SeparateRuntimeFunction> */
2673 if (unlikely(var2
== NULL
)) {
2674 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _c_sig");
2675 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2194);
2680 var5
= NEW_standard__FlatBuffer(&type_standard__FlatBuffer
);
2682 { /* Inline string#FlatBuffer#init (var5) on <var5:FlatBuffer> */
2684 ((void(*)(val
* self
))(var5
->class->vft
[COLOR_standard___standard__FlatBuffer___standard__kernel__Object__init
]))(var5
); /* init on <var5:FlatBuffer>*/
2690 if (unlikely(varonce
==NULL
)) {
2691 var7
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
2692 if (likely(varonce8
!=NULL
)) {
2696 var11
= standard___standard__NativeString___to_s_with_length(var10
, 1l);
2700 ((struct instance_standard__NativeArray
*)var7
)->values
[0]=var9
;
2701 if (likely(varonce12
!=NULL
)) {
2705 var15
= standard___standard__NativeString___to_s_with_length(var14
, 5l);
2709 ((struct instance_standard__NativeArray
*)var7
)->values
[2]=var13
;
2715 { /* Inline separate_compiler#SeparateRuntimeFunction#called_recv (self) on <self:SeparateRuntimeFunction> */
2716 var18
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_recv
].val
; /* _called_recv on <self:SeparateRuntimeFunction> */
2717 if (unlikely(var18
== NULL
)) {
2718 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_recv");
2719 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2170);
2723 RET_LABEL17
:(void)0;
2727 var19
= ((val
*(*)(val
* self
))(var16
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var16
); /* ctype on <var16:MType>*/
2729 ((struct instance_standard__NativeArray
*)var7
)->values
[1]=var19
;
2731 var20
= ((val
*(*)(val
* self
))(var7
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var7
); /* native_to_s on <var7:NativeArray[String]>*/
2735 standard___standard__FlatBuffer___Buffer__append(var_sig
, var20
); /* Direct call string#FlatBuffer#append on <var_sig:FlatBuffer>*/
2739 { /* Inline separate_compiler#SeparateRuntimeFunction#called_signature (self) on <self:SeparateRuntimeFunction> */
2740 var23
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
; /* _called_signature on <self:SeparateRuntimeFunction> */
2741 if (unlikely(var23
== NULL
)) {
2742 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_signature");
2743 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2173);
2747 RET_LABEL22
:(void)0;
2751 var24
= nit___nit__MSignature___arity(var21
);
2756 { /* Inline kernel#Int#< (var_i,var_) on <var_i:Int> */
2757 /* Covariant cast for argument 0 (i) <var_:Int> isa OTHER */
2758 /* <var_:Int> isa OTHER */
2759 var27
= 1; /* easy <var_:Int> isa OTHER*/
2760 if (unlikely(!var27
)) {
2761 var_class_name
= type_standard__Int
.name
;
2762 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
2763 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 534);
2766 var28
= var_i
< var_
;
2769 RET_LABEL26
:(void)0;
2774 { /* Inline separate_compiler#SeparateRuntimeFunction#called_signature (self) on <self:SeparateRuntimeFunction> */
2775 var31
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
; /* _called_signature on <self:SeparateRuntimeFunction> */
2776 if (unlikely(var31
== NULL
)) {
2777 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_signature");
2778 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2173);
2782 RET_LABEL30
:(void)0;
2786 { /* Inline model#MSignature#mparameters (var29) on <var29:MSignature> */
2787 var34
= var29
->attrs
[COLOR_nit__model__MSignature___mparameters
].val
; /* _mparameters on <var29:MSignature> */
2788 if (unlikely(var34
== NULL
)) {
2789 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
2790 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1756);
2794 RET_LABEL33
:(void)0;
2798 var35
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var32
, var_i
);
2801 { /* Inline model#MParameter#mtype (var35) on <var35:nullable Object(MParameter)> */
2802 var38
= var35
->attrs
[COLOR_nit__model__MParameter___mtype
].val
; /* _mtype on <var35:nullable Object(MParameter)> */
2803 if (unlikely(var38
== NULL
)) {
2804 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
2805 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1879);
2809 RET_LABEL37
:(void)0;
2814 { /* Inline separate_compiler#SeparateRuntimeFunction#called_signature (self) on <self:SeparateRuntimeFunction> */
2815 var41
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
; /* _called_signature on <self:SeparateRuntimeFunction> */
2816 if (unlikely(var41
== NULL
)) {
2817 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_signature");
2818 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2173);
2822 RET_LABEL40
:(void)0;
2826 { /* Inline model#MSignature#vararg_rank (var39) on <var39:MSignature> */
2827 var44
= var39
->attrs
[COLOR_nit__model__MSignature___vararg_rank
].l
; /* _vararg_rank on <var39:MSignature> */
2829 RET_LABEL43
:(void)0;
2833 { /* Inline kernel#Int#== (var_i,var42) on <var_i:Int> */
2834 var47
= var_i
== var42
;
2837 RET_LABEL46
:(void)0;
2842 { /* Inline abstract_compiler#AbstractRuntimeFunction#mmethoddef (self) on <self:SeparateRuntimeFunction> */
2843 var50
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction___mmethoddef
].val
; /* _mmethoddef on <self:SeparateRuntimeFunction> */
2844 if (unlikely(var50
== NULL
)) {
2845 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmethoddef");
2846 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1748);
2850 RET_LABEL49
:(void)0;
2854 { /* Inline model#MPropDef#mclassdef (var48) on <var48:MMethodDef> */
2855 var53
= var48
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var48:MMethodDef> */
2856 if (unlikely(var53
== NULL
)) {
2857 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
2858 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
2862 RET_LABEL52
:(void)0;
2866 { /* Inline model#MClassDef#mmodule (var51) on <var51:MClassDef> */
2867 var56
= var51
->attrs
[COLOR_nit__model__MClassDef___mmodule
].val
; /* _mmodule on <var51:MClassDef> */
2868 if (unlikely(var56
== NULL
)) {
2869 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
2870 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 550);
2874 RET_LABEL55
:(void)0;
2878 var57
= nit__model___MModule___array_type(var54
, var_mtype
);
2883 if (unlikely(varonce58
==NULL
)) {
2884 var59
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
2885 if (likely(varonce60
!=NULL
)) {
2889 var63
= standard___standard__NativeString___to_s_with_length(var62
, 2l);
2893 ((struct instance_standard__NativeArray
*)var59
)->values
[0]=var61
;
2894 if (likely(varonce64
!=NULL
)) {
2898 var67
= standard___standard__NativeString___to_s_with_length(var66
, 2l);
2902 ((struct instance_standard__NativeArray
*)var59
)->values
[2]=var65
;
2908 var68
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nit__abstract_compiler__MType__ctype
]))(var_mtype
); /* ctype on <var_mtype:MType>*/
2910 ((struct instance_standard__NativeArray
*)var59
)->values
[1]=var68
;
2911 var69
= standard__string___Int___Object__to_s(var_i
);
2912 ((struct instance_standard__NativeArray
*)var59
)->values
[3]=var69
;
2914 var70
= ((val
*(*)(val
* self
))(var59
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var59
); /* native_to_s on <var59:NativeArray[String]>*/
2918 standard___standard__FlatBuffer___Buffer__append(var_sig
, var70
); /* Direct call string#FlatBuffer#append on <var_sig:FlatBuffer>*/
2921 var71
= standard___standard__Int___Discrete__successor(var_i
, 1l);
2928 BREAK_label
: (void)0;
2929 if (likely(varonce72
!=NULL
)) {
2933 var75
= standard___standard__NativeString___to_s_with_length(var74
, 1l);
2938 standard___standard__FlatBuffer___Buffer__append(var_sig
, var73
); /* Direct call string#FlatBuffer#append on <var_sig:FlatBuffer>*/
2941 var76
= standard___standard__FlatBuffer___Object__to_s(var_sig
);
2947 self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___c_sig
].val
= var3
; /* _c_sig on <self:SeparateRuntimeFunction> */
2954 /* method separate_compiler#SeparateRuntimeFunction#c_funptrtype for (self: SeparateRuntimeFunction): String */
2955 val
* nit___nit__SeparateRuntimeFunction___c_funptrtype(val
* self
) {
2956 val
* var
/* : String */;
2957 short int var1
/* : Bool */;
2958 val
* var2
/* : String */;
2959 val
* var3
/* : String */;
2960 val
* var5
/* : NativeArray[String] */;
2961 static val
* varonce
;
2962 static val
* varonce6
;
2963 val
* var7
/* : String */;
2964 char* var8
/* : NativeString */;
2965 val
* var9
/* : FlatString */;
2966 val
* var10
/* : String */;
2967 val
* var11
/* : String */;
2968 val
* var12
/* : String */;
2969 var1
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___c_funptrtype
].val
!= NULL
; /* _c_funptrtype on <self:SeparateRuntimeFunction> */
2971 var2
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___c_funptrtype
].val
; /* _c_funptrtype on <self:SeparateRuntimeFunction> */
2972 if (unlikely(var2
== NULL
)) {
2973 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _c_funptrtype");
2974 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2209);
2979 if (unlikely(varonce
==NULL
)) {
2980 var5
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
2981 if (likely(varonce6
!=NULL
)) {
2985 var9
= standard___standard__NativeString___to_s_with_length(var8
, 3l);
2989 ((struct instance_standard__NativeArray
*)var5
)->values
[1]=var7
;
2995 var10
= nit___nit__SeparateRuntimeFunction___c_ret(self
);
2997 ((struct instance_standard__NativeArray
*)var5
)->values
[0]=var10
;
2999 var11
= nit___nit__SeparateRuntimeFunction___c_sig(self
);
3001 ((struct instance_standard__NativeArray
*)var5
)->values
[2]=var11
;
3003 var12
= ((val
*(*)(val
* self
))(var5
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var5
); /* native_to_s on <var5:NativeArray[String]>*/
3010 self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___c_funptrtype
].val
= var3
; /* _c_funptrtype on <self:SeparateRuntimeFunction> */
3017 /* method separate_compiler#SeparateRuntimeFunction#arguments for (self: SeparateRuntimeFunction): Array[RuntimeVariable] */
3018 val
* nit___nit__SeparateRuntimeFunction___arguments(val
* self
) {
3019 val
* var
/* : Array[RuntimeVariable] */;
3020 val
* var1
/* : Array[RuntimeVariable] */;
3021 var1
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___arguments
].val
; /* _arguments on <self:SeparateRuntimeFunction> */
3022 if (unlikely(var1
== NULL
)) {
3023 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _arguments");
3024 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2212);
3031 /* method separate_compiler#SeparateRuntimeFunction#arguments= for (self: SeparateRuntimeFunction, Array[RuntimeVariable]) */
3032 void nit___nit__SeparateRuntimeFunction___arguments_61d(val
* self
, val
* p0
) {
3033 self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___arguments
].val
= p0
; /* _arguments on <self:SeparateRuntimeFunction> */
3036 /* method separate_compiler#SeparateRuntimeFunction#compile_to_c for (self: SeparateRuntimeFunction, AbstractCompiler) */
3037 void nit___nit__SeparateRuntimeFunction___nit__abstract_compiler__AbstractRuntimeFunction__compile_to_c(val
* self
, val
* p0
) {
3038 short int var
/* : Bool */;
3041 const struct type
* type_struct
;
3042 const char* var_class_name
;
3043 val
* var_compiler
/* var compiler: AbstractCompiler */;
3044 val
* var1
/* : MMethodDef */;
3045 val
* var3
/* : MMethodDef */;
3046 val
* var_mmethoddef
/* var mmethoddef: MMethodDef */;
3047 val
* var4
/* : MMethodDef */;
3048 val
* var6
/* : MMethodDef */;
3049 val
* var7
/* : MClassDef */;
3050 val
* var9
/* : MClassDef */;
3051 val
* var10
/* : MClassType */;
3052 val
* var12
/* : MClassType */;
3053 val
* var_recv
/* var recv: MClassType */;
3054 val
* var13
/* : AbstractCompilerVisitor */;
3055 val
* var_v
/* var v: AbstractCompilerVisitor */;
3056 val
* var14
/* : RuntimeVariable */;
3057 static val
* varonce
;
3058 val
* var15
/* : String */;
3059 char* var16
/* : NativeString */;
3060 val
* var17
/* : FlatString */;
3061 val
* var18
/* : MType */;
3062 val
* var20
/* : MType */;
3063 val
* var_selfvar
/* var selfvar: RuntimeVariable */;
3064 val
* var21
/* : Array[RuntimeVariable] */;
3065 val
* var_arguments
/* var arguments: Array[RuntimeVariable] */;
3066 val
* var22
/* : StaticFrame */;
3067 val
* var_frame
/* var frame: StaticFrame */;
3068 val
* var24
/* : MSignature */;
3069 val
* var26
/* : MSignature */;
3070 val
* var_msignature
/* var msignature: MSignature */;
3071 val
* var27
/* : MSignature */;
3072 val
* var29
/* : MSignature */;
3073 val
* var30
/* : nullable MType */;
3074 val
* var32
/* : nullable MType */;
3075 val
* var_ret
/* var ret: nullable MType */;
3076 val
* var33
/* : FlatBuffer */;
3077 val
* var_sig
/* var sig: FlatBuffer */;
3078 val
* var35
/* : FlatBuffer */;
3079 val
* var_comment
/* var comment: FlatBuffer */;
3080 val
* var37
/* : String */;
3081 static val
* varonce38
;
3082 val
* var39
/* : String */;
3083 char* var40
/* : NativeString */;
3084 val
* var41
/* : FlatString */;
3085 val
* var42
/* : String */;
3086 val
* var43
/* : String */;
3087 val
* var45
/* : NativeArray[String] */;
3088 static val
* varonce44
;
3089 static val
* varonce46
;
3090 val
* var47
/* : String */;
3091 char* var48
/* : NativeString */;
3092 val
* var49
/* : FlatString */;
3093 static val
* varonce50
;
3094 val
* var51
/* : String */;
3095 char* var52
/* : NativeString */;
3096 val
* var53
/* : FlatString */;
3097 val
* var54
/* : String */;
3098 val
* var55
/* : MType */;
3099 val
* var57
/* : MType */;
3100 val
* var58
/* : String */;
3101 val
* var59
/* : String */;
3102 long var_i
/* var i: Int */;
3103 long var60
/* : Int */;
3104 long var_
/* var : Int */;
3105 short int var61
/* : Bool */;
3106 short int var63
/* : Bool */;
3109 const char* var_class_name66
;
3110 short int var67
/* : Bool */;
3111 val
* var68
/* : Array[MParameter] */;
3112 val
* var70
/* : Array[MParameter] */;
3113 val
* var71
/* : nullable Object */;
3114 val
* var72
/* : MType */;
3115 val
* var74
/* : MType */;
3116 val
* var_mtype
/* var mtype: MType */;
3117 long var75
/* : Int */;
3118 long var77
/* : Int */;
3119 short int var78
/* : Bool */;
3120 short int var80
/* : Bool */;
3121 val
* var81
/* : MModule */;
3122 val
* var82
/* : MClassType */;
3123 val
* var84
/* : NativeArray[String] */;
3124 static val
* varonce83
;
3125 static val
* varonce85
;
3126 val
* var86
/* : String */;
3127 char* var87
/* : NativeString */;
3128 val
* var88
/* : FlatString */;
3129 val
* var89
/* : String */;
3130 val
* var90
/* : String */;
3131 val
* var91
/* : RuntimeVariable */;
3132 val
* var93
/* : NativeArray[String] */;
3133 static val
* varonce92
;
3134 static val
* varonce94
;
3135 val
* var95
/* : String */;
3136 char* var96
/* : NativeString */;
3137 val
* var97
/* : FlatString */;
3138 val
* var98
/* : String */;
3139 val
* var99
/* : String */;
3140 val
* var_argvar
/* var argvar: RuntimeVariable */;
3141 long var100
/* : Int */;
3142 static val
* varonce101
;
3143 val
* var102
/* : String */;
3144 char* var103
/* : NativeString */;
3145 val
* var104
/* : FlatString */;
3146 short int var105
/* : Bool */;
3147 short int var106
/* : Bool */;
3148 val
* var_other
/* var other: nullable Object */;
3149 short int var108
/* : Bool */;
3150 short int var109
/* : Bool */;
3151 val
* var111
/* : NativeArray[String] */;
3152 static val
* varonce110
;
3153 static val
* varonce112
;
3154 val
* var113
/* : String */;
3155 char* var114
/* : NativeString */;
3156 val
* var115
/* : FlatString */;
3157 val
* var116
/* : String */;
3158 val
* var117
/* : String */;
3159 val
* var118
/* : String */;
3160 val
* var120
/* : NativeArray[String] */;
3161 static val
* varonce119
;
3162 static val
* varonce121
;
3163 val
* var122
/* : String */;
3164 char* var123
/* : NativeString */;
3165 val
* var124
/* : FlatString */;
3166 val
* var125
/* : String */;
3167 val
* var126
/* : String */;
3168 val
* var127
/* : Array[nullable Object] */;
3169 val
* var130
/* : NativeArray[String] */;
3170 static val
* varonce129
;
3171 static val
* varonce131
;
3172 val
* var132
/* : String */;
3173 char* var133
/* : NativeString */;
3174 val
* var134
/* : FlatString */;
3175 static val
* varonce135
;
3176 val
* var136
/* : String */;
3177 char* var137
/* : NativeString */;
3178 val
* var138
/* : FlatString */;
3179 static val
* varonce139
;
3180 val
* var140
/* : String */;
3181 char* var141
/* : NativeString */;
3182 val
* var142
/* : FlatString */;
3183 val
* var143
/* : String */;
3184 val
* var144
/* : String */;
3185 val
* var145
/* : String */;
3186 val
* var147
/* : NativeArray[String] */;
3187 static val
* varonce146
;
3188 static val
* varonce148
;
3189 val
* var149
/* : String */;
3190 char* var150
/* : NativeString */;
3191 val
* var151
/* : FlatString */;
3192 val
* var152
/* : String */;
3193 val
* var153
/* : String */;
3194 short int var154
/* : Bool */;
3195 short int var155
/* : Bool */;
3196 short int var157
/* : Bool */;
3197 short int var158
/* : Bool */;
3198 val
* var159
/* : RuntimeVariable */;
3199 static val
* varonce161
;
3200 val
* var162
/* : String */;
3201 char* var163
/* : NativeString */;
3202 val
* var164
/* : FlatString */;
3203 val
* var165
/* : String */;
3204 short int var167
/* : Bool */;
3205 short int var169
/* : Bool */;
3206 val
* var170
/* : nullable RuntimeVariable */;
3207 val
* var_subret
/* var subret: nullable RuntimeVariable */;
3208 short int var171
/* : Bool */;
3209 short int var172
/* : Bool */;
3210 short int var174
/* : Bool */;
3211 short int var175
/* : Bool */;
3212 short int var176
/* : Bool */;
3213 short int var177
/* : Bool */;
3214 short int var179
/* : Bool */;
3215 short int var180
/* : Bool */;
3216 val
* var181
/* : nullable RuntimeVariable */;
3217 val
* var183
/* : nullable RuntimeVariable */;
3218 val
* var184
/* : nullable RuntimeVariable */;
3219 val
* var186
/* : NativeArray[String] */;
3220 static val
* varonce185
;
3221 static val
* varonce187
;
3222 val
* var188
/* : String */;
3223 char* var189
/* : NativeString */;
3224 val
* var190
/* : FlatString */;
3225 val
* var191
/* : nullable String */;
3226 val
* var193
/* : nullable String */;
3227 val
* var194
/* : String */;
3228 short int var195
/* : Bool */;
3229 short int var196
/* : Bool */;
3230 short int var198
/* : Bool */;
3231 short int var199
/* : Bool */;
3232 val
* var201
/* : NativeArray[String] */;
3233 static val
* varonce200
;
3234 static val
* varonce202
;
3235 val
* var203
/* : String */;
3236 char* var204
/* : NativeString */;
3237 val
* var205
/* : FlatString */;
3238 static val
* varonce206
;
3239 val
* var207
/* : String */;
3240 char* var208
/* : NativeString */;
3241 val
* var209
/* : FlatString */;
3242 val
* var210
/* : nullable RuntimeVariable */;
3243 val
* var212
/* : nullable RuntimeVariable */;
3244 val
* var213
/* : String */;
3245 val
* var214
/* : String */;
3246 static val
* varonce215
;
3247 val
* var216
/* : String */;
3248 char* var217
/* : NativeString */;
3249 val
* var218
/* : FlatString */;
3250 val
* var219
/* : HashMap[String, String] */;
3251 val
* var221
/* : HashMap[String, String] */;
3252 val
* var222
/* : String */;
3253 val
* var224
/* : NativeArray[String] */;
3254 static val
* varonce223
;
3255 static val
* varonce225
;
3256 val
* var226
/* : String */;
3257 char* var227
/* : NativeString */;
3258 val
* var228
/* : FlatString */;
3259 static val
* varonce229
;
3260 val
* var230
/* : String */;
3261 char* var231
/* : NativeString */;
3262 val
* var232
/* : FlatString */;
3263 static val
* varonce233
;
3264 val
* var234
/* : String */;
3265 char* var235
/* : NativeString */;
3266 val
* var236
/* : FlatString */;
3267 val
* var237
/* : String */;
3268 val
* var238
/* : Location */;
3269 val
* var240
/* : Location */;
3270 val
* var241
/* : nullable SourceFile */;
3271 val
* var243
/* : nullable SourceFile */;
3272 val
* var244
/* : String */;
3273 val
* var246
/* : String */;
3274 val
* var247
/* : Location */;
3275 val
* var249
/* : Location */;
3276 long var250
/* : Int */;
3277 long var252
/* : Int */;
3278 val
* var253
/* : String */;
3279 val
* var254
/* : String */;
3280 /* Covariant cast for argument 0 (compiler) <p0:AbstractCompiler> isa COMPILER */
3281 /* <p0:AbstractCompiler> isa COMPILER */
3282 type_struct
= self
->type
->resolution_table
->types
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction__COMPILER
];
3283 cltype
= type_struct
->color
;
3284 idtype
= type_struct
->id
;
3285 if(cltype
>= p0
->type
->table_size
) {
3288 var
= p0
->type
->type_table
[cltype
] == idtype
;
3290 if (unlikely(!var
)) {
3291 var_class_name
= p0
== NULL ?
"null" : p0
->type
->name
;
3292 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "COMPILER", var_class_name
);
3293 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2215);
3298 { /* Inline abstract_compiler#AbstractRuntimeFunction#mmethoddef (self) on <self:SeparateRuntimeFunction> */
3299 var3
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction___mmethoddef
].val
; /* _mmethoddef on <self:SeparateRuntimeFunction> */
3300 if (unlikely(var3
== NULL
)) {
3301 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmethoddef");
3302 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1748);
3309 var_mmethoddef
= var1
;
3311 { /* Inline abstract_compiler#AbstractRuntimeFunction#mmethoddef (self) on <self:SeparateRuntimeFunction> */
3312 var6
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction___mmethoddef
].val
; /* _mmethoddef on <self:SeparateRuntimeFunction> */
3313 if (unlikely(var6
== NULL
)) {
3314 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmethoddef");
3315 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1748);
3323 { /* Inline model#MPropDef#mclassdef (var4) on <var4:MMethodDef> */
3324 var9
= var4
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var4:MMethodDef> */
3325 if (unlikely(var9
== NULL
)) {
3326 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
3327 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
3335 { /* Inline model#MClassDef#bound_mtype (var7) on <var7:MClassDef> */
3336 var12
= var7
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var7:MClassDef> */
3337 if (unlikely(var12
== NULL
)) {
3338 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
3339 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 556);
3343 RET_LABEL11
:(void)0;
3348 var13
= ((val
*(*)(val
* self
))(var_compiler
->class->vft
[COLOR_nit__abstract_compiler__AbstractCompiler__new_visitor
]))(var_compiler
); /* new_visitor on <var_compiler:AbstractCompiler>*/
3351 var14
= NEW_nit__RuntimeVariable(&type_nit__RuntimeVariable
);
3352 if (likely(varonce
!=NULL
)) {
3356 var17
= standard___standard__NativeString___to_s_with_length(var16
, 4l);
3361 { /* Inline separate_compiler#SeparateRuntimeFunction#called_recv (self) on <self:SeparateRuntimeFunction> */
3362 var20
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_recv
].val
; /* _called_recv on <self:SeparateRuntimeFunction> */
3363 if (unlikely(var20
== NULL
)) {
3364 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_recv");
3365 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2170);
3369 RET_LABEL19
:(void)0;
3373 ((void(*)(val
* self
, val
* p0
))(var14
->class->vft
[COLOR_nit__abstract_compiler__RuntimeVariable__name_61d
]))(var14
, var15
); /* name= on <var14:RuntimeVariable>*/
3376 ((void(*)(val
* self
, val
* p0
))(var14
->class->vft
[COLOR_nit__abstract_compiler__RuntimeVariable__mtype_61d
]))(var14
, var18
); /* mtype= on <var14:RuntimeVariable>*/
3379 ((void(*)(val
* self
, val
* p0
))(var14
->class->vft
[COLOR_nit__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var14
, var_recv
); /* mcasttype= on <var14:RuntimeVariable>*/
3382 ((void(*)(val
* self
))(var14
->class->vft
[COLOR_standard__kernel__Object__init
]))(var14
); /* init on <var14:RuntimeVariable>*/
3384 var_selfvar
= var14
;
3385 var21
= NEW_standard__Array(&type_standard__Array__nit__RuntimeVariable
);
3387 standard___standard__Array___standard__kernel__Object__init(var21
); /* Direct call array#Array#init on <var21:Array[RuntimeVariable]>*/
3389 var_arguments
= var21
;
3390 var22
= NEW_nit__StaticFrame(&type_nit__StaticFrame
);
3392 ((void(*)(val
* self
, val
* p0
))(var22
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__visitor_61d
]))(var22
, var_v
); /* visitor= on <var22:StaticFrame>*/
3395 ((void(*)(val
* self
, val
* p0
))(var22
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__mpropdef_61d
]))(var22
, var_mmethoddef
); /* mpropdef= on <var22:StaticFrame>*/
3398 ((void(*)(val
* self
, val
* p0
))(var22
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__receiver_61d
]))(var22
, var_recv
); /* receiver= on <var22:StaticFrame>*/
3401 ((void(*)(val
* self
, val
* p0
))(var22
->class->vft
[COLOR_nit__abstract_compiler__StaticFrame__arguments_61d
]))(var22
, var_arguments
); /* arguments= on <var22:StaticFrame>*/
3404 ((void(*)(val
* self
))(var22
->class->vft
[COLOR_standard__kernel__Object__init
]))(var22
); /* init on <var22:StaticFrame>*/
3408 { /* Inline abstract_compiler#AbstractCompilerVisitor#frame= (var_v,var_frame) on <var_v:AbstractCompilerVisitor> */
3409 var_v
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___frame
].val
= var_frame
; /* _frame on <var_v:AbstractCompilerVisitor> */
3410 RET_LABEL23
:(void)0;
3414 { /* Inline separate_compiler#SeparateRuntimeFunction#called_signature (self) on <self:SeparateRuntimeFunction> */
3415 var26
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
; /* _called_signature on <self:SeparateRuntimeFunction> */
3416 if (unlikely(var26
== NULL
)) {
3417 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_signature");
3418 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2173);
3422 RET_LABEL25
:(void)0;
3425 var_msignature
= var24
;
3427 { /* Inline separate_compiler#SeparateRuntimeFunction#called_signature (self) on <self:SeparateRuntimeFunction> */
3428 var29
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
; /* _called_signature on <self:SeparateRuntimeFunction> */
3429 if (unlikely(var29
== NULL
)) {
3430 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_signature");
3431 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2173);
3435 RET_LABEL28
:(void)0;
3439 { /* Inline model#MSignature#return_mtype (var27) on <var27:MSignature> */
3440 var32
= var27
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var27:MSignature> */
3442 RET_LABEL31
:(void)0;
3446 var33
= NEW_standard__FlatBuffer(&type_standard__FlatBuffer
);
3448 { /* Inline string#FlatBuffer#init (var33) on <var33:FlatBuffer> */
3450 ((void(*)(val
* self
))(var33
->class->vft
[COLOR_standard___standard__FlatBuffer___standard__kernel__Object__init
]))(var33
); /* init on <var33:FlatBuffer>*/
3452 RET_LABEL34
:(void)0;
3456 var35
= NEW_standard__FlatBuffer(&type_standard__FlatBuffer
);
3458 { /* Inline string#FlatBuffer#init (var35) on <var35:FlatBuffer> */
3460 ((void(*)(val
* self
))(var35
->class->vft
[COLOR_standard___standard__FlatBuffer___standard__kernel__Object__init
]))(var35
); /* init on <var35:FlatBuffer>*/
3462 RET_LABEL36
:(void)0;
3465 var_comment
= var35
;
3467 var37
= nit___nit__SeparateRuntimeFunction___c_ret(self
);
3470 standard___standard__FlatBuffer___Buffer__append(var_sig
, var37
); /* Direct call string#FlatBuffer#append on <var_sig:FlatBuffer>*/
3472 if (likely(varonce38
!=NULL
)) {
3476 var41
= standard___standard__NativeString___to_s_with_length(var40
, 1l);
3481 standard___standard__FlatBuffer___Buffer__append(var_sig
, var39
); /* Direct call string#FlatBuffer#append on <var_sig:FlatBuffer>*/
3484 var42
= nit___nit__AbstractRuntimeFunction___c_name(self
);
3487 standard___standard__FlatBuffer___Buffer__append(var_sig
, var42
); /* Direct call string#FlatBuffer#append on <var_sig:FlatBuffer>*/
3490 var43
= nit___nit__SeparateRuntimeFunction___c_sig(self
);
3493 standard___standard__FlatBuffer___Buffer__append(var_sig
, var43
); /* Direct call string#FlatBuffer#append on <var_sig:FlatBuffer>*/
3495 if (unlikely(varonce44
==NULL
)) {
3496 var45
= NEW_standard__NativeArray(4l, &type_standard__NativeArray__standard__String
);
3497 if (likely(varonce46
!=NULL
)) {
3501 var49
= standard___standard__NativeString___to_s_with_length(var48
, 1l);
3505 ((struct instance_standard__NativeArray
*)var45
)->values
[0]=var47
;
3506 if (likely(varonce50
!=NULL
)) {
3510 var53
= standard___standard__NativeString___to_s_with_length(var52
, 2l);
3514 ((struct instance_standard__NativeArray
*)var45
)->values
[2]=var51
;
3520 var54
= ((val
*(*)(val
* self
))(var_selfvar
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_selfvar
); /* to_s on <var_selfvar:RuntimeVariable>*/
3522 ((struct instance_standard__NativeArray
*)var45
)->values
[1]=var54
;
3524 { /* Inline abstract_compiler#RuntimeVariable#mtype (var_selfvar) on <var_selfvar:RuntimeVariable> */
3525 var57
= var_selfvar
->attrs
[COLOR_nit__abstract_compiler__RuntimeVariable___mtype
].val
; /* _mtype on <var_selfvar:RuntimeVariable> */
3526 if (unlikely(var57
== NULL
)) {
3527 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3528 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1784);
3532 RET_LABEL56
:(void)0;
3536 var58
= ((val
*(*)(val
* self
))(var55
->class->vft
[COLOR_standard__string__Object__to_s
]))(var55
); /* to_s on <var55:MType>*/
3538 ((struct instance_standard__NativeArray
*)var45
)->values
[3]=var58
;
3540 var59
= ((val
*(*)(val
* self
))(var45
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var45
); /* native_to_s on <var45:NativeArray[String]>*/
3544 standard___standard__FlatBuffer___Buffer__append(var_comment
, var59
); /* Direct call string#FlatBuffer#append on <var_comment:FlatBuffer>*/
3547 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_arguments
, var_selfvar
); /* Direct call array#Array#add on <var_arguments:Array[RuntimeVariable]>*/
3551 var60
= nit___nit__MSignature___arity(var_msignature
);
3556 { /* Inline kernel#Int#< (var_i,var_) on <var_i:Int> */
3557 /* Covariant cast for argument 0 (i) <var_:Int> isa OTHER */
3558 /* <var_:Int> isa OTHER */
3559 var63
= 1; /* easy <var_:Int> isa OTHER*/
3560 if (unlikely(!var63
)) {
3561 var_class_name66
= type_standard__Int
.name
;
3562 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name66
);
3563 PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel
, 534);
3566 var67
= var_i
< var_
;
3569 RET_LABEL62
:(void)0;
3574 { /* Inline model#MSignature#mparameters (var_msignature) on <var_msignature:MSignature> */
3575 var70
= var_msignature
->attrs
[COLOR_nit__model__MSignature___mparameters
].val
; /* _mparameters on <var_msignature:MSignature> */
3576 if (unlikely(var70
== NULL
)) {
3577 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
3578 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1756);
3582 RET_LABEL69
:(void)0;
3586 var71
= standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(var68
, var_i
);
3589 { /* Inline model#MParameter#mtype (var71) on <var71:nullable Object(MParameter)> */
3590 var74
= var71
->attrs
[COLOR_nit__model__MParameter___mtype
].val
; /* _mtype on <var71:nullable Object(MParameter)> */
3591 if (unlikely(var74
== NULL
)) {
3592 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
3593 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 1879);
3597 RET_LABEL73
:(void)0;
3602 { /* Inline model#MSignature#vararg_rank (var_msignature) on <var_msignature:MSignature> */
3603 var77
= var_msignature
->attrs
[COLOR_nit__model__MSignature___vararg_rank
].l
; /* _vararg_rank on <var_msignature:MSignature> */
3605 RET_LABEL76
:(void)0;
3609 { /* Inline kernel#Int#== (var_i,var75) on <var_i:Int> */
3610 var80
= var_i
== var75
;
3613 RET_LABEL79
:(void)0;
3618 var81
= nit___nit__AbstractCompilerVisitor___mmodule(var_v
);
3621 var82
= nit__model___MModule___array_type(var81
, var_mtype
);
3626 if (unlikely(varonce83
==NULL
)) {
3627 var84
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3628 if (likely(varonce85
!=NULL
)) {
3632 var88
= standard___standard__NativeString___to_s_with_length(var87
, 2l);
3636 ((struct instance_standard__NativeArray
*)var84
)->values
[0]=var86
;
3642 var89
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
3644 ((struct instance_standard__NativeArray
*)var84
)->values
[1]=var89
;
3646 var90
= ((val
*(*)(val
* self
))(var84
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var84
); /* native_to_s on <var84:NativeArray[String]>*/
3650 standard___standard__FlatBuffer___Buffer__append(var_comment
, var90
); /* Direct call string#FlatBuffer#append on <var_comment:FlatBuffer>*/
3652 var91
= NEW_nit__RuntimeVariable(&type_nit__RuntimeVariable
);
3653 if (unlikely(varonce92
==NULL
)) {
3654 var93
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3655 if (likely(varonce94
!=NULL
)) {
3659 var97
= standard___standard__NativeString___to_s_with_length(var96
, 1l);
3663 ((struct instance_standard__NativeArray
*)var93
)->values
[0]=var95
;
3668 var98
= standard__string___Int___Object__to_s(var_i
);
3669 ((struct instance_standard__NativeArray
*)var93
)->values
[1]=var98
;
3671 var99
= ((val
*(*)(val
* self
))(var93
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var93
); /* native_to_s on <var93:NativeArray[String]>*/
3675 ((void(*)(val
* self
, val
* p0
))(var91
->class->vft
[COLOR_nit__abstract_compiler__RuntimeVariable__name_61d
]))(var91
, var99
); /* name= on <var91:RuntimeVariable>*/
3678 ((void(*)(val
* self
, val
* p0
))(var91
->class->vft
[COLOR_nit__abstract_compiler__RuntimeVariable__mtype_61d
]))(var91
, var_mtype
); /* mtype= on <var91:RuntimeVariable>*/
3681 ((void(*)(val
* self
, val
* p0
))(var91
->class->vft
[COLOR_nit__abstract_compiler__RuntimeVariable__mcasttype_61d
]))(var91
, var_mtype
); /* mcasttype= on <var91:RuntimeVariable>*/
3684 ((void(*)(val
* self
))(var91
->class->vft
[COLOR_standard__kernel__Object__init
]))(var91
); /* init on <var91:RuntimeVariable>*/
3688 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_arguments
, var_argvar
); /* Direct call array#Array#add on <var_arguments:Array[RuntimeVariable]>*/
3691 var100
= standard___standard__Int___Discrete__successor(var_i
, 1l);
3698 BREAK_label
: (void)0;
3699 if (likely(varonce101
!=NULL
)) {
3700 var102
= varonce101
;
3703 var104
= standard___standard__NativeString___to_s_with_length(var103
, 1l);
3705 varonce101
= var102
;
3708 standard___standard__FlatBuffer___Buffer__append(var_comment
, var102
); /* Direct call string#FlatBuffer#append on <var_comment:FlatBuffer>*/
3710 if (var_ret
== NULL
) {
3711 var105
= 0; /* is null */
3713 var105
= 1; /* arg is null and recv is not */
3716 { /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
3717 var_other
= ((val
*)NULL
);
3719 var108
= ((short int(*)(val
* self
, val
* p0
))(var_ret
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ret
, var_other
); /* == on <var_ret:nullable MType(MType)>*/
3724 RET_LABEL107
:(void)0;
3729 if (unlikely(varonce110
==NULL
)) {
3730 var111
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3731 if (likely(varonce112
!=NULL
)) {
3732 var113
= varonce112
;
3735 var115
= standard___standard__NativeString___to_s_with_length(var114
, 2l);
3737 varonce112
= var113
;
3739 ((struct instance_standard__NativeArray
*)var111
)->values
[0]=var113
;
3741 var111
= varonce110
;
3745 var116
= ((val
*(*)(val
* self
))(var_ret
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_ret
); /* to_s on <var_ret:nullable MType(MType)>*/
3747 ((struct instance_standard__NativeArray
*)var111
)->values
[1]=var116
;
3749 var117
= ((val
*(*)(val
* self
))(var111
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var111
); /* native_to_s on <var111:NativeArray[String]>*/
3751 varonce110
= var111
;
3753 standard___standard__FlatBuffer___Buffer__append(var_comment
, var117
); /* Direct call string#FlatBuffer#append on <var_comment:FlatBuffer>*/
3758 var118
= nit___nit__AbstractRuntimeFunction___c_name(self
);
3760 if (unlikely(varonce119
==NULL
)) {
3761 var120
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3762 if (likely(varonce121
!=NULL
)) {
3763 var122
= varonce121
;
3766 var124
= standard___standard__NativeString___to_s_with_length(var123
, 1l);
3768 varonce121
= var122
;
3770 ((struct instance_standard__NativeArray
*)var120
)->values
[1]=var122
;
3772 var120
= varonce119
;
3776 var125
= ((val
*(*)(val
* self
))(var_sig
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_sig
); /* to_s on <var_sig:FlatBuffer>*/
3778 ((struct instance_standard__NativeArray
*)var120
)->values
[0]=var125
;
3780 var126
= ((val
*(*)(val
* self
))(var120
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var120
); /* native_to_s on <var120:NativeArray[String]>*/
3782 varonce119
= var120
;
3784 nit___nit__AbstractCompiler___provide_declaration(var_compiler
, var118
, var126
); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on <var_compiler:AbstractCompiler>*/
3787 var127
= standard__array___Collection___to_a(var_arguments
);
3790 { /* Inline separate_compiler#SeparateRuntimeFunction#arguments= (self,var127) on <self:SeparateRuntimeFunction> */
3791 self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___arguments
].val
= var127
; /* _arguments on <self:SeparateRuntimeFunction> */
3792 RET_LABEL128
:(void)0;
3795 if (unlikely(varonce129
==NULL
)) {
3796 var130
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
3797 if (likely(varonce131
!=NULL
)) {
3798 var132
= varonce131
;
3800 var133
= "/* method ";
3801 var134
= standard___standard__NativeString___to_s_with_length(var133
, 10l);
3803 varonce131
= var132
;
3805 ((struct instance_standard__NativeArray
*)var130
)->values
[0]=var132
;
3806 if (likely(varonce135
!=NULL
)) {
3807 var136
= varonce135
;
3810 var138
= standard___standard__NativeString___to_s_with_length(var137
, 5l);
3812 varonce135
= var136
;
3814 ((struct instance_standard__NativeArray
*)var130
)->values
[2]=var136
;
3815 if (likely(varonce139
!=NULL
)) {
3816 var140
= varonce139
;
3819 var142
= standard___standard__NativeString___to_s_with_length(var141
, 3l);
3821 varonce139
= var140
;
3823 ((struct instance_standard__NativeArray
*)var130
)->values
[4]=var140
;
3825 var130
= varonce129
;
3829 var143
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_standard__string__Object__to_s
]))(self
); /* to_s on <self:SeparateRuntimeFunction>*/
3831 ((struct instance_standard__NativeArray
*)var130
)->values
[1]=var143
;
3833 var144
= ((val
*(*)(val
* self
))(var_comment
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_comment
); /* to_s on <var_comment:FlatBuffer>*/
3835 ((struct instance_standard__NativeArray
*)var130
)->values
[3]=var144
;
3837 var145
= ((val
*(*)(val
* self
))(var130
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var130
); /* native_to_s on <var130:NativeArray[String]>*/
3839 varonce129
= var130
;
3841 nit___nit__AbstractCompilerVisitor___add_decl(var_v
, var145
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
3843 if (unlikely(varonce146
==NULL
)) {
3844 var147
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3845 if (likely(varonce148
!=NULL
)) {
3846 var149
= varonce148
;
3849 var151
= standard___standard__NativeString___to_s_with_length(var150
, 2l);
3851 varonce148
= var149
;
3853 ((struct instance_standard__NativeArray
*)var147
)->values
[1]=var149
;
3855 var147
= varonce146
;
3859 var152
= ((val
*(*)(val
* self
))(var_sig
->class->vft
[COLOR_standard__string__Object__to_s
]))(var_sig
); /* to_s on <var_sig:FlatBuffer>*/
3861 ((struct instance_standard__NativeArray
*)var147
)->values
[0]=var152
;
3863 var153
= ((val
*(*)(val
* self
))(var147
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var147
); /* native_to_s on <var147:NativeArray[String]>*/
3865 varonce146
= var147
;
3867 nit___nit__AbstractCompilerVisitor___add_decl(var_v
, var153
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add_decl on <var_v:AbstractCompilerVisitor>*/
3869 if (var_ret
== NULL
) {
3870 var154
= 0; /* is null */
3872 var154
= 1; /* arg is null and recv is not */
3875 { /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
3876 var_other
= ((val
*)NULL
);
3878 var157
= ((short int(*)(val
* self
, val
* p0
))(var_ret
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ret
, var_other
); /* == on <var_ret:nullable MType(MType)>*/
3883 RET_LABEL156
:(void)0;
3889 var159
= nit___nit__AbstractCompilerVisitor___new_var(var_v
, var_ret
);
3892 { /* Inline abstract_compiler#StaticFrame#returnvar= (var_frame,var159) on <var_frame:StaticFrame> */
3893 var_frame
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___returnvar
].val
= var159
; /* _returnvar on <var_frame:StaticFrame> */
3894 RET_LABEL160
:(void)0;
3899 if (likely(varonce161
!=NULL
)) {
3900 var162
= varonce161
;
3902 var163
= "RET_LABEL";
3903 var164
= standard___standard__NativeString___to_s_with_length(var163
, 9l);
3905 varonce161
= var162
;
3908 var165
= nit___nit__AbstractCompilerVisitor___get_name(var_v
, var162
);
3911 { /* Inline abstract_compiler#StaticFrame#returnlabel= (var_frame,var165) on <var_frame:StaticFrame> */
3912 var_frame
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___returnlabel
].val
= var165
; /* _returnlabel on <var_frame:StaticFrame> */
3913 RET_LABEL166
:(void)0;
3917 { /* Inline separate_compiler#SeparateRuntimeFunction#is_thunk (self) on <self:SeparateRuntimeFunction> */
3918 var169
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___is_thunk
].s
; /* _is_thunk on <self:SeparateRuntimeFunction> */
3920 RET_LABEL168
:(void)0;
3925 var170
= nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__call(var_v
, var_mmethoddef
, var_recv
, var_arguments
);
3927 var_subret
= var170
;
3928 if (var_ret
== NULL
) {
3929 var171
= 0; /* is null */
3931 var171
= 1; /* arg is null and recv is not */
3934 { /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
3935 var_other
= ((val
*)NULL
);
3937 var174
= ((short int(*)(val
* self
, val
* p0
))(var_ret
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ret
, var_other
); /* == on <var_ret:nullable MType(MType)>*/
3942 RET_LABEL173
:(void)0;
3947 if (var_subret
== NULL
) {
3948 var176
= 0; /* is null */
3950 var176
= 1; /* arg is null and recv is not */
3953 { /* Inline kernel#Object#!= (var_subret,((val*)NULL)) on <var_subret:nullable RuntimeVariable> */
3954 var_other
= ((val
*)NULL
);
3956 var179
= ((short int(*)(val
* self
, val
* p0
))(var_subret
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_subret
, var_other
); /* == on <var_subret:nullable RuntimeVariable(RuntimeVariable)>*/
3961 RET_LABEL178
:(void)0;
3965 if (unlikely(!var176
)) {
3966 PRINT_ERROR("Runtime error: %s", "Assert failed");
3967 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2263);
3971 { /* Inline abstract_compiler#StaticFrame#returnvar (var_frame) on <var_frame:StaticFrame> */
3972 var183
= var_frame
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___returnvar
].val
; /* _returnvar on <var_frame:StaticFrame> */
3974 RET_LABEL182
:(void)0;
3977 if (unlikely(var181
== NULL
)) {
3978 PRINT_ERROR("Runtime error: %s", "Cast failed");
3979 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2264);
3983 nit___nit__AbstractCompilerVisitor___assign(var_v
, var181
, var_subret
); /* Direct call abstract_compiler#AbstractCompilerVisitor#assign on <var_v:AbstractCompilerVisitor>*/
3989 var184
= nit__abstract_compiler___MMethodDef___compile_inside_to_c(var_mmethoddef
, var_v
, var_arguments
);
3992 if (unlikely(varonce185
==NULL
)) {
3993 var186
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
3994 if (likely(varonce187
!=NULL
)) {
3995 var188
= varonce187
;
3998 var190
= standard___standard__NativeString___to_s_with_length(var189
, 2l);
4000 varonce187
= var188
;
4002 ((struct instance_standard__NativeArray
*)var186
)->values
[1]=var188
;
4004 var186
= varonce185
;
4008 { /* Inline abstract_compiler#StaticFrame#returnlabel (var_frame) on <var_frame:StaticFrame> */
4009 var193
= var_frame
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___returnlabel
].val
; /* _returnlabel on <var_frame:StaticFrame> */
4011 RET_LABEL192
:(void)0;
4014 if (unlikely(var191
== NULL
)) {
4015 PRINT_ERROR("Runtime error: %s", "Cast failed");
4016 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2270);
4019 ((struct instance_standard__NativeArray
*)var186
)->values
[0]=var191
;
4021 var194
= ((val
*(*)(val
* self
))(var186
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var186
); /* native_to_s on <var186:NativeArray[String]>*/
4023 varonce185
= var186
;
4025 nit___nit__AbstractCompilerVisitor___add(var_v
, var194
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
4027 if (var_ret
== NULL
) {
4028 var195
= 0; /* is null */
4030 var195
= 1; /* arg is null and recv is not */
4033 { /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
4034 var_other
= ((val
*)NULL
);
4036 var198
= ((short int(*)(val
* self
, val
* p0
))(var_ret
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ret
, var_other
); /* == on <var_ret:nullable MType(MType)>*/
4041 RET_LABEL197
:(void)0;
4046 if (unlikely(varonce200
==NULL
)) {
4047 var201
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
4048 if (likely(varonce202
!=NULL
)) {
4049 var203
= varonce202
;
4052 var205
= standard___standard__NativeString___to_s_with_length(var204
, 7l);
4054 varonce202
= var203
;
4056 ((struct instance_standard__NativeArray
*)var201
)->values
[0]=var203
;
4057 if (likely(varonce206
!=NULL
)) {
4058 var207
= varonce206
;
4061 var209
= standard___standard__NativeString___to_s_with_length(var208
, 1l);
4063 varonce206
= var207
;
4065 ((struct instance_standard__NativeArray
*)var201
)->values
[2]=var207
;
4067 var201
= varonce200
;
4071 { /* Inline abstract_compiler#StaticFrame#returnvar (var_frame) on <var_frame:StaticFrame> */
4072 var212
= var_frame
->attrs
[COLOR_nit__abstract_compiler__StaticFrame___returnvar
].val
; /* _returnvar on <var_frame:StaticFrame> */
4074 RET_LABEL211
:(void)0;
4077 if (unlikely(var210
== NULL
)) {
4078 PRINT_ERROR("Runtime error: %s", "Cast failed");
4079 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2272);
4083 var213
= ((val
*(*)(val
* self
))(var210
->class->vft
[COLOR_standard__string__Object__to_s
]))(var210
); /* to_s on <var210:nullable RuntimeVariable(RuntimeVariable)>*/
4085 ((struct instance_standard__NativeArray
*)var201
)->values
[1]=var213
;
4087 var214
= ((val
*(*)(val
* self
))(var201
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var201
); /* native_to_s on <var201:NativeArray[String]>*/
4089 varonce200
= var201
;
4091 nit___nit__AbstractCompilerVisitor___add(var_v
, var214
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
4095 if (likely(varonce215
!=NULL
)) {
4096 var216
= varonce215
;
4099 var218
= standard___standard__NativeString___to_s_with_length(var217
, 1l);
4101 varonce215
= var216
;
4104 nit___nit__AbstractCompilerVisitor___add(var_v
, var216
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v:AbstractCompilerVisitor>*/
4107 { /* Inline abstract_compiler#AbstractCompiler#names (var_compiler) on <var_compiler:AbstractCompiler> */
4108 var221
= var_compiler
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___names
].val
; /* _names on <var_compiler:AbstractCompiler> */
4109 if (unlikely(var221
== NULL
)) {
4110 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _names");
4111 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 512);
4115 RET_LABEL220
:(void)0;
4119 var222
= nit___nit__AbstractRuntimeFunction___c_name(self
);
4121 if (unlikely(varonce223
==NULL
)) {
4122 var224
= NEW_standard__NativeArray(6l, &type_standard__NativeArray__standard__String
);
4123 if (likely(varonce225
!=NULL
)) {
4124 var226
= varonce225
;
4127 var228
= standard___standard__NativeString___to_s_with_length(var227
, 2l);
4129 varonce225
= var226
;
4131 ((struct instance_standard__NativeArray
*)var224
)->values
[1]=var226
;
4132 if (likely(varonce229
!=NULL
)) {
4133 var230
= varonce229
;
4136 var232
= standard___standard__NativeString___to_s_with_length(var231
, 1l);
4138 varonce229
= var230
;
4140 ((struct instance_standard__NativeArray
*)var224
)->values
[3]=var230
;
4141 if (likely(varonce233
!=NULL
)) {
4142 var234
= varonce233
;
4145 var236
= standard___standard__NativeString___to_s_with_length(var235
, 1l);
4147 varonce233
= var234
;
4149 ((struct instance_standard__NativeArray
*)var224
)->values
[5]=var234
;
4151 var224
= varonce223
;
4155 var237
= nit___nit__MPropDef___nit__model_base__MEntity__full_name(var_mmethoddef
);
4157 ((struct instance_standard__NativeArray
*)var224
)->values
[0]=var237
;
4159 { /* Inline model#MPropDef#location (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
4160 var240
= var_mmethoddef
->attrs
[COLOR_nit__model__MPropDef___location
].val
; /* _location on <var_mmethoddef:MMethodDef> */
4161 if (unlikely(var240
== NULL
)) {
4162 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
4163 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2215);
4167 RET_LABEL239
:(void)0;
4171 { /* Inline location#Location#file (var238) on <var238:Location> */
4172 var243
= var238
->attrs
[COLOR_nit__location__Location___file
].val
; /* _file on <var238:Location> */
4174 RET_LABEL242
:(void)0;
4177 if (var241
== NULL
) {
4178 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4179 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2275);
4182 { /* Inline location#SourceFile#filename (var241) on <var241:nullable SourceFile> */
4183 if (unlikely(var241
== NULL
)) {
4184 PRINT_ERROR("Runtime error: %s", "Receiver is null");
4185 PRINT_ERROR(" (%s:%d)\n", FILE_nit__location
, 22);
4188 var246
= var241
->attrs
[COLOR_nit__location__SourceFile___filename
].val
; /* _filename on <var241:nullable SourceFile> */
4189 if (unlikely(var246
== NULL
)) {
4190 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
4191 PRINT_ERROR(" (%s:%d)\n", FILE_nit__location
, 22);
4195 RET_LABEL245
:(void)0;
4198 ((struct instance_standard__NativeArray
*)var224
)->values
[2]=var244
;
4200 { /* Inline model#MPropDef#location (var_mmethoddef) on <var_mmethoddef:MMethodDef> */
4201 var249
= var_mmethoddef
->attrs
[COLOR_nit__model__MPropDef___location
].val
; /* _location on <var_mmethoddef:MMethodDef> */
4202 if (unlikely(var249
== NULL
)) {
4203 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
4204 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2215);
4208 RET_LABEL248
:(void)0;
4212 { /* Inline location#Location#line_start (var247) on <var247:Location> */
4213 var252
= var247
->attrs
[COLOR_nit__location__Location___line_start
].l
; /* _line_start on <var247:Location> */
4215 RET_LABEL251
:(void)0;
4218 var253
= standard__string___Int___Object__to_s(var250
);
4219 ((struct instance_standard__NativeArray
*)var224
)->values
[4]=var253
;
4221 var254
= ((val
*(*)(val
* self
))(var224
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var224
); /* native_to_s on <var224:NativeArray[String]>*/
4223 varonce223
= var224
;
4225 standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var219
, var222
, var254
); /* Direct call hash_collection#HashMap#[]= on <var219:HashMap[String, String]>*/
4229 /* method separate_compiler#SeparateRuntimeFunction#compile_trampolines for (self: SeparateRuntimeFunction, SeparateCompiler) */
4230 void nit___nit__SeparateRuntimeFunction___compile_trampolines(val
* self
, val
* p0
) {
4231 val
* var_compiler
/* var compiler: SeparateCompiler */;
4232 val
* var
/* : MMethodDef */;
4233 val
* var2
/* : MMethodDef */;
4234 val
* var3
/* : MClassDef */;
4235 val
* var5
/* : MClassDef */;
4236 val
* var6
/* : MClassType */;
4237 val
* var8
/* : MClassType */;
4238 val
* var_recv
/* var recv: MClassType */;
4239 val
* var9
/* : Array[RuntimeVariable] */;
4240 val
* var11
/* : Array[RuntimeVariable] */;
4241 val
* var12
/* : nullable Object */;
4242 val
* var_selfvar
/* var selfvar: RuntimeVariable */;
4243 val
* var13
/* : MSignature */;
4244 val
* var15
/* : MSignature */;
4245 val
* var16
/* : nullable MType */;
4246 val
* var18
/* : nullable MType */;
4247 val
* var_ret
/* var ret: nullable MType */;
4248 short int var19
/* : Bool */;
4249 val
* var20
/* : MMethodDef */;
4250 val
* var22
/* : MMethodDef */;
4251 short int var23
/* : Bool */;
4252 short int var_
/* var : Bool */;
4253 short int var24
/* : Bool */;
4254 short int var25
/* : Bool */;
4255 val
* var26
/* : MMethodDef */;
4256 val
* var28
/* : MMethodDef */;
4257 val
* var29
/* : MProperty */;
4258 val
* var31
/* : MProperty */;
4259 val
* var_m
/* var m: MMethod */;
4260 static val
* varonce
;
4261 val
* var32
/* : String */;
4262 char* var33
/* : NativeString */;
4263 val
* var34
/* : FlatString */;
4264 val
* var35
/* : String */;
4265 val
* var36
/* : String */;
4266 val
* var_n2
/* var n2: String */;
4267 val
* var38
/* : NativeArray[String] */;
4268 static val
* varonce37
;
4269 static val
* varonce39
;
4270 val
* var40
/* : String */;
4271 char* var41
/* : NativeString */;
4272 val
* var42
/* : FlatString */;
4273 static val
* varonce43
;
4274 val
* var44
/* : String */;
4275 char* var45
/* : NativeString */;
4276 val
* var46
/* : FlatString */;
4277 val
* var47
/* : String */;
4278 val
* var48
/* : String */;
4279 val
* var49
/* : String */;
4280 val
* var50
/* : AbstractCompilerVisitor */;
4281 val
* var_v2
/* var v2: SeparateCompilerVisitor */;
4282 val
* var52
/* : NativeArray[String] */;
4283 static val
* varonce51
;
4284 static val
* varonce53
;
4285 val
* var54
/* : String */;
4286 char* var55
/* : NativeString */;
4287 val
* var56
/* : FlatString */;
4288 static val
* varonce57
;
4289 val
* var58
/* : String */;
4290 char* var59
/* : NativeString */;
4291 val
* var60
/* : FlatString */;
4292 val
* var61
/* : String */;
4293 val
* var62
/* : String */;
4294 val
* var63
/* : String */;
4295 val
* var64
/* : String */;
4296 val
* var66
/* : NativeArray[String] */;
4297 static val
* varonce65
;
4298 static val
* varonce67
;
4299 val
* var68
/* : String */;
4300 char* var69
/* : NativeString */;
4301 val
* var70
/* : FlatString */;
4302 static val
* varonce71
;
4303 val
* var72
/* : String */;
4304 char* var73
/* : NativeString */;
4305 val
* var74
/* : FlatString */;
4306 static val
* varonce75
;
4307 val
* var76
/* : String */;
4308 char* var77
/* : NativeString */;
4309 val
* var78
/* : FlatString */;
4310 static val
* varonce79
;
4311 val
* var80
/* : String */;
4312 char* var81
/* : NativeString */;
4313 val
* var82
/* : FlatString */;
4314 static val
* varonce83
;
4315 val
* var84
/* : String */;
4316 char* var85
/* : NativeString */;
4317 val
* var86
/* : FlatString */;
4318 val
* var87
/* : String */;
4319 val
* var88
/* : String */;
4320 val
* var89
/* : String */;
4321 val
* var90
/* : Array[RuntimeVariable] */;
4322 val
* var92
/* : Array[RuntimeVariable] */;
4323 static val
* varonce93
;
4324 val
* var94
/* : String */;
4325 char* var95
/* : NativeString */;
4326 val
* var96
/* : FlatString */;
4327 val
* var97
/* : String */;
4328 val
* var98
/* : String */;
4329 val
* var_call
/* var call: String */;
4330 short int var99
/* : Bool */;
4331 short int var100
/* : Bool */;
4332 val
* var_other
/* var other: nullable Object */;
4333 short int var102
/* : Bool */;
4334 short int var103
/* : Bool */;
4335 val
* var105
/* : NativeArray[String] */;
4336 static val
* varonce104
;
4337 static val
* varonce106
;
4338 val
* var107
/* : String */;
4339 char* var108
/* : NativeString */;
4340 val
* var109
/* : FlatString */;
4341 val
* var110
/* : String */;
4342 static val
* varonce111
;
4343 val
* var112
/* : String */;
4344 char* var113
/* : NativeString */;
4345 val
* var114
/* : FlatString */;
4346 short int var115
/* : Bool */;
4347 val
* var116
/* : MMethodDef */;
4348 val
* var118
/* : MMethodDef */;
4349 short int var119
/* : Bool */;
4350 short int var121
/* : Bool */;
4351 short int var_122
/* var : Bool */;
4352 short int var123
/* : Bool */;
4353 short int var124
/* : Bool */;
4354 val
* var125
/* : MMethodDef */;
4355 val
* var127
/* : MMethodDef */;
4356 val
* var_m128
/* var m: MMethodDef */;
4357 static val
* varonce129
;
4358 val
* var130
/* : String */;
4359 char* var131
/* : NativeString */;
4360 val
* var132
/* : FlatString */;
4361 val
* var133
/* : String */;
4362 val
* var134
/* : String */;
4363 val
* var_n2135
/* var n2: String */;
4364 val
* var137
/* : NativeArray[String] */;
4365 static val
* varonce136
;
4366 static val
* varonce138
;
4367 val
* var139
/* : String */;
4368 char* var140
/* : NativeString */;
4369 val
* var141
/* : FlatString */;
4370 static val
* varonce142
;
4371 val
* var143
/* : String */;
4372 char* var144
/* : NativeString */;
4373 val
* var145
/* : FlatString */;
4374 val
* var146
/* : String */;
4375 val
* var147
/* : String */;
4376 val
* var148
/* : String */;
4377 val
* var149
/* : AbstractCompilerVisitor */;
4378 val
* var_v2150
/* var v2: SeparateCompilerVisitor */;
4379 val
* var152
/* : NativeArray[String] */;
4380 static val
* varonce151
;
4381 static val
* varonce153
;
4382 val
* var154
/* : String */;
4383 char* var155
/* : NativeString */;
4384 val
* var156
/* : FlatString */;
4385 static val
* varonce157
;
4386 val
* var158
/* : String */;
4387 char* var159
/* : NativeString */;
4388 val
* var160
/* : FlatString */;
4389 val
* var161
/* : String */;
4390 val
* var162
/* : String */;
4391 val
* var163
/* : String */;
4392 val
* var164
/* : String */;
4393 val
* var166
/* : NativeArray[String] */;
4394 static val
* varonce165
;
4395 static val
* varonce167
;
4396 val
* var168
/* : String */;
4397 char* var169
/* : NativeString */;
4398 val
* var170
/* : FlatString */;
4399 static val
* varonce171
;
4400 val
* var172
/* : String */;
4401 char* var173
/* : NativeString */;
4402 val
* var174
/* : FlatString */;
4403 static val
* varonce175
;
4404 val
* var176
/* : String */;
4405 char* var177
/* : NativeString */;
4406 val
* var178
/* : FlatString */;
4407 static val
* varonce179
;
4408 val
* var180
/* : String */;
4409 char* var181
/* : NativeString */;
4410 val
* var182
/* : FlatString */;
4411 static val
* varonce183
;
4412 val
* var184
/* : String */;
4413 char* var185
/* : NativeString */;
4414 val
* var186
/* : FlatString */;
4415 val
* var187
/* : String */;
4416 val
* var188
/* : String */;
4417 val
* var189
/* : String */;
4418 val
* var190
/* : Array[RuntimeVariable] */;
4419 val
* var192
/* : Array[RuntimeVariable] */;
4420 static val
* varonce193
;
4421 val
* var194
/* : String */;
4422 char* var195
/* : NativeString */;
4423 val
* var196
/* : FlatString */;
4424 val
* var197
/* : String */;
4425 val
* var198
/* : String */;
4426 val
* var_call199
/* var call: String */;
4427 short int var200
/* : Bool */;
4428 short int var201
/* : Bool */;
4429 short int var203
/* : Bool */;
4430 short int var204
/* : Bool */;
4431 val
* var206
/* : NativeArray[String] */;
4432 static val
* varonce205
;
4433 static val
* varonce207
;
4434 val
* var208
/* : String */;
4435 char* var209
/* : NativeString */;
4436 val
* var210
/* : FlatString */;
4437 val
* var211
/* : String */;
4438 static val
* varonce212
;
4439 val
* var213
/* : String */;
4440 char* var214
/* : NativeString */;
4441 val
* var215
/* : FlatString */;
4444 { /* Inline abstract_compiler#AbstractRuntimeFunction#mmethoddef (self) on <self:SeparateRuntimeFunction> */
4445 var2
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction___mmethoddef
].val
; /* _mmethoddef on <self:SeparateRuntimeFunction> */
4446 if (unlikely(var2
== NULL
)) {
4447 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmethoddef");
4448 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1748);
4456 { /* Inline model#MPropDef#mclassdef (var) on <var:MMethodDef> */
4457 var5
= var
->attrs
[COLOR_nit__model__MPropDef___mclassdef
].val
; /* _mclassdef on <var:MMethodDef> */
4458 if (unlikely(var5
== NULL
)) {
4459 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclassdef");
4460 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2209);
4468 { /* Inline model#MClassDef#bound_mtype (var3) on <var3:MClassDef> */
4469 var8
= var3
->attrs
[COLOR_nit__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var3:MClassDef> */
4470 if (unlikely(var8
== NULL
)) {
4471 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
4472 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 556);
4481 { /* Inline separate_compiler#SeparateRuntimeFunction#arguments (self) on <self:SeparateRuntimeFunction> */
4482 var11
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___arguments
].val
; /* _arguments on <self:SeparateRuntimeFunction> */
4483 if (unlikely(var11
== NULL
)) {
4484 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _arguments");
4485 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2212);
4489 RET_LABEL10
:(void)0;
4493 var12
= standard___standard__SequenceRead___Collection__first(var9
);
4495 var_selfvar
= var12
;
4497 { /* Inline separate_compiler#SeparateRuntimeFunction#called_signature (self) on <self:SeparateRuntimeFunction> */
4498 var15
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___called_signature
].val
; /* _called_signature on <self:SeparateRuntimeFunction> */
4499 if (unlikely(var15
== NULL
)) {
4500 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _called_signature");
4501 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2173);
4505 RET_LABEL14
:(void)0;
4509 { /* Inline model#MSignature#return_mtype (var13) on <var13:MSignature> */
4510 var18
= var13
->attrs
[COLOR_nit__model__MSignature___return_mtype
].val
; /* _return_mtype on <var13:MSignature> */
4512 RET_LABEL17
:(void)0;
4517 { /* Inline abstract_compiler#AbstractRuntimeFunction#mmethoddef (self) on <self:SeparateRuntimeFunction> */
4518 var22
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction___mmethoddef
].val
; /* _mmethoddef on <self:SeparateRuntimeFunction> */
4519 if (unlikely(var22
== NULL
)) {
4520 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmethoddef");
4521 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1748);
4525 RET_LABEL21
:(void)0;
4529 var23
= nit___nit__MPropDef___is_intro(var20
);
4534 var24
= nit__abstract_compiler___MClassType___MType__is_c_primitive(var_recv
);
4543 { /* Inline abstract_compiler#AbstractRuntimeFunction#mmethoddef (self) on <self:SeparateRuntimeFunction> */
4544 var28
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction___mmethoddef
].val
; /* _mmethoddef on <self:SeparateRuntimeFunction> */
4545 if (unlikely(var28
== NULL
)) {
4546 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmethoddef");
4547 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1748);
4551 RET_LABEL27
:(void)0;
4555 { /* Inline model#MPropDef#mproperty (var26) on <var26:MMethodDef> */
4556 var31
= var26
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <var26:MMethodDef> */
4557 if (unlikely(var31
== NULL
)) {
4558 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
4559 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2212);
4563 RET_LABEL30
:(void)0;
4567 if (likely(varonce
!=NULL
)) {
4571 var34
= standard___standard__NativeString___to_s_with_length(var33
, 5l);
4576 var35
= nit__separate_compiler___MEntity___const_color(var_m
);
4579 var36
= ((val
*(*)(val
* self
, val
* p0
))(var32
->class->vft
[COLOR_standard__string__String___43d
]))(var32
, var35
); /* + on <var32:String>*/
4582 if (unlikely(varonce37
==NULL
)) {
4583 var38
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
4584 if (likely(varonce39
!=NULL
)) {
4588 var42
= standard___standard__NativeString___to_s_with_length(var41
, 1l);
4592 ((struct instance_standard__NativeArray
*)var38
)->values
[1]=var40
;
4593 if (likely(varonce43
!=NULL
)) {
4597 var46
= standard___standard__NativeString___to_s_with_length(var45
, 1l);
4601 ((struct instance_standard__NativeArray
*)var38
)->values
[4]=var44
;
4607 var47
= nit___nit__SeparateRuntimeFunction___c_ret(self
);
4609 ((struct instance_standard__NativeArray
*)var38
)->values
[0]=var47
;
4610 ((struct instance_standard__NativeArray
*)var38
)->values
[2]=var_n2
;
4612 var48
= nit___nit__SeparateRuntimeFunction___c_sig(self
);
4614 ((struct instance_standard__NativeArray
*)var38
)->values
[3]=var48
;
4616 var49
= ((val
*(*)(val
* self
))(var38
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var38
); /* native_to_s on <var38:NativeArray[String]>*/
4620 nit___nit__AbstractCompiler___provide_declaration(var_compiler
, var_n2
, var49
); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on <var_compiler:SeparateCompiler>*/
4623 var50
= ((val
*(*)(val
* self
))(var_compiler
->class->vft
[COLOR_nit__abstract_compiler__AbstractCompiler__new_visitor
]))(var_compiler
); /* new_visitor on <var_compiler:SeparateCompiler>*/
4626 if (unlikely(varonce51
==NULL
)) {
4627 var52
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
4628 if (likely(varonce53
!=NULL
)) {
4632 var56
= standard___standard__NativeString___to_s_with_length(var55
, 1l);
4636 ((struct instance_standard__NativeArray
*)var52
)->values
[1]=var54
;
4637 if (likely(varonce57
!=NULL
)) {
4641 var60
= standard___standard__NativeString___to_s_with_length(var59
, 2l);
4645 ((struct instance_standard__NativeArray
*)var52
)->values
[4]=var58
;
4651 var61
= nit___nit__SeparateRuntimeFunction___c_ret(self
);
4653 ((struct instance_standard__NativeArray
*)var52
)->values
[0]=var61
;
4654 ((struct instance_standard__NativeArray
*)var52
)->values
[2]=var_n2
;
4656 var62
= nit___nit__SeparateRuntimeFunction___c_sig(self
);
4658 ((struct instance_standard__NativeArray
*)var52
)->values
[3]=var62
;
4660 var63
= ((val
*(*)(val
* self
))(var52
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var52
); /* native_to_s on <var52:NativeArray[String]>*/
4664 nit___nit__AbstractCompilerVisitor___add(var_v2
, var63
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v2:SeparateCompilerVisitor>*/
4667 var64
= nit__separate_compiler___MEntity___const_color(var_m
);
4670 nit___nit__AbstractCompilerVisitor___require_declaration(var_v2
, var64
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <var_v2:SeparateCompilerVisitor>*/
4672 if (unlikely(varonce65
==NULL
)) {
4673 var66
= NEW_standard__NativeArray(9l, &type_standard__NativeArray__standard__String
);
4674 if (likely(varonce67
!=NULL
)) {
4678 var70
= standard___standard__NativeString___to_s_with_length(var69
, 2l);
4682 ((struct instance_standard__NativeArray
*)var66
)->values
[0]=var68
;
4683 if (likely(varonce71
!=NULL
)) {
4687 var74
= standard___standard__NativeString___to_s_with_length(var73
, 2l);
4691 ((struct instance_standard__NativeArray
*)var66
)->values
[2]=var72
;
4692 if (likely(varonce75
!=NULL
)) {
4696 var78
= standard___standard__NativeString___to_s_with_length(var77
, 6l);
4700 ((struct instance_standard__NativeArray
*)var66
)->values
[4]=var76
;
4701 if (likely(varonce79
!=NULL
)) {
4705 var82
= standard___standard__NativeString___to_s_with_length(var81
, 4l);
4709 ((struct instance_standard__NativeArray
*)var66
)->values
[6]=var80
;
4710 if (likely(varonce83
!=NULL
)) {
4714 var86
= standard___standard__NativeString___to_s_with_length(var85
, 2l);
4718 ((struct instance_standard__NativeArray
*)var66
)->values
[8]=var84
;
4724 var87
= nit___nit__SeparateRuntimeFunction___c_funptrtype(self
);
4726 ((struct instance_standard__NativeArray
*)var66
)->values
[1]=var87
;
4728 var88
= nit___nit__SeparateCompilerVisitor___class_info(var_v2
, var_selfvar
);
4730 ((struct instance_standard__NativeArray
*)var66
)->values
[3]=var88
;
4732 var89
= nit__separate_compiler___MEntity___const_color(var_m
);
4734 ((struct instance_standard__NativeArray
*)var66
)->values
[5]=var89
;
4736 { /* Inline separate_compiler#SeparateRuntimeFunction#arguments (self) on <self:SeparateRuntimeFunction> */
4737 var92
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___arguments
].val
; /* _arguments on <self:SeparateRuntimeFunction> */
4738 if (unlikely(var92
== NULL
)) {
4739 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _arguments");
4740 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2212);
4744 RET_LABEL91
:(void)0;
4747 if (likely(varonce93
!=NULL
)) {
4751 var96
= standard___standard__NativeString___to_s_with_length(var95
, 2l);
4756 var97
= standard__string___Collection___join(var90
, var94
);
4758 ((struct instance_standard__NativeArray
*)var66
)->values
[7]=var97
;
4760 var98
= ((val
*(*)(val
* self
))(var66
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var66
); /* native_to_s on <var66:NativeArray[String]>*/
4764 if (var_ret
== NULL
) {
4765 var99
= 0; /* is null */
4767 var99
= 1; /* arg is null and recv is not */
4770 { /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
4771 var_other
= ((val
*)NULL
);
4773 var102
= ((short int(*)(val
* self
, val
* p0
))(var_ret
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ret
, var_other
); /* == on <var_ret:nullable MType(MType)>*/
4778 RET_LABEL101
:(void)0;
4783 if (unlikely(varonce104
==NULL
)) {
4784 var105
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
4785 if (likely(varonce106
!=NULL
)) {
4786 var107
= varonce106
;
4789 var109
= standard___standard__NativeString___to_s_with_length(var108
, 7l);
4791 varonce106
= var107
;
4793 ((struct instance_standard__NativeArray
*)var105
)->values
[0]=var107
;
4795 var105
= varonce104
;
4798 ((struct instance_standard__NativeArray
*)var105
)->values
[1]=var_call
;
4800 var110
= ((val
*(*)(val
* self
))(var105
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var105
); /* native_to_s on <var105:NativeArray[String]>*/
4802 varonce104
= var105
;
4804 nit___nit__AbstractCompilerVisitor___add(var_v2
, var110
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v2:SeparateCompilerVisitor>*/
4808 nit___nit__AbstractCompilerVisitor___add(var_v2
, var_call
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v2:SeparateCompilerVisitor>*/
4811 if (likely(varonce111
!=NULL
)) {
4812 var112
= varonce111
;
4815 var114
= standard___standard__NativeString___to_s_with_length(var113
, 1l);
4817 varonce111
= var112
;
4820 nit___nit__AbstractCompilerVisitor___add(var_v2
, var112
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v2:SeparateCompilerVisitor>*/
4825 { /* Inline abstract_compiler#AbstractRuntimeFunction#mmethoddef (self) on <self:SeparateRuntimeFunction> */
4826 var118
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction___mmethoddef
].val
; /* _mmethoddef on <self:SeparateRuntimeFunction> */
4827 if (unlikely(var118
== NULL
)) {
4828 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmethoddef");
4829 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1748);
4833 RET_LABEL117
:(void)0;
4837 { /* Inline modelize_property#MPropDef#has_supercall (var116) on <var116:MMethodDef> */
4838 var121
= var116
->attrs
[COLOR_nit__modelize_property__MPropDef___has_supercall
].s
; /* _has_supercall on <var116:MMethodDef> */
4840 RET_LABEL120
:(void)0;
4846 var123
= nit__abstract_compiler___MClassType___MType__is_c_primitive(var_recv
);
4855 { /* Inline abstract_compiler#AbstractRuntimeFunction#mmethoddef (self) on <self:SeparateRuntimeFunction> */
4856 var127
= self
->attrs
[COLOR_nit__abstract_compiler__AbstractRuntimeFunction___mmethoddef
].val
; /* _mmethoddef on <self:SeparateRuntimeFunction> */
4857 if (unlikely(var127
== NULL
)) {
4858 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmethoddef");
4859 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1748);
4863 RET_LABEL126
:(void)0;
4867 if (likely(varonce129
!=NULL
)) {
4868 var130
= varonce129
;
4871 var132
= standard___standard__NativeString___to_s_with_length(var131
, 5l);
4873 varonce129
= var130
;
4876 var133
= nit__separate_compiler___MEntity___const_color(var_m128
);
4879 var134
= ((val
*(*)(val
* self
, val
* p0
))(var130
->class->vft
[COLOR_standard__string__String___43d
]))(var130
, var133
); /* + on <var130:String>*/
4882 if (unlikely(varonce136
==NULL
)) {
4883 var137
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
4884 if (likely(varonce138
!=NULL
)) {
4885 var139
= varonce138
;
4888 var141
= standard___standard__NativeString___to_s_with_length(var140
, 1l);
4890 varonce138
= var139
;
4892 ((struct instance_standard__NativeArray
*)var137
)->values
[1]=var139
;
4893 if (likely(varonce142
!=NULL
)) {
4894 var143
= varonce142
;
4897 var145
= standard___standard__NativeString___to_s_with_length(var144
, 1l);
4899 varonce142
= var143
;
4901 ((struct instance_standard__NativeArray
*)var137
)->values
[4]=var143
;
4903 var137
= varonce136
;
4907 var146
= nit___nit__SeparateRuntimeFunction___c_ret(self
);
4909 ((struct instance_standard__NativeArray
*)var137
)->values
[0]=var146
;
4910 ((struct instance_standard__NativeArray
*)var137
)->values
[2]=var_n2135
;
4912 var147
= nit___nit__SeparateRuntimeFunction___c_sig(self
);
4914 ((struct instance_standard__NativeArray
*)var137
)->values
[3]=var147
;
4916 var148
= ((val
*(*)(val
* self
))(var137
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var137
); /* native_to_s on <var137:NativeArray[String]>*/
4918 varonce136
= var137
;
4920 nit___nit__AbstractCompiler___provide_declaration(var_compiler
, var_n2135
, var148
); /* Direct call abstract_compiler#AbstractCompiler#provide_declaration on <var_compiler:SeparateCompiler>*/
4923 var149
= ((val
*(*)(val
* self
))(var_compiler
->class->vft
[COLOR_nit__abstract_compiler__AbstractCompiler__new_visitor
]))(var_compiler
); /* new_visitor on <var_compiler:SeparateCompiler>*/
4926 if (unlikely(varonce151
==NULL
)) {
4927 var152
= NEW_standard__NativeArray(5l, &type_standard__NativeArray__standard__String
);
4928 if (likely(varonce153
!=NULL
)) {
4929 var154
= varonce153
;
4932 var156
= standard___standard__NativeString___to_s_with_length(var155
, 1l);
4934 varonce153
= var154
;
4936 ((struct instance_standard__NativeArray
*)var152
)->values
[1]=var154
;
4937 if (likely(varonce157
!=NULL
)) {
4938 var158
= varonce157
;
4941 var160
= standard___standard__NativeString___to_s_with_length(var159
, 2l);
4943 varonce157
= var158
;
4945 ((struct instance_standard__NativeArray
*)var152
)->values
[4]=var158
;
4947 var152
= varonce151
;
4951 var161
= nit___nit__SeparateRuntimeFunction___c_ret(self
);
4953 ((struct instance_standard__NativeArray
*)var152
)->values
[0]=var161
;
4954 ((struct instance_standard__NativeArray
*)var152
)->values
[2]=var_n2135
;
4956 var162
= nit___nit__SeparateRuntimeFunction___c_sig(self
);
4958 ((struct instance_standard__NativeArray
*)var152
)->values
[3]=var162
;
4960 var163
= ((val
*(*)(val
* self
))(var152
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var152
); /* native_to_s on <var152:NativeArray[String]>*/
4962 varonce151
= var152
;
4964 nit___nit__AbstractCompilerVisitor___add(var_v2150
, var163
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v2150:SeparateCompilerVisitor>*/
4967 var164
= nit__separate_compiler___MEntity___const_color(var_m128
);
4970 nit___nit__AbstractCompilerVisitor___require_declaration(var_v2150
, var164
); /* Direct call abstract_compiler#AbstractCompilerVisitor#require_declaration on <var_v2150:SeparateCompilerVisitor>*/
4972 if (unlikely(varonce165
==NULL
)) {
4973 var166
= NEW_standard__NativeArray(9l, &type_standard__NativeArray__standard__String
);
4974 if (likely(varonce167
!=NULL
)) {
4975 var168
= varonce167
;
4978 var170
= standard___standard__NativeString___to_s_with_length(var169
, 2l);
4980 varonce167
= var168
;
4982 ((struct instance_standard__NativeArray
*)var166
)->values
[0]=var168
;
4983 if (likely(varonce171
!=NULL
)) {
4984 var172
= varonce171
;
4987 var174
= standard___standard__NativeString___to_s_with_length(var173
, 2l);
4989 varonce171
= var172
;
4991 ((struct instance_standard__NativeArray
*)var166
)->values
[2]=var172
;
4992 if (likely(varonce175
!=NULL
)) {
4993 var176
= varonce175
;
4996 var178
= standard___standard__NativeString___to_s_with_length(var177
, 6l);
4998 varonce175
= var176
;
5000 ((struct instance_standard__NativeArray
*)var166
)->values
[4]=var176
;
5001 if (likely(varonce179
!=NULL
)) {
5002 var180
= varonce179
;
5005 var182
= standard___standard__NativeString___to_s_with_length(var181
, 4l);
5007 varonce179
= var180
;
5009 ((struct instance_standard__NativeArray
*)var166
)->values
[6]=var180
;
5010 if (likely(varonce183
!=NULL
)) {
5011 var184
= varonce183
;
5014 var186
= standard___standard__NativeString___to_s_with_length(var185
, 2l);
5016 varonce183
= var184
;
5018 ((struct instance_standard__NativeArray
*)var166
)->values
[8]=var184
;
5020 var166
= varonce165
;
5024 var187
= nit___nit__SeparateRuntimeFunction___c_funptrtype(self
);
5026 ((struct instance_standard__NativeArray
*)var166
)->values
[1]=var187
;
5028 var188
= nit___nit__SeparateCompilerVisitor___class_info(var_v2150
, var_selfvar
);
5030 ((struct instance_standard__NativeArray
*)var166
)->values
[3]=var188
;
5032 var189
= nit__separate_compiler___MEntity___const_color(var_m128
);
5034 ((struct instance_standard__NativeArray
*)var166
)->values
[5]=var189
;
5036 { /* Inline separate_compiler#SeparateRuntimeFunction#arguments (self) on <self:SeparateRuntimeFunction> */
5037 var192
= self
->attrs
[COLOR_nit__separate_compiler__SeparateRuntimeFunction___arguments
].val
; /* _arguments on <self:SeparateRuntimeFunction> */
5038 if (unlikely(var192
== NULL
)) {
5039 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _arguments");
5040 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2212);
5044 RET_LABEL191
:(void)0;
5047 if (likely(varonce193
!=NULL
)) {
5048 var194
= varonce193
;
5051 var196
= standard___standard__NativeString___to_s_with_length(var195
, 2l);
5053 varonce193
= var194
;
5056 var197
= standard__string___Collection___join(var190
, var194
);
5058 ((struct instance_standard__NativeArray
*)var166
)->values
[7]=var197
;
5060 var198
= ((val
*(*)(val
* self
))(var166
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var166
); /* native_to_s on <var166:NativeArray[String]>*/
5062 varonce165
= var166
;
5063 var_call199
= var198
;
5064 if (var_ret
== NULL
) {
5065 var200
= 0; /* is null */
5067 var200
= 1; /* arg is null and recv is not */
5070 { /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
5071 var_other
= ((val
*)NULL
);
5073 var203
= ((short int(*)(val
* self
, val
* p0
))(var_ret
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_ret
, var_other
); /* == on <var_ret:nullable MType(MType)>*/
5078 RET_LABEL202
:(void)0;
5083 if (unlikely(varonce205
==NULL
)) {
5084 var206
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
5085 if (likely(varonce207
!=NULL
)) {
5086 var208
= varonce207
;
5089 var210
= standard___standard__NativeString___to_s_with_length(var209
, 7l);
5091 varonce207
= var208
;
5093 ((struct instance_standard__NativeArray
*)var206
)->values
[0]=var208
;
5095 var206
= varonce205
;
5098 ((struct instance_standard__NativeArray
*)var206
)->values
[1]=var_call199
;
5100 var211
= ((val
*(*)(val
* self
))(var206
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var206
); /* native_to_s on <var206:NativeArray[String]>*/
5102 varonce205
= var206
;
5104 nit___nit__AbstractCompilerVisitor___add(var_v2150
, var211
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v2150:SeparateCompilerVisitor>*/
5108 nit___nit__AbstractCompilerVisitor___add(var_v2150
, var_call199
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v2150:SeparateCompilerVisitor>*/
5111 if (likely(varonce212
!=NULL
)) {
5112 var213
= varonce212
;
5115 var215
= standard___standard__NativeString___to_s_with_length(var214
, 1l);
5117 varonce212
= var213
;
5120 nit___nit__AbstractCompilerVisitor___add(var_v2150
, var213
); /* Direct call abstract_compiler#AbstractCompilerVisitor#add on <var_v2150:SeparateCompilerVisitor>*/
5126 /* method separate_compiler#SeparateRuntimeFunction#init for (self: SeparateRuntimeFunction) */
5127 void nit___nit__SeparateRuntimeFunction___standard__kernel__Object__init(val
* self
) {
5129 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nit___nit__SeparateRuntimeFunction___standard__kernel__Object__init
]))(self
); /* init on <self:SeparateRuntimeFunction>*/
5133 /* method separate_compiler#MType#is_tagged for (self: MType): Bool */
5134 short int nit__separate_compiler___MType___is_tagged(val
* self
) {
5135 short int var
/* : Bool */;
5136 short int var1
/* : Bool */;
5137 var1
= self
->attrs
[COLOR_nit__separate_compiler__MType___is_tagged
].s
; /* _is_tagged on <self:MType> */
5142 /* method separate_compiler#MType#is_tagged= for (self: MType, Bool) */
5143 void nit__separate_compiler___MType___is_tagged_61d(val
* self
, short int p0
) {
5144 self
->attrs
[COLOR_nit__separate_compiler__MType___is_tagged
].s
= p0
; /* _is_tagged on <self:MType> */
5147 /* method separate_compiler#MEntity#const_color for (self: MEntity): String */
5148 val
* nit__separate_compiler___MEntity___const_color(val
* self
) {
5149 val
* var
/* : String */;
5150 short int var1
/* : Bool */;
5151 val
* var2
/* : String */;
5152 val
* var3
/* : String */;
5153 val
* var5
/* : NativeArray[String] */;
5154 static val
* varonce
;
5155 static val
* varonce6
;
5156 val
* var7
/* : String */;
5157 char* var8
/* : NativeString */;
5158 val
* var9
/* : FlatString */;
5159 val
* var10
/* : String */;
5160 val
* var11
/* : String */;
5161 var1
= self
->attrs
[COLOR_nit__separate_compiler__MEntity___const_color
].val
!= NULL
; /* _const_color on <self:MEntity> */
5163 var2
= self
->attrs
[COLOR_nit__separate_compiler__MEntity___const_color
].val
; /* _const_color on <self:MEntity> */
5164 if (unlikely(var2
== NULL
)) {
5165 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _const_color");
5166 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2330);
5171 if (unlikely(varonce
==NULL
)) {
5172 var5
= NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String
);
5173 if (likely(varonce6
!=NULL
)) {
5177 var9
= standard___standard__NativeString___to_s_with_length(var8
, 6l);
5181 ((struct instance_standard__NativeArray
*)var5
)->values
[0]=var7
;
5187 var10
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nit__model_base__MEntity__c_name
]))(self
); /* c_name on <self:MEntity>*/
5189 ((struct instance_standard__NativeArray
*)var5
)->values
[1]=var10
;
5191 var11
= ((val
*(*)(val
* self
))(var5
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var5
); /* native_to_s on <var5:NativeArray[String]>*/
5198 self
->attrs
[COLOR_nit__separate_compiler__MEntity___const_color
].val
= var3
; /* _const_color on <self:MEntity> */
5205 /* method separate_compiler#AMethPropdef#can_inline for (self: AMethPropdef): Bool */
5206 short int nit__separate_compiler___AMethPropdef___nit__abstract_compiler__APropdef__can_inline(val
* self
) {
5207 short int var
/* : Bool */;
5208 val
* var1
/* : nullable MPropDef */;
5209 val
* var3
/* : nullable MPropDef */;
5210 val
* var_m
/* var m: nullable MMethodDef */;
5211 short int var4
/* : Bool */;
5212 short int var5
/* : Bool */;
5213 short int var6
/* : Bool */;
5214 short int var7
/* : Bool */;
5215 val
* var_other
/* var other: nullable Object */;
5216 short int var9
/* : Bool */;
5217 short int var10
/* : Bool */;
5218 short int var_
/* var : Bool */;
5219 val
* var11
/* : MProperty */;
5220 val
* var13
/* : MProperty */;
5221 short int var14
/* : Bool */;
5222 short int var16
/* : Bool */;
5223 short int var_17
/* var : Bool */;
5224 short int var18
/* : Bool */;
5225 short int var20
/* : Bool */;
5226 short int var21
/* : Bool */;
5228 { /* Inline modelize_property#APropdef#mpropdef (self) on <self:AMethPropdef> */
5229 var3
= self
->attrs
[COLOR_nit__modelize_property__APropdef___mpropdef
].val
; /* _mpropdef on <self:AMethPropdef> */
5235 if (var_m
== NULL
) {
5236 var6
= 0; /* is null */
5238 var6
= 1; /* arg is null and recv is not */
5241 { /* Inline kernel#Object#!= (var_m,((val*)NULL)) on <var_m:nullable MMethodDef> */
5242 var_other
= ((val
*)NULL
);
5244 var9
= ((short int(*)(val
* self
, val
* p0
))(var_m
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_m
, var_other
); /* == on <var_m:nullable MMethodDef(MMethodDef)>*/
5256 { /* Inline model#MPropDef#mproperty (var_m) on <var_m:nullable MMethodDef(MMethodDef)> */
5257 var13
= var_m
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <var_m:nullable MMethodDef(MMethodDef)> */
5258 if (unlikely(var13
== NULL
)) {
5259 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
5260 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2212);
5264 RET_LABEL12
:(void)0;
5268 { /* Inline model#MMethod#is_init (var11) on <var11:MProperty(MMethod)> */
5269 var16
= var11
->attrs
[COLOR_nit__model__MMethod___is_init
].s
; /* _is_init on <var11:MProperty(MMethod)> */
5271 RET_LABEL15
:(void)0;
5281 { /* Inline model#MMethodDef#is_extern (var_m) on <var_m:nullable MMethodDef(MMethodDef)> */
5282 var20
= var_m
->attrs
[COLOR_nit__model__MMethodDef___is_extern
].s
; /* _is_extern on <var_m:nullable MMethodDef(MMethodDef)> */
5284 RET_LABEL19
:(void)0;
5297 var21
= ((short int(*)(val
* self
))(self
->class->vft
[COLOR_nit__separate_compiler___AMethPropdef___nit__abstract_compiler__APropdef__can_inline
]))(self
); /* can_inline on <self:AMethPropdef>*/
5304 /* method separate_compiler#AAttrPropdef#init_expr for (self: AAttrPropdef, AbstractCompilerVisitor, RuntimeVariable) */
5305 void nit__separate_compiler___AAttrPropdef___init_expr(val
* self
, val
* p0
, val
* p1
) {
5306 val
* var_v
/* var v: AbstractCompilerVisitor */;
5307 val
* var_recv
/* var recv: RuntimeVariable */;
5308 short int var
/* : Bool */;
5309 short int var1
/* : Bool */;
5310 short int var3
/* : Bool */;
5311 short int var_
/* var : Bool */;
5312 val
* var4
/* : AbstractCompiler */;
5313 val
* var6
/* : AbstractCompiler */;
5314 val
* var7
/* : ModelBuilder */;
5315 val
* var9
/* : ModelBuilder */;
5316 val
* var10
/* : ToolContext */;
5317 val
* var12
/* : ToolContext */;
5318 val
* var13
/* : OptionBool */;
5319 val
* var15
/* : OptionBool */;
5320 val
* var16
/* : nullable Object */;
5321 val
* var18
/* : nullable Object */;
5322 short int var19
/* : Bool */;
5323 val
* var20
/* : nullable MAttributeDef */;
5324 val
* var22
/* : nullable MAttributeDef */;
5325 val
* var23
/* : MProperty */;
5326 val
* var25
/* : MProperty */;
5327 val
* var_guard
/* var guard: MAttribute */;
5328 val
* var26
/* : RuntimeVariable */;
5332 ((void(*)(val
* self
, val
* p0
, val
* p1
))(self
->class->vft
[COLOR_nit__separate_compiler___AAttrPropdef___init_expr
]))(self
, p0
, p1
); /* init_expr on <self:AAttrPropdef>*/
5335 { /* Inline modelize_property#AAttrPropdef#is_lazy (self) on <self:AAttrPropdef> */
5336 var3
= self
->attrs
[COLOR_nit__modelize_property__AAttrPropdef___is_lazy
].s
; /* _is_lazy on <self:AAttrPropdef> */
5344 { /* Inline abstract_compiler#AbstractCompilerVisitor#compiler (var_v) on <var_v:AbstractCompilerVisitor> */
5345 var6
= var_v
->attrs
[COLOR_nit__abstract_compiler__AbstractCompilerVisitor___compiler
].val
; /* _compiler on <var_v:AbstractCompilerVisitor> */
5346 if (unlikely(var6
== NULL
)) {
5347 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _compiler");
5348 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 1102);
5356 { /* Inline abstract_compiler#AbstractCompiler#modelbuilder (var4) on <var4:AbstractCompiler> */
5357 var9
= var4
->attrs
[COLOR_nit__abstract_compiler__AbstractCompiler___modelbuilder
].val
; /* _modelbuilder on <var4:AbstractCompiler> */
5358 if (unlikely(var9
== NULL
)) {
5359 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
5360 PRINT_ERROR(" (%s:%d)\n", FILE_nit__abstract_compiler
, 522);
5368 { /* Inline modelbuilder_base#ModelBuilder#toolcontext (var7) on <var7:ModelBuilder> */
5369 var12
= var7
->attrs
[COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext
].val
; /* _toolcontext on <var7:ModelBuilder> */
5370 if (unlikely(var12
== NULL
)) {
5371 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
5372 PRINT_ERROR(" (%s:%d)\n", FILE_nit__modelbuilder_base
, 47);
5376 RET_LABEL11
:(void)0;
5380 { /* Inline separate_compiler#ToolContext#opt_no_union_attribute (var10) on <var10:ToolContext> */
5381 var15
= var10
->attrs
[COLOR_nit__separate_compiler__ToolContext___opt_no_union_attribute
].val
; /* _opt_no_union_attribute on <var10:ToolContext> */
5382 if (unlikely(var15
== NULL
)) {
5383 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_no_union_attribute");
5384 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 28);
5388 RET_LABEL14
:(void)0;
5392 { /* Inline opts#Option#value (var13) on <var13:OptionBool> */
5393 var18
= var13
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var13:OptionBool> */
5395 RET_LABEL17
:(void)0;
5398 var19
= (short int)((long)(var16
)>>2);
5405 { /* Inline modelize_property#AAttrPropdef#mlazypropdef (self) on <self:AAttrPropdef> */
5406 var22
= self
->attrs
[COLOR_nit__modelize_property__AAttrPropdef___mlazypropdef
].val
; /* _mlazypropdef on <self:AAttrPropdef> */
5408 RET_LABEL21
:(void)0;
5411 if (var20
== NULL
) {
5412 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5413 PRINT_ERROR(" (%s:%d)\n", FILE_nit__separate_compiler
, 2358);
5416 { /* Inline model#MPropDef#mproperty (var20) on <var20:nullable MAttributeDef> */
5417 if (unlikely(var20
== NULL
)) {
5418 PRINT_ERROR("Runtime error: %s", "Receiver is null");
5419 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2212);
5422 var25
= var20
->attrs
[COLOR_nit__model__MPropDef___mproperty
].val
; /* _mproperty on <var20:nullable MAttributeDef> */
5423 if (unlikely(var25
== NULL
)) {
5424 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
5425 PRINT_ERROR(" (%s:%d)\n", FILE_nit__model
, 2212);
5429 RET_LABEL24
:(void)0;
5434 var26
= nit___nit__AbstractCompilerVisitor___bool_instance(var_v
, 0);
5437 nit___nit__SeparateCompilerVisitor___nit__abstract_compiler__AbstractCompilerVisitor__write_attribute(var_v
, var_guard
, var_recv
, var26
); /* Direct call separate_compiler#SeparateCompilerVisitor#write_attribute on <var_v:AbstractCompilerVisitor>*/