1 #include "nitc__typing.sep.0.h"
2 /* method typing#AVarAssignExpr#accept_typing for (self: AVarAssignExpr, TypeVisitor) */
3 void nitc__typing___AVarAssignExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
4 val
* var_v
/* var v: TypeVisitor */;
5 val
* var
/* : nullable Variable */;
6 val
* var2
/* : nullable Variable */;
7 val
* var_variable
/* var variable: nullable Variable */;
8 short int var3
/* : Bool */;
9 short int var4
/* : Bool */;
10 val
* var_other
/* var other: nullable Object */;
11 short int var6
/* : Bool */;
12 short int var7
/* : Bool */;
13 val
* var8
/* : AExpr */;
14 val
* var10
/* : AExpr */;
15 val
* var11
/* : nullable MType */;
16 val
* var13
/* : nullable MType */;
17 val
* var14
/* : nullable MType */;
18 val
* var_mtype
/* var mtype: nullable MType */;
21 { /* Inline scope#AVarFormExpr#variable (self) on <self:AVarAssignExpr> */
22 var2
= self
->attrs
[COLOR_nitc__scope__AVarFormExpr___variable
].val
; /* _variable on <self:AVarAssignExpr> */
28 if (var_variable
== NULL
) {
29 var3
= 0; /* is null */
31 var3
= 1; /* arg is null and recv is not */
34 { /* Inline kernel#Object#!= (var_variable,((val*)NULL)) on <var_variable:nullable Variable> */
35 var_other
= ((val
*)NULL
);
37 var6
= ((short int(*)(val
* self
, val
* p0
))(var_variable
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_variable
, var_other
); /* == on <var_variable:nullable Variable(Variable)>*/
46 if (unlikely(!var3
)) {
47 PRINT_ERROR("Runtime error: %s", "Assert failed");
48 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 960);
52 { /* Inline parser_nodes#AAssignFormExpr#n_value (self) on <self:AVarAssignExpr> */
53 var10
= self
->attrs
[COLOR_nitc__parser_nodes__AAssignFormExpr___n_value
].val
; /* _n_value on <self:AVarAssignExpr> */
54 if (unlikely(var10
== NULL
)) {
55 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
56 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1992);
64 { /* Inline typing#Variable#declared_type (var_variable) on <var_variable:nullable Variable(Variable)> */
65 var13
= var_variable
->attrs
[COLOR_nitc__typing__Variable___declared_type
].val
; /* _declared_type on <var_variable:nullable Variable(Variable)> */
71 var14
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_subtype(var_v
, var8
, var11
);
75 nitc__typing___nitc__typing__TypeVisitor___set_variable(var_v
, self
, var_variable
, var_mtype
); /* Direct call typing#TypeVisitor#set_variable on <var_v:TypeVisitor>*/
78 { /* Inline typing#AExpr#is_typed= (self,1) on <self:AVarAssignExpr> */
79 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:AVarAssignExpr> */
85 /* method typing#AReassignFormExpr#reassign_callsite for (self: AReassignFormExpr): nullable CallSite */
86 val
* nitc__typing___AReassignFormExpr___reassign_callsite(val
* self
) {
87 val
* var
/* : nullable CallSite */;
88 val
* var1
/* : nullable CallSite */;
89 var1
= self
->attrs
[COLOR_nitc__typing__AReassignFormExpr___reassign_callsite
].val
; /* _reassign_callsite on <self:AReassignFormExpr> */
94 /* method typing#AReassignFormExpr#reassign_callsite= for (self: AReassignFormExpr, nullable CallSite) */
95 void nitc__typing___AReassignFormExpr___reassign_callsite_61d(val
* self
, val
* p0
) {
96 self
->attrs
[COLOR_nitc__typing__AReassignFormExpr___reassign_callsite
].val
= p0
; /* _reassign_callsite on <self:AReassignFormExpr> */
99 /* method typing#AReassignFormExpr#read_type for (self: AReassignFormExpr): nullable MType */
100 val
* nitc__typing___AReassignFormExpr___read_type(val
* self
) {
101 val
* var
/* : nullable MType */;
102 val
* var1
/* : nullable MType */;
103 var1
= self
->attrs
[COLOR_nitc__typing__AReassignFormExpr___read_type
].val
; /* _read_type on <self:AReassignFormExpr> */
108 /* method typing#AReassignFormExpr#read_type= for (self: AReassignFormExpr, nullable MType) */
109 void nitc__typing___AReassignFormExpr___read_type_61d(val
* self
, val
* p0
) {
110 self
->attrs
[COLOR_nitc__typing__AReassignFormExpr___read_type
].val
= p0
; /* _read_type on <self:AReassignFormExpr> */
113 /* method typing#AReassignFormExpr#resolve_reassignment for (self: AReassignFormExpr, TypeVisitor, MType, MType): nullable MType */
114 val
* nitc__typing___AReassignFormExpr___resolve_reassignment(val
* self
, val
* p0
, val
* p1
, val
* p2
) {
115 val
* var
/* : nullable MType */;
116 val
* var_v
/* var v: TypeVisitor */;
117 val
* var_readtype
/* var readtype: MType */;
118 val
* var_writetype
/* var writetype: MType */;
119 val
* var1
/* : AAssignOp */;
120 val
* var3
/* : AAssignOp */;
121 val
* var4
/* : String */;
122 val
* var_reassign_name
/* var reassign_name: String */;
123 val
* var6
/* : AAssignOp */;
124 val
* var8
/* : AAssignOp */;
125 val
* var9
/* : nullable CallSite */;
126 val
* var_callsite
/* var callsite: nullable CallSite */;
127 short int var10
/* : Bool */;
128 short int var11
/* : Bool */;
129 val
* var_other
/* var other: nullable Object */;
130 short int var13
/* : Bool */;
131 short int var15
/* : Bool */;
132 val
* var17
/* : MSignature */;
133 val
* var19
/* : MSignature */;
134 val
* var_msignature
/* var msignature: MSignature */;
135 val
* var20
/* : nullable MType */;
136 val
* var22
/* : nullable MType */;
137 val
* var_rettype
/* var rettype: nullable MType */;
138 short int var23
/* : Bool */;
139 long var24
/* : Int */;
140 short int var25
/* : Bool */;
141 short int var27
/* : Bool */;
142 short int var_
/* var : Bool */;
143 short int var28
/* : Bool */;
144 short int var29
/* : Bool */;
145 val
* var_other31
/* var other: nullable Object */;
146 short int var32
/* : Bool */;
147 short int var33
/* : Bool */;
148 val
* var34
/* : AExpr */;
149 val
* var36
/* : AExpr */;
150 val
* var37
/* : Array[MParameter] */;
151 val
* var39
/* : Array[MParameter] */;
152 val
* var40
/* : nullable Object */;
153 val
* var41
/* : MType */;
154 val
* var43
/* : MType */;
155 val
* var44
/* : nullable MType */;
156 val
* var_value_type
/* var value_type: nullable MType */;
157 short int var45
/* : Bool */;
158 short int var46
/* : Bool */;
159 short int var48
/* : Bool */;
160 short int var50
/* : Bool */;
161 val
* var51
/* : nullable MType */;
166 { /* Inline parser_nodes#AReassignFormExpr#n_assign_op (self) on <self:AReassignFormExpr> */
167 var3
= self
->attrs
[COLOR_nitc__parser_nodes__AReassignFormExpr___n_assign_op
].val
; /* _n_assign_op on <self:AReassignFormExpr> */
168 if (unlikely(var3
== NULL
)) {
169 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op");
170 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2000);
178 var4
= ((val
*(*)(val
* self
))(var1
->class->vft
[COLOR_nitc__parser_nodes__AAssignOp__operator
]))(var1
); /* operator on <var1:AAssignOp>*/
180 var_reassign_name
= var4
;
182 { /* Inline typing#AReassignFormExpr#read_type= (self,var_readtype) on <self:AReassignFormExpr> */
183 self
->attrs
[COLOR_nitc__typing__AReassignFormExpr___read_type
].val
= var_readtype
; /* _read_type on <self:AReassignFormExpr> */
188 { /* Inline parser_nodes#AReassignFormExpr#n_assign_op (self) on <self:AReassignFormExpr> */
189 var8
= self
->attrs
[COLOR_nitc__parser_nodes__AReassignFormExpr___n_assign_op
].val
; /* _n_assign_op on <self:AReassignFormExpr> */
190 if (unlikely(var8
== NULL
)) {
191 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op");
192 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2000);
200 var9
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, var6
, var_readtype
, var_reassign_name
, 0);
203 if (var_callsite
== NULL
) {
204 var10
= 1; /* is null */
206 var10
= 0; /* arg is null but recv is not */
209 { /* Inline kernel#Object#== (var_callsite,((val*)NULL)) on <var_callsite:nullable CallSite> */
210 var_other
= ((val
*)NULL
);
212 { /* Inline kernel#Object#is_same_instance (var_callsite,var_other) on <var_callsite:nullable CallSite(CallSite)> */
213 var15
= var_callsite
== var_other
;
231 { /* Inline typing#AReassignFormExpr#reassign_callsite= (self,var_callsite) on <self:AReassignFormExpr> */
232 self
->attrs
[COLOR_nitc__typing__AReassignFormExpr___reassign_callsite
].val
= var_callsite
; /* _reassign_callsite on <self:AReassignFormExpr> */
237 { /* Inline typing#CallSite#msignature (var_callsite) on <var_callsite:nullable CallSite(CallSite)> */
238 var19
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___msignature
].val
; /* _msignature on <var_callsite:nullable CallSite(CallSite)> */
239 if (unlikely(var19
== NULL
)) {
240 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature");
241 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 660);
248 var_msignature
= var17
;
250 { /* Inline model#MSignature#return_mtype (var_msignature) on <var_msignature:MSignature> */
251 var22
= var_msignature
->attrs
[COLOR_nitc__model__MSignature___return_mtype
].val
; /* _return_mtype on <var_msignature:MSignature> */
258 var24
= nitc___nitc__MSignature___arity(var_msignature
);
261 { /* Inline kernel#Int#== (var24,1l) on <var24:Int> */
270 if (var_rettype
== NULL
) {
271 var28
= 0; /* is null */
273 var28
= 1; /* arg is null and recv is not */
276 { /* Inline kernel#Object#!= (var_rettype,((val*)NULL)) on <var_rettype:nullable MType> */
277 var_other31
= ((val
*)NULL
);
279 var32
= ((short int(*)(val
* self
, val
* p0
))(var_rettype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_rettype
, var_other31
); /* == on <var_rettype:nullable MType(MType)>*/
292 if (unlikely(!var23
)) {
293 PRINT_ERROR("Runtime error: %s", "Assert failed");
294 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 993);
298 { /* Inline parser_nodes#AReassignFormExpr#n_value (self) on <self:AReassignFormExpr> */
299 var36
= self
->attrs
[COLOR_nitc__parser_nodes__AReassignFormExpr___n_value
].val
; /* _n_value on <self:AReassignFormExpr> */
300 if (unlikely(var36
== NULL
)) {
301 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
302 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2003);
310 { /* Inline model#MSignature#mparameters (var_msignature) on <var_msignature:MSignature> */
311 var39
= var_msignature
->attrs
[COLOR_nitc__model__MSignature___mparameters
].val
; /* _mparameters on <var_msignature:MSignature> */
312 if (unlikely(var39
== NULL
)) {
313 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
314 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1783);
322 var40
= core___core__SequenceRead___Collection__first(var37
);
325 { /* Inline model#MParameter#mtype (var40) on <var40:nullable Object(MParameter)> */
326 var43
= var40
->attrs
[COLOR_nitc__model__MParameter___mtype
].val
; /* _mtype on <var40:nullable Object(MParameter)> */
327 if (unlikely(var43
== NULL
)) {
328 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
329 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1900);
337 var44
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_subtype(var_v
, var34
, var41
);
339 var_value_type
= var44
;
340 if (var_value_type
== NULL
) {
341 var45
= 1; /* is null */
343 var45
= 0; /* arg is null but recv is not */
346 { /* Inline kernel#Object#== (var_value_type,((val*)NULL)) on <var_value_type:nullable MType> */
347 var_other
= ((val
*)NULL
);
349 { /* Inline kernel#Object#is_same_instance (var_value_type,var_other) on <var_value_type:nullable MType(MType)> */
350 var50
= var_value_type
== var_other
;
368 var51
= nitc__typing___nitc__typing__TypeVisitor___check_subtype(var_v
, self
, var_rettype
, var_writetype
, 0);
375 /* method typing#AVarReassignExpr#accept_typing for (self: AVarReassignExpr, TypeVisitor) */
376 void nitc__typing___AVarReassignExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
377 val
* var_v
/* var v: TypeVisitor */;
378 val
* var
/* : nullable Variable */;
379 val
* var2
/* : nullable Variable */;
380 val
* var_variable
/* var variable: nullable Variable */;
381 short int var3
/* : Bool */;
382 short int var4
/* : Bool */;
383 val
* var_other
/* var other: nullable Object */;
384 short int var6
/* : Bool */;
385 short int var7
/* : Bool */;
386 val
* var8
/* : nullable MType */;
387 val
* var_readtype
/* var readtype: nullable MType */;
388 short int var9
/* : Bool */;
389 short int var10
/* : Bool */;
390 val
* var_other12
/* var other: nullable Object */;
391 short int var13
/* : Bool */;
392 short int var15
/* : Bool */;
393 val
* var17
/* : nullable MType */;
394 val
* var19
/* : nullable MType */;
395 val
* var_writetype
/* var writetype: nullable MType */;
396 short int var20
/* : Bool */;
397 short int var21
/* : Bool */;
398 short int var23
/* : Bool */;
399 short int var25
/* : Bool */;
400 val
* var26
/* : nullable MType */;
401 val
* var_rettype
/* var rettype: nullable MType */;
402 short int var27
/* : Bool */;
403 short int var28
/* : Bool */;
404 short int var30
/* : Bool */;
405 short int var31
/* : Bool */;
408 { /* Inline scope#AVarFormExpr#variable (self) on <self:AVarReassignExpr> */
409 var2
= self
->attrs
[COLOR_nitc__scope__AVarFormExpr___variable
].val
; /* _variable on <self:AVarReassignExpr> */
415 if (var_variable
== NULL
) {
416 var3
= 0; /* is null */
418 var3
= 1; /* arg is null and recv is not */
421 { /* Inline kernel#Object#!= (var_variable,((val*)NULL)) on <var_variable:nullable Variable> */
422 var_other
= ((val
*)NULL
);
424 var6
= ((short int(*)(val
* self
, val
* p0
))(var_variable
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_variable
, var_other
); /* == on <var_variable:nullable Variable(Variable)>*/
433 if (unlikely(!var3
)) {
434 PRINT_ERROR("Runtime error: %s", "Assert failed");
435 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1007);
439 var8
= nitc__typing___nitc__typing__TypeVisitor___get_variable(var_v
, self
, var_variable
);
442 if (var_readtype
== NULL
) {
443 var9
= 1; /* is null */
445 var9
= 0; /* arg is null but recv is not */
448 { /* Inline kernel#Object#== (var_readtype,((val*)NULL)) on <var_readtype:nullable MType> */
449 var_other12
= ((val
*)NULL
);
451 { /* Inline kernel#Object#is_same_instance (var_readtype,var_other12) on <var_readtype:nullable MType(MType)> */
452 var15
= var_readtype
== var_other12
;
469 { /* Inline typing#AReassignFormExpr#read_type= (self,var_readtype) on <self:AVarReassignExpr> */
470 self
->attrs
[COLOR_nitc__typing__AReassignFormExpr___read_type
].val
= var_readtype
; /* _read_type on <self:AVarReassignExpr> */
475 { /* Inline typing#Variable#declared_type (var_variable) on <var_variable:nullable Variable(Variable)> */
476 var19
= var_variable
->attrs
[COLOR_nitc__typing__Variable___declared_type
].val
; /* _declared_type on <var_variable:nullable Variable(Variable)> */
481 var_writetype
= var17
;
482 if (var_writetype
== NULL
) {
483 var20
= 1; /* is null */
485 var20
= 0; /* arg is null but recv is not */
488 { /* Inline kernel#Object#== (var_writetype,((val*)NULL)) on <var_writetype:nullable MType> */
489 var_other12
= ((val
*)NULL
);
491 { /* Inline kernel#Object#is_same_instance (var_writetype,var_other12) on <var_writetype:nullable MType(MType)> */
492 var25
= var_writetype
== var_other12
;
509 var26
= nitc__typing___AReassignFormExpr___resolve_reassignment(self
, var_v
, var_readtype
, var_writetype
);
513 nitc__typing___nitc__typing__TypeVisitor___set_variable(var_v
, self
, var_variable
, var_rettype
); /* Direct call typing#TypeVisitor#set_variable on <var_v:TypeVisitor>*/
515 if (var_rettype
== NULL
) {
516 var27
= 0; /* is null */
518 var27
= 1; /* arg is null and recv is not */
521 { /* Inline kernel#Object#!= (var_rettype,((val*)NULL)) on <var_rettype:nullable MType> */
522 var_other
= ((val
*)NULL
);
524 var30
= ((short int(*)(val
* self
, val
* p0
))(var_rettype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_rettype
, var_other
); /* == on <var_rettype:nullable MType(MType)>*/
534 { /* Inline typing#AExpr#is_typed= (self,var27) on <self:AVarReassignExpr> */
535 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= var27
; /* _is_typed on <self:AVarReassignExpr> */
541 /* method typing#AContinueExpr#accept_typing for (self: AContinueExpr, TypeVisitor) */
542 void nitc__typing___AContinueExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
543 val
* var_v
/* var v: TypeVisitor */;
544 val
* var
/* : nullable AExpr */;
545 val
* var2
/* : nullable AExpr */;
546 val
* var_nexpr
/* var nexpr: nullable AExpr */;
547 short int var3
/* : Bool */;
548 short int var4
/* : Bool */;
549 val
* var_other
/* var other: nullable Object */;
550 short int var6
/* : Bool */;
551 short int var7
/* : Bool */;
552 val
* var8
/* : nullable MType */;
555 { /* Inline parser_nodes#AEscapeExpr#n_expr (self) on <self:AContinueExpr> */
556 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AEscapeExpr___n_expr
].val
; /* _n_expr on <self:AContinueExpr> */
562 if (var_nexpr
== NULL
) {
563 var3
= 0; /* is null */
565 var3
= 1; /* arg is null and recv is not */
568 { /* Inline kernel#Object#!= (var_nexpr,((val*)NULL)) on <var_nexpr:nullable AExpr> */
569 var_other
= ((val
*)NULL
);
571 var6
= ((short int(*)(val
* self
, val
* p0
))(var_nexpr
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nexpr
, var_other
); /* == on <var_nexpr:nullable AExpr(AExpr)>*/
582 var8
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var_nexpr
);
587 { /* Inline typing#AExpr#is_typed= (self,1) on <self:AContinueExpr> */
588 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:AContinueExpr> */
594 /* method typing#ABreakExpr#accept_typing for (self: ABreakExpr, TypeVisitor) */
595 void nitc__typing___ABreakExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
596 val
* var_v
/* var v: TypeVisitor */;
597 val
* var
/* : nullable AExpr */;
598 val
* var2
/* : nullable AExpr */;
599 val
* var_nexpr
/* var nexpr: nullable AExpr */;
600 short int var3
/* : Bool */;
601 short int var4
/* : Bool */;
602 val
* var_other
/* var other: nullable Object */;
603 short int var6
/* : Bool */;
604 short int var7
/* : Bool */;
605 val
* var8
/* : nullable MType */;
608 { /* Inline parser_nodes#AEscapeExpr#n_expr (self) on <self:ABreakExpr> */
609 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AEscapeExpr___n_expr
].val
; /* _n_expr on <self:ABreakExpr> */
615 if (var_nexpr
== NULL
) {
616 var3
= 0; /* is null */
618 var3
= 1; /* arg is null and recv is not */
621 { /* Inline kernel#Object#!= (var_nexpr,((val*)NULL)) on <var_nexpr:nullable AExpr> */
622 var_other
= ((val
*)NULL
);
624 var6
= ((short int(*)(val
* self
, val
* p0
))(var_nexpr
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nexpr
, var_other
); /* == on <var_nexpr:nullable AExpr(AExpr)>*/
635 var8
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var_nexpr
);
640 { /* Inline typing#AExpr#is_typed= (self,1) on <self:ABreakExpr> */
641 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:ABreakExpr> */
647 /* method typing#AReturnExpr#accept_typing for (self: AReturnExpr, TypeVisitor) */
648 void nitc__typing___AReturnExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
649 val
* var_v
/* var v: TypeVisitor */;
650 val
* var
/* : nullable AExpr */;
651 val
* var2
/* : nullable AExpr */;
652 val
* var_nexpr
/* var nexpr: nullable AExpr */;
653 val
* var3
/* : nullable MPropDef */;
654 val
* var5
/* : nullable MPropDef */;
655 val
* var_mpropdef
/* var mpropdef: nullable MPropDef */;
656 short int var6
/* : Bool */;
659 val
* var7
/* : nullable MSignature */;
660 val
* var9
/* : nullable MSignature */;
661 val
* var10
/* : nullable MType */;
662 val
* var12
/* : nullable MType */;
663 val
* var_ret_type
/* var ret_type: nullable Object */;
664 short int var13
/* : Bool */;
667 val
* var16
/* : nullable MType */;
668 val
* var18
/* : nullable MType */;
669 short int var19
/* : Bool */;
670 short int var20
/* : Bool */;
671 val
* var_other
/* var other: nullable Object */;
672 short int var22
/* : Bool */;
673 short int var23
/* : Bool */;
674 short int var24
/* : Bool */;
675 short int var25
/* : Bool */;
676 short int var27
/* : Bool */;
677 short int var28
/* : Bool */;
678 val
* var29
/* : nullable MType */;
679 val
* var30
/* : nullable MType */;
681 val
* var31
/* : String */;
682 char* var32
/* : NativeString */;
683 val
* var33
/* : String */;
684 short int var34
/* : Bool */;
685 short int var35
/* : Bool */;
686 short int var37
/* : Bool */;
687 short int var38
/* : Bool */;
688 static val
* varonce39
;
689 val
* var40
/* : String */;
690 char* var41
/* : NativeString */;
691 val
* var42
/* : String */;
694 { /* Inline parser_nodes#AReturnExpr#n_expr (self) on <self:AReturnExpr> */
695 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AReturnExpr___n_expr
].val
; /* _n_expr on <self:AReturnExpr> */
702 { /* Inline typing#TypeVisitor#mpropdef (var_v) on <var_v:TypeVisitor> */
703 var5
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___mpropdef
].val
; /* _mpropdef on <var_v:TypeVisitor> */
709 /* <var_mpropdef:nullable MPropDef> isa MMethodDef */
710 cltype
= type_nitc__MMethodDef
.color
;
711 idtype
= type_nitc__MMethodDef
.id
;
712 if(var_mpropdef
== NULL
) {
715 if(cltype
>= var_mpropdef
->type
->table_size
) {
718 var6
= var_mpropdef
->type
->type_table
[cltype
] == idtype
;
723 { /* Inline model#MMethodDef#msignature (var_mpropdef) on <var_mpropdef:nullable MPropDef(MMethodDef)> */
724 var9
= var_mpropdef
->attrs
[COLOR_nitc__model__MMethodDef___msignature
].val
; /* _msignature on <var_mpropdef:nullable MPropDef(MMethodDef)> */
730 PRINT_ERROR("Runtime error: %s", "Receiver is null");
731 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1055);
734 { /* Inline model#MSignature#return_mtype (var7) on <var7:nullable MSignature> */
735 if (unlikely(var7
== NULL
)) {
736 PRINT_ERROR("Runtime error: %s", "Receiver is null");
737 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1795);
740 var12
= var7
->attrs
[COLOR_nitc__model__MSignature___return_mtype
].val
; /* _return_mtype on <var7:nullable MSignature> */
745 var_ret_type
= var10
;
747 /* <var_mpropdef:nullable MPropDef> isa MAttributeDef */
748 cltype14
= type_nitc__MAttributeDef
.color
;
749 idtype15
= type_nitc__MAttributeDef
.id
;
750 if(var_mpropdef
== NULL
) {
753 if(cltype14
>= var_mpropdef
->type
->table_size
) {
756 var13
= var_mpropdef
->type
->type_table
[cltype14
] == idtype15
;
761 { /* Inline model#MAttributeDef#static_mtype (var_mpropdef) on <var_mpropdef:nullable MPropDef(MAttributeDef)> */
762 var18
= var_mpropdef
->attrs
[COLOR_nitc__model__MAttributeDef___static_mtype
].val
; /* _static_mtype on <var_mpropdef:nullable MPropDef(MAttributeDef)> */
767 var_ret_type
= var16
;
769 PRINT_ERROR("Runtime error: %s", "Aborted");
770 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1059);
774 if (var_nexpr
== NULL
) {
775 var19
= 0; /* is null */
777 var19
= 1; /* arg is null and recv is not */
780 { /* Inline kernel#Object#!= (var_nexpr,((val*)NULL)) on <var_nexpr:nullable AExpr> */
781 var_other
= ((val
*)NULL
);
783 var22
= ((short int(*)(val
* self
, val
* p0
))(var_nexpr
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_nexpr
, var_other
); /* == on <var_nexpr:nullable AExpr(AExpr)>*/
793 if (var_ret_type
== NULL
) {
794 var24
= 0; /* is null */
796 var24
= 1; /* arg is null and recv is not */
799 { /* Inline kernel#Object#!= (var_ret_type,((val*)NULL)) on <var_ret_type:nullable Object(nullable MType)> */
800 var_other
= ((val
*)NULL
);
802 var27
= ((short int(*)(val
* self
, val
* p0
))(var_ret_type
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_ret_type
, var_other
); /* == on <var_ret_type:nullable MType(MType)>*/
813 var29
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_subtype(var_v
, var_nexpr
, var_ret_type
);
817 var30
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var_nexpr
);
819 if (likely(varonce
!=NULL
)) {
822 var32
= "Error: `return` with value in a procedure.";
823 var33
= core__flat___NativeString___to_s_full(var32
, 42l, 42l);
828 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, var_nexpr
, var31
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
833 if (var_ret_type
== NULL
) {
834 var34
= 0; /* is null */
836 var34
= 1; /* arg is null and recv is not */
839 { /* Inline kernel#Object#!= (var_ret_type,((val*)NULL)) on <var_ret_type:nullable Object(nullable MType)> */
840 var_other
= ((val
*)NULL
);
842 var37
= ((short int(*)(val
* self
, val
* p0
))(var_ret_type
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_ret_type
, var_other
); /* == on <var_ret_type:nullable MType(MType)>*/
852 if (likely(varonce39
!=NULL
)) {
855 var41
= "Error: `return` without value in a function.";
856 var42
= core__flat___NativeString___to_s_full(var41
, 44l, 44l);
861 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var40
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
868 { /* Inline typing#AExpr#is_typed= (self,1) on <self:AReturnExpr> */
869 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:AReturnExpr> */
875 /* method typing#AAbortExpr#accept_typing for (self: AAbortExpr, TypeVisitor) */
876 void nitc__typing___AAbortExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
877 val
* var_v
/* var v: TypeVisitor */;
880 { /* Inline typing#AExpr#is_typed= (self,1) on <self:AAbortExpr> */
881 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:AAbortExpr> */
887 /* method typing#AIfExpr#accept_typing for (self: AIfExpr, TypeVisitor) */
888 void nitc__typing___AIfExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
889 val
* var_v
/* var v: TypeVisitor */;
890 val
* var
/* : AExpr */;
891 val
* var2
/* : AExpr */;
892 val
* var3
/* : nullable MType */;
893 val
* var4
/* : nullable AExpr */;
894 val
* var6
/* : nullable AExpr */;
895 val
* var7
/* : nullable AExpr */;
896 val
* var9
/* : nullable AExpr */;
897 short int var11
/* : Bool */;
898 val
* var12
/* : nullable AExpr */;
899 val
* var14
/* : nullable AExpr */;
900 short int var15
/* : Bool */;
901 short int var16
/* : Bool */;
902 val
* var_other
/* var other: nullable Object */;
903 short int var18
/* : Bool */;
904 short int var19
/* : Bool */;
905 short int var_
/* var : Bool */;
906 val
* var20
/* : nullable AExpr */;
907 val
* var22
/* : nullable AExpr */;
908 short int var23
/* : Bool */;
909 short int var24
/* : Bool */;
910 val
* var_other26
/* var other: nullable Object */;
911 short int var27
/* : Bool */;
912 short int var29
/* : Bool */;
913 val
* var30
/* : nullable AExpr */;
914 val
* var32
/* : nullable AExpr */;
915 val
* var33
/* : nullable MType */;
918 { /* Inline parser_nodes#AIfExpr#n_expr (self) on <self:AIfExpr> */
919 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AIfExpr___n_expr
].val
; /* _n_expr on <self:AIfExpr> */
920 if (unlikely(var2
== NULL
)) {
921 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
922 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1843);
930 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var
);
933 { /* Inline parser_nodes#AIfExpr#n_then (self) on <self:AIfExpr> */
934 var6
= self
->attrs
[COLOR_nitc__parser_nodes__AIfExpr___n_then
].val
; /* _n_then on <self:AIfExpr> */
940 nitc__typing___nitc__typing__TypeVisitor___visit_stmt(var_v
, var4
); /* Direct call typing#TypeVisitor#visit_stmt on <var_v:TypeVisitor>*/
943 { /* Inline parser_nodes#AIfExpr#n_else (self) on <self:AIfExpr> */
944 var9
= self
->attrs
[COLOR_nitc__parser_nodes__AIfExpr___n_else
].val
; /* _n_else on <self:AIfExpr> */
950 nitc__typing___nitc__typing__TypeVisitor___visit_stmt(var_v
, var7
); /* Direct call typing#TypeVisitor#visit_stmt on <var_v:TypeVisitor>*/
953 { /* Inline typing#AExpr#is_typed= (self,1) on <self:AIfExpr> */
954 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:AIfExpr> */
959 { /* Inline parser_nodes#AIfExpr#n_then (self) on <self:AIfExpr> */
960 var14
= self
->attrs
[COLOR_nitc__parser_nodes__AIfExpr___n_then
].val
; /* _n_then on <self:AIfExpr> */
966 var15
= 0; /* is null */
968 var15
= 1; /* arg is null and recv is not */
971 { /* Inline kernel#Object#!= (var12,((val*)NULL)) on <var12:nullable AExpr> */
972 var_other
= ((val
*)NULL
);
974 var18
= ((short int(*)(val
* self
, val
* p0
))(var12
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var12
, var_other
); /* == on <var12:nullable AExpr(AExpr)>*/
986 { /* Inline parser_nodes#AIfExpr#n_else (self) on <self:AIfExpr> */
987 var22
= self
->attrs
[COLOR_nitc__parser_nodes__AIfExpr___n_else
].val
; /* _n_else on <self:AIfExpr> */
993 var23
= 1; /* is null */
995 var23
= 0; /* arg is null but recv is not */
998 { /* Inline kernel#Object#== (var20,((val*)NULL)) on <var20:nullable AExpr> */
999 var_other26
= ((val
*)NULL
);
1001 { /* Inline kernel#Object#is_same_instance (var20,var_other26) on <var20:nullable AExpr(AExpr)> */
1002 var29
= var20
== var_other26
;
1005 RET_LABEL28
:(void)0;
1010 RET_LABEL25
:(void)0;
1020 { /* Inline parser_nodes#AIfExpr#n_then (self) on <self:AIfExpr> */
1021 var32
= self
->attrs
[COLOR_nitc__parser_nodes__AIfExpr___n_then
].val
; /* _n_then on <self:AIfExpr> */
1023 RET_LABEL31
:(void)0;
1026 if (var30
== NULL
) {
1027 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1028 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1095);
1031 var33
= ((val
*(*)(val
* self
))(var30
->class->vft
[COLOR_nitc__typing__AExpr__mtype
]))(var30
); /* mtype on <var30:nullable AExpr>*/
1034 { /* Inline typing#AExpr#mtype= (self,var33) on <self:AIfExpr> */
1035 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var33
; /* _mtype on <self:AIfExpr> */
1036 RET_LABEL34
:(void)0;
1043 /* method typing#AIfexprExpr#accept_typing for (self: AIfexprExpr, TypeVisitor) */
1044 void nitc__typing___AIfexprExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
1045 val
* var_v
/* var v: TypeVisitor */;
1046 val
* var
/* : AExpr */;
1047 val
* var2
/* : AExpr */;
1048 val
* var3
/* : nullable MType */;
1049 val
* var4
/* : AExpr */;
1050 val
* var6
/* : AExpr */;
1051 val
* var7
/* : nullable MType */;
1052 val
* var_t1
/* var t1: nullable MType */;
1053 val
* var8
/* : AExpr */;
1054 val
* var10
/* : AExpr */;
1055 val
* var11
/* : nullable MType */;
1056 val
* var_t2
/* var t2: nullable MType */;
1057 short int var12
/* : Bool */;
1058 short int var13
/* : Bool */;
1059 short int var14
/* : Bool */;
1060 val
* var_other
/* var other: nullable Object */;
1061 short int var16
/* : Bool */;
1062 short int var18
/* : Bool */;
1063 short int var_
/* var : Bool */;
1064 short int var19
/* : Bool */;
1065 short int var20
/* : Bool */;
1066 short int var22
/* : Bool */;
1067 short int var24
/* : Bool */;
1068 val
* var25
/* : Array[MType] */;
1069 val
* var_26
/* var : Array[MType] */;
1070 val
* var27
/* : nullable MType */;
1071 val
* var_t
/* var t: nullable MType */;
1072 short int var28
/* : Bool */;
1073 short int var29
/* : Bool */;
1074 short int var31
/* : Bool */;
1075 short int var33
/* : Bool */;
1076 val
* var34
/* : NativeArray[String] */;
1077 static val
* varonce
;
1078 static val
* varonce35
;
1079 val
* var36
/* : String */;
1080 char* var37
/* : NativeString */;
1081 val
* var38
/* : String */;
1082 static val
* varonce39
;
1083 val
* var40
/* : String */;
1084 char* var41
/* : NativeString */;
1085 val
* var42
/* : String */;
1086 static val
* varonce43
;
1087 val
* var44
/* : String */;
1088 char* var45
/* : NativeString */;
1089 val
* var46
/* : String */;
1090 val
* var47
/* : String */;
1091 val
* var48
/* : String */;
1092 val
* var49
/* : String */;
1095 { /* Inline parser_nodes#AIfexprExpr#n_expr (self) on <self:AIfexprExpr> */
1096 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AIfexprExpr___n_expr
].val
; /* _n_expr on <self:AIfexprExpr> */
1097 if (unlikely(var2
== NULL
)) {
1098 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
1099 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1866);
1107 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var
);
1110 { /* Inline parser_nodes#AIfexprExpr#n_then (self) on <self:AIfexprExpr> */
1111 var6
= self
->attrs
[COLOR_nitc__parser_nodes__AIfexprExpr___n_then
].val
; /* _n_then on <self:AIfexprExpr> */
1112 if (unlikely(var6
== NULL
)) {
1113 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_then");
1114 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1872);
1122 var7
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var4
);
1126 { /* Inline parser_nodes#AIfexprExpr#n_else (self) on <self:AIfexprExpr> */
1127 var10
= self
->attrs
[COLOR_nitc__parser_nodes__AIfexprExpr___n_else
].val
; /* _n_else on <self:AIfexprExpr> */
1128 if (unlikely(var10
== NULL
)) {
1129 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_else");
1130 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1878);
1138 var11
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var8
);
1141 if (var_t1
== NULL
) {
1142 var13
= 1; /* is null */
1144 var13
= 0; /* arg is null but recv is not */
1147 { /* Inline kernel#Object#== (var_t1,((val*)NULL)) on <var_t1:nullable MType> */
1148 var_other
= ((val
*)NULL
);
1150 { /* Inline kernel#Object#is_same_instance (var_t1,var_other) on <var_t1:nullable MType(MType)> */
1151 var18
= var_t1
== var_other
;
1154 RET_LABEL17
:(void)0;
1159 RET_LABEL15
:(void)0;
1167 if (var_t2
== NULL
) {
1168 var19
= 1; /* is null */
1170 var19
= 0; /* arg is null but recv is not */
1173 { /* Inline kernel#Object#== (var_t2,((val*)NULL)) on <var_t2:nullable MType> */
1174 var_other
= ((val
*)NULL
);
1176 { /* Inline kernel#Object#is_same_instance (var_t2,var_other) on <var_t2:nullable MType(MType)> */
1177 var24
= var_t2
== var_other
;
1180 RET_LABEL23
:(void)0;
1185 RET_LABEL21
:(void)0;
1195 var25
= NEW_core__Array(&type_core__Array__nitc__MType
);
1197 core___core__Array___with_capacity(var25
, 2l); /* Direct call array#Array#with_capacity on <var25:Array[MType]>*/
1201 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_26
, var_t1
); /* Direct call array#AbstractArray#push on <var_26:Array[MType]>*/
1204 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_26
, var_t2
); /* Direct call array#AbstractArray#push on <var_26:Array[MType]>*/
1207 var27
= nitc__typing___nitc__typing__TypeVisitor___merge_types(var_v
, self
, var_26
);
1210 if (var_t
== NULL
) {
1211 var28
= 1; /* is null */
1213 var28
= 0; /* arg is null but recv is not */
1216 { /* Inline kernel#Object#== (var_t,((val*)NULL)) on <var_t:nullable MType> */
1217 var_other
= ((val
*)NULL
);
1219 { /* Inline kernel#Object#is_same_instance (var_t,var_other) on <var_t:nullable MType(MType)> */
1220 var33
= var_t
== var_other
;
1223 RET_LABEL32
:(void)0;
1228 RET_LABEL30
:(void)0;
1233 if (unlikely(varonce
==NULL
)) {
1234 var34
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
1235 if (likely(varonce35
!=NULL
)) {
1238 var37
= "Type Error: ambiguous type `";
1239 var38
= core__flat___NativeString___to_s_full(var37
, 28l, 28l);
1243 ((struct instance_core__NativeArray
*)var34
)->values
[0]=var36
;
1244 if (likely(varonce39
!=NULL
)) {
1248 var42
= core__flat___NativeString___to_s_full(var41
, 6l, 6l);
1252 ((struct instance_core__NativeArray
*)var34
)->values
[2]=var40
;
1253 if (likely(varonce43
!=NULL
)) {
1257 var46
= core__flat___NativeString___to_s_full(var45
, 2l, 2l);
1261 ((struct instance_core__NativeArray
*)var34
)->values
[4]=var44
;
1267 var47
= ((val
*(*)(val
* self
))(var_t1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t1
); /* to_s on <var_t1:nullable MType(MType)>*/
1269 ((struct instance_core__NativeArray
*)var34
)->values
[1]=var47
;
1271 var48
= ((val
*(*)(val
* self
))(var_t2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t2
); /* to_s on <var_t2:nullable MType(MType)>*/
1273 ((struct instance_core__NativeArray
*)var34
)->values
[3]=var48
;
1275 var49
= ((val
*(*)(val
* self
))(var34
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var34
); /* native_to_s on <var34:NativeArray[String]>*/
1279 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var49
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
1284 { /* Inline typing#AExpr#mtype= (self,var_t) on <self:AIfexprExpr> */
1285 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var_t
; /* _mtype on <self:AIfexprExpr> */
1286 RET_LABEL50
:(void)0;
1291 /* method typing#ADoExpr#accept_typing for (self: ADoExpr, TypeVisitor) */
1292 void nitc__typing___ADoExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
1293 val
* var_v
/* var v: TypeVisitor */;
1294 val
* var
/* : nullable AExpr */;
1295 val
* var2
/* : nullable AExpr */;
1298 { /* Inline parser_nodes#ADoExpr#n_block (self) on <self:ADoExpr> */
1299 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ADoExpr___n_block
].val
; /* _n_block on <self:ADoExpr> */
1305 nitc__typing___nitc__typing__TypeVisitor___visit_stmt(var_v
, var
); /* Direct call typing#TypeVisitor#visit_stmt on <var_v:TypeVisitor>*/
1308 { /* Inline typing#AExpr#is_typed= (self,1) on <self:ADoExpr> */
1309 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:ADoExpr> */
1315 /* method typing#AWhileExpr#accept_typing for (self: AWhileExpr, TypeVisitor) */
1316 void nitc__typing___AWhileExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
1317 val
* var_v
/* var v: TypeVisitor */;
1318 val
* var
/* : AExpr */;
1319 val
* var3
/* : AExpr */;
1320 val
* var4
/* : nullable MType */;
1321 val
* var5
/* : nullable AExpr */;
1322 val
* var7
/* : nullable AExpr */;
1325 { /* Inline typing#TypeVisitor#has_loop= (var_v,1) on <var_v:TypeVisitor> */
1326 var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___has_loop
].s
= 1; /* _has_loop on <var_v:TypeVisitor> */
1331 { /* Inline parser_nodes#AWhileExpr#n_expr (self) on <self:AWhileExpr> */
1332 var3
= self
->attrs
[COLOR_nitc__parser_nodes__AWhileExpr___n_expr
].val
; /* _n_expr on <self:AWhileExpr> */
1333 if (unlikely(var3
== NULL
)) {
1334 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
1335 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1890);
1343 var4
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var
);
1346 { /* Inline parser_nodes#AWhileExpr#n_block (self) on <self:AWhileExpr> */
1347 var7
= self
->attrs
[COLOR_nitc__parser_nodes__AWhileExpr___n_block
].val
; /* _n_block on <self:AWhileExpr> */
1353 nitc__typing___nitc__typing__TypeVisitor___visit_stmt(var_v
, var5
); /* Direct call typing#TypeVisitor#visit_stmt on <var_v:TypeVisitor>*/
1356 { /* Inline typing#AExpr#is_typed= (self,1) on <self:AWhileExpr> */
1357 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:AWhileExpr> */
1363 /* method typing#ALoopExpr#accept_typing for (self: ALoopExpr, TypeVisitor) */
1364 void nitc__typing___ALoopExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
1365 val
* var_v
/* var v: TypeVisitor */;
1366 val
* var
/* : nullable AExpr */;
1367 val
* var3
/* : nullable AExpr */;
1370 { /* Inline typing#TypeVisitor#has_loop= (var_v,1) on <var_v:TypeVisitor> */
1371 var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___has_loop
].s
= 1; /* _has_loop on <var_v:TypeVisitor> */
1376 { /* Inline parser_nodes#ALoopExpr#n_block (self) on <self:ALoopExpr> */
1377 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ALoopExpr___n_block
].val
; /* _n_block on <self:ALoopExpr> */
1383 nitc__typing___nitc__typing__TypeVisitor___visit_stmt(var_v
, var
); /* Direct call typing#TypeVisitor#visit_stmt on <var_v:TypeVisitor>*/
1386 { /* Inline typing#AExpr#is_typed= (self,1) on <self:ALoopExpr> */
1387 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:ALoopExpr> */
1393 /* method typing#AForExpr#accept_typing for (self: AForExpr, TypeVisitor) */
1394 void nitc__typing___AForExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
1395 val
* var_v
/* var v: TypeVisitor */;
1396 val
* var
/* : ANodes[AForGroup] */;
1397 val
* var3
/* : ANodes[AForGroup] */;
1398 val
* var_
/* var : ANodes[AForGroup] */;
1399 val
* var4
/* : Iterator[ANode] */;
1400 val
* var_5
/* var : Iterator[AForGroup] */;
1401 short int var6
/* : Bool */;
1402 val
* var7
/* : nullable Object */;
1403 val
* var_g
/* var g: AForGroup */;
1404 val
* var8
/* : AExpr */;
1405 val
* var10
/* : AExpr */;
1406 val
* var11
/* : nullable MType */;
1407 val
* var_mtype
/* var mtype: nullable MType */;
1408 short int var12
/* : Bool */;
1409 short int var13
/* : Bool */;
1410 val
* var_other
/* var other: nullable Object */;
1411 short int var15
/* : Bool */;
1412 short int var17
/* : Bool */;
1413 short int var18
/* : Bool */;
1414 short int var20
/* : Bool */;
1415 val
* var22
/* : nullable AExpr */;
1416 val
* var24
/* : nullable AExpr */;
1417 val
* var25
/* : nullable AExpr */;
1418 val
* var27
/* : nullable AExpr */;
1419 val
* var28
/* : nullable MType */;
1422 { /* Inline typing#TypeVisitor#has_loop= (var_v,1) on <var_v:TypeVisitor> */
1423 var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___has_loop
].s
= 1; /* _has_loop on <var_v:TypeVisitor> */
1428 { /* Inline parser_nodes#AForExpr#n_groups (self) on <self:AForExpr> */
1429 var3
= self
->attrs
[COLOR_nitc__parser_nodes__AForExpr___n_groups
].val
; /* _n_groups on <self:AForExpr> */
1430 if (unlikely(var3
== NULL
)) {
1431 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_groups");
1432 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1920);
1441 var4
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_
);
1446 var6
= ((short int(*)(val
* self
))((((long)var_5
&3)?class_info
[((long)var_5
&3)]:var_5
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_5
); /* is_ok on <var_5:Iterator[AForGroup]>*/
1453 var7
= ((val
*(*)(val
* self
))((((long)var_5
&3)?class_info
[((long)var_5
&3)]:var_5
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_5
); /* item on <var_5:Iterator[AForGroup]>*/
1457 { /* Inline parser_nodes#AForGroup#n_expr (var_g) on <var_g:AForGroup> */
1458 var10
= var_g
->attrs
[COLOR_nitc__parser_nodes__AForGroup___n_expr
].val
; /* _n_expr on <var_g:AForGroup> */
1459 if (unlikely(var10
== NULL
)) {
1460 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
1461 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1943);
1469 var11
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var8
);
1472 if (var_mtype
== NULL
) {
1473 var12
= 1; /* is null */
1475 var12
= 0; /* arg is null but recv is not */
1478 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
1479 var_other
= ((val
*)NULL
);
1481 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on <var_mtype:nullable MType(MType)> */
1482 var17
= var_mtype
== var_other
;
1485 RET_LABEL16
:(void)0;
1490 RET_LABEL14
:(void)0;
1499 nitc__typing___AForGroup___do_type_iterator(var_g
, var_v
, var_mtype
); /* Direct call typing#AForGroup#do_type_iterator on <var_g:AForGroup>*/
1502 { /* Inline modelbuilder_base#ANode#is_broken (var_g) on <var_g:AForGroup> */
1503 var20
= var_g
->attrs
[COLOR_nitc__modelbuilder_base__ANode___is_broken
].s
; /* _is_broken on <var_g:AForGroup> */
1505 RET_LABEL19
:(void)0;
1510 { /* Inline modelbuilder_base#ANode#is_broken= (self,1) on <self:AForExpr> */
1511 self
->attrs
[COLOR_nitc__modelbuilder_base__ANode___is_broken
].s
= 1; /* _is_broken on <self:AForExpr> */
1512 RET_LABEL21
:(void)0;
1518 ((void(*)(val
* self
))((((long)var_5
&3)?class_info
[((long)var_5
&3)]:var_5
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_5
); /* next on <var_5:Iterator[AForGroup]>*/
1521 BREAK_label
: (void)0;
1523 ((void(*)(val
* self
))((((long)var_5
&3)?class_info
[((long)var_5
&3)]:var_5
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_5
); /* finish on <var_5:Iterator[AForGroup]>*/
1526 { /* Inline parser_nodes#AForExpr#n_block (self) on <self:AForExpr> */
1527 var24
= self
->attrs
[COLOR_nitc__parser_nodes__AForExpr___n_block
].val
; /* _n_block on <self:AForExpr> */
1529 RET_LABEL23
:(void)0;
1533 nitc__typing___nitc__typing__TypeVisitor___visit_stmt(var_v
, var22
); /* Direct call typing#TypeVisitor#visit_stmt on <var_v:TypeVisitor>*/
1536 { /* Inline parser_nodes#AForExpr#n_block (self) on <self:AForExpr> */
1537 var27
= self
->attrs
[COLOR_nitc__parser_nodes__AForExpr___n_block
].val
; /* _n_block on <self:AForExpr> */
1539 RET_LABEL26
:(void)0;
1542 if (var25
== NULL
) {
1543 PRINT_ERROR("Runtime error: %s", "Receiver is null");
1544 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1161);
1547 var28
= ((val
*(*)(val
* self
))(var25
->class->vft
[COLOR_nitc__typing__AExpr__mtype
]))(var25
); /* mtype on <var25:nullable AExpr>*/
1550 { /* Inline typing#AExpr#mtype= (self,var28) on <self:AForExpr> */
1551 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var28
; /* _mtype on <self:AForExpr> */
1552 RET_LABEL29
:(void)0;
1556 { /* Inline typing#AExpr#is_typed= (self,1) on <self:AForExpr> */
1557 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:AForExpr> */
1558 RET_LABEL30
:(void)0;
1563 /* method typing#AForGroup#coltype= for (self: AForGroup, nullable MClassType) */
1564 void nitc__typing___AForGroup___coltype_61d(val
* self
, val
* p0
) {
1565 self
->attrs
[COLOR_nitc__typing__AForGroup___coltype
].val
= p0
; /* _coltype on <self:AForGroup> */
1568 /* method typing#AForGroup#method_iterator for (self: AForGroup): nullable CallSite */
1569 val
* nitc__typing___AForGroup___method_iterator(val
* self
) {
1570 val
* var
/* : nullable CallSite */;
1571 val
* var1
/* : nullable CallSite */;
1572 var1
= self
->attrs
[COLOR_nitc__typing__AForGroup___method_iterator
].val
; /* _method_iterator on <self:AForGroup> */
1577 /* method typing#AForGroup#method_iterator= for (self: AForGroup, nullable CallSite) */
1578 void nitc__typing___AForGroup___method_iterator_61d(val
* self
, val
* p0
) {
1579 self
->attrs
[COLOR_nitc__typing__AForGroup___method_iterator
].val
= p0
; /* _method_iterator on <self:AForGroup> */
1582 /* method typing#AForGroup#method_is_ok for (self: AForGroup): nullable CallSite */
1583 val
* nitc__typing___AForGroup___method_is_ok(val
* self
) {
1584 val
* var
/* : nullable CallSite */;
1585 val
* var1
/* : nullable CallSite */;
1586 var1
= self
->attrs
[COLOR_nitc__typing__AForGroup___method_is_ok
].val
; /* _method_is_ok on <self:AForGroup> */
1591 /* method typing#AForGroup#method_is_ok= for (self: AForGroup, nullable CallSite) */
1592 void nitc__typing___AForGroup___method_is_ok_61d(val
* self
, val
* p0
) {
1593 self
->attrs
[COLOR_nitc__typing__AForGroup___method_is_ok
].val
= p0
; /* _method_is_ok on <self:AForGroup> */
1596 /* method typing#AForGroup#method_item for (self: AForGroup): nullable CallSite */
1597 val
* nitc__typing___AForGroup___method_item(val
* self
) {
1598 val
* var
/* : nullable CallSite */;
1599 val
* var1
/* : nullable CallSite */;
1600 var1
= self
->attrs
[COLOR_nitc__typing__AForGroup___method_item
].val
; /* _method_item on <self:AForGroup> */
1605 /* method typing#AForGroup#method_item= for (self: AForGroup, nullable CallSite) */
1606 void nitc__typing___AForGroup___method_item_61d(val
* self
, val
* p0
) {
1607 self
->attrs
[COLOR_nitc__typing__AForGroup___method_item
].val
= p0
; /* _method_item on <self:AForGroup> */
1610 /* method typing#AForGroup#method_next for (self: AForGroup): nullable CallSite */
1611 val
* nitc__typing___AForGroup___method_next(val
* self
) {
1612 val
* var
/* : nullable CallSite */;
1613 val
* var1
/* : nullable CallSite */;
1614 var1
= self
->attrs
[COLOR_nitc__typing__AForGroup___method_next
].val
; /* _method_next on <self:AForGroup> */
1619 /* method typing#AForGroup#method_next= for (self: AForGroup, nullable CallSite) */
1620 void nitc__typing___AForGroup___method_next_61d(val
* self
, val
* p0
) {
1621 self
->attrs
[COLOR_nitc__typing__AForGroup___method_next
].val
= p0
; /* _method_next on <self:AForGroup> */
1624 /* method typing#AForGroup#method_key for (self: AForGroup): nullable CallSite */
1625 val
* nitc__typing___AForGroup___method_key(val
* self
) {
1626 val
* var
/* : nullable CallSite */;
1627 val
* var1
/* : nullable CallSite */;
1628 var1
= self
->attrs
[COLOR_nitc__typing__AForGroup___method_key
].val
; /* _method_key on <self:AForGroup> */
1633 /* method typing#AForGroup#method_key= for (self: AForGroup, nullable CallSite) */
1634 void nitc__typing___AForGroup___method_key_61d(val
* self
, val
* p0
) {
1635 self
->attrs
[COLOR_nitc__typing__AForGroup___method_key
].val
= p0
; /* _method_key on <self:AForGroup> */
1638 /* method typing#AForGroup#method_finish for (self: AForGroup): nullable CallSite */
1639 val
* nitc__typing___AForGroup___method_finish(val
* self
) {
1640 val
* var
/* : nullable CallSite */;
1641 val
* var1
/* : nullable CallSite */;
1642 var1
= self
->attrs
[COLOR_nitc__typing__AForGroup___method_finish
].val
; /* _method_finish on <self:AForGroup> */
1647 /* method typing#AForGroup#method_finish= for (self: AForGroup, nullable CallSite) */
1648 void nitc__typing___AForGroup___method_finish_61d(val
* self
, val
* p0
) {
1649 self
->attrs
[COLOR_nitc__typing__AForGroup___method_finish
].val
= p0
; /* _method_finish on <self:AForGroup> */
1652 /* method typing#AForGroup#method_lt for (self: AForGroup): nullable CallSite */
1653 val
* nitc__typing___AForGroup___method_lt(val
* self
) {
1654 val
* var
/* : nullable CallSite */;
1655 val
* var1
/* : nullable CallSite */;
1656 var1
= self
->attrs
[COLOR_nitc__typing__AForGroup___method_lt
].val
; /* _method_lt on <self:AForGroup> */
1661 /* method typing#AForGroup#method_lt= for (self: AForGroup, nullable CallSite) */
1662 void nitc__typing___AForGroup___method_lt_61d(val
* self
, val
* p0
) {
1663 self
->attrs
[COLOR_nitc__typing__AForGroup___method_lt
].val
= p0
; /* _method_lt on <self:AForGroup> */
1666 /* method typing#AForGroup#method_successor for (self: AForGroup): nullable CallSite */
1667 val
* nitc__typing___AForGroup___method_successor(val
* self
) {
1668 val
* var
/* : nullable CallSite */;
1669 val
* var1
/* : nullable CallSite */;
1670 var1
= self
->attrs
[COLOR_nitc__typing__AForGroup___method_successor
].val
; /* _method_successor on <self:AForGroup> */
1675 /* method typing#AForGroup#method_successor= for (self: AForGroup, nullable CallSite) */
1676 void nitc__typing___AForGroup___method_successor_61d(val
* self
, val
* p0
) {
1677 self
->attrs
[COLOR_nitc__typing__AForGroup___method_successor
].val
= p0
; /* _method_successor on <self:AForGroup> */
1680 /* method typing#AForGroup#do_type_iterator for (self: AForGroup, TypeVisitor, MType) */
1681 void nitc__typing___AForGroup___do_type_iterator(val
* self
, val
* p0
, val
* p1
) {
1682 val
* var_v
/* var v: TypeVisitor */;
1683 val
* var_mtype
/* var mtype: MType */;
1684 short int var
/* : Bool */;
1687 static val
* varonce
;
1688 val
* var1
/* : String */;
1689 char* var2
/* : NativeString */;
1690 val
* var3
/* : String */;
1691 static val
* varonce4
;
1692 val
* var5
/* : String */;
1693 char* var6
/* : NativeString */;
1694 val
* var7
/* : String */;
1695 val
* var8
/* : nullable MClass */;
1696 val
* var_objcla
/* var objcla: nullable MClass */;
1697 short int var9
/* : Bool */;
1698 short int var10
/* : Bool */;
1699 val
* var_other
/* var other: nullable Object */;
1700 short int var12
/* : Bool */;
1701 short int var14
/* : Bool */;
1702 static val
* varonce15
;
1703 val
* var16
/* : String */;
1704 char* var17
/* : NativeString */;
1705 val
* var18
/* : String */;
1706 val
* var19
/* : AExpr */;
1707 val
* var21
/* : AExpr */;
1708 short int var22
/* : Bool */;
1711 val
* var25
/* : nullable CallSite */;
1712 val
* var_itdef
/* var itdef: nullable CallSite */;
1713 short int var26
/* : Bool */;
1714 short int var27
/* : Bool */;
1715 short int var29
/* : Bool */;
1716 short int var31
/* : Bool */;
1717 val
* var33
/* : NativeArray[String] */;
1718 static val
* varonce32
;
1719 static val
* varonce34
;
1720 val
* var35
/* : String */;
1721 char* var36
/* : NativeString */;
1722 val
* var37
/* : String */;
1723 static val
* varonce38
;
1724 val
* var39
/* : String */;
1725 char* var40
/* : NativeString */;
1726 val
* var41
/* : String */;
1727 val
* var42
/* : String */;
1728 val
* var43
/* : String */;
1729 val
* var45
/* : MSignature */;
1730 val
* var47
/* : MSignature */;
1731 val
* var48
/* : nullable MType */;
1732 val
* var50
/* : nullable MType */;
1733 val
* var_ittype
/* var ittype: nullable MType */;
1734 short int var51
/* : Bool */;
1735 short int var52
/* : Bool */;
1736 short int var54
/* : Bool */;
1737 short int var56
/* : Bool */;
1738 static val
* varonce57
;
1739 val
* var58
/* : String */;
1740 char* var59
/* : NativeString */;
1741 val
* var60
/* : String */;
1742 static val
* varonce61
;
1743 val
* var62
/* : String */;
1744 char* var63
/* : NativeString */;
1745 val
* var64
/* : String */;
1746 val
* var65
/* : nullable MClass */;
1747 val
* var_colit_cla
/* var colit_cla: nullable MClass */;
1748 static val
* varonce66
;
1749 val
* var67
/* : String */;
1750 char* var68
/* : NativeString */;
1751 val
* var69
/* : String */;
1752 val
* var70
/* : nullable MClass */;
1753 val
* var_mapit_cla
/* var mapit_cla: nullable MClass */;
1754 short int var_is_col
/* var is_col: Bool */;
1755 short int var_is_map
/* var is_map: Bool */;
1756 short int var71
/* : Bool */;
1757 short int var72
/* : Bool */;
1758 short int var73
/* : Bool */;
1759 val
* var_other75
/* var other: nullable Object */;
1760 short int var76
/* : Bool */;
1761 short int var77
/* : Bool */;
1762 short int var_
/* var : Bool */;
1763 val
* var78
/* : Array[MType] */;
1764 val
* var_79
/* var : Array[MType] */;
1765 val
* var80
/* : MClassType */;
1766 val
* var82
/* : MClassType */;
1767 val
* var83
/* : MType */;
1768 val
* var84
/* : MClassType */;
1769 short int var85
/* : Bool */;
1770 val
* var86
/* : MModule */;
1771 val
* var88
/* : MModule */;
1772 val
* var89
/* : nullable MClassType */;
1773 val
* var91
/* : nullable MClassType */;
1774 val
* var92
/* : MClassType */;
1775 val
* var_coltype
/* var coltype: MClassType */;
1776 val
* var93
/* : nullable Array[Variable] */;
1777 val
* var95
/* : nullable Array[Variable] */;
1778 val
* var_variables
/* var variables: nullable Array[Variable] */;
1779 long var96
/* : Int */;
1780 long var98
/* : Int */;
1781 short int var99
/* : Bool */;
1782 short int var101
/* : Bool */;
1783 short int var102
/* : Bool */;
1784 static val
* varonce103
;
1785 val
* var104
/* : String */;
1786 char* var105
/* : NativeString */;
1787 val
* var106
/* : String */;
1788 val
* var107
/* : nullable Object */;
1789 val
* var108
/* : Array[MType] */;
1790 val
* var109
/* : nullable Object */;
1791 short int var111
/* : Bool */;
1792 short int var112
/* : Bool */;
1793 short int var113
/* : Bool */;
1794 short int var115
/* : Bool */;
1795 short int var116
/* : Bool */;
1796 short int var_117
/* var : Bool */;
1797 val
* var118
/* : Array[MType] */;
1798 val
* var_119
/* var : Array[MType] */;
1799 val
* var120
/* : MClassType */;
1800 val
* var122
/* : MClassType */;
1801 val
* var123
/* : MType */;
1802 val
* var124
/* : MClassType */;
1803 val
* var126
/* : MClassType */;
1804 val
* var127
/* : MType */;
1805 val
* var128
/* : MClassType */;
1806 short int var129
/* : Bool */;
1807 val
* var130
/* : MModule */;
1808 val
* var132
/* : MModule */;
1809 val
* var133
/* : nullable MClassType */;
1810 val
* var135
/* : nullable MClassType */;
1811 val
* var136
/* : MClassType */;
1812 val
* var_coltype137
/* var coltype: MClassType */;
1813 val
* var138
/* : nullable Array[Variable] */;
1814 val
* var140
/* : nullable Array[Variable] */;
1815 val
* var_variables141
/* var variables: nullable Array[Variable] */;
1816 long var142
/* : Int */;
1817 long var144
/* : Int */;
1818 short int var145
/* : Bool */;
1819 short int var147
/* : Bool */;
1820 short int var148
/* : Bool */;
1821 static val
* varonce149
;
1822 val
* var150
/* : String */;
1823 char* var151
/* : NativeString */;
1824 val
* var152
/* : String */;
1825 val
* var153
/* : nullable Object */;
1826 val
* var154
/* : Array[MType] */;
1827 val
* var155
/* : nullable Object */;
1828 val
* var157
/* : nullable Object */;
1829 val
* var158
/* : Array[MType] */;
1830 val
* var159
/* : nullable Object */;
1831 short int var161
/* : Bool */;
1832 short int var162
/* : Bool */;
1833 short int var_163
/* var : Bool */;
1834 short int var164
/* : Bool */;
1835 static val
* varonce165
;
1836 val
* var166
/* : String */;
1837 char* var167
/* : NativeString */;
1838 val
* var168
/* : String */;
1839 short int var169
/* : Bool */;
1840 val
* var170
/* : MType */;
1841 val
* var171
/* : MType */;
1842 short int var172
/* : Bool */;
1845 const char* var_class_name
;
1846 static val
* varonce176
;
1847 val
* var177
/* : String */;
1848 char* var178
/* : NativeString */;
1849 val
* var179
/* : String */;
1850 val
* var180
/* : nullable CallSite */;
1851 val
* var_ikdef
/* var ikdef: nullable CallSite */;
1852 short int var181
/* : Bool */;
1853 short int var182
/* : Bool */;
1854 short int var184
/* : Bool */;
1855 short int var186
/* : Bool */;
1856 val
* var188
/* : NativeArray[String] */;
1857 static val
* varonce187
;
1858 static val
* varonce189
;
1859 val
* var190
/* : String */;
1860 char* var191
/* : NativeString */;
1861 val
* var192
/* : String */;
1862 static val
* varonce193
;
1863 val
* var194
/* : String */;
1864 char* var195
/* : NativeString */;
1865 val
* var196
/* : String */;
1866 val
* var197
/* : String */;
1867 val
* var198
/* : String */;
1868 static val
* varonce200
;
1869 val
* var201
/* : String */;
1870 char* var202
/* : NativeString */;
1871 val
* var203
/* : String */;
1872 val
* var204
/* : nullable CallSite */;
1873 val
* var_itemdef
/* var itemdef: nullable CallSite */;
1874 short int var205
/* : Bool */;
1875 short int var206
/* : Bool */;
1876 short int var208
/* : Bool */;
1877 short int var210
/* : Bool */;
1878 val
* var212
/* : NativeArray[String] */;
1879 static val
* varonce211
;
1880 static val
* varonce213
;
1881 val
* var214
/* : String */;
1882 char* var215
/* : NativeString */;
1883 val
* var216
/* : String */;
1884 static val
* varonce217
;
1885 val
* var218
/* : String */;
1886 char* var219
/* : NativeString */;
1887 val
* var220
/* : String */;
1888 val
* var221
/* : String */;
1889 val
* var222
/* : String */;
1890 static val
* varonce224
;
1891 val
* var225
/* : String */;
1892 char* var226
/* : NativeString */;
1893 val
* var227
/* : String */;
1894 val
* var228
/* : nullable CallSite */;
1895 val
* var_nextdef
/* var nextdef: nullable CallSite */;
1896 short int var229
/* : Bool */;
1897 short int var230
/* : Bool */;
1898 short int var232
/* : Bool */;
1899 short int var234
/* : Bool */;
1900 val
* var236
/* : NativeArray[String] */;
1901 static val
* varonce235
;
1902 static val
* varonce237
;
1903 val
* var238
/* : String */;
1904 char* var239
/* : NativeString */;
1905 val
* var240
/* : String */;
1906 static val
* varonce241
;
1907 val
* var242
/* : String */;
1908 char* var243
/* : NativeString */;
1909 val
* var244
/* : String */;
1910 val
* var245
/* : String */;
1911 val
* var246
/* : String */;
1912 static val
* varonce248
;
1913 val
* var249
/* : String */;
1914 char* var250
/* : NativeString */;
1915 val
* var251
/* : String */;
1916 val
* var252
/* : nullable CallSite */;
1917 static val
* varonce254
;
1918 val
* var255
/* : String */;
1919 char* var256
/* : NativeString */;
1920 val
* var257
/* : String */;
1921 val
* var258
/* : nullable CallSite */;
1922 val
* var_keydef
/* var keydef: nullable CallSite */;
1923 short int var259
/* : Bool */;
1924 short int var260
/* : Bool */;
1925 short int var262
/* : Bool */;
1926 short int var264
/* : Bool */;
1927 val
* var266
/* : NativeArray[String] */;
1928 static val
* varonce265
;
1929 static val
* varonce267
;
1930 val
* var268
/* : String */;
1931 char* var269
/* : NativeString */;
1932 val
* var270
/* : String */;
1933 static val
* varonce271
;
1934 val
* var272
/* : String */;
1935 char* var273
/* : NativeString */;
1936 val
* var274
/* : String */;
1937 val
* var275
/* : String */;
1938 val
* var276
/* : String */;
1939 short int var278
/* : Bool */;
1940 val
* var279
/* : nullable Array[Variable] */;
1941 val
* var281
/* : nullable Array[Variable] */;
1942 long var282
/* : Int */;
1943 long var284
/* : Int */;
1944 short int var285
/* : Bool */;
1945 short int var287
/* : Bool */;
1946 short int var_288
/* var : Bool */;
1947 val
* var289
/* : AExpr */;
1948 val
* var291
/* : AExpr */;
1949 short int var292
/* : Bool */;
1952 val
* var295
/* : nullable Array[Variable] */;
1953 val
* var297
/* : nullable Array[Variable] */;
1954 val
* var298
/* : nullable Object */;
1955 val
* var_variable
/* var variable: Variable */;
1956 val
* var299
/* : nullable MType */;
1957 val
* var301
/* : nullable MType */;
1958 val
* var_vtype
/* var vtype: MType */;
1959 val
* var302
/* : AExpr */;
1960 val
* var304
/* : AExpr */;
1961 short int var305
/* : Bool */;
1964 static val
* varonce308
;
1965 val
* var309
/* : String */;
1966 char* var310
/* : NativeString */;
1967 val
* var311
/* : String */;
1968 val
* var312
/* : nullable CallSite */;
1969 static val
* varonce314
;
1970 val
* var315
/* : String */;
1971 char* var316
/* : NativeString */;
1972 val
* var317
/* : String */;
1973 val
* var318
/* : nullable CallSite */;
1974 static val
* varonce320
;
1975 val
* var321
/* : String */;
1976 char* var322
/* : NativeString */;
1977 val
* var323
/* : String */;
1978 val
* var324
/* : nullable CallSite */;
1981 /* <var_mtype:MType> isa MNullType */
1982 cltype
= type_nitc__MNullType
.color
;
1983 idtype
= type_nitc__MNullType
.id
;
1984 if(cltype
>= var_mtype
->type
->table_size
) {
1987 var
= var_mtype
->type
->type_table
[cltype
] == idtype
;
1990 if (likely(varonce
!=NULL
)) {
1993 var2
= "Type Error: `for` cannot iterate over `null`.";
1994 var3
= core__flat___NativeString___to_s_full(var2
, 45l, 45l);
1999 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var1
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
2004 if (likely(varonce4
!=NULL
)) {
2008 var7
= core__flat___NativeString___to_s_full(var6
, 6l, 6l);
2013 var8
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var5
);
2016 if (var_objcla
== NULL
) {
2017 var9
= 1; /* is null */
2019 var9
= 0; /* arg is null but recv is not */
2022 { /* Inline kernel#Object#== (var_objcla,((val*)NULL)) on <var_objcla:nullable MClass> */
2023 var_other
= ((val
*)NULL
);
2025 { /* Inline kernel#Object#is_same_instance (var_objcla,var_other) on <var_objcla:nullable MClass(MClass)> */
2026 var14
= var_objcla
== var_other
;
2029 RET_LABEL13
:(void)0;
2034 RET_LABEL11
:(void)0;
2042 if (likely(varonce15
!=NULL
)) {
2046 var18
= core__flat___NativeString___to_s_full(var17
, 8l, 8l);
2051 { /* Inline parser_nodes#AForGroup#n_expr (self) on <self:AForGroup> */
2052 var21
= self
->attrs
[COLOR_nitc__parser_nodes__AForGroup___n_expr
].val
; /* _n_expr on <self:AForGroup> */
2053 if (unlikely(var21
== NULL
)) {
2054 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
2055 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1943);
2059 RET_LABEL20
:(void)0;
2062 /* <var19:AExpr> isa ASelfExpr */
2063 cltype23
= type_nitc__ASelfExpr
.color
;
2064 idtype24
= type_nitc__ASelfExpr
.id
;
2065 if(cltype23
>= var19
->type
->table_size
) {
2068 var22
= var19
->type
->type_table
[cltype23
] == idtype24
;
2071 var25
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_mtype
, var16
, var22
);
2074 if (var_itdef
== NULL
) {
2075 var26
= 1; /* is null */
2077 var26
= 0; /* arg is null but recv is not */
2080 { /* Inline kernel#Object#== (var_itdef,((val*)NULL)) on <var_itdef:nullable CallSite> */
2081 var_other
= ((val
*)NULL
);
2083 { /* Inline kernel#Object#is_same_instance (var_itdef,var_other) on <var_itdef:nullable CallSite(CallSite)> */
2084 var31
= var_itdef
== var_other
;
2087 RET_LABEL30
:(void)0;
2092 RET_LABEL28
:(void)0;
2097 if (unlikely(varonce32
==NULL
)) {
2098 var33
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2099 if (likely(varonce34
!=NULL
)) {
2102 var36
= "Type Error: `for` expects a type providing an `iterator` method, got `";
2103 var37
= core__flat___NativeString___to_s_full(var36
, 70l, 70l);
2107 ((struct instance_core__NativeArray
*)var33
)->values
[0]=var35
;
2108 if (likely(varonce38
!=NULL
)) {
2112 var41
= core__flat___NativeString___to_s_full(var40
, 2l, 2l);
2116 ((struct instance_core__NativeArray
*)var33
)->values
[2]=var39
;
2122 var42
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:MType>*/
2124 ((struct instance_core__NativeArray
*)var33
)->values
[1]=var42
;
2126 var43
= ((val
*(*)(val
* self
))(var33
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var33
); /* native_to_s on <var33:NativeArray[String]>*/
2130 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var43
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
2136 { /* Inline typing#AForGroup#method_iterator= (self,var_itdef) on <self:AForGroup> */
2137 self
->attrs
[COLOR_nitc__typing__AForGroup___method_iterator
].val
= var_itdef
; /* _method_iterator on <self:AForGroup> */
2138 RET_LABEL44
:(void)0;
2142 { /* Inline typing#CallSite#msignature (var_itdef) on <var_itdef:nullable CallSite(CallSite)> */
2143 var47
= var_itdef
->attrs
[COLOR_nitc__typing__CallSite___msignature
].val
; /* _msignature on <var_itdef:nullable CallSite(CallSite)> */
2144 if (unlikely(var47
== NULL
)) {
2145 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature");
2146 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 660);
2150 RET_LABEL46
:(void)0;
2154 { /* Inline model#MSignature#return_mtype (var45) on <var45:MSignature> */
2155 var50
= var45
->attrs
[COLOR_nitc__model__MSignature___return_mtype
].val
; /* _return_mtype on <var45:MSignature> */
2157 RET_LABEL49
:(void)0;
2161 if (var_ittype
== NULL
) {
2162 var51
= 1; /* is null */
2164 var51
= 0; /* arg is null but recv is not */
2167 { /* Inline kernel#Object#== (var_ittype,((val*)NULL)) on <var_ittype:nullable MType> */
2168 var_other
= ((val
*)NULL
);
2170 { /* Inline kernel#Object#is_same_instance (var_ittype,var_other) on <var_ittype:nullable MType(MType)> */
2171 var56
= var_ittype
== var_other
;
2174 RET_LABEL55
:(void)0;
2179 RET_LABEL53
:(void)0;
2184 if (likely(varonce57
!=NULL
)) {
2187 var59
= "Type Error: `for` expects the method `iterator` to return an `Iterator` or `MapIterator` type.";
2188 var60
= core__flat___NativeString___to_s_full(var59
, 94l, 94l);
2193 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var58
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
2198 if (likely(varonce61
!=NULL
)) {
2202 var64
= core__flat___NativeString___to_s_full(var63
, 8l, 8l);
2207 var65
= nitc__typing___nitc__typing__TypeVisitor___try_get_mclass(var_v
, self
, var62
);
2209 var_colit_cla
= var65
;
2210 if (likely(varonce66
!=NULL
)) {
2213 var68
= "MapIterator";
2214 var69
= core__flat___NativeString___to_s_full(var68
, 11l, 11l);
2219 var70
= nitc__typing___nitc__typing__TypeVisitor___try_get_mclass(var_v
, self
, var67
);
2221 var_mapit_cla
= var70
;
2224 if (var_colit_cla
== NULL
) {
2225 var72
= 0; /* is null */
2227 var72
= 1; /* arg is null and recv is not */
2230 { /* Inline kernel#Object#!= (var_colit_cla,((val*)NULL)) on <var_colit_cla:nullable MClass> */
2231 var_other75
= ((val
*)NULL
);
2233 var76
= ((short int(*)(val
* self
, val
* p0
))(var_colit_cla
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_colit_cla
, var_other75
); /* == on <var_colit_cla:nullable MClass(MClass)>*/
2238 RET_LABEL74
:(void)0;
2244 var78
= NEW_core__Array(&type_core__Array__nitc__MType
);
2246 core___core__Array___with_capacity(var78
, 1l); /* Direct call array#Array#with_capacity on <var78:Array[MType]>*/
2250 { /* Inline model#MClass#mclass_type (var_objcla) on <var_objcla:nullable MClass(MClass)> */
2251 var82
= var_objcla
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_objcla:nullable MClass(MClass)> */
2252 if (unlikely(var82
== NULL
)) {
2253 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
2254 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
2258 RET_LABEL81
:(void)0;
2262 var83
= nitc___nitc__MType___as_nullable(var80
);
2265 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_79
, var83
); /* Direct call array#AbstractArray#push on <var_79:Array[MType]>*/
2268 var84
= nitc___nitc__MClass___get_mtype(var_colit_cla
, var_79
);
2271 var85
= nitc__typing___nitc__typing__TypeVisitor___is_subtype(var_v
, var_ittype
, var84
);
2279 { /* Inline typing#TypeVisitor#mmodule (var_v) on <var_v:TypeVisitor> */
2280 var88
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___mmodule
].val
; /* _mmodule on <var_v:TypeVisitor> */
2281 if (unlikely(var88
== NULL
)) {
2282 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
2283 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 37);
2287 RET_LABEL87
:(void)0;
2291 { /* Inline typing#TypeVisitor#anchor (var_v) on <var_v:TypeVisitor> */
2292 var91
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___anchor
].val
; /* _anchor on <var_v:TypeVisitor> */
2294 RET_LABEL90
:(void)0;
2298 var92
= nitc___nitc__MType___supertype_to(var_ittype
, var86
, var89
, var_colit_cla
);
2300 var_coltype
= var92
;
2302 { /* Inline scope#AForGroup#variables (self) on <self:AForGroup> */
2303 var95
= self
->attrs
[COLOR_nitc__scope__AForGroup___variables
].val
; /* _variables on <self:AForGroup> */
2305 RET_LABEL94
:(void)0;
2308 var_variables
= var93
;
2309 if (var_variables
== NULL
) {
2310 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2311 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1215);
2314 { /* Inline array#AbstractArrayRead#length (var_variables) on <var_variables:nullable Array[Variable]> */
2315 if (unlikely(var_variables
== NULL
)) {
2316 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2317 PRINT_ERROR(" (%s:%d)\n", FILE_core__array
, 26);
2320 var98
= var_variables
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_variables:nullable Array[Variable]> */
2322 RET_LABEL97
:(void)0;
2326 { /* Inline kernel#Int#!= (var96,1l) on <var96:Int> */
2327 var101
= var96
== 1l;
2331 RET_LABEL100
:(void)0;
2335 if (likely(varonce103
!=NULL
)) {
2336 var104
= varonce103
;
2338 var105
= "Type Error: `for` expects only one variable when using `Iterator`.";
2339 var106
= core__flat___NativeString___to_s_full(var105
, 66l, 66l);
2341 varonce103
= var104
;
2344 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var104
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
2347 if (var_variables
== NULL
) {
2348 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2349 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1218);
2352 var107
= core___core__SequenceRead___Collection__first(var_variables
);
2355 var108
= ((val
*(*)(val
* self
))(var_coltype
->class->vft
[COLOR_nitc__model__MClassType__arguments
]))(var_coltype
); /* arguments on <var_coltype:MClassType>*/
2358 var109
= core___core__SequenceRead___Collection__first(var108
);
2361 { /* Inline typing#Variable#declared_type= (var107,var109) on <var107:nullable Object(Variable)> */
2362 var107
->attrs
[COLOR_nitc__typing__Variable___declared_type
].val
= var109
; /* _declared_type on <var107:nullable Object(Variable)> */
2363 RET_LABEL110
:(void)0;
2370 if (var_mapit_cla
== NULL
) {
2371 var112
= 0; /* is null */
2373 var112
= 1; /* arg is null and recv is not */
2376 { /* Inline kernel#Object#!= (var_mapit_cla,((val*)NULL)) on <var_mapit_cla:nullable MClass> */
2377 var_other75
= ((val
*)NULL
);
2379 var115
= ((short int(*)(val
* self
, val
* p0
))(var_mapit_cla
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_mapit_cla
, var_other75
); /* == on <var_mapit_cla:nullable MClass(MClass)>*/
2384 RET_LABEL114
:(void)0;
2390 var118
= NEW_core__Array(&type_core__Array__nitc__MType
);
2392 core___core__Array___with_capacity(var118
, 2l); /* Direct call array#Array#with_capacity on <var118:Array[MType]>*/
2396 { /* Inline model#MClass#mclass_type (var_objcla) on <var_objcla:nullable MClass(MClass)> */
2397 var122
= var_objcla
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_objcla:nullable MClass(MClass)> */
2398 if (unlikely(var122
== NULL
)) {
2399 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
2400 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
2404 RET_LABEL121
:(void)0;
2408 var123
= nitc___nitc__MType___as_nullable(var120
);
2411 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_119
, var123
); /* Direct call array#AbstractArray#push on <var_119:Array[MType]>*/
2414 { /* Inline model#MClass#mclass_type (var_objcla) on <var_objcla:nullable MClass(MClass)> */
2415 var126
= var_objcla
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_objcla:nullable MClass(MClass)> */
2416 if (unlikely(var126
== NULL
)) {
2417 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
2418 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
2422 RET_LABEL125
:(void)0;
2426 var127
= nitc___nitc__MType___as_nullable(var124
);
2429 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_119
, var127
); /* Direct call array#AbstractArray#push on <var_119:Array[MType]>*/
2432 var128
= nitc___nitc__MClass___get_mtype(var_mapit_cla
, var_119
);
2435 var129
= nitc__typing___nitc__typing__TypeVisitor___is_subtype(var_v
, var_ittype
, var128
);
2443 { /* Inline typing#TypeVisitor#mmodule (var_v) on <var_v:TypeVisitor> */
2444 var132
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___mmodule
].val
; /* _mmodule on <var_v:TypeVisitor> */
2445 if (unlikely(var132
== NULL
)) {
2446 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
2447 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 37);
2451 RET_LABEL131
:(void)0;
2455 { /* Inline typing#TypeVisitor#anchor (var_v) on <var_v:TypeVisitor> */
2456 var135
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___anchor
].val
; /* _anchor on <var_v:TypeVisitor> */
2458 RET_LABEL134
:(void)0;
2462 var136
= nitc___nitc__MType___supertype_to(var_ittype
, var130
, var133
, var_mapit_cla
);
2464 var_coltype137
= var136
;
2466 { /* Inline scope#AForGroup#variables (self) on <self:AForGroup> */
2467 var140
= self
->attrs
[COLOR_nitc__scope__AForGroup___variables
].val
; /* _variables on <self:AForGroup> */
2469 RET_LABEL139
:(void)0;
2472 var_variables141
= var138
;
2473 if (var_variables141
== NULL
) {
2474 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2475 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1227);
2478 { /* Inline array#AbstractArrayRead#length (var_variables141) on <var_variables141:nullable Array[Variable]> */
2479 if (unlikely(var_variables141
== NULL
)) {
2480 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2481 PRINT_ERROR(" (%s:%d)\n", FILE_core__array
, 26);
2484 var144
= var_variables141
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_variables141:nullable Array[Variable]> */
2486 RET_LABEL143
:(void)0;
2490 { /* Inline kernel#Int#!= (var142,2l) on <var142:Int> */
2491 var147
= var142
== 2l;
2495 RET_LABEL146
:(void)0;
2499 if (likely(varonce149
!=NULL
)) {
2500 var150
= varonce149
;
2502 var151
= "Type Error: `for` expects two variables when using `MapIterator`.";
2503 var152
= core__flat___NativeString___to_s_full(var151
, 65l, 65l);
2505 varonce149
= var150
;
2508 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var150
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
2511 if (var_variables141
== NULL
) {
2512 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2513 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1230);
2516 var153
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_variables141
, 0l);
2519 var154
= ((val
*(*)(val
* self
))(var_coltype137
->class->vft
[COLOR_nitc__model__MClassType__arguments
]))(var_coltype137
); /* arguments on <var_coltype137:MClassType>*/
2522 var155
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var154
, 0l);
2525 { /* Inline typing#Variable#declared_type= (var153,var155) on <var153:nullable Object(Variable)> */
2526 var153
->attrs
[COLOR_nitc__typing__Variable___declared_type
].val
= var155
; /* _declared_type on <var153:nullable Object(Variable)> */
2527 RET_LABEL156
:(void)0;
2530 if (var_variables141
== NULL
) {
2531 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2532 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1231);
2535 var157
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var_variables141
, 1l);
2538 var158
= ((val
*(*)(val
* self
))(var_coltype137
->class->vft
[COLOR_nitc__model__MClassType__arguments
]))(var_coltype137
); /* arguments on <var_coltype137:MClassType>*/
2541 var159
= core___core__Array___core__abstract_collection__SequenceRead___91d_93d(var158
, 1l);
2544 { /* Inline typing#Variable#declared_type= (var157,var159) on <var157:nullable Object(Variable)> */
2545 var157
->attrs
[COLOR_nitc__typing__Variable___declared_type
].val
= var159
; /* _declared_type on <var157:nullable Object(Variable)> */
2546 RET_LABEL160
:(void)0;
2553 var162
= !var_is_col
;
2556 var164
= !var_is_map
;
2562 if (likely(varonce165
!=NULL
)) {
2563 var166
= varonce165
;
2565 var167
= "Type Error: `for` expects the method `iterator` to return an `Iterator` or `MapIterator` type.";
2566 var168
= core__flat___NativeString___to_s_full(var167
, 94l, 94l);
2568 varonce165
= var166
;
2571 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var166
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
2577 var169
= ((short int(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model__MType__need_anchor
]))(var_mtype
); /* need_anchor on <var_mtype:MType>*/
2581 var170
= nitc__typing___nitc__typing__TypeVisitor___anchor_to(var_v
, var_mtype
);
2587 var171
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model__MType__undecorate
]))(var_mtype
); /* undecorate on <var_mtype:MType>*/
2590 /* <var_mtype:MType> isa MClassType */
2591 cltype173
= type_nitc__MClassType
.color
;
2592 idtype174
= type_nitc__MClassType
.id
;
2593 if(cltype173
>= var_mtype
->type
->table_size
) {
2596 var172
= var_mtype
->type
->type_table
[cltype173
] == idtype174
;
2598 if (unlikely(!var172
)) {
2599 var_class_name
= var_mtype
== NULL ?
"null" : var_mtype
->type
->name
;
2600 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MClassType", var_class_name
);
2601 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1245);
2605 { /* Inline typing#AForGroup#coltype= (self,var_mtype) on <self:AForGroup> */
2606 self
->attrs
[COLOR_nitc__typing__AForGroup___coltype
].val
= var_mtype
; /* _coltype on <self:AForGroup> */
2607 RET_LABEL175
:(void)0;
2610 if (likely(varonce176
!=NULL
)) {
2611 var177
= varonce176
;
2614 var179
= core__flat___NativeString___to_s_full(var178
, 5l, 5l);
2616 varonce176
= var177
;
2619 var180
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_ittype
, var177
, 0);
2622 if (var_ikdef
== NULL
) {
2623 var181
= 1; /* is null */
2625 var181
= 0; /* arg is null but recv is not */
2628 { /* Inline kernel#Object#== (var_ikdef,((val*)NULL)) on <var_ikdef:nullable CallSite> */
2629 var_other
= ((val
*)NULL
);
2631 { /* Inline kernel#Object#is_same_instance (var_ikdef,var_other) on <var_ikdef:nullable CallSite(CallSite)> */
2632 var186
= var_ikdef
== var_other
;
2635 RET_LABEL185
:(void)0;
2640 RET_LABEL183
:(void)0;
2645 if (unlikely(varonce187
==NULL
)) {
2646 var188
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2647 if (likely(varonce189
!=NULL
)) {
2648 var190
= varonce189
;
2650 var191
= "Type Error: `for` expects a method `is_ok` in type `";
2651 var192
= core__flat___NativeString___to_s_full(var191
, 52l, 52l);
2653 varonce189
= var190
;
2655 ((struct instance_core__NativeArray
*)var188
)->values
[0]=var190
;
2656 if (likely(varonce193
!=NULL
)) {
2657 var194
= varonce193
;
2660 var196
= core__flat___NativeString___to_s_full(var195
, 2l, 2l);
2662 varonce193
= var194
;
2664 ((struct instance_core__NativeArray
*)var188
)->values
[2]=var194
;
2666 var188
= varonce187
;
2670 var197
= ((val
*(*)(val
* self
))(var_ittype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_ittype
); /* to_s on <var_ittype:nullable MType(MType)>*/
2672 ((struct instance_core__NativeArray
*)var188
)->values
[1]=var197
;
2674 var198
= ((val
*(*)(val
* self
))(var188
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var188
); /* native_to_s on <var188:NativeArray[String]>*/
2676 varonce187
= var188
;
2678 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var198
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
2684 { /* Inline typing#AForGroup#method_is_ok= (self,var_ikdef) on <self:AForGroup> */
2685 self
->attrs
[COLOR_nitc__typing__AForGroup___method_is_ok
].val
= var_ikdef
; /* _method_is_ok on <self:AForGroup> */
2686 RET_LABEL199
:(void)0;
2689 if (likely(varonce200
!=NULL
)) {
2690 var201
= varonce200
;
2693 var203
= core__flat___NativeString___to_s_full(var202
, 4l, 4l);
2695 varonce200
= var201
;
2698 var204
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_ittype
, var201
, 0);
2700 var_itemdef
= var204
;
2701 if (var_itemdef
== NULL
) {
2702 var205
= 1; /* is null */
2704 var205
= 0; /* arg is null but recv is not */
2707 { /* Inline kernel#Object#== (var_itemdef,((val*)NULL)) on <var_itemdef:nullable CallSite> */
2708 var_other
= ((val
*)NULL
);
2710 { /* Inline kernel#Object#is_same_instance (var_itemdef,var_other) on <var_itemdef:nullable CallSite(CallSite)> */
2711 var210
= var_itemdef
== var_other
;
2714 RET_LABEL209
:(void)0;
2719 RET_LABEL207
:(void)0;
2724 if (unlikely(varonce211
==NULL
)) {
2725 var212
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2726 if (likely(varonce213
!=NULL
)) {
2727 var214
= varonce213
;
2729 var215
= "Type Error: `for` expects a method `item` in type `";
2730 var216
= core__flat___NativeString___to_s_full(var215
, 51l, 51l);
2732 varonce213
= var214
;
2734 ((struct instance_core__NativeArray
*)var212
)->values
[0]=var214
;
2735 if (likely(varonce217
!=NULL
)) {
2736 var218
= varonce217
;
2739 var220
= core__flat___NativeString___to_s_full(var219
, 2l, 2l);
2741 varonce217
= var218
;
2743 ((struct instance_core__NativeArray
*)var212
)->values
[2]=var218
;
2745 var212
= varonce211
;
2749 var221
= ((val
*(*)(val
* self
))(var_ittype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_ittype
); /* to_s on <var_ittype:nullable MType(MType)>*/
2751 ((struct instance_core__NativeArray
*)var212
)->values
[1]=var221
;
2753 var222
= ((val
*(*)(val
* self
))(var212
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var212
); /* native_to_s on <var212:NativeArray[String]>*/
2755 varonce211
= var212
;
2757 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var222
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
2763 { /* Inline typing#AForGroup#method_item= (self,var_itemdef) on <self:AForGroup> */
2764 self
->attrs
[COLOR_nitc__typing__AForGroup___method_item
].val
= var_itemdef
; /* _method_item on <self:AForGroup> */
2765 RET_LABEL223
:(void)0;
2768 if (likely(varonce224
!=NULL
)) {
2769 var225
= varonce224
;
2772 var227
= core__flat___NativeString___to_s_full(var226
, 4l, 4l);
2774 varonce224
= var225
;
2777 var228
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_ittype
, var225
, 0);
2779 var_nextdef
= var228
;
2780 if (var_nextdef
== NULL
) {
2781 var229
= 1; /* is null */
2783 var229
= 0; /* arg is null but recv is not */
2786 { /* Inline kernel#Object#== (var_nextdef,((val*)NULL)) on <var_nextdef:nullable CallSite> */
2787 var_other
= ((val
*)NULL
);
2789 { /* Inline kernel#Object#is_same_instance (var_nextdef,var_other) on <var_nextdef:nullable CallSite(CallSite)> */
2790 var234
= var_nextdef
== var_other
;
2793 RET_LABEL233
:(void)0;
2798 RET_LABEL231
:(void)0;
2803 if (unlikely(varonce235
==NULL
)) {
2804 var236
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2805 if (likely(varonce237
!=NULL
)) {
2806 var238
= varonce237
;
2808 var239
= "Type Error: `for` expects a method `next` in type ";
2809 var240
= core__flat___NativeString___to_s_full(var239
, 50l, 50l);
2811 varonce237
= var238
;
2813 ((struct instance_core__NativeArray
*)var236
)->values
[0]=var238
;
2814 if (likely(varonce241
!=NULL
)) {
2815 var242
= varonce241
;
2818 var244
= core__flat___NativeString___to_s_full(var243
, 1l, 1l);
2820 varonce241
= var242
;
2822 ((struct instance_core__NativeArray
*)var236
)->values
[2]=var242
;
2824 var236
= varonce235
;
2828 var245
= ((val
*(*)(val
* self
))(var_ittype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_ittype
); /* to_s on <var_ittype:nullable MType(MType)>*/
2830 ((struct instance_core__NativeArray
*)var236
)->values
[1]=var245
;
2832 var246
= ((val
*(*)(val
* self
))(var236
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var236
); /* native_to_s on <var236:NativeArray[String]>*/
2834 varonce235
= var236
;
2836 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var246
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
2842 { /* Inline typing#AForGroup#method_next= (self,var_nextdef) on <self:AForGroup> */
2843 self
->attrs
[COLOR_nitc__typing__AForGroup___method_next
].val
= var_nextdef
; /* _method_next on <self:AForGroup> */
2844 RET_LABEL247
:(void)0;
2847 if (likely(varonce248
!=NULL
)) {
2848 var249
= varonce248
;
2851 var251
= core__flat___NativeString___to_s_full(var250
, 6l, 6l);
2853 varonce248
= var249
;
2856 var252
= nitc__typing___nitc__typing__TypeVisitor___try_get_method(var_v
, self
, var_ittype
, var249
, 0);
2859 { /* Inline typing#AForGroup#method_finish= (self,var252) on <self:AForGroup> */
2860 self
->attrs
[COLOR_nitc__typing__AForGroup___method_finish
].val
= var252
; /* _method_finish on <self:AForGroup> */
2861 RET_LABEL253
:(void)0;
2865 if (likely(varonce254
!=NULL
)) {
2866 var255
= varonce254
;
2869 var257
= core__flat___NativeString___to_s_full(var256
, 3l, 3l);
2871 varonce254
= var255
;
2874 var258
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_ittype
, var255
, 0);
2876 var_keydef
= var258
;
2877 if (var_keydef
== NULL
) {
2878 var259
= 1; /* is null */
2880 var259
= 0; /* arg is null but recv is not */
2883 { /* Inline kernel#Object#== (var_keydef,((val*)NULL)) on <var_keydef:nullable CallSite> */
2884 var_other
= ((val
*)NULL
);
2886 { /* Inline kernel#Object#is_same_instance (var_keydef,var_other) on <var_keydef:nullable CallSite(CallSite)> */
2887 var264
= var_keydef
== var_other
;
2890 RET_LABEL263
:(void)0;
2895 RET_LABEL261
:(void)0;
2900 if (unlikely(varonce265
==NULL
)) {
2901 var266
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
2902 if (likely(varonce267
!=NULL
)) {
2903 var268
= varonce267
;
2905 var269
= "Type Error: `for` expects a method `key` in type `";
2906 var270
= core__flat___NativeString___to_s_full(var269
, 50l, 50l);
2908 varonce267
= var268
;
2910 ((struct instance_core__NativeArray
*)var266
)->values
[0]=var268
;
2911 if (likely(varonce271
!=NULL
)) {
2912 var272
= varonce271
;
2915 var274
= core__flat___NativeString___to_s_full(var273
, 2l, 2l);
2917 varonce271
= var272
;
2919 ((struct instance_core__NativeArray
*)var266
)->values
[2]=var272
;
2921 var266
= varonce265
;
2925 var275
= ((val
*(*)(val
* self
))(var_ittype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_ittype
); /* to_s on <var_ittype:nullable MType(MType)>*/
2927 ((struct instance_core__NativeArray
*)var266
)->values
[1]=var275
;
2929 var276
= ((val
*(*)(val
* self
))(var266
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var266
); /* native_to_s on <var266:NativeArray[String]>*/
2931 varonce265
= var266
;
2933 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var276
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
2939 { /* Inline typing#AForGroup#method_key= (self,var_keydef) on <self:AForGroup> */
2940 self
->attrs
[COLOR_nitc__typing__AForGroup___method_key
].val
= var_keydef
; /* _method_key on <self:AForGroup> */
2941 RET_LABEL277
:(void)0;
2947 { /* Inline scope#AForGroup#variables (self) on <self:AForGroup> */
2948 var281
= self
->attrs
[COLOR_nitc__scope__AForGroup___variables
].val
; /* _variables on <self:AForGroup> */
2950 RET_LABEL280
:(void)0;
2953 if (var279
== NULL
) {
2954 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2955 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1280);
2958 { /* Inline array#AbstractArrayRead#length (var279) on <var279:nullable Array[Variable]> */
2959 if (unlikely(var279
== NULL
)) {
2960 PRINT_ERROR("Runtime error: %s", "Receiver is null");
2961 PRINT_ERROR(" (%s:%d)\n", FILE_core__array
, 26);
2964 var284
= var279
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var279:nullable Array[Variable]> */
2966 RET_LABEL283
:(void)0;
2970 { /* Inline kernel#Int#== (var282,1l) on <var282:Int> */
2971 var287
= var282
== 1l;
2974 RET_LABEL286
:(void)0;
2980 { /* Inline parser_nodes#AForGroup#n_expr (self) on <self:AForGroup> */
2981 var291
= self
->attrs
[COLOR_nitc__parser_nodes__AForGroup___n_expr
].val
; /* _n_expr on <self:AForGroup> */
2982 if (unlikely(var291
== NULL
)) {
2983 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
2984 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1943);
2988 RET_LABEL290
:(void)0;
2991 /* <var289:AExpr> isa ARangeExpr */
2992 cltype293
= type_nitc__ARangeExpr
.color
;
2993 idtype294
= type_nitc__ARangeExpr
.id
;
2994 if(cltype293
>= var289
->type
->table_size
) {
2997 var292
= var289
->type
->type_table
[cltype293
] == idtype294
;
3005 { /* Inline scope#AForGroup#variables (self) on <self:AForGroup> */
3006 var297
= self
->attrs
[COLOR_nitc__scope__AForGroup___variables
].val
; /* _variables on <self:AForGroup> */
3008 RET_LABEL296
:(void)0;
3011 if (var295
== NULL
) {
3012 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3013 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1281);
3016 var298
= core___core__SequenceRead___Collection__first(var295
);
3018 var_variable
= var298
;
3020 { /* Inline typing#Variable#declared_type (var_variable) on <var_variable:Variable> */
3021 var301
= var_variable
->attrs
[COLOR_nitc__typing__Variable___declared_type
].val
; /* _declared_type on <var_variable:Variable> */
3023 RET_LABEL300
:(void)0;
3026 if (unlikely(var299
== NULL
)) {
3027 PRINT_ERROR("Runtime error: %s", "Cast failed");
3028 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1282);
3033 { /* Inline parser_nodes#AForGroup#n_expr (self) on <self:AForGroup> */
3034 var304
= self
->attrs
[COLOR_nitc__parser_nodes__AForGroup___n_expr
].val
; /* _n_expr on <self:AForGroup> */
3035 if (unlikely(var304
== NULL
)) {
3036 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3037 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1943);
3041 RET_LABEL303
:(void)0;
3044 /* <var302:AExpr> isa AOrangeExpr */
3045 cltype306
= type_nitc__AOrangeExpr
.color
;
3046 idtype307
= type_nitc__AOrangeExpr
.id
;
3047 if(cltype306
>= var302
->type
->table_size
) {
3050 var305
= var302
->type
->type_table
[cltype306
] == idtype307
;
3053 if (likely(varonce308
!=NULL
)) {
3054 var309
= varonce308
;
3057 var311
= core__flat___NativeString___to_s_full(var310
, 1l, 1l);
3059 varonce308
= var309
;
3062 var312
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_vtype
, var309
, 0);
3065 { /* Inline typing#AForGroup#method_lt= (self,var312) on <self:AForGroup> */
3066 self
->attrs
[COLOR_nitc__typing__AForGroup___method_lt
].val
= var312
; /* _method_lt on <self:AForGroup> */
3067 RET_LABEL313
:(void)0;
3071 if (likely(varonce314
!=NULL
)) {
3072 var315
= varonce314
;
3075 var317
= core__flat___NativeString___to_s_full(var316
, 2l, 2l);
3077 varonce314
= var315
;
3080 var318
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_vtype
, var315
, 0);
3083 { /* Inline typing#AForGroup#method_lt= (self,var318) on <self:AForGroup> */
3084 self
->attrs
[COLOR_nitc__typing__AForGroup___method_lt
].val
= var318
; /* _method_lt on <self:AForGroup> */
3085 RET_LABEL319
:(void)0;
3089 if (likely(varonce320
!=NULL
)) {
3090 var321
= varonce320
;
3092 var322
= "successor";
3093 var323
= core__flat___NativeString___to_s_full(var322
, 9l, 9l);
3095 varonce320
= var321
;
3098 var324
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_vtype
, var321
, 0);
3101 { /* Inline typing#AForGroup#method_successor= (self,var324) on <self:AForGroup> */
3102 self
->attrs
[COLOR_nitc__typing__AForGroup___method_successor
].val
= var324
; /* _method_successor on <self:AForGroup> */
3103 RET_LABEL325
:(void)0;
3110 /* method typing#AWithExpr#method_start for (self: AWithExpr): nullable CallSite */
3111 val
* nitc__typing___AWithExpr___method_start(val
* self
) {
3112 val
* var
/* : nullable CallSite */;
3113 val
* var1
/* : nullable CallSite */;
3114 var1
= self
->attrs
[COLOR_nitc__typing__AWithExpr___method_start
].val
; /* _method_start on <self:AWithExpr> */
3119 /* method typing#AWithExpr#method_start= for (self: AWithExpr, nullable CallSite) */
3120 void nitc__typing___AWithExpr___method_start_61d(val
* self
, val
* p0
) {
3121 self
->attrs
[COLOR_nitc__typing__AWithExpr___method_start
].val
= p0
; /* _method_start on <self:AWithExpr> */
3124 /* method typing#AWithExpr#method_finish for (self: AWithExpr): nullable CallSite */
3125 val
* nitc__typing___AWithExpr___method_finish(val
* self
) {
3126 val
* var
/* : nullable CallSite */;
3127 val
* var1
/* : nullable CallSite */;
3128 var1
= self
->attrs
[COLOR_nitc__typing__AWithExpr___method_finish
].val
; /* _method_finish on <self:AWithExpr> */
3133 /* method typing#AWithExpr#method_finish= for (self: AWithExpr, nullable CallSite) */
3134 void nitc__typing___AWithExpr___method_finish_61d(val
* self
, val
* p0
) {
3135 self
->attrs
[COLOR_nitc__typing__AWithExpr___method_finish
].val
= p0
; /* _method_finish on <self:AWithExpr> */
3138 /* method typing#AWithExpr#accept_typing for (self: AWithExpr, TypeVisitor) */
3139 void nitc__typing___AWithExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
3140 val
* var_v
/* var v: TypeVisitor */;
3141 val
* var
/* : AExpr */;
3142 val
* var2
/* : AExpr */;
3143 val
* var3
/* : nullable MType */;
3144 val
* var_mtype
/* var mtype: nullable MType */;
3145 short int var4
/* : Bool */;
3146 short int var5
/* : Bool */;
3147 val
* var_other
/* var other: nullable Object */;
3148 short int var7
/* : Bool */;
3149 short int var9
/* : Bool */;
3150 static val
* varonce
;
3151 val
* var10
/* : String */;
3152 char* var11
/* : NativeString */;
3153 val
* var12
/* : String */;
3154 val
* var13
/* : AExpr */;
3155 val
* var15
/* : AExpr */;
3156 short int var16
/* : Bool */;
3159 val
* var17
/* : nullable CallSite */;
3160 static val
* varonce19
;
3161 val
* var20
/* : String */;
3162 char* var21
/* : NativeString */;
3163 val
* var22
/* : String */;
3164 val
* var23
/* : AExpr */;
3165 val
* var25
/* : AExpr */;
3166 short int var26
/* : Bool */;
3169 val
* var29
/* : nullable CallSite */;
3170 val
* var31
/* : nullable AExpr */;
3171 val
* var33
/* : nullable AExpr */;
3172 val
* var34
/* : nullable AExpr */;
3173 val
* var36
/* : nullable AExpr */;
3174 val
* var37
/* : nullable MType */;
3177 { /* Inline parser_nodes#AWithExpr#n_expr (self) on <self:AWithExpr> */
3178 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AWithExpr___n_expr
].val
; /* _n_expr on <self:AWithExpr> */
3179 if (unlikely(var2
== NULL
)) {
3180 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3181 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1955);
3189 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var
);
3192 if (var_mtype
== NULL
) {
3193 var4
= 1; /* is null */
3195 var4
= 0; /* arg is null but recv is not */
3198 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
3199 var_other
= ((val
*)NULL
);
3201 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on <var_mtype:nullable MType(MType)> */
3202 var9
= var_mtype
== var_other
;
3218 if (likely(varonce
!=NULL
)) {
3222 var12
= core__flat___NativeString___to_s_full(var11
, 5l, 5l);
3227 { /* Inline parser_nodes#AWithExpr#n_expr (self) on <self:AWithExpr> */
3228 var15
= self
->attrs
[COLOR_nitc__parser_nodes__AWithExpr___n_expr
].val
; /* _n_expr on <self:AWithExpr> */
3229 if (unlikely(var15
== NULL
)) {
3230 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3231 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1955);
3235 RET_LABEL14
:(void)0;
3238 /* <var13:AExpr> isa ASelfExpr */
3239 cltype
= type_nitc__ASelfExpr
.color
;
3240 idtype
= type_nitc__ASelfExpr
.id
;
3241 if(cltype
>= var13
->type
->table_size
) {
3244 var16
= var13
->type
->type_table
[cltype
] == idtype
;
3247 var17
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_mtype
, var10
, var16
);
3250 { /* Inline typing#AWithExpr#method_start= (self,var17) on <self:AWithExpr> */
3251 self
->attrs
[COLOR_nitc__typing__AWithExpr___method_start
].val
= var17
; /* _method_start on <self:AWithExpr> */
3252 RET_LABEL18
:(void)0;
3255 if (likely(varonce19
!=NULL
)) {
3259 var22
= core__flat___NativeString___to_s_full(var21
, 6l, 6l);
3264 { /* Inline parser_nodes#AWithExpr#n_expr (self) on <self:AWithExpr> */
3265 var25
= self
->attrs
[COLOR_nitc__parser_nodes__AWithExpr___n_expr
].val
; /* _n_expr on <self:AWithExpr> */
3266 if (unlikely(var25
== NULL
)) {
3267 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3268 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1955);
3272 RET_LABEL24
:(void)0;
3275 /* <var23:AExpr> isa ASelfExpr */
3276 cltype27
= type_nitc__ASelfExpr
.color
;
3277 idtype28
= type_nitc__ASelfExpr
.id
;
3278 if(cltype27
>= var23
->type
->table_size
) {
3281 var26
= var23
->type
->type_table
[cltype27
] == idtype28
;
3284 var29
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_mtype
, var20
, var26
);
3287 { /* Inline typing#AWithExpr#method_finish= (self,var29) on <self:AWithExpr> */
3288 self
->attrs
[COLOR_nitc__typing__AWithExpr___method_finish
].val
= var29
; /* _method_finish on <self:AWithExpr> */
3289 RET_LABEL30
:(void)0;
3293 { /* Inline parser_nodes#AWithExpr#n_block (self) on <self:AWithExpr> */
3294 var33
= self
->attrs
[COLOR_nitc__parser_nodes__AWithExpr___n_block
].val
; /* _n_block on <self:AWithExpr> */
3296 RET_LABEL32
:(void)0;
3300 nitc__typing___nitc__typing__TypeVisitor___visit_stmt(var_v
, var31
); /* Direct call typing#TypeVisitor#visit_stmt on <var_v:TypeVisitor>*/
3303 { /* Inline parser_nodes#AWithExpr#n_block (self) on <self:AWithExpr> */
3304 var36
= self
->attrs
[COLOR_nitc__parser_nodes__AWithExpr___n_block
].val
; /* _n_block on <self:AWithExpr> */
3306 RET_LABEL35
:(void)0;
3309 if (var34
== NULL
) {
3310 PRINT_ERROR("Runtime error: %s", "Receiver is null");
3311 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1308);
3314 var37
= ((val
*(*)(val
* self
))(var34
->class->vft
[COLOR_nitc__typing__AExpr__mtype
]))(var34
); /* mtype on <var34:nullable AExpr>*/
3317 { /* Inline typing#AExpr#mtype= (self,var37) on <self:AWithExpr> */
3318 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var37
; /* _mtype on <self:AWithExpr> */
3319 RET_LABEL38
:(void)0;
3323 { /* Inline typing#AExpr#is_typed= (self,1) on <self:AWithExpr> */
3324 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:AWithExpr> */
3325 RET_LABEL39
:(void)0;
3330 /* method typing#AAssertExpr#accept_typing for (self: AAssertExpr, TypeVisitor) */
3331 void nitc__typing___AAssertExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
3332 val
* var_v
/* var v: TypeVisitor */;
3333 val
* var
/* : AExpr */;
3334 val
* var2
/* : AExpr */;
3335 val
* var3
/* : nullable MType */;
3336 val
* var4
/* : nullable AExpr */;
3337 val
* var6
/* : nullable AExpr */;
3340 { /* Inline parser_nodes#AAssertExpr#n_expr (self) on <self:AAssertExpr> */
3341 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AAssertExpr___n_expr
].val
; /* _n_expr on <self:AAssertExpr> */
3342 if (unlikely(var2
== NULL
)) {
3343 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3344 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1975);
3352 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var
);
3355 { /* Inline parser_nodes#AAssertExpr#n_else (self) on <self:AAssertExpr> */
3356 var6
= self
->attrs
[COLOR_nitc__parser_nodes__AAssertExpr___n_else
].val
; /* _n_else on <self:AAssertExpr> */
3362 nitc__typing___nitc__typing__TypeVisitor___visit_stmt(var_v
, var4
); /* Direct call typing#TypeVisitor#visit_stmt on <var_v:TypeVisitor>*/
3365 { /* Inline typing#AExpr#is_typed= (self,1) on <self:AAssertExpr> */
3366 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:AAssertExpr> */
3372 /* method typing#AOrExpr#accept_typing for (self: AOrExpr, TypeVisitor) */
3373 void nitc__typing___AOrExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
3374 val
* var_v
/* var v: TypeVisitor */;
3375 val
* var
/* : AExpr */;
3376 val
* var2
/* : AExpr */;
3377 val
* var3
/* : nullable MType */;
3378 val
* var4
/* : AExpr */;
3379 val
* var6
/* : AExpr */;
3380 val
* var7
/* : nullable MType */;
3381 val
* var8
/* : nullable MType */;
3384 { /* Inline parser_nodes#ABinBoolExpr#n_expr (self) on <self:AOrExpr> */
3385 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr
].val
; /* _n_expr on <self:AOrExpr> */
3386 if (unlikely(var2
== NULL
)) {
3387 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3388 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2050);
3396 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var
);
3399 { /* Inline parser_nodes#ABinBoolExpr#n_expr2 (self) on <self:AOrExpr> */
3400 var6
= self
->attrs
[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr2
].val
; /* _n_expr2 on <self:AOrExpr> */
3401 if (unlikely(var6
== NULL
)) {
3402 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
3403 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2056);
3411 var7
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var4
);
3414 var8
= nitc__typing___nitc__typing__TypeVisitor___type_bool(var_v
, self
);
3417 { /* Inline typing#AExpr#mtype= (self,var8) on <self:AOrExpr> */
3418 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var8
; /* _mtype on <self:AOrExpr> */
3424 /* method typing#AImpliesExpr#accept_typing for (self: AImpliesExpr, TypeVisitor) */
3425 void nitc__typing___AImpliesExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
3426 val
* var_v
/* var v: TypeVisitor */;
3427 val
* var
/* : AExpr */;
3428 val
* var2
/* : AExpr */;
3429 val
* var3
/* : nullable MType */;
3430 val
* var4
/* : AExpr */;
3431 val
* var6
/* : AExpr */;
3432 val
* var7
/* : nullable MType */;
3433 val
* var8
/* : nullable MType */;
3436 { /* Inline parser_nodes#ABinBoolExpr#n_expr (self) on <self:AImpliesExpr> */
3437 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr
].val
; /* _n_expr on <self:AImpliesExpr> */
3438 if (unlikely(var2
== NULL
)) {
3439 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3440 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2050);
3448 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var
);
3451 { /* Inline parser_nodes#ABinBoolExpr#n_expr2 (self) on <self:AImpliesExpr> */
3452 var6
= self
->attrs
[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr2
].val
; /* _n_expr2 on <self:AImpliesExpr> */
3453 if (unlikely(var6
== NULL
)) {
3454 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
3455 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2056);
3463 var7
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var4
);
3466 var8
= nitc__typing___nitc__typing__TypeVisitor___type_bool(var_v
, self
);
3469 { /* Inline typing#AExpr#mtype= (self,var8) on <self:AImpliesExpr> */
3470 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var8
; /* _mtype on <self:AImpliesExpr> */
3476 /* method typing#AAndExpr#accept_typing for (self: AAndExpr, TypeVisitor) */
3477 void nitc__typing___AAndExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
3478 val
* var_v
/* var v: TypeVisitor */;
3479 val
* var
/* : AExpr */;
3480 val
* var2
/* : AExpr */;
3481 val
* var3
/* : nullable MType */;
3482 val
* var4
/* : AExpr */;
3483 val
* var6
/* : AExpr */;
3484 val
* var7
/* : nullable MType */;
3485 val
* var8
/* : nullable MType */;
3488 { /* Inline parser_nodes#ABinBoolExpr#n_expr (self) on <self:AAndExpr> */
3489 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr
].val
; /* _n_expr on <self:AAndExpr> */
3490 if (unlikely(var2
== NULL
)) {
3491 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3492 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2050);
3500 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var
);
3503 { /* Inline parser_nodes#ABinBoolExpr#n_expr2 (self) on <self:AAndExpr> */
3504 var6
= self
->attrs
[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr2
].val
; /* _n_expr2 on <self:AAndExpr> */
3505 if (unlikely(var6
== NULL
)) {
3506 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
3507 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2056);
3515 var7
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var4
);
3518 var8
= nitc__typing___nitc__typing__TypeVisitor___type_bool(var_v
, self
);
3521 { /* Inline typing#AExpr#mtype= (self,var8) on <self:AAndExpr> */
3522 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var8
; /* _mtype on <self:AAndExpr> */
3528 /* method typing#ANotExpr#accept_typing for (self: ANotExpr, TypeVisitor) */
3529 void nitc__typing___ANotExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
3530 val
* var_v
/* var v: TypeVisitor */;
3531 val
* var
/* : AExpr */;
3532 val
* var2
/* : AExpr */;
3533 val
* var3
/* : nullable MType */;
3534 val
* var4
/* : nullable MType */;
3537 { /* Inline parser_nodes#ANotExpr#n_expr (self) on <self:ANotExpr> */
3538 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ANotExpr___n_expr
].val
; /* _n_expr on <self:ANotExpr> */
3539 if (unlikely(var2
== NULL
)) {
3540 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3541 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2090);
3549 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_bool(var_v
, var
);
3552 var4
= nitc__typing___nitc__typing__TypeVisitor___type_bool(var_v
, self
);
3555 { /* Inline typing#AExpr#mtype= (self,var4) on <self:ANotExpr> */
3556 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var4
; /* _mtype on <self:ANotExpr> */
3562 /* method typing#AOrElseExpr#accept_typing for (self: AOrElseExpr, TypeVisitor) */
3563 void nitc__typing___AOrElseExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
3564 val
* var_v
/* var v: TypeVisitor */;
3565 val
* var
/* : AExpr */;
3566 val
* var2
/* : AExpr */;
3567 val
* var3
/* : nullable MType */;
3568 val
* var_t1
/* var t1: nullable MType */;
3569 val
* var4
/* : AExpr */;
3570 val
* var6
/* : AExpr */;
3571 val
* var7
/* : nullable MType */;
3572 val
* var_t2
/* var t2: nullable MType */;
3573 short int var8
/* : Bool */;
3574 short int var9
/* : Bool */;
3575 short int var10
/* : Bool */;
3576 val
* var_other
/* var other: nullable Object */;
3577 short int var12
/* : Bool */;
3578 short int var14
/* : Bool */;
3579 short int var_
/* var : Bool */;
3580 short int var15
/* : Bool */;
3581 short int var16
/* : Bool */;
3582 short int var18
/* : Bool */;
3583 short int var20
/* : Bool */;
3584 short int var21
/* : Bool */;
3587 short int var23
/* : Bool */;
3588 val
* var24
/* : MType */;
3589 val
* var25
/* : Array[MType] */;
3590 val
* var_26
/* var : Array[MType] */;
3591 val
* var27
/* : nullable MType */;
3592 val
* var_t
/* var t: nullable MType */;
3593 short int var28
/* : Bool */;
3594 short int var29
/* : Bool */;
3595 short int var31
/* : Bool */;
3596 short int var33
/* : Bool */;
3597 static val
* varonce
;
3598 val
* var34
/* : String */;
3599 char* var35
/* : NativeString */;
3600 val
* var36
/* : String */;
3601 val
* var37
/* : nullable MClass */;
3602 val
* var_c
/* var c: nullable MClass */;
3603 short int var38
/* : Bool */;
3604 short int var39
/* : Bool */;
3605 short int var41
/* : Bool */;
3606 short int var43
/* : Bool */;
3607 val
* var44
/* : MClassType */;
3608 val
* var46
/* : MClassType */;
3609 short int var47
/* : Bool */;
3610 val
* var48
/* : MType */;
3613 { /* Inline parser_nodes#ABinBoolExpr#n_expr (self) on <self:AOrElseExpr> */
3614 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr
].val
; /* _n_expr on <self:AOrElseExpr> */
3615 if (unlikely(var2
== NULL
)) {
3616 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3617 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2050);
3625 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var
);
3629 { /* Inline parser_nodes#ABinBoolExpr#n_expr2 (self) on <self:AOrElseExpr> */
3630 var6
= self
->attrs
[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr2
].val
; /* _n_expr2 on <self:AOrElseExpr> */
3631 if (unlikely(var6
== NULL
)) {
3632 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
3633 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2056);
3641 var7
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var4
);
3644 if (var_t1
== NULL
) {
3645 var9
= 1; /* is null */
3647 var9
= 0; /* arg is null but recv is not */
3650 { /* Inline kernel#Object#== (var_t1,((val*)NULL)) on <var_t1:nullable MType> */
3651 var_other
= ((val
*)NULL
);
3653 { /* Inline kernel#Object#is_same_instance (var_t1,var_other) on <var_t1:nullable MType(MType)> */
3654 var14
= var_t1
== var_other
;
3657 RET_LABEL13
:(void)0;
3662 RET_LABEL11
:(void)0;
3670 if (var_t2
== NULL
) {
3671 var15
= 1; /* is null */
3673 var15
= 0; /* arg is null but recv is not */
3676 { /* Inline kernel#Object#== (var_t2,((val*)NULL)) on <var_t2:nullable MType> */
3677 var_other
= ((val
*)NULL
);
3679 { /* Inline kernel#Object#is_same_instance (var_t2,var_other) on <var_t2:nullable MType(MType)> */
3680 var20
= var_t2
== var_other
;
3683 RET_LABEL19
:(void)0;
3688 RET_LABEL17
:(void)0;
3698 /* <var_t1:nullable MType(MType)> isa MNullType */
3699 cltype
= type_nitc__MNullType
.color
;
3700 idtype
= type_nitc__MNullType
.id
;
3701 if(cltype
>= var_t1
->type
->table_size
) {
3704 var21
= var_t1
->type
->type_table
[cltype
] == idtype
;
3708 { /* Inline typing#AExpr#mtype= (self,var_t2) on <self:AOrElseExpr> */
3709 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var_t2
; /* _mtype on <self:AOrElseExpr> */
3710 RET_LABEL22
:(void)0;
3716 var23
= nitc__typing___nitc__typing__TypeVisitor___can_be_null(var_v
, var_t1
);
3720 var24
= ((val
*(*)(val
* self
))(var_t1
->class->vft
[COLOR_nitc__model__MType__as_notnull
]))(var_t1
); /* as_notnull on <var_t1:nullable MType(MType)>*/
3726 var25
= NEW_core__Array(&type_core__Array__nitc__MType
);
3728 core___core__Array___with_capacity(var25
, 2l); /* Direct call array#Array#with_capacity on <var25:Array[MType]>*/
3732 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_26
, var_t1
); /* Direct call array#AbstractArray#push on <var_26:Array[MType]>*/
3735 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_26
, var_t2
); /* Direct call array#AbstractArray#push on <var_26:Array[MType]>*/
3738 var27
= nitc__typing___nitc__typing__TypeVisitor___merge_types(var_v
, self
, var_26
);
3741 if (var_t
== NULL
) {
3742 var28
= 1; /* is null */
3744 var28
= 0; /* arg is null but recv is not */
3747 { /* Inline kernel#Object#== (var_t,((val*)NULL)) on <var_t:nullable MType> */
3748 var_other
= ((val
*)NULL
);
3750 { /* Inline kernel#Object#is_same_instance (var_t,var_other) on <var_t:nullable MType(MType)> */
3751 var33
= var_t
== var_other
;
3754 RET_LABEL32
:(void)0;
3759 RET_LABEL30
:(void)0;
3764 if (likely(varonce
!=NULL
)) {
3768 var36
= core__flat___NativeString___to_s_full(var35
, 6l, 6l);
3773 var37
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var34
);
3776 if (var_c
== NULL
) {
3777 var38
= 1; /* is null */
3779 var38
= 0; /* arg is null but recv is not */
3782 { /* Inline kernel#Object#== (var_c,((val*)NULL)) on <var_c:nullable MClass> */
3783 var_other
= ((val
*)NULL
);
3785 { /* Inline kernel#Object#is_same_instance (var_c,var_other) on <var_c:nullable MClass(MClass)> */
3786 var43
= var_c
== var_other
;
3789 RET_LABEL42
:(void)0;
3794 RET_LABEL40
:(void)0;
3803 { /* Inline model#MClass#mclass_type (var_c) on <var_c:nullable MClass(MClass)> */
3804 var46
= var_c
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_c:nullable MClass(MClass)> */
3805 if (unlikely(var46
== NULL
)) {
3806 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
3807 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
3811 RET_LABEL45
:(void)0;
3816 var47
= nitc__typing___nitc__typing__TypeVisitor___can_be_null(var_v
, var_t2
);
3820 var48
= nitc___nitc__MType___as_nullable(var_t
);
3828 { /* Inline typing#AExpr#mtype= (self,var_t) on <self:AOrElseExpr> */
3829 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var_t
; /* _mtype on <self:AOrElseExpr> */
3830 RET_LABEL49
:(void)0;
3835 /* method typing#AOrElseExpr#accept_post_typing for (self: AOrElseExpr, TypeVisitor) */
3836 void nitc__typing___AOrElseExpr___ANode__accept_post_typing(val
* self
, val
* p0
) {
3837 val
* var_v
/* var v: TypeVisitor */;
3838 val
* var
/* : AExpr */;
3839 val
* var2
/* : AExpr */;
3840 val
* var3
/* : nullable MType */;
3841 val
* var_t1
/* var t1: nullable MType */;
3842 short int var4
/* : Bool */;
3843 short int var5
/* : Bool */;
3844 val
* var_other
/* var other: nullable Object */;
3845 short int var7
/* : Bool */;
3846 short int var9
/* : Bool */;
3847 val
* var10
/* : AExpr */;
3848 val
* var12
/* : AExpr */;
3849 short int var13
/* : Bool */;
3852 { /* Inline parser_nodes#ABinBoolExpr#n_expr (self) on <self:AOrElseExpr> */
3853 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr
].val
; /* _n_expr on <self:AOrElseExpr> */
3854 if (unlikely(var2
== NULL
)) {
3855 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3856 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2050);
3864 var3
= ((val
*(*)(val
* self
))(var
->class->vft
[COLOR_nitc__typing__AExpr__mtype
]))(var
); /* mtype on <var:AExpr>*/
3867 if (var_t1
== NULL
) {
3868 var4
= 1; /* is null */
3870 var4
= 0; /* arg is null but recv is not */
3873 { /* Inline kernel#Object#== (var_t1,((val*)NULL)) on <var_t1:nullable MType> */
3874 var_other
= ((val
*)NULL
);
3876 { /* Inline kernel#Object#is_same_instance (var_t1,var_other) on <var_t1:nullable MType(MType)> */
3877 var9
= var_t1
== var_other
;
3893 { /* Inline parser_nodes#ABinBoolExpr#n_expr (self) on <self:AOrElseExpr> */
3894 var12
= self
->attrs
[COLOR_nitc__parser_nodes__ABinBoolExpr___n_expr
].val
; /* _n_expr on <self:AOrElseExpr> */
3895 if (unlikely(var12
== NULL
)) {
3896 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
3897 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2050);
3901 RET_LABEL11
:(void)0;
3905 var13
= nitc__typing___nitc__typing__TypeVisitor___check_can_be_null(var_v
, var10
, var_t1
);
3910 /* method typing#ATrueExpr#accept_typing for (self: ATrueExpr, TypeVisitor) */
3911 void nitc__typing___ATrueExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
3912 val
* var_v
/* var v: TypeVisitor */;
3913 val
* var
/* : nullable MType */;
3916 var
= nitc__typing___nitc__typing__TypeVisitor___type_bool(var_v
, self
);
3919 { /* Inline typing#AExpr#mtype= (self,var) on <self:ATrueExpr> */
3920 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var
; /* _mtype on <self:ATrueExpr> */
3926 /* method typing#AFalseExpr#accept_typing for (self: AFalseExpr, TypeVisitor) */
3927 void nitc__typing___AFalseExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
3928 val
* var_v
/* var v: TypeVisitor */;
3929 val
* var
/* : nullable MType */;
3932 var
= nitc__typing___nitc__typing__TypeVisitor___type_bool(var_v
, self
);
3935 { /* Inline typing#AExpr#mtype= (self,var) on <self:AFalseExpr> */
3936 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var
; /* _mtype on <self:AFalseExpr> */
3942 /* method typing#AIntegerExpr#accept_typing for (self: AIntegerExpr, TypeVisitor) */
3943 void nitc__typing___AIntegerExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
3944 val
* var_v
/* var v: TypeVisitor */;
3945 val
* var_mclass
/* var mclass: nullable MClass */;
3946 val
* var
/* : nullable Numeric */;
3947 val
* var2
/* : nullable Numeric */;
3948 short int var3
/* : Bool */;
3951 static val
* varonce
;
3952 val
* var4
/* : String */;
3953 char* var5
/* : NativeString */;
3954 val
* var6
/* : String */;
3955 val
* var7
/* : nullable MClass */;
3956 val
* var8
/* : nullable Numeric */;
3957 val
* var10
/* : nullable Numeric */;
3958 short int var11
/* : Bool */;
3961 static val
* varonce14
;
3962 val
* var15
/* : String */;
3963 char* var16
/* : NativeString */;
3964 val
* var17
/* : String */;
3965 val
* var18
/* : nullable MClass */;
3966 val
* var19
/* : nullable Numeric */;
3967 val
* var21
/* : nullable Numeric */;
3968 short int var22
/* : Bool */;
3971 static val
* varonce25
;
3972 val
* var26
/* : String */;
3973 char* var27
/* : NativeString */;
3974 val
* var28
/* : String */;
3975 val
* var29
/* : nullable MClass */;
3976 val
* var30
/* : nullable Numeric */;
3977 val
* var32
/* : nullable Numeric */;
3978 short int var33
/* : Bool */;
3981 static val
* varonce36
;
3982 val
* var37
/* : String */;
3983 char* var38
/* : NativeString */;
3984 val
* var39
/* : String */;
3985 val
* var40
/* : nullable MClass */;
3986 val
* var41
/* : nullable Numeric */;
3987 val
* var43
/* : nullable Numeric */;
3988 short int var44
/* : Bool */;
3991 static val
* varonce47
;
3992 val
* var48
/* : String */;
3993 char* var49
/* : NativeString */;
3994 val
* var50
/* : String */;
3995 val
* var51
/* : nullable MClass */;
3996 val
* var52
/* : nullable Numeric */;
3997 val
* var54
/* : nullable Numeric */;
3998 short int var55
/* : Bool */;
4001 static val
* varonce58
;
4002 val
* var59
/* : String */;
4003 char* var60
/* : NativeString */;
4004 val
* var61
/* : String */;
4005 val
* var62
/* : nullable MClass */;
4006 val
* var63
/* : nullable Numeric */;
4007 val
* var65
/* : nullable Numeric */;
4008 short int var66
/* : Bool */;
4011 static val
* varonce69
;
4012 val
* var70
/* : String */;
4013 char* var71
/* : NativeString */;
4014 val
* var72
/* : String */;
4015 val
* var73
/* : nullable MClass */;
4016 short int var74
/* : Bool */;
4017 short int var75
/* : Bool */;
4018 val
* var_other
/* var other: nullable Object */;
4019 short int var77
/* : Bool */;
4020 short int var79
/* : Bool */;
4021 val
* var80
/* : MClassType */;
4022 val
* var82
/* : MClassType */;
4024 var_mclass
= ((val
*)NULL
);
4026 { /* Inline literal#AIntegerExpr#value (self) on <self:AIntegerExpr> */
4027 var2
= self
->attrs
[COLOR_nitc__literal__AIntegerExpr___value
].val
; /* _value on <self:AIntegerExpr> */
4032 /* <var:nullable Numeric> isa Byte */
4033 cltype
= type_core__Byte
.color
;
4034 idtype
= type_core__Byte
.id
;
4038 if(cltype
>= (((long)var
&3)?type_info
[((long)var
&3)]:var
->type
)->table_size
) {
4041 var3
= (((long)var
&3)?type_info
[((long)var
&3)]:var
->type
)->type_table
[cltype
] == idtype
;
4045 if (likely(varonce
!=NULL
)) {
4049 var6
= core__flat___NativeString___to_s_full(var5
, 4l, 4l);
4054 var7
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var4
);
4059 { /* Inline literal#AIntegerExpr#value (self) on <self:AIntegerExpr> */
4060 var10
= self
->attrs
[COLOR_nitc__literal__AIntegerExpr___value
].val
; /* _value on <self:AIntegerExpr> */
4065 /* <var8:nullable Numeric> isa Int */
4066 cltype12
= type_core__Int
.color
;
4067 idtype13
= type_core__Int
.id
;
4071 if(cltype12
>= (((long)var8
&3)?type_info
[((long)var8
&3)]:var8
->type
)->table_size
) {
4074 var11
= (((long)var8
&3)?type_info
[((long)var8
&3)]:var8
->type
)->type_table
[cltype12
] == idtype13
;
4078 if (likely(varonce14
!=NULL
)) {
4082 var17
= core__flat___NativeString___to_s_full(var16
, 3l, 3l);
4087 var18
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var15
);
4092 { /* Inline literal#AIntegerExpr#value (self) on <self:AIntegerExpr> */
4093 var21
= self
->attrs
[COLOR_nitc__literal__AIntegerExpr___value
].val
; /* _value on <self:AIntegerExpr> */
4095 RET_LABEL20
:(void)0;
4098 /* <var19:nullable Numeric> isa Int8 */
4099 cltype23
= type_core__Int8
.color
;
4100 idtype24
= type_core__Int8
.id
;
4104 if(cltype23
>= (((long)var19
&3)?type_info
[((long)var19
&3)]:var19
->type
)->table_size
) {
4107 var22
= (((long)var19
&3)?type_info
[((long)var19
&3)]:var19
->type
)->type_table
[cltype23
] == idtype24
;
4111 if (likely(varonce25
!=NULL
)) {
4115 var28
= core__flat___NativeString___to_s_full(var27
, 4l, 4l);
4120 var29
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var26
);
4125 { /* Inline literal#AIntegerExpr#value (self) on <self:AIntegerExpr> */
4126 var32
= self
->attrs
[COLOR_nitc__literal__AIntegerExpr___value
].val
; /* _value on <self:AIntegerExpr> */
4128 RET_LABEL31
:(void)0;
4131 /* <var30:nullable Numeric> isa Int16 */
4132 cltype34
= type_core__Int16
.color
;
4133 idtype35
= type_core__Int16
.id
;
4137 if(cltype34
>= (((long)var30
&3)?type_info
[((long)var30
&3)]:var30
->type
)->table_size
) {
4140 var33
= (((long)var30
&3)?type_info
[((long)var30
&3)]:var30
->type
)->type_table
[cltype34
] == idtype35
;
4144 if (likely(varonce36
!=NULL
)) {
4148 var39
= core__flat___NativeString___to_s_full(var38
, 5l, 5l);
4153 var40
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var37
);
4158 { /* Inline literal#AIntegerExpr#value (self) on <self:AIntegerExpr> */
4159 var43
= self
->attrs
[COLOR_nitc__literal__AIntegerExpr___value
].val
; /* _value on <self:AIntegerExpr> */
4161 RET_LABEL42
:(void)0;
4164 /* <var41:nullable Numeric> isa UInt16 */
4165 cltype45
= type_core__UInt16
.color
;
4166 idtype46
= type_core__UInt16
.id
;
4170 if(cltype45
>= (((long)var41
&3)?type_info
[((long)var41
&3)]:var41
->type
)->table_size
) {
4173 var44
= (((long)var41
&3)?type_info
[((long)var41
&3)]:var41
->type
)->type_table
[cltype45
] == idtype46
;
4177 if (likely(varonce47
!=NULL
)) {
4181 var50
= core__flat___NativeString___to_s_full(var49
, 6l, 6l);
4186 var51
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var48
);
4191 { /* Inline literal#AIntegerExpr#value (self) on <self:AIntegerExpr> */
4192 var54
= self
->attrs
[COLOR_nitc__literal__AIntegerExpr___value
].val
; /* _value on <self:AIntegerExpr> */
4194 RET_LABEL53
:(void)0;
4197 /* <var52:nullable Numeric> isa Int32 */
4198 cltype56
= type_core__Int32
.color
;
4199 idtype57
= type_core__Int32
.id
;
4203 if(cltype56
>= (((long)var52
&3)?type_info
[((long)var52
&3)]:var52
->type
)->table_size
) {
4206 var55
= (((long)var52
&3)?type_info
[((long)var52
&3)]:var52
->type
)->type_table
[cltype56
] == idtype57
;
4210 if (likely(varonce58
!=NULL
)) {
4214 var61
= core__flat___NativeString___to_s_full(var60
, 5l, 5l);
4219 var62
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var59
);
4224 { /* Inline literal#AIntegerExpr#value (self) on <self:AIntegerExpr> */
4225 var65
= self
->attrs
[COLOR_nitc__literal__AIntegerExpr___value
].val
; /* _value on <self:AIntegerExpr> */
4227 RET_LABEL64
:(void)0;
4230 /* <var63:nullable Numeric> isa UInt32 */
4231 cltype67
= type_core__UInt32
.color
;
4232 idtype68
= type_core__UInt32
.id
;
4236 if(cltype67
>= (((long)var63
&3)?type_info
[((long)var63
&3)]:var63
->type
)->table_size
) {
4239 var66
= (((long)var63
&3)?type_info
[((long)var63
&3)]:var63
->type
)->type_table
[cltype67
] == idtype68
;
4243 if (likely(varonce69
!=NULL
)) {
4247 var72
= core__flat___NativeString___to_s_full(var71
, 6l, 6l);
4252 var73
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var70
);
4263 if (var_mclass
== NULL
) {
4264 var74
= 1; /* is null */
4266 var74
= 0; /* arg is null but recv is not */
4269 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
4270 var_other
= ((val
*)NULL
);
4272 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other) on <var_mclass:nullable MClass(MClass)> */
4273 var79
= var_mclass
== var_other
;
4276 RET_LABEL78
:(void)0;
4281 RET_LABEL76
:(void)0;
4290 { /* Inline model#MClass#mclass_type (var_mclass) on <var_mclass:nullable MClass(MClass)> */
4291 var82
= var_mclass
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_mclass:nullable MClass(MClass)> */
4292 if (unlikely(var82
== NULL
)) {
4293 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
4294 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
4298 RET_LABEL81
:(void)0;
4302 { /* Inline typing#AExpr#mtype= (self,var80) on <self:AIntegerExpr> */
4303 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var80
; /* _mtype on <self:AIntegerExpr> */
4304 RET_LABEL83
:(void)0;
4309 /* method typing#AFloatExpr#accept_typing for (self: AFloatExpr, TypeVisitor) */
4310 void nitc__typing___AFloatExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
4311 val
* var_v
/* var v: TypeVisitor */;
4312 static val
* varonce
;
4313 val
* var
/* : String */;
4314 char* var1
/* : NativeString */;
4315 val
* var2
/* : String */;
4316 val
* var3
/* : nullable MClass */;
4317 val
* var_mclass
/* var mclass: nullable MClass */;
4318 short int var4
/* : Bool */;
4319 short int var5
/* : Bool */;
4320 val
* var_other
/* var other: nullable Object */;
4321 short int var7
/* : Bool */;
4322 short int var9
/* : Bool */;
4323 val
* var10
/* : MClassType */;
4324 val
* var12
/* : MClassType */;
4326 if (likely(varonce
!=NULL
)) {
4330 var2
= core__flat___NativeString___to_s_full(var1
, 5l, 5l);
4335 var3
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var
);
4338 if (var_mclass
== NULL
) {
4339 var4
= 1; /* is null */
4341 var4
= 0; /* arg is null but recv is not */
4344 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
4345 var_other
= ((val
*)NULL
);
4347 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other) on <var_mclass:nullable MClass(MClass)> */
4348 var9
= var_mclass
== var_other
;
4365 { /* Inline model#MClass#mclass_type (var_mclass) on <var_mclass:nullable MClass(MClass)> */
4366 var12
= var_mclass
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_mclass:nullable MClass(MClass)> */
4367 if (unlikely(var12
== NULL
)) {
4368 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
4369 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
4373 RET_LABEL11
:(void)0;
4377 { /* Inline typing#AExpr#mtype= (self,var10) on <self:AFloatExpr> */
4378 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var10
; /* _mtype on <self:AFloatExpr> */
4379 RET_LABEL13
:(void)0;
4384 /* method typing#ACharExpr#accept_typing for (self: ACharExpr, TypeVisitor) */
4385 void nitc__typing___ACharExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
4386 val
* var_v
/* var v: TypeVisitor */;
4387 static val
* varonce
;
4388 val
* var
/* : String */;
4389 char* var1
/* : NativeString */;
4390 val
* var2
/* : String */;
4391 val
* var3
/* : nullable MClass */;
4392 val
* var_mclass
/* var mclass: nullable MClass */;
4393 short int var4
/* : Bool */;
4394 short int var5
/* : Bool */;
4395 val
* var_other
/* var other: nullable Object */;
4396 short int var7
/* : Bool */;
4397 short int var9
/* : Bool */;
4398 val
* var10
/* : MClassType */;
4399 val
* var12
/* : MClassType */;
4401 if (likely(varonce
!=NULL
)) {
4405 var2
= core__flat___NativeString___to_s_full(var1
, 4l, 4l);
4410 var3
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var
);
4413 if (var_mclass
== NULL
) {
4414 var4
= 1; /* is null */
4416 var4
= 0; /* arg is null but recv is not */
4419 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
4420 var_other
= ((val
*)NULL
);
4422 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other) on <var_mclass:nullable MClass(MClass)> */
4423 var9
= var_mclass
== var_other
;
4440 { /* Inline model#MClass#mclass_type (var_mclass) on <var_mclass:nullable MClass(MClass)> */
4441 var12
= var_mclass
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_mclass:nullable MClass(MClass)> */
4442 if (unlikely(var12
== NULL
)) {
4443 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
4444 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
4448 RET_LABEL11
:(void)0;
4452 { /* Inline typing#AExpr#mtype= (self,var10) on <self:ACharExpr> */
4453 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var10
; /* _mtype on <self:ACharExpr> */
4454 RET_LABEL13
:(void)0;
4459 /* method typing#AStringFormExpr#accept_typing for (self: AStringFormExpr, TypeVisitor) */
4460 void nitc__typing___AStringFormExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
4461 val
* var_v
/* var v: TypeVisitor */;
4462 static val
* varonce
;
4463 val
* var
/* : String */;
4464 char* var1
/* : NativeString */;
4465 val
* var2
/* : String */;
4466 val
* var3
/* : nullable MClass */;
4467 val
* var_mclass
/* var mclass: nullable MClass */;
4468 short int var4
/* : Bool */;
4469 short int var5
/* : Bool */;
4470 val
* var_other
/* var other: nullable Object */;
4471 short int var7
/* : Bool */;
4472 short int var9
/* : Bool */;
4473 val
* var10
/* : MClassType */;
4474 val
* var12
/* : MClassType */;
4476 if (likely(varonce
!=NULL
)) {
4480 var2
= core__flat___NativeString___to_s_full(var1
, 6l, 6l);
4485 var3
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var
);
4488 if (var_mclass
== NULL
) {
4489 var4
= 1; /* is null */
4491 var4
= 0; /* arg is null but recv is not */
4494 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
4495 var_other
= ((val
*)NULL
);
4497 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other) on <var_mclass:nullable MClass(MClass)> */
4498 var9
= var_mclass
== var_other
;
4515 { /* Inline model#MClass#mclass_type (var_mclass) on <var_mclass:nullable MClass(MClass)> */
4516 var12
= var_mclass
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_mclass:nullable MClass(MClass)> */
4517 if (unlikely(var12
== NULL
)) {
4518 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
4519 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
4523 RET_LABEL11
:(void)0;
4527 { /* Inline typing#AExpr#mtype= (self,var10) on <self:AStringFormExpr> */
4528 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var10
; /* _mtype on <self:AStringFormExpr> */
4529 RET_LABEL13
:(void)0;
4534 /* method typing#ASuperstringExpr#accept_typing for (self: ASuperstringExpr, TypeVisitor) */
4535 void nitc__typing___ASuperstringExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
4536 val
* var_v
/* var v: TypeVisitor */;
4537 static val
* varonce
;
4538 val
* var
/* : String */;
4539 char* var1
/* : NativeString */;
4540 val
* var2
/* : String */;
4541 val
* var3
/* : nullable MClass */;
4542 val
* var_mclass
/* var mclass: nullable MClass */;
4543 short int var4
/* : Bool */;
4544 short int var5
/* : Bool */;
4545 val
* var_other
/* var other: nullable Object */;
4546 short int var7
/* : Bool */;
4547 short int var9
/* : Bool */;
4548 val
* var10
/* : MClassType */;
4549 val
* var12
/* : MClassType */;
4550 static val
* varonce14
;
4551 val
* var15
/* : String */;
4552 char* var16
/* : NativeString */;
4553 val
* var17
/* : String */;
4554 val
* var18
/* : nullable MClass */;
4555 val
* var_objclass
/* var objclass: nullable MClass */;
4556 short int var19
/* : Bool */;
4557 short int var20
/* : Bool */;
4558 short int var22
/* : Bool */;
4559 short int var24
/* : Bool */;
4560 val
* var25
/* : MClassType */;
4561 val
* var27
/* : MClassType */;
4562 val
* var_objtype
/* var objtype: MClassType */;
4563 val
* var28
/* : ANodes[AExpr] */;
4564 val
* var30
/* : ANodes[AExpr] */;
4565 val
* var_
/* var : ANodes[AExpr] */;
4566 val
* var31
/* : Iterator[ANode] */;
4567 val
* var_32
/* var : Iterator[AExpr] */;
4568 short int var33
/* : Bool */;
4569 val
* var34
/* : nullable Object */;
4570 val
* var_nexpr
/* var nexpr: AExpr */;
4571 val
* var35
/* : nullable MType */;
4573 if (likely(varonce
!=NULL
)) {
4577 var2
= core__flat___NativeString___to_s_full(var1
, 6l, 6l);
4582 var3
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var
);
4585 if (var_mclass
== NULL
) {
4586 var4
= 1; /* is null */
4588 var4
= 0; /* arg is null but recv is not */
4591 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
4592 var_other
= ((val
*)NULL
);
4594 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other) on <var_mclass:nullable MClass(MClass)> */
4595 var9
= var_mclass
== var_other
;
4612 { /* Inline model#MClass#mclass_type (var_mclass) on <var_mclass:nullable MClass(MClass)> */
4613 var12
= var_mclass
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_mclass:nullable MClass(MClass)> */
4614 if (unlikely(var12
== NULL
)) {
4615 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
4616 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
4620 RET_LABEL11
:(void)0;
4624 { /* Inline typing#AExpr#mtype= (self,var10) on <self:ASuperstringExpr> */
4625 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var10
; /* _mtype on <self:ASuperstringExpr> */
4626 RET_LABEL13
:(void)0;
4629 if (likely(varonce14
!=NULL
)) {
4633 var17
= core__flat___NativeString___to_s_full(var16
, 6l, 6l);
4638 var18
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var15
);
4640 var_objclass
= var18
;
4641 if (var_objclass
== NULL
) {
4642 var19
= 1; /* is null */
4644 var19
= 0; /* arg is null but recv is not */
4647 { /* Inline kernel#Object#== (var_objclass,((val*)NULL)) on <var_objclass:nullable MClass> */
4648 var_other
= ((val
*)NULL
);
4650 { /* Inline kernel#Object#is_same_instance (var_objclass,var_other) on <var_objclass:nullable MClass(MClass)> */
4651 var24
= var_objclass
== var_other
;
4654 RET_LABEL23
:(void)0;
4659 RET_LABEL21
:(void)0;
4668 { /* Inline model#MClass#mclass_type (var_objclass) on <var_objclass:nullable MClass(MClass)> */
4669 var27
= var_objclass
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_objclass:nullable MClass(MClass)> */
4670 if (unlikely(var27
== NULL
)) {
4671 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
4672 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
4676 RET_LABEL26
:(void)0;
4679 var_objtype
= var25
;
4681 { /* Inline parser_nodes#ASuperstringExpr#n_exprs (self) on <self:ASuperstringExpr> */
4682 var30
= self
->attrs
[COLOR_nitc__parser_nodes__ASuperstringExpr___n_exprs
].val
; /* _n_exprs on <self:ASuperstringExpr> */
4683 if (unlikely(var30
== NULL
)) {
4684 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs");
4685 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2564);
4689 RET_LABEL29
:(void)0;
4694 var31
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_
);
4699 var33
= ((short int(*)(val
* self
))((((long)var_32
&3)?class_info
[((long)var_32
&3)]:var_32
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_32
); /* is_ok on <var_32:Iterator[AExpr]>*/
4706 var34
= ((val
*(*)(val
* self
))((((long)var_32
&3)?class_info
[((long)var_32
&3)]:var_32
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_32
); /* item on <var_32:Iterator[AExpr]>*/
4710 var35
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_subtype(var_v
, var_nexpr
, var_objtype
);
4713 ((void(*)(val
* self
))((((long)var_32
&3)?class_info
[((long)var_32
&3)]:var_32
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_32
); /* next on <var_32:Iterator[AExpr]>*/
4716 BREAK_label
: (void)0;
4718 ((void(*)(val
* self
))((((long)var_32
&3)?class_info
[((long)var_32
&3)]:var_32
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_32
); /* finish on <var_32:Iterator[AExpr]>*/
4722 /* method typing#AArrayExpr#with_capacity_callsite for (self: AArrayExpr): nullable CallSite */
4723 val
* nitc__typing___AArrayExpr___with_capacity_callsite(val
* self
) {
4724 val
* var
/* : nullable CallSite */;
4725 val
* var1
/* : nullable CallSite */;
4726 var1
= self
->attrs
[COLOR_nitc__typing__AArrayExpr___with_capacity_callsite
].val
; /* _with_capacity_callsite on <self:AArrayExpr> */
4731 /* method typing#AArrayExpr#with_capacity_callsite= for (self: AArrayExpr, nullable CallSite) */
4732 void nitc__typing___AArrayExpr___with_capacity_callsite_61d(val
* self
, val
* p0
) {
4733 self
->attrs
[COLOR_nitc__typing__AArrayExpr___with_capacity_callsite
].val
= p0
; /* _with_capacity_callsite on <self:AArrayExpr> */
4736 /* method typing#AArrayExpr#push_callsite for (self: AArrayExpr): nullable CallSite */
4737 val
* nitc__typing___AArrayExpr___push_callsite(val
* self
) {
4738 val
* var
/* : nullable CallSite */;
4739 val
* var1
/* : nullable CallSite */;
4740 var1
= self
->attrs
[COLOR_nitc__typing__AArrayExpr___push_callsite
].val
; /* _push_callsite on <self:AArrayExpr> */
4745 /* method typing#AArrayExpr#push_callsite= for (self: AArrayExpr, nullable CallSite) */
4746 void nitc__typing___AArrayExpr___push_callsite_61d(val
* self
, val
* p0
) {
4747 self
->attrs
[COLOR_nitc__typing__AArrayExpr___push_callsite
].val
= p0
; /* _push_callsite on <self:AArrayExpr> */
4750 /* method typing#AArrayExpr#element_mtype for (self: AArrayExpr): nullable MType */
4751 val
* nitc__typing___AArrayExpr___element_mtype(val
* self
) {
4752 val
* var
/* : nullable MType */;
4753 val
* var1
/* : nullable MType */;
4754 var1
= self
->attrs
[COLOR_nitc__typing__AArrayExpr___element_mtype
].val
; /* _element_mtype on <self:AArrayExpr> */
4759 /* method typing#AArrayExpr#element_mtype= for (self: AArrayExpr, nullable MType) */
4760 void nitc__typing___AArrayExpr___element_mtype_61d(val
* self
, val
* p0
) {
4761 self
->attrs
[COLOR_nitc__typing__AArrayExpr___element_mtype
].val
= p0
; /* _element_mtype on <self:AArrayExpr> */
4764 /* method typing#AArrayExpr#set_comprehension for (self: AArrayExpr, nullable AExpr) */
4765 void nitc__typing___AArrayExpr___set_comprehension(val
* self
, val
* p0
) {
4766 val
* var_n
/* var n: nullable AExpr */;
4767 short int var
/* : Bool */;
4768 short int var1
/* : Bool */;
4769 val
* var_other
/* var other: nullable Object */;
4770 short int var3
/* : Bool */;
4771 short int var5
/* : Bool */;
4772 short int var6
/* : Bool */;
4775 val
* var7
/* : nullable AExpr */;
4776 val
* var9
/* : nullable AExpr */;
4777 short int var10
/* : Bool */;
4780 val
* var13
/* : nullable AExpr */;
4781 val
* var15
/* : nullable AExpr */;
4782 val
* var16
/* : nullable AExpr */;
4783 val
* var18
/* : nullable AExpr */;
4785 if (var_n
== NULL
) {
4786 var
= 1; /* is null */
4788 var
= 0; /* arg is null but recv is not */
4791 { /* Inline kernel#Object#== (var_n,((val*)NULL)) on <var_n:nullable AExpr> */
4792 var_other
= ((val
*)NULL
);
4794 { /* Inline kernel#Object#is_same_instance (var_n,var_other) on <var_n:nullable AExpr(AExpr)> */
4795 var5
= var_n
== var_other
;
4810 /* <var_n:nullable AExpr(AExpr)> isa AForExpr */
4811 cltype
= type_nitc__AForExpr
.color
;
4812 idtype
= type_nitc__AForExpr
.id
;
4813 if(cltype
>= var_n
->type
->table_size
) {
4816 var6
= var_n
->type
->type_table
[cltype
] == idtype
;
4820 { /* Inline parser_nodes#AForExpr#n_block (var_n) on <var_n:nullable AExpr(AForExpr)> */
4821 var9
= var_n
->attrs
[COLOR_nitc__parser_nodes__AForExpr___n_block
].val
; /* _n_block on <var_n:nullable AExpr(AForExpr)> */
4827 nitc__typing___AArrayExpr___set_comprehension(self
, var7
); /* Direct call typing#AArrayExpr#set_comprehension on <self:AArrayExpr>*/
4830 /* <var_n:nullable AExpr(AExpr)> isa AIfExpr */
4831 cltype11
= type_nitc__AIfExpr
.color
;
4832 idtype12
= type_nitc__AIfExpr
.id
;
4833 if(cltype11
>= var_n
->type
->table_size
) {
4836 var10
= var_n
->type
->type_table
[cltype11
] == idtype12
;
4840 { /* Inline parser_nodes#AIfExpr#n_then (var_n) on <var_n:nullable AExpr(AIfExpr)> */
4841 var15
= var_n
->attrs
[COLOR_nitc__parser_nodes__AIfExpr___n_then
].val
; /* _n_then on <var_n:nullable AExpr(AIfExpr)> */
4843 RET_LABEL14
:(void)0;
4847 nitc__typing___AArrayExpr___set_comprehension(self
, var13
); /* Direct call typing#AArrayExpr#set_comprehension on <self:AArrayExpr>*/
4850 { /* Inline parser_nodes#AIfExpr#n_else (var_n) on <var_n:nullable AExpr(AIfExpr)> */
4851 var18
= var_n
->attrs
[COLOR_nitc__parser_nodes__AIfExpr___n_else
].val
; /* _n_else on <var_n:nullable AExpr(AIfExpr)> */
4853 RET_LABEL17
:(void)0;
4857 nitc__typing___AArrayExpr___set_comprehension(self
, var16
); /* Direct call typing#AArrayExpr#set_comprehension on <self:AArrayExpr>*/
4861 { /* Inline typing#AExpr#comprehension= (var_n,self) on <var_n:nullable AExpr(AExpr)> */
4862 var_n
->attrs
[COLOR_nitc__typing__AExpr___comprehension
].val
= self
; /* _comprehension on <var_n:nullable AExpr(AExpr)> */
4863 RET_LABEL19
:(void)0;
4871 /* method typing#AArrayExpr#accept_typing for (self: AArrayExpr, TypeVisitor) */
4872 void nitc__typing___AArrayExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
4873 val
* var_v
/* var v: TypeVisitor */;
4874 val
* var_mtype
/* var mtype: nullable MType */;
4875 val
* var
/* : nullable AType */;
4876 val
* var2
/* : nullable AType */;
4877 val
* var_ntype
/* var ntype: nullable AType */;
4878 short int var3
/* : Bool */;
4879 short int var4
/* : Bool */;
4880 val
* var_other
/* var other: nullable Object */;
4881 short int var6
/* : Bool */;
4882 short int var7
/* : Bool */;
4883 val
* var8
/* : nullable MType */;
4884 short int var9
/* : Bool */;
4885 short int var10
/* : Bool */;
4886 val
* var_other12
/* var other: nullable Object */;
4887 short int var13
/* : Bool */;
4888 short int var15
/* : Bool */;
4889 val
* var16
/* : Array[nullable MType] */;
4890 val
* var_mtypes
/* var mtypes: Array[nullable MType] */;
4891 short int var_useless
/* var useless: Bool */;
4892 val
* var17
/* : ANodes[AExpr] */;
4893 val
* var19
/* : ANodes[AExpr] */;
4894 val
* var_
/* var : ANodes[AExpr] */;
4895 val
* var20
/* : Iterator[ANode] */;
4896 val
* var_21
/* var : Iterator[AExpr] */;
4897 short int var22
/* : Bool */;
4898 val
* var23
/* : nullable Object */;
4899 val
* var_e
/* var e: AExpr */;
4900 val
* var24
/* : nullable MType */;
4901 val
* var_t
/* var t: nullable MType */;
4902 short int var25
/* : Bool */;
4903 short int var26
/* : Bool */;
4904 short int var28
/* : Bool */;
4905 short int var30
/* : Bool */;
4906 short int var31
/* : Bool */;
4907 short int var32
/* : Bool */;
4908 short int var34
/* : Bool */;
4909 short int var35
/* : Bool */;
4910 val
* var36
/* : nullable MType */;
4911 short int var37
/* : Bool */;
4912 short int var38
/* : Bool */;
4913 short int var40
/* : Bool */;
4914 short int var42
/* : Bool */;
4915 short int var43
/* : Bool */;
4916 short int var45
/* : Bool */;
4917 short int var47
/* : Bool */;
4918 short int var48
/* : Bool */;
4919 short int var49
/* : Bool */;
4920 short int var51
/* : Bool */;
4921 short int var53
/* : Bool */;
4922 val
* var54
/* : nullable MType */;
4923 val
* var56
/* : nullable MType */;
4924 short int var57
/* : Bool */;
4925 short int var58
/* : Bool */;
4926 short int var60
/* : Bool */;
4927 short int var61
/* : Bool */;
4928 val
* var62
/* : nullable MType */;
4929 val
* var64
/* : nullable MType */;
4930 val
* var65
/* : nullable MType */;
4931 short int var66
/* : Bool */;
4932 short int var67
/* : Bool */;
4933 short int var68
/* : Bool */;
4934 short int var70
/* : Bool */;
4935 short int var72
/* : Bool */;
4936 short int var_73
/* var : Bool */;
4937 short int var74
/* : Bool */;
4940 val
* var75
/* : NativeArray[String] */;
4941 static val
* varonce
;
4942 static val
* varonce76
;
4943 val
* var77
/* : String */;
4944 char* var78
/* : NativeString */;
4945 val
* var79
/* : String */;
4946 static val
* varonce80
;
4947 val
* var81
/* : String */;
4948 char* var82
/* : NativeString */;
4949 val
* var83
/* : String */;
4950 val
* var84
/* : String */;
4951 val
* var85
/* : String */;
4952 short int var86
/* : Bool */;
4953 short int var87
/* : Bool */;
4954 short int var89
/* : Bool */;
4955 short int var90
/* : Bool */;
4956 val
* var91
/* : ModelBuilder */;
4957 val
* var93
/* : ModelBuilder */;
4958 static val
* varonce94
;
4959 val
* var95
/* : String */;
4960 char* var96
/* : NativeString */;
4961 val
* var97
/* : String */;
4962 val
* var99
/* : NativeArray[String] */;
4963 static val
* varonce98
;
4964 static val
* varonce100
;
4965 val
* var101
/* : String */;
4966 char* var102
/* : NativeString */;
4967 val
* var103
/* : String */;
4968 static val
* varonce104
;
4969 val
* var105
/* : String */;
4970 char* var106
/* : NativeString */;
4971 val
* var107
/* : String */;
4972 val
* var108
/* : String */;
4973 val
* var109
/* : String */;
4974 static val
* varonce111
;
4975 val
* var112
/* : String */;
4976 char* var113
/* : NativeString */;
4977 val
* var114
/* : String */;
4978 val
* var115
/* : nullable MClass */;
4979 val
* var_mclass
/* var mclass: nullable MClass */;
4980 short int var116
/* : Bool */;
4981 short int var117
/* : Bool */;
4982 short int var119
/* : Bool */;
4983 short int var121
/* : Bool */;
4984 val
* var122
/* : Array[MType] */;
4985 val
* var_123
/* var : Array[MType] */;
4986 val
* var124
/* : MClassType */;
4987 val
* var_array_mtype
/* var array_mtype: MClassType */;
4988 static val
* varonce125
;
4989 val
* var126
/* : String */;
4990 char* var127
/* : NativeString */;
4991 val
* var128
/* : String */;
4992 val
* var129
/* : nullable CallSite */;
4993 static val
* varonce131
;
4994 val
* var132
/* : String */;
4995 char* var133
/* : NativeString */;
4996 val
* var134
/* : String */;
4997 val
* var135
/* : nullable CallSite */;
4999 var_mtype
= ((val
*)NULL
);
5001 { /* Inline parser_nodes#AArrayExpr#n_type (self) on <self:AArrayExpr> */
5002 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AArrayExpr___n_type
].val
; /* _n_type on <self:AArrayExpr> */
5008 if (var_ntype
== NULL
) {
5009 var3
= 0; /* is null */
5011 var3
= 1; /* arg is null and recv is not */
5014 { /* Inline kernel#Object#!= (var_ntype,((val*)NULL)) on <var_ntype:nullable AType> */
5015 var_other
= ((val
*)NULL
);
5017 var6
= ((short int(*)(val
* self
, val
* p0
))(var_ntype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_ntype
, var_other
); /* == on <var_ntype:nullable AType(AType)>*/
5028 var8
= nitc__typing___nitc__typing__TypeVisitor___resolve_mtype(var_v
, var_ntype
);
5031 if (var_mtype
== NULL
) {
5032 var9
= 1; /* is null */
5034 var9
= 0; /* arg is null but recv is not */
5037 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
5038 var_other12
= ((val
*)NULL
);
5040 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other12) on <var_mtype:nullable MType(MType)> */
5041 var15
= var_mtype
== var_other12
;
5044 RET_LABEL14
:(void)0;
5049 RET_LABEL11
:(void)0;
5059 var16
= NEW_core__Array(&type_core__Array__nullable__nitc__MType
);
5061 core___core__Array___core__kernel__Object__init(var16
); /* Direct call array#Array#init on <var16:Array[nullable MType]>*/
5066 { /* Inline parser_nodes#AArrayExpr#n_exprs (self) on <self:AArrayExpr> */
5067 var19
= self
->attrs
[COLOR_nitc__parser_nodes__AArrayExpr___n_exprs
].val
; /* _n_exprs on <self:AArrayExpr> */
5068 if (unlikely(var19
== NULL
)) {
5069 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs");
5070 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2460);
5074 RET_LABEL18
:(void)0;
5079 var20
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_
);
5084 var22
= ((short int(*)(val
* self
))((((long)var_21
&3)?class_info
[((long)var_21
&3)]:var_21
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_21
); /* is_ok on <var_21:Iterator[AExpr]>*/
5091 var23
= ((val
*(*)(val
* self
))((((long)var_21
&3)?class_info
[((long)var_21
&3)]:var_21
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_21
); /* item on <var_21:Iterator[AExpr]>*/
5095 var24
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var_e
);
5098 if (var_t
== NULL
) {
5099 var25
= 1; /* is null */
5101 var25
= 0; /* arg is null but recv is not */
5104 { /* Inline kernel#Object#== (var_t,((val*)NULL)) on <var_t:nullable MType> */
5105 var_other12
= ((val
*)NULL
);
5107 { /* Inline kernel#Object#is_same_instance (var_t,var_other12) on <var_t:nullable MType(MType)> */
5108 var30
= var_t
== var_other12
;
5111 RET_LABEL29
:(void)0;
5116 RET_LABEL27
:(void)0;
5125 nitc__typing___AArrayExpr___set_comprehension(self
, var_e
); /* Direct call typing#AArrayExpr#set_comprehension on <self:AArrayExpr>*/
5127 if (var_mtype
== NULL
) {
5128 var31
= 0; /* is null */
5130 var31
= 1; /* arg is null and recv is not */
5133 { /* Inline kernel#Object#!= (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
5134 var_other
= ((val
*)NULL
);
5136 var34
= ((short int(*)(val
* self
, val
* p0
))(var_mtype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_mtype
, var_other
); /* == on <var_mtype:nullable MType(MType)>*/
5141 RET_LABEL33
:(void)0;
5147 var36
= nitc__typing___nitc__typing__TypeVisitor___check_subtype(var_v
, var_e
, var_t
, var_mtype
, 0);
5149 if (var36
== NULL
) {
5150 var37
= 1; /* is null */
5152 var37
= 0; /* arg is null but recv is not */
5155 { /* Inline kernel#Object#== (var36,((val*)NULL)) on <var36:nullable MType> */
5156 var_other12
= ((val
*)NULL
);
5158 { /* Inline kernel#Object#is_same_instance (var36,var_other12) on <var36:nullable MType(MType)> */
5159 var42
= var36
== var_other12
;
5162 RET_LABEL41
:(void)0;
5167 RET_LABEL39
:(void)0;
5176 { /* Inline kernel#Object#== (var_t,var_mtype) on <var_t:nullable MType(MType)> */
5177 var_other12
= var_mtype
;
5179 { /* Inline kernel#Object#is_same_instance (var_t,var_other12) on <var_t:nullable MType(MType)> */
5180 var47
= var_t
== var_other12
;
5183 RET_LABEL46
:(void)0;
5188 RET_LABEL44
:(void)0;
5197 core___core__Array___core__abstract_collection__SimpleCollection__add(var_mtypes
, var_t
); /* Direct call array#Array#add on <var_mtypes:Array[nullable MType]>*/
5201 ((void(*)(val
* self
))((((long)var_21
&3)?class_info
[((long)var_21
&3)]:var_21
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_21
); /* next on <var_21:Iterator[AExpr]>*/
5204 BREAK_label
: (void)0;
5206 ((void(*)(val
* self
))((((long)var_21
&3)?class_info
[((long)var_21
&3)]:var_21
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_21
); /* finish on <var_21:Iterator[AExpr]>*/
5208 if (var_mtype
== NULL
) {
5209 var48
= 1; /* is null */
5211 var48
= 0; /* arg is null but recv is not */
5214 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
5215 var_other12
= ((val
*)NULL
);
5217 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other12) on <var_mtype:nullable MType(MType)> */
5218 var53
= var_mtype
== var_other12
;
5221 RET_LABEL52
:(void)0;
5226 RET_LABEL50
:(void)0;
5232 { /* Inline typing#AArrayExpr#element_mtype (self) on <self:AArrayExpr> */
5233 var56
= self
->attrs
[COLOR_nitc__typing__AArrayExpr___element_mtype
].val
; /* _element_mtype on <self:AArrayExpr> */
5235 RET_LABEL55
:(void)0;
5238 if (var54
== NULL
) {
5239 var57
= 0; /* is null */
5241 var57
= 1; /* arg is null and recv is not */
5244 { /* Inline kernel#Object#!= (var54,((val*)NULL)) on <var54:nullable MType> */
5245 var_other
= ((val
*)NULL
);
5247 var60
= ((short int(*)(val
* self
, val
* p0
))(var54
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var54
, var_other
); /* == on <var54:nullable MType(MType)>*/
5252 RET_LABEL59
:(void)0;
5258 { /* Inline typing#AArrayExpr#element_mtype (self) on <self:AArrayExpr> */
5259 var64
= self
->attrs
[COLOR_nitc__typing__AArrayExpr___element_mtype
].val
; /* _element_mtype on <self:AArrayExpr> */
5261 RET_LABEL63
:(void)0;
5265 core___core__Array___core__abstract_collection__SimpleCollection__add(var_mtypes
, var62
); /* Direct call array#Array#add on <var_mtypes:Array[nullable MType]>*/
5270 var65
= nitc__typing___nitc__typing__TypeVisitor___merge_types(var_v
, self
, var_mtypes
);
5275 if (var_mtype
== NULL
) {
5276 var67
= 1; /* is null */
5278 var67
= 0; /* arg is null but recv is not */
5281 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
5282 var_other12
= ((val
*)NULL
);
5284 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other12) on <var_mtype:nullable MType(MType)> */
5285 var72
= var_mtype
== var_other12
;
5288 RET_LABEL71
:(void)0;
5293 RET_LABEL69
:(void)0;
5301 /* <var_mtype:nullable MType(MType)> isa MNullType */
5302 cltype
= type_nitc__MNullType
.color
;
5303 idtype
= type_nitc__MNullType
.id
;
5304 if(cltype
>= var_mtype
->type
->table_size
) {
5307 var74
= var_mtype
->type
->type_table
[cltype
] == idtype
;
5312 if (unlikely(varonce
==NULL
)) {
5313 var75
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
5314 if (likely(varonce76
!=NULL
)) {
5317 var78
= "Type Error: ambiguous array type ";
5318 var79
= core__flat___NativeString___to_s_full(var78
, 33l, 33l);
5322 ((struct instance_core__NativeArray
*)var75
)->values
[0]=var77
;
5327 if (likely(varonce80
!=NULL
)) {
5331 var83
= core__flat___NativeString___to_s_full(var82
, 1l, 1l);
5336 var84
= core__abstract_text___Collection___join(var_mtypes
, var81
);
5338 ((struct instance_core__NativeArray
*)var75
)->values
[1]=var84
;
5340 var85
= ((val
*(*)(val
* self
))(var75
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var75
); /* native_to_s on <var75:NativeArray[String]>*/
5344 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var85
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
5350 if (var_ntype
== NULL
) {
5351 var86
= 0; /* is null */
5353 var86
= 1; /* arg is null and recv is not */
5356 { /* Inline kernel#Object#!= (var_ntype,((val*)NULL)) on <var_ntype:nullable AType> */
5357 var_other
= ((val
*)NULL
);
5359 var89
= ((short int(*)(val
* self
, val
* p0
))(var_ntype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_ntype
, var_other
); /* == on <var_ntype:nullable AType(AType)>*/
5364 RET_LABEL88
:(void)0;
5368 if (unlikely(!var86
)) {
5369 PRINT_ERROR("Runtime error: %s", "Assert failed");
5370 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1539);
5374 { /* Inline typing#TypeVisitor#modelbuilder (var_v) on <var_v:TypeVisitor> */
5375 var93
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___modelbuilder
].val
; /* _modelbuilder on <var_v:TypeVisitor> */
5376 if (unlikely(var93
== NULL
)) {
5377 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _modelbuilder");
5378 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 35);
5382 RET_LABEL92
:(void)0;
5385 if (likely(varonce94
!=NULL
)) {
5388 var96
= "useless-type";
5389 var97
= core__flat___NativeString___to_s_full(var96
, 12l, 12l);
5393 if (unlikely(varonce98
==NULL
)) {
5394 var99
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
5395 if (likely(varonce100
!=NULL
)) {
5396 var101
= varonce100
;
5398 var102
= "Warning: useless type declaration `";
5399 var103
= core__flat___NativeString___to_s_full(var102
, 35l, 35l);
5401 varonce100
= var101
;
5403 ((struct instance_core__NativeArray
*)var99
)->values
[0]=var101
;
5404 if (likely(varonce104
!=NULL
)) {
5405 var105
= varonce104
;
5407 var106
= "` in literal Array since it can be inferred from the elements type.";
5408 var107
= core__flat___NativeString___to_s_full(var106
, 67l, 67l);
5410 varonce104
= var105
;
5412 ((struct instance_core__NativeArray
*)var99
)->values
[2]=var105
;
5418 var108
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mtype
); /* to_s on <var_mtype:nullable MType(MType)>*/
5420 ((struct instance_core__NativeArray
*)var99
)->values
[1]=var108
;
5422 var109
= ((val
*(*)(val
* self
))(var99
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var99
); /* native_to_s on <var99:NativeArray[String]>*/
5426 nitc___nitc__ModelBuilder___warning(var91
, var_ntype
, var95
, var109
); /* Direct call modelbuilder_base#ModelBuilder#warning on <var91:ModelBuilder>*/
5431 { /* Inline typing#AArrayExpr#element_mtype= (self,var_mtype) on <self:AArrayExpr> */
5432 self
->attrs
[COLOR_nitc__typing__AArrayExpr___element_mtype
].val
= var_mtype
; /* _element_mtype on <self:AArrayExpr> */
5433 RET_LABEL110
:(void)0;
5436 if (likely(varonce111
!=NULL
)) {
5437 var112
= varonce111
;
5440 var114
= core__flat___NativeString___to_s_full(var113
, 5l, 5l);
5442 varonce111
= var112
;
5445 var115
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var112
);
5447 var_mclass
= var115
;
5448 if (var_mclass
== NULL
) {
5449 var116
= 1; /* is null */
5451 var116
= 0; /* arg is null but recv is not */
5454 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
5455 var_other12
= ((val
*)NULL
);
5457 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other12) on <var_mclass:nullable MClass(MClass)> */
5458 var121
= var_mclass
== var_other12
;
5461 RET_LABEL120
:(void)0;
5466 RET_LABEL118
:(void)0;
5474 var122
= NEW_core__Array(&type_core__Array__nitc__MType
);
5476 core___core__Array___with_capacity(var122
, 1l); /* Direct call array#Array#with_capacity on <var122:Array[MType]>*/
5480 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_123
, var_mtype
); /* Direct call array#AbstractArray#push on <var_123:Array[MType]>*/
5483 var124
= nitc___nitc__MClass___get_mtype(var_mclass
, var_123
);
5485 var_array_mtype
= var124
;
5486 if (likely(varonce125
!=NULL
)) {
5487 var126
= varonce125
;
5489 var127
= "with_capacity";
5490 var128
= core__flat___NativeString___to_s_full(var127
, 13l, 13l);
5492 varonce125
= var126
;
5495 var129
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_array_mtype
, var126
, 0);
5498 { /* Inline typing#AArrayExpr#with_capacity_callsite= (self,var129) on <self:AArrayExpr> */
5499 self
->attrs
[COLOR_nitc__typing__AArrayExpr___with_capacity_callsite
].val
= var129
; /* _with_capacity_callsite on <self:AArrayExpr> */
5500 RET_LABEL130
:(void)0;
5503 if (likely(varonce131
!=NULL
)) {
5504 var132
= varonce131
;
5507 var134
= core__flat___NativeString___to_s_full(var133
, 4l, 4l);
5509 varonce131
= var132
;
5512 var135
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_array_mtype
, var132
, 0);
5515 { /* Inline typing#AArrayExpr#push_callsite= (self,var135) on <self:AArrayExpr> */
5516 self
->attrs
[COLOR_nitc__typing__AArrayExpr___push_callsite
].val
= var135
; /* _push_callsite on <self:AArrayExpr> */
5517 RET_LABEL136
:(void)0;
5521 { /* Inline typing#AExpr#mtype= (self,var_array_mtype) on <self:AArrayExpr> */
5522 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var_array_mtype
; /* _mtype on <self:AArrayExpr> */
5523 RET_LABEL137
:(void)0;
5528 /* method typing#ARangeExpr#init_callsite for (self: ARangeExpr): nullable CallSite */
5529 val
* nitc__typing___ARangeExpr___init_callsite(val
* self
) {
5530 val
* var
/* : nullable CallSite */;
5531 val
* var1
/* : nullable CallSite */;
5532 var1
= self
->attrs
[COLOR_nitc__typing__ARangeExpr___init_callsite
].val
; /* _init_callsite on <self:ARangeExpr> */
5537 /* method typing#ARangeExpr#init_callsite= for (self: ARangeExpr, nullable CallSite) */
5538 void nitc__typing___ARangeExpr___init_callsite_61d(val
* self
, val
* p0
) {
5539 self
->attrs
[COLOR_nitc__typing__ARangeExpr___init_callsite
].val
= p0
; /* _init_callsite on <self:ARangeExpr> */
5542 /* method typing#ARangeExpr#accept_typing for (self: ARangeExpr, TypeVisitor) */
5543 void nitc__typing___ARangeExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
5544 val
* var_v
/* var v: TypeVisitor */;
5545 static val
* varonce
;
5546 val
* var
/* : String */;
5547 char* var1
/* : NativeString */;
5548 val
* var2
/* : String */;
5549 val
* var3
/* : nullable MClass */;
5550 val
* var_discrete_class
/* var discrete_class: nullable MClass */;
5551 short int var4
/* : Bool */;
5552 short int var5
/* : Bool */;
5553 val
* var_other
/* var other: nullable Object */;
5554 short int var7
/* : Bool */;
5555 short int var9
/* : Bool */;
5556 val
* var10
/* : MClassDef */;
5557 val
* var12
/* : MClassDef */;
5558 val
* var13
/* : MClassType */;
5559 val
* var15
/* : MClassType */;
5560 val
* var_discrete_type
/* var discrete_type: MClassType */;
5561 val
* var16
/* : AExpr */;
5562 val
* var18
/* : AExpr */;
5563 val
* var19
/* : nullable MType */;
5564 val
* var_t1
/* var t1: nullable MType */;
5565 val
* var20
/* : AExpr */;
5566 val
* var22
/* : AExpr */;
5567 val
* var23
/* : nullable MType */;
5568 val
* var_t2
/* var t2: nullable MType */;
5569 short int var24
/* : Bool */;
5570 short int var25
/* : Bool */;
5571 short int var26
/* : Bool */;
5572 short int var28
/* : Bool */;
5573 short int var30
/* : Bool */;
5574 short int var_
/* var : Bool */;
5575 short int var31
/* : Bool */;
5576 short int var32
/* : Bool */;
5577 short int var34
/* : Bool */;
5578 short int var36
/* : Bool */;
5579 static val
* varonce37
;
5580 val
* var38
/* : String */;
5581 char* var39
/* : NativeString */;
5582 val
* var40
/* : String */;
5583 val
* var41
/* : nullable MClass */;
5584 val
* var_mclass
/* var mclass: nullable MClass */;
5585 short int var42
/* : Bool */;
5586 short int var43
/* : Bool */;
5587 short int var45
/* : Bool */;
5588 short int var47
/* : Bool */;
5589 short int var48
/* : Bool */;
5590 val
* var49
/* : Array[MType] */;
5591 val
* var_50
/* var : Array[MType] */;
5592 val
* var51
/* : MClassType */;
5593 val
* var_mtype
/* var mtype: nullable Object */;
5594 short int var52
/* : Bool */;
5595 val
* var53
/* : Array[MType] */;
5596 val
* var_54
/* var : Array[MType] */;
5597 val
* var55
/* : MClassType */;
5598 val
* var57
/* : NativeArray[String] */;
5599 static val
* varonce56
;
5600 static val
* varonce58
;
5601 val
* var59
/* : String */;
5602 char* var60
/* : NativeString */;
5603 val
* var61
/* : String */;
5604 static val
* varonce62
;
5605 val
* var63
/* : String */;
5606 char* var64
/* : NativeString */;
5607 val
* var65
/* : String */;
5608 static val
* varonce66
;
5609 val
* var67
/* : String */;
5610 char* var68
/* : NativeString */;
5611 val
* var69
/* : String */;
5612 val
* var70
/* : String */;
5613 val
* var71
/* : String */;
5614 val
* var72
/* : String */;
5615 short int var74
/* : Bool */;
5618 static val
* varonce75
;
5619 val
* var76
/* : String */;
5620 char* var77
/* : NativeString */;
5621 val
* var78
/* : String */;
5622 val
* var79
/* : nullable CallSite */;
5623 val
* var_callsite
/* var callsite: nullable Object */;
5624 short int var80
/* : Bool */;
5627 static val
* varonce83
;
5628 val
* var84
/* : String */;
5629 char* var85
/* : NativeString */;
5630 val
* var86
/* : String */;
5631 val
* var87
/* : nullable CallSite */;
5633 if (likely(varonce
!=NULL
)) {
5637 var2
= core__flat___NativeString___to_s_full(var1
, 8l, 8l);
5642 var3
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var
);
5644 var_discrete_class
= var3
;
5645 if (var_discrete_class
== NULL
) {
5646 var4
= 1; /* is null */
5648 var4
= 0; /* arg is null but recv is not */
5651 { /* Inline kernel#Object#== (var_discrete_class,((val*)NULL)) on <var_discrete_class:nullable MClass> */
5652 var_other
= ((val
*)NULL
);
5654 { /* Inline kernel#Object#is_same_instance (var_discrete_class,var_other) on <var_discrete_class:nullable MClass(MClass)> */
5655 var9
= var_discrete_class
== var_other
;
5672 { /* Inline model#MClass#intro (var_discrete_class) on <var_discrete_class:nullable MClass(MClass)> */
5673 var12
= var_discrete_class
->attrs
[COLOR_nitc__model__MClass___intro
].val
; /* _intro on <var_discrete_class:nullable MClass(MClass)> */
5674 if (unlikely(var12
== NULL
)) {
5675 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _intro");
5676 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 483);
5680 RET_LABEL11
:(void)0;
5684 { /* Inline model#MClassDef#bound_mtype (var10) on <var10:MClassDef> */
5685 var15
= var10
->attrs
[COLOR_nitc__model__MClassDef___bound_mtype
].val
; /* _bound_mtype on <var10:MClassDef> */
5686 if (unlikely(var15
== NULL
)) {
5687 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _bound_mtype");
5688 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 579);
5692 RET_LABEL14
:(void)0;
5695 var_discrete_type
= var13
;
5697 { /* Inline parser_nodes#ARangeExpr#n_expr (self) on <self:ARangeExpr> */
5698 var18
= self
->attrs
[COLOR_nitc__parser_nodes__ARangeExpr___n_expr
].val
; /* _n_expr on <self:ARangeExpr> */
5699 if (unlikely(var18
== NULL
)) {
5700 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
5701 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2421);
5705 RET_LABEL17
:(void)0;
5709 var19
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_subtype(var_v
, var16
, var_discrete_type
);
5713 { /* Inline parser_nodes#ARangeExpr#n_expr2 (self) on <self:ARangeExpr> */
5714 var22
= self
->attrs
[COLOR_nitc__parser_nodes__ARangeExpr___n_expr2
].val
; /* _n_expr2 on <self:ARangeExpr> */
5715 if (unlikely(var22
== NULL
)) {
5716 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
5717 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2427);
5721 RET_LABEL21
:(void)0;
5725 var23
= nitc__typing___nitc__typing__TypeVisitor___visit_expr_subtype(var_v
, var20
, var_discrete_type
);
5728 if (var_t1
== NULL
) {
5729 var25
= 1; /* is null */
5731 var25
= 0; /* arg is null but recv is not */
5734 { /* Inline kernel#Object#== (var_t1,((val*)NULL)) on <var_t1:nullable MType> */
5735 var_other
= ((val
*)NULL
);
5737 { /* Inline kernel#Object#is_same_instance (var_t1,var_other) on <var_t1:nullable MType(MType)> */
5738 var30
= var_t1
== var_other
;
5741 RET_LABEL29
:(void)0;
5746 RET_LABEL27
:(void)0;
5754 if (var_t2
== NULL
) {
5755 var31
= 1; /* is null */
5757 var31
= 0; /* arg is null but recv is not */
5760 { /* Inline kernel#Object#== (var_t2,((val*)NULL)) on <var_t2:nullable MType> */
5761 var_other
= ((val
*)NULL
);
5763 { /* Inline kernel#Object#is_same_instance (var_t2,var_other) on <var_t2:nullable MType(MType)> */
5764 var36
= var_t2
== var_other
;
5767 RET_LABEL35
:(void)0;
5772 RET_LABEL33
:(void)0;
5782 if (likely(varonce37
!=NULL
)) {
5786 var40
= core__flat___NativeString___to_s_full(var39
, 5l, 5l);
5791 var41
= nitc__typing___nitc__typing__TypeVisitor___get_mclass(var_v
, self
, var38
);
5794 if (var_mclass
== NULL
) {
5795 var42
= 1; /* is null */
5797 var42
= 0; /* arg is null but recv is not */
5800 { /* Inline kernel#Object#== (var_mclass,((val*)NULL)) on <var_mclass:nullable MClass> */
5801 var_other
= ((val
*)NULL
);
5803 { /* Inline kernel#Object#is_same_instance (var_mclass,var_other) on <var_mclass:nullable MClass(MClass)> */
5804 var47
= var_mclass
== var_other
;
5807 RET_LABEL46
:(void)0;
5812 RET_LABEL44
:(void)0;
5821 var48
= nitc__typing___nitc__typing__TypeVisitor___is_subtype(var_v
, var_t1
, var_t2
);
5824 var49
= NEW_core__Array(&type_core__Array__nitc__MType
);
5826 core___core__Array___with_capacity(var49
, 1l); /* Direct call array#Array#with_capacity on <var49:Array[MType]>*/
5830 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_50
, var_t2
); /* Direct call array#AbstractArray#push on <var_50:Array[MType]>*/
5833 var51
= nitc___nitc__MClass___get_mtype(var_mclass
, var_50
);
5838 var52
= nitc__typing___nitc__typing__TypeVisitor___is_subtype(var_v
, var_t2
, var_t1
);
5841 var53
= NEW_core__Array(&type_core__Array__nitc__MType
);
5843 core___core__Array___with_capacity(var53
, 1l); /* Direct call array#Array#with_capacity on <var53:Array[MType]>*/
5847 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_54
, var_t1
); /* Direct call array#AbstractArray#push on <var_54:Array[MType]>*/
5850 var55
= nitc___nitc__MClass___get_mtype(var_mclass
, var_54
);
5854 if (unlikely(varonce56
==NULL
)) {
5855 var57
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
5856 if (likely(varonce58
!=NULL
)) {
5859 var60
= "Type Error: cannot create range: `";
5860 var61
= core__flat___NativeString___to_s_full(var60
, 34l, 34l);
5864 ((struct instance_core__NativeArray
*)var57
)->values
[0]=var59
;
5865 if (likely(varonce62
!=NULL
)) {
5869 var65
= core__flat___NativeString___to_s_full(var64
, 6l, 6l);
5873 ((struct instance_core__NativeArray
*)var57
)->values
[2]=var63
;
5874 if (likely(varonce66
!=NULL
)) {
5878 var69
= core__flat___NativeString___to_s_full(var68
, 2l, 2l);
5882 ((struct instance_core__NativeArray
*)var57
)->values
[4]=var67
;
5888 var70
= ((val
*(*)(val
* self
))(var_t1
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t1
); /* to_s on <var_t1:nullable MType(MType)>*/
5890 ((struct instance_core__NativeArray
*)var57
)->values
[1]=var70
;
5892 var71
= ((val
*(*)(val
* self
))(var_t2
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_t2
); /* to_s on <var_t2:nullable MType(MType)>*/
5894 ((struct instance_core__NativeArray
*)var57
)->values
[3]=var71
;
5896 var72
= ((val
*(*)(val
* self
))(var57
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var57
); /* native_to_s on <var57:NativeArray[String]>*/
5900 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var72
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
5906 { /* Inline typing#AExpr#mtype= (self,var_mtype) on <self:ARangeExpr> */
5907 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var_mtype
; /* _mtype on <self:ARangeExpr> */
5908 RET_LABEL73
:(void)0;
5911 /* <self:ARangeExpr> isa ACrangeExpr */
5912 cltype
= type_nitc__ACrangeExpr
.color
;
5913 idtype
= type_nitc__ACrangeExpr
.id
;
5914 if(cltype
>= self
->type
->table_size
) {
5917 var74
= self
->type
->type_table
[cltype
] == idtype
;
5920 if (likely(varonce75
!=NULL
)) {
5924 var78
= core__flat___NativeString___to_s_full(var77
, 4l, 4l);
5929 var79
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_mtype
, var76
, 0);
5931 var_callsite
= var79
;
5933 /* <self:ARangeExpr> isa AOrangeExpr */
5934 cltype81
= type_nitc__AOrangeExpr
.color
;
5935 idtype82
= type_nitc__AOrangeExpr
.id
;
5936 if(cltype81
>= self
->type
->table_size
) {
5939 var80
= self
->type
->type_table
[cltype81
] == idtype82
;
5942 if (likely(varonce83
!=NULL
)) {
5945 var85
= "without_last";
5946 var86
= core__flat___NativeString___to_s_full(var85
, 12l, 12l);
5951 var87
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, self
, var_mtype
, var84
, 0);
5953 var_callsite
= var87
;
5955 PRINT_ERROR("Runtime error: %s", "Aborted");
5956 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1588);
5961 { /* Inline typing#ARangeExpr#init_callsite= (self,var_callsite) on <self:ARangeExpr> */
5962 self
->attrs
[COLOR_nitc__typing__ARangeExpr___init_callsite
].val
= var_callsite
; /* _init_callsite on <self:ARangeExpr> */
5963 RET_LABEL88
:(void)0;
5968 /* method typing#ANullExpr#accept_typing for (self: ANullExpr, TypeVisitor) */
5969 void nitc__typing___ANullExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
5970 val
* var_v
/* var v: TypeVisitor */;
5971 val
* var
/* : MModule */;
5972 val
* var2
/* : MModule */;
5973 val
* var3
/* : Model */;
5974 val
* var5
/* : Model */;
5975 val
* var6
/* : MNullType */;
5976 val
* var8
/* : MNullType */;
5979 { /* Inline typing#TypeVisitor#mmodule (var_v) on <var_v:TypeVisitor> */
5980 var2
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___mmodule
].val
; /* _mmodule on <var_v:TypeVisitor> */
5981 if (unlikely(var2
== NULL
)) {
5982 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
5983 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 37);
5991 { /* Inline mmodule#MModule#model (var) on <var:MModule> */
5992 var5
= var
->attrs
[COLOR_nitc__mmodule__MModule___model
].val
; /* _model on <var:MModule> */
5993 if (unlikely(var5
== NULL
)) {
5994 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _model");
5995 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__mmodule
, 78);
6003 { /* Inline model#Model#null_type (var3) on <var3:Model> */
6004 var8
= var3
->attrs
[COLOR_nitc__model__Model___null_type
].val
; /* _null_type on <var3:Model> */
6005 if (unlikely(var8
== NULL
)) {
6006 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _null_type");
6007 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 94);
6015 { /* Inline typing#AExpr#mtype= (self,var6) on <self:ANullExpr> */
6016 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var6
; /* _mtype on <self:ANullExpr> */
6022 /* method typing#AIsaExpr#cast_type for (self: AIsaExpr): nullable MType */
6023 val
* nitc__typing___AIsaExpr___cast_type(val
* self
) {
6024 val
* var
/* : nullable MType */;
6025 val
* var1
/* : nullable MType */;
6026 var1
= self
->attrs
[COLOR_nitc__typing__AIsaExpr___cast_type
].val
; /* _cast_type on <self:AIsaExpr> */
6031 /* method typing#AIsaExpr#cast_type= for (self: AIsaExpr, nullable MType) */
6032 void nitc__typing___AIsaExpr___cast_type_61d(val
* self
, val
* p0
) {
6033 self
->attrs
[COLOR_nitc__typing__AIsaExpr___cast_type
].val
= p0
; /* _cast_type on <self:AIsaExpr> */
6036 /* method typing#AIsaExpr#accept_typing for (self: AIsaExpr, TypeVisitor) */
6037 void nitc__typing___AIsaExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
6038 val
* var_v
/* var v: TypeVisitor */;
6039 val
* var
/* : AExpr */;
6040 val
* var2
/* : AExpr */;
6041 val
* var3
/* : nullable MType */;
6042 val
* var4
/* : AType */;
6043 val
* var6
/* : AType */;
6044 val
* var7
/* : nullable MType */;
6045 val
* var_mtype
/* var mtype: nullable MType */;
6046 val
* var9
/* : AExpr */;
6047 val
* var11
/* : AExpr */;
6048 val
* var12
/* : nullable Variable */;
6049 val
* var_variable
/* var variable: nullable Variable */;
6050 short int var13
/* : Bool */;
6051 short int var14
/* : Bool */;
6052 val
* var_other
/* var other: nullable Object */;
6053 short int var16
/* : Bool */;
6054 short int var17
/* : Bool */;
6055 val
* var18
/* : nullable FlowContext */;
6056 val
* var20
/* : nullable FlowContext */;
6057 val
* var21
/* : FlowContext */;
6058 val
* var23
/* : FlowContext */;
6059 val
* var24
/* : nullable MType */;
6062 { /* Inline parser_nodes#AIsaExpr#n_expr (self) on <self:AIsaExpr> */
6063 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AIsaExpr___n_expr
].val
; /* _n_expr on <self:AIsaExpr> */
6064 if (unlikely(var2
== NULL
)) {
6065 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6066 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2153);
6074 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var
);
6077 { /* Inline parser_nodes#AIsaExpr#n_type (self) on <self:AIsaExpr> */
6078 var6
= self
->attrs
[COLOR_nitc__parser_nodes__AIsaExpr___n_type
].val
; /* _n_type on <self:AIsaExpr> */
6079 if (unlikely(var6
== NULL
)) {
6080 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
6081 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2159);
6089 var7
= nitc__typing___nitc__typing__TypeVisitor___resolve_mtype(var_v
, var4
);
6093 { /* Inline typing#AIsaExpr#cast_type= (self,var_mtype) on <self:AIsaExpr> */
6094 self
->attrs
[COLOR_nitc__typing__AIsaExpr___cast_type
].val
= var_mtype
; /* _cast_type on <self:AIsaExpr> */
6099 { /* Inline parser_nodes#AIsaExpr#n_expr (self) on <self:AIsaExpr> */
6100 var11
= self
->attrs
[COLOR_nitc__parser_nodes__AIsaExpr___n_expr
].val
; /* _n_expr on <self:AIsaExpr> */
6101 if (unlikely(var11
== NULL
)) {
6102 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6103 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2153);
6107 RET_LABEL10
:(void)0;
6111 var12
= ((val
*(*)(val
* self
))(var9
->class->vft
[COLOR_nitc__typing__AExpr__its_variable
]))(var9
); /* its_variable on <var9:AExpr>*/
6113 var_variable
= var12
;
6114 if (var_variable
== NULL
) {
6115 var13
= 0; /* is null */
6117 var13
= 1; /* arg is null and recv is not */
6120 { /* Inline kernel#Object#!= (var_variable,((val*)NULL)) on <var_variable:nullable Variable> */
6121 var_other
= ((val
*)NULL
);
6123 var16
= ((short int(*)(val
* self
, val
* p0
))(var_variable
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_variable
, var_other
); /* == on <var_variable:nullable Variable(Variable)>*/
6128 RET_LABEL15
:(void)0;
6134 { /* Inline flow#AExpr#after_flow_context (self) on <self:AIsaExpr> */
6135 var20
= self
->attrs
[COLOR_nitc__flow__AExpr___after_flow_context
].val
; /* _after_flow_context on <self:AIsaExpr> */
6137 RET_LABEL19
:(void)0;
6140 if (var18
== NULL
) {
6141 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6142 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1619);
6145 { /* Inline flow#FlowContext#when_true (var18) on <var18:nullable FlowContext> */
6146 if (unlikely(var18
== NULL
)) {
6147 PRINT_ERROR("Runtime error: %s", "Receiver is null");
6148 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow
, 225);
6151 var23
= var18
->attrs
[COLOR_nitc__flow__FlowContext___when_true
].val
; /* _when_true on <var18:nullable FlowContext> */
6152 if (unlikely(var23
== NULL
)) {
6153 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _when_true");
6154 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow
, 225);
6158 RET_LABEL22
:(void)0;
6162 nitc__typing___FlowContext___set_var(var21
, var_v
, var_variable
, var_mtype
); /* Direct call typing#FlowContext#set_var on <var21:FlowContext>*/
6167 var24
= nitc__typing___nitc__typing__TypeVisitor___type_bool(var_v
, self
);
6170 { /* Inline typing#AExpr#mtype= (self,var24) on <self:AIsaExpr> */
6171 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var24
; /* _mtype on <self:AIsaExpr> */
6172 RET_LABEL25
:(void)0;
6177 /* method typing#AIsaExpr#accept_post_typing for (self: AIsaExpr, TypeVisitor) */
6178 void nitc__typing___AIsaExpr___ANode__accept_post_typing(val
* self
, val
* p0
) {
6179 val
* var_v
/* var v: TypeVisitor */;
6180 val
* var
/* : AExpr */;
6181 val
* var2
/* : AExpr */;
6182 val
* var3
/* : AType */;
6183 val
* var5
/* : AType */;
6184 val
* var6
/* : nullable MType */;
6187 { /* Inline parser_nodes#AIsaExpr#n_expr (self) on <self:AIsaExpr> */
6188 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AIsaExpr___n_expr
].val
; /* _n_expr on <self:AIsaExpr> */
6189 if (unlikely(var2
== NULL
)) {
6190 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6191 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2153);
6199 { /* Inline parser_nodes#AIsaExpr#n_type (self) on <self:AIsaExpr> */
6200 var5
= self
->attrs
[COLOR_nitc__parser_nodes__AIsaExpr___n_type
].val
; /* _n_type on <self:AIsaExpr> */
6201 if (unlikely(var5
== NULL
)) {
6202 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
6203 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2159);
6211 var6
= nitc__typing___nitc__typing__TypeVisitor___check_expr_cast(var_v
, self
, var
, var3
);
6215 /* method typing#AAsCastExpr#accept_typing for (self: AAsCastExpr, TypeVisitor) */
6216 void nitc__typing___AAsCastExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
6217 val
* var_v
/* var v: TypeVisitor */;
6218 val
* var
/* : AExpr */;
6219 val
* var2
/* : AExpr */;
6220 val
* var3
/* : nullable MType */;
6221 val
* var4
/* : AType */;
6222 val
* var6
/* : AType */;
6223 val
* var7
/* : nullable MType */;
6226 { /* Inline parser_nodes#AAsCastForm#n_expr (self) on <self:AAsCastExpr> */
6227 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AAsCastForm___n_expr
].val
; /* _n_expr on <self:AAsCastExpr> */
6228 if (unlikely(var2
== NULL
)) {
6229 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6230 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2586);
6238 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var
);
6241 { /* Inline parser_nodes#AAsCastExpr#n_type (self) on <self:AAsCastExpr> */
6242 var6
= self
->attrs
[COLOR_nitc__parser_nodes__AAsCastExpr___n_type
].val
; /* _n_type on <self:AAsCastExpr> */
6243 if (unlikely(var6
== NULL
)) {
6244 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
6245 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2603);
6253 var7
= nitc__typing___nitc__typing__TypeVisitor___resolve_mtype(var_v
, var4
);
6256 { /* Inline typing#AExpr#mtype= (self,var7) on <self:AAsCastExpr> */
6257 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var7
; /* _mtype on <self:AAsCastExpr> */
6263 /* method typing#AAsCastExpr#accept_post_typing for (self: AAsCastExpr, TypeVisitor) */
6264 void nitc__typing___AAsCastExpr___ANode__accept_post_typing(val
* self
, val
* p0
) {
6265 val
* var_v
/* var v: TypeVisitor */;
6266 val
* var
/* : AExpr */;
6267 val
* var2
/* : AExpr */;
6268 val
* var3
/* : AType */;
6269 val
* var5
/* : AType */;
6270 val
* var6
/* : nullable MType */;
6273 { /* Inline parser_nodes#AAsCastForm#n_expr (self) on <self:AAsCastExpr> */
6274 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AAsCastForm___n_expr
].val
; /* _n_expr on <self:AAsCastExpr> */
6275 if (unlikely(var2
== NULL
)) {
6276 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6277 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2586);
6285 { /* Inline parser_nodes#AAsCastExpr#n_type (self) on <self:AAsCastExpr> */
6286 var5
= self
->attrs
[COLOR_nitc__parser_nodes__AAsCastExpr___n_type
].val
; /* _n_type on <self:AAsCastExpr> */
6287 if (unlikely(var5
== NULL
)) {
6288 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_type");
6289 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2603);
6297 var6
= nitc__typing___nitc__typing__TypeVisitor___check_expr_cast(var_v
, self
, var
, var3
);
6301 /* method typing#AAsNotnullExpr#accept_typing for (self: AAsNotnullExpr, TypeVisitor) */
6302 void nitc__typing___AAsNotnullExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
6303 val
* var_v
/* var v: TypeVisitor */;
6304 val
* var
/* : AExpr */;
6305 val
* var2
/* : AExpr */;
6306 val
* var3
/* : nullable MType */;
6307 val
* var_mtype
/* var mtype: nullable MType */;
6308 short int var4
/* : Bool */;
6309 short int var5
/* : Bool */;
6310 val
* var_other
/* var other: nullable Object */;
6311 short int var7
/* : Bool */;
6312 short int var9
/* : Bool */;
6313 short int var10
/* : Bool */;
6316 static val
* varonce
;
6317 val
* var11
/* : String */;
6318 char* var12
/* : NativeString */;
6319 val
* var13
/* : String */;
6320 short int var14
/* : Bool */;
6321 val
* var15
/* : MType */;
6324 { /* Inline parser_nodes#AAsCastForm#n_expr (self) on <self:AAsNotnullExpr> */
6325 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AAsCastForm___n_expr
].val
; /* _n_expr on <self:AAsNotnullExpr> */
6326 if (unlikely(var2
== NULL
)) {
6327 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6328 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2586);
6336 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var
);
6339 if (var_mtype
== NULL
) {
6340 var4
= 1; /* is null */
6342 var4
= 0; /* arg is null but recv is not */
6345 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
6346 var_other
= ((val
*)NULL
);
6348 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on <var_mtype:nullable MType(MType)> */
6349 var9
= var_mtype
== var_other
;
6365 /* <var_mtype:nullable MType(MType)> isa MNullType */
6366 cltype
= type_nitc__MNullType
.color
;
6367 idtype
= type_nitc__MNullType
.id
;
6368 if(cltype
>= var_mtype
->type
->table_size
) {
6371 var10
= var_mtype
->type
->type_table
[cltype
] == idtype
;
6374 if (likely(varonce
!=NULL
)) {
6377 var12
= "Type Error: `as(not null)` on `null`.";
6378 var13
= core__flat___NativeString___to_s_full(var12
, 37l, 37l);
6383 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var11
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
6389 var14
= nitc__typing___nitc__typing__TypeVisitor___can_be_null(var_v
, var_mtype
);
6393 var15
= ((val
*(*)(val
* self
))(var_mtype
->class->vft
[COLOR_nitc__model__MType__as_notnull
]))(var_mtype
); /* as_notnull on <var_mtype:nullable MType(MType)>*/
6399 { /* Inline typing#AExpr#mtype= (self,var_mtype) on <self:AAsNotnullExpr> */
6400 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var_mtype
; /* _mtype on <self:AAsNotnullExpr> */
6401 RET_LABEL16
:(void)0;
6406 /* method typing#AAsNotnullExpr#accept_post_typing for (self: AAsNotnullExpr, TypeVisitor) */
6407 void nitc__typing___AAsNotnullExpr___ANode__accept_post_typing(val
* self
, val
* p0
) {
6408 val
* var_v
/* var v: TypeVisitor */;
6409 val
* var
/* : AExpr */;
6410 val
* var2
/* : AExpr */;
6411 val
* var3
/* : nullable MType */;
6412 val
* var_mtype
/* var mtype: nullable MType */;
6413 short int var4
/* : Bool */;
6414 short int var5
/* : Bool */;
6415 val
* var_other
/* var other: nullable Object */;
6416 short int var7
/* : Bool */;
6417 short int var9
/* : Bool */;
6418 val
* var10
/* : AExpr */;
6419 val
* var12
/* : AExpr */;
6420 short int var13
/* : Bool */;
6423 { /* Inline parser_nodes#AAsCastForm#n_expr (self) on <self:AAsNotnullExpr> */
6424 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AAsCastForm___n_expr
].val
; /* _n_expr on <self:AAsNotnullExpr> */
6425 if (unlikely(var2
== NULL
)) {
6426 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6427 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2586);
6435 var3
= ((val
*(*)(val
* self
))(var
->class->vft
[COLOR_nitc__typing__AExpr__mtype
]))(var
); /* mtype on <var:AExpr>*/
6438 if (var_mtype
== NULL
) {
6439 var4
= 1; /* is null */
6441 var4
= 0; /* arg is null but recv is not */
6444 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
6445 var_other
= ((val
*)NULL
);
6447 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on <var_mtype:nullable MType(MType)> */
6448 var9
= var_mtype
== var_other
;
6465 { /* Inline parser_nodes#AAsCastForm#n_expr (self) on <self:AAsNotnullExpr> */
6466 var12
= self
->attrs
[COLOR_nitc__parser_nodes__AAsCastForm___n_expr
].val
; /* _n_expr on <self:AAsNotnullExpr> */
6467 if (unlikely(var12
== NULL
)) {
6468 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6469 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2586);
6473 RET_LABEL11
:(void)0;
6477 var13
= nitc__typing___nitc__typing__TypeVisitor___check_can_be_null(var_v
, var10
, var_mtype
);
6481 /* method typing#AParExpr#accept_typing for (self: AParExpr, TypeVisitor) */
6482 void nitc__typing___AParExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
6483 val
* var_v
/* var v: TypeVisitor */;
6484 val
* var
/* : AExpr */;
6485 val
* var2
/* : AExpr */;
6486 val
* var3
/* : nullable MType */;
6489 { /* Inline parser_nodes#AParExpr#n_expr (self) on <self:AParExpr> */
6490 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AParExpr___n_expr
].val
; /* _n_expr on <self:AParExpr> */
6491 if (unlikely(var2
== NULL
)) {
6492 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6493 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2575);
6501 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var
);
6504 { /* Inline typing#AExpr#mtype= (self,var3) on <self:AParExpr> */
6505 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var3
; /* _mtype on <self:AParExpr> */
6511 /* method typing#AOnceExpr#accept_typing for (self: AOnceExpr, TypeVisitor) */
6512 void nitc__typing___AOnceExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
6513 val
* var_v
/* var v: TypeVisitor */;
6514 val
* var
/* : AExpr */;
6515 val
* var2
/* : AExpr */;
6516 val
* var3
/* : nullable MType */;
6519 { /* Inline parser_nodes#AOnceExpr#n_expr (self) on <self:AOnceExpr> */
6520 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AOnceExpr___n_expr
].val
; /* _n_expr on <self:AOnceExpr> */
6521 if (unlikely(var2
== NULL
)) {
6522 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6523 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2014);
6531 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var
);
6534 { /* Inline typing#AExpr#mtype= (self,var3) on <self:AOnceExpr> */
6535 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var3
; /* _mtype on <self:AOnceExpr> */
6541 /* method typing#ASelfExpr#its_variable for (self: ASelfExpr): nullable Variable */
6542 val
* nitc__typing___ASelfExpr___AExpr__its_variable(val
* self
) {
6543 val
* var
/* : nullable Variable */;
6544 val
* var1
/* : nullable Variable */;
6545 var1
= self
->attrs
[COLOR_nitc__typing__ASelfExpr___its_variable
].val
; /* _its_variable on <self:ASelfExpr> */
6550 /* method typing#ASelfExpr#its_variable= for (self: ASelfExpr, nullable Variable) */
6551 void nitc__typing___ASelfExpr___its_variable_61d(val
* self
, val
* p0
) {
6552 self
->attrs
[COLOR_nitc__typing__ASelfExpr___its_variable
].val
= p0
; /* _its_variable on <self:ASelfExpr> */
6555 /* method typing#ASelfExpr#accept_typing for (self: ASelfExpr, TypeVisitor) */
6556 void nitc__typing___ASelfExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
6557 val
* var_v
/* var v: TypeVisitor */;
6558 short int var
/* : Bool */;
6559 short int var1
/* : Bool */;
6560 short int var3
/* : Bool */;
6561 short int var_
/* var : Bool */;
6562 short int var4
/* : Bool */;
6565 short int var5
/* : Bool */;
6566 static val
* varonce
;
6567 val
* var6
/* : String */;
6568 char* var7
/* : NativeString */;
6569 val
* var8
/* : String */;
6570 val
* var9
/* : Variable */;
6571 val
* var11
/* : Variable */;
6572 val
* var_variable
/* var variable: Variable */;
6573 val
* var13
/* : nullable MType */;
6576 { /* Inline typing#TypeVisitor#is_toplevel_context (var_v) on <var_v:TypeVisitor> */
6577 var3
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___is_toplevel_context
].s
; /* _is_toplevel_context on <var_v:TypeVisitor> */
6584 /* <self:ASelfExpr> isa AImplicitSelfExpr */
6585 cltype
= type_nitc__AImplicitSelfExpr
.color
;
6586 idtype
= type_nitc__AImplicitSelfExpr
.id
;
6587 if(cltype
>= self
->type
->table_size
) {
6590 var4
= self
->type
->type_table
[cltype
] == idtype
;
6598 if (likely(varonce
!=NULL
)) {
6601 var7
= "Error: `self` cannot be used in top-level method.";
6602 var8
= core__flat___NativeString___to_s_full(var7
, 49l, 49l);
6607 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var6
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
6612 { /* Inline typing#TypeVisitor#selfvariable (var_v) on <var_v:TypeVisitor> */
6613 var11
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___selfvariable
].val
; /* _selfvariable on <var_v:TypeVisitor> */
6614 if (unlikely(var11
== NULL
)) {
6615 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _selfvariable");
6616 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 51);
6620 RET_LABEL10
:(void)0;
6623 var_variable
= var9
;
6625 { /* Inline typing#ASelfExpr#its_variable= (self,var_variable) on <self:ASelfExpr> */
6626 self
->attrs
[COLOR_nitc__typing__ASelfExpr___its_variable
].val
= var_variable
; /* _its_variable on <self:ASelfExpr> */
6627 RET_LABEL12
:(void)0;
6631 var13
= nitc__typing___nitc__typing__TypeVisitor___get_variable(var_v
, self
, var_variable
);
6634 { /* Inline typing#AExpr#mtype= (self,var13) on <self:ASelfExpr> */
6635 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var13
; /* _mtype on <self:ASelfExpr> */
6636 RET_LABEL14
:(void)0;
6641 /* method typing#AImplicitSelfExpr#is_sys for (self: AImplicitSelfExpr): Bool */
6642 short int nitc__typing___AImplicitSelfExpr___is_sys(val
* self
) {
6643 short int var
/* : Bool */;
6644 short int var1
/* : Bool */;
6645 var1
= self
->attrs
[COLOR_nitc__typing__AImplicitSelfExpr___is_sys
].s
; /* _is_sys on <self:AImplicitSelfExpr> */
6650 /* method typing#AImplicitSelfExpr#is_sys= for (self: AImplicitSelfExpr, Bool) */
6651 void nitc__typing___AImplicitSelfExpr___is_sys_61d(val
* self
, short int p0
) {
6652 self
->attrs
[COLOR_nitc__typing__AImplicitSelfExpr___is_sys
].s
= p0
; /* _is_sys on <self:AImplicitSelfExpr> */
6655 /* method typing#ASendExpr#callsite for (self: ASendExpr): nullable CallSite */
6656 val
* nitc__typing___ASendExpr___callsite(val
* self
) {
6657 val
* var
/* : nullable CallSite */;
6658 val
* var1
/* : nullable CallSite */;
6659 var1
= self
->attrs
[COLOR_nitc__typing__ASendExpr___callsite
].val
; /* _callsite on <self:ASendExpr> */
6664 /* method typing#ASendExpr#callsite= for (self: ASendExpr, nullable CallSite) */
6665 void nitc__typing___ASendExpr___callsite_61d(val
* self
, val
* p0
) {
6666 self
->attrs
[COLOR_nitc__typing__ASendExpr___callsite
].val
= p0
; /* _callsite on <self:ASendExpr> */
6669 /* method typing#ASendExpr#accept_typing for (self: ASendExpr, TypeVisitor) */
6670 void nitc__typing___ASendExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
6671 val
* var_v
/* var v: TypeVisitor */;
6672 val
* var
/* : AExpr */;
6673 val
* var2
/* : AExpr */;
6674 val
* var_nrecv
/* var nrecv: AExpr */;
6675 val
* var3
/* : nullable MType */;
6676 val
* var_recvtype
/* var recvtype: nullable MType */;
6677 val
* var4
/* : String */;
6678 val
* var_name
/* var name: String */;
6679 val
* var5
/* : ANode */;
6680 val
* var_node
/* var node: ANode */;
6681 short int var6
/* : Bool */;
6682 short int var7
/* : Bool */;
6683 val
* var_other
/* var other: nullable Object */;
6684 short int var9
/* : Bool */;
6685 short int var11
/* : Bool */;
6686 val
* var_callsite
/* var callsite: nullable Object */;
6687 val
* var12
/* : MType */;
6688 val
* var_unsafe_type
/* var unsafe_type: MType */;
6689 val
* var13
/* : nullable MProperty */;
6690 val
* var_mproperty
/* var mproperty: nullable MProperty */;
6691 short int var14
/* : Bool */;
6692 short int var15
/* : Bool */;
6693 short int var16
/* : Bool */;
6694 short int var18
/* : Bool */;
6695 short int var20
/* : Bool */;
6696 short int var_
/* var : Bool */;
6697 short int var21
/* : Bool */;
6700 static val
* varonce
;
6701 val
* var22
/* : String */;
6702 char* var23
/* : NativeString */;
6703 val
* var24
/* : String */;
6704 val
* var25
/* : nullable MClass */;
6705 val
* var_sysclass
/* var sysclass: nullable MClass */;
6706 short int var26
/* : Bool */;
6707 short int var27
/* : Bool */;
6708 val
* var_other29
/* var other: nullable Object */;
6709 short int var30
/* : Bool */;
6710 short int var31
/* : Bool */;
6711 val
* var32
/* : MClassType */;
6712 val
* var34
/* : MClassType */;
6713 val
* var_systype
/* var systype: MClassType */;
6714 val
* var35
/* : nullable MProperty */;
6715 short int var36
/* : Bool */;
6716 short int var37
/* : Bool */;
6717 short int var39
/* : Bool */;
6718 short int var40
/* : Bool */;
6719 val
* var41
/* : nullable CallSite */;
6720 short int var42
/* : Bool */;
6721 short int var43
/* : Bool */;
6722 short int var45
/* : Bool */;
6723 short int var47
/* : Bool */;
6724 short int var51
/* : Bool */;
6725 short int var52
/* : Bool */;
6726 short int var54
/* : Bool */;
6727 short int var56
/* : Bool */;
6728 short int var57
/* : Bool */;
6731 val
* var60
/* : nullable CallSite */;
6732 short int var61
/* : Bool */;
6733 short int var62
/* : Bool */;
6734 short int var64
/* : Bool */;
6735 short int var66
/* : Bool */;
6736 val
* var68
/* : MSignature */;
6737 val
* var70
/* : MSignature */;
6738 val
* var_msignature
/* var msignature: MSignature */;
6739 val
* var71
/* : Array[AExpr] */;
6740 val
* var_args
/* var args: Array[AExpr] */;
6741 short int var72
/* : Bool */;
6742 val
* var73
/* : MMethod */;
6743 val
* var75
/* : MMethod */;
6744 short int var76
/* : Bool */;
6745 short int var78
/* : Bool */;
6746 val
* var79
/* : nullable MPropDef */;
6747 val
* var81
/* : nullable MPropDef */;
6748 val
* var_vmpropdef
/* var vmpropdef: nullable MPropDef */;
6749 short int var82
/* : Bool */;
6750 short int var83
/* : Bool */;
6753 short int var_86
/* var : Bool */;
6754 val
* var87
/* : MProperty */;
6755 val
* var89
/* : MProperty */;
6756 short int var90
/* : Bool */;
6757 short int var92
/* : Bool */;
6758 short int var93
/* : Bool */;
6759 static val
* varonce94
;
6760 val
* var95
/* : String */;
6761 char* var96
/* : NativeString */;
6762 val
* var97
/* : String */;
6763 short int var98
/* : Bool */;
6764 short int var99
/* : Bool */;
6765 short int var100
/* : Bool */;
6768 short int var_103
/* var : Bool */;
6769 val
* var104
/* : MProperty */;
6770 val
* var106
/* : MProperty */;
6771 short int var107
/* : Bool */;
6772 short int var109
/* : Bool */;
6773 short int var_110
/* var : Bool */;
6774 val
* var111
/* : MMethod */;
6775 val
* var113
/* : MMethod */;
6776 short int var114
/* : Bool */;
6777 short int var116
/* : Bool */;
6778 short int var117
/* : Bool */;
6779 val
* var119
/* : NativeArray[String] */;
6780 static val
* varonce118
;
6781 static val
* varonce120
;
6782 val
* var121
/* : String */;
6783 char* var122
/* : NativeString */;
6784 val
* var123
/* : String */;
6785 static val
* varonce124
;
6786 val
* var125
/* : String */;
6787 char* var126
/* : NativeString */;
6788 val
* var127
/* : String */;
6789 static val
* varonce128
;
6790 val
* var129
/* : String */;
6791 char* var130
/* : NativeString */;
6792 val
* var131
/* : String */;
6793 val
* var132
/* : String */;
6794 val
* var133
/* : MMethod */;
6795 val
* var135
/* : MMethod */;
6796 val
* var136
/* : String */;
6797 val
* var137
/* : String */;
6798 val
* var138
/* : nullable MType */;
6799 val
* var140
/* : nullable MType */;
6800 val
* var_ret
/* var ret: nullable MType */;
6801 short int var141
/* : Bool */;
6802 short int var142
/* : Bool */;
6803 short int var144
/* : Bool */;
6804 short int var145
/* : Bool */;
6807 { /* Inline parser_nodes#ASendExpr#n_expr (self) on <self:ASendExpr> */
6808 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ASendExpr___n_expr
].val
; /* _n_expr on <self:ASendExpr> */
6809 if (unlikely(var2
== NULL
)) {
6810 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
6811 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2022);
6820 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var_nrecv
);
6822 var_recvtype
= var3
;
6824 var4
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__typing__ASendExpr__property_name
]))(self
); /* property_name on <self:ASendExpr>*/
6828 var5
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__typing__ASendExpr__property_node
]))(self
); /* property_node on <self:ASendExpr>*/
6831 if (var_recvtype
== NULL
) {
6832 var6
= 1; /* is null */
6834 var6
= 0; /* arg is null but recv is not */
6837 { /* Inline kernel#Object#== (var_recvtype,((val*)NULL)) on <var_recvtype:nullable MType> */
6838 var_other
= ((val
*)NULL
);
6840 { /* Inline kernel#Object#is_same_instance (var_recvtype,var_other) on <var_recvtype:nullable MType(MType)> */
6841 var11
= var_recvtype
== var_other
;
6844 RET_LABEL10
:(void)0;
6857 var_callsite
= ((val
*)NULL
);
6859 var12
= nitc__typing___nitc__typing__TypeVisitor___anchor_to(var_v
, var_recvtype
);
6861 var_unsafe_type
= var12
;
6863 var13
= nitc__typing___nitc__typing__TypeVisitor___try_get_mproperty_by_name2(var_v
, var_node
, var_unsafe_type
, var_name
);
6865 var_mproperty
= var13
;
6866 if (var_mproperty
== NULL
) {
6867 var15
= 1; /* is null */
6869 var15
= 0; /* arg is null but recv is not */
6872 { /* Inline kernel#Object#== (var_mproperty,((val*)NULL)) on <var_mproperty:nullable MProperty> */
6873 var_other
= ((val
*)NULL
);
6875 { /* Inline kernel#Object#is_same_instance (var_mproperty,var_other) on <var_mproperty:nullable MProperty(MProperty)> */
6876 var20
= var_mproperty
== var_other
;
6879 RET_LABEL19
:(void)0;
6884 RET_LABEL17
:(void)0;
6890 /* <var_nrecv:AExpr> isa AImplicitSelfExpr */
6891 cltype
= type_nitc__AImplicitSelfExpr
.color
;
6892 idtype
= type_nitc__AImplicitSelfExpr
.id
;
6893 if(cltype
>= var_nrecv
->type
->table_size
) {
6896 var21
= var_nrecv
->type
->type_table
[cltype
] == idtype
;
6903 if (likely(varonce
!=NULL
)) {
6907 var24
= core__flat___NativeString___to_s_full(var23
, 3l, 3l);
6912 var25
= nitc__typing___nitc__typing__TypeVisitor___try_get_mclass(var_v
, var_node
, var22
);
6914 var_sysclass
= var25
;
6915 if (var_sysclass
== NULL
) {
6916 var26
= 0; /* is null */
6918 var26
= 1; /* arg is null and recv is not */
6921 { /* Inline kernel#Object#!= (var_sysclass,((val*)NULL)) on <var_sysclass:nullable MClass> */
6922 var_other29
= ((val
*)NULL
);
6924 var30
= ((short int(*)(val
* self
, val
* p0
))(var_sysclass
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_sysclass
, var_other29
); /* == on <var_sysclass:nullable MClass(MClass)>*/
6929 RET_LABEL28
:(void)0;
6935 { /* Inline model#MClass#mclass_type (var_sysclass) on <var_sysclass:nullable MClass(MClass)> */
6936 var34
= var_sysclass
->attrs
[COLOR_nitc__model__MClass___mclass_type
].val
; /* _mclass_type on <var_sysclass:nullable MClass(MClass)> */
6937 if (unlikely(var34
== NULL
)) {
6938 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mclass_type");
6939 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 507);
6943 RET_LABEL33
:(void)0;
6946 var_systype
= var32
;
6948 var35
= nitc__typing___nitc__typing__TypeVisitor___try_get_mproperty_by_name2(var_v
, var_node
, var_systype
, var_name
);
6950 var_mproperty
= var35
;
6951 if (var_mproperty
== NULL
) {
6952 var36
= 0; /* is null */
6954 var36
= 1; /* arg is null and recv is not */
6957 { /* Inline kernel#Object#!= (var_mproperty,((val*)NULL)) on <var_mproperty:nullable MProperty> */
6958 var_other29
= ((val
*)NULL
);
6960 var39
= ((short int(*)(val
* self
, val
* p0
))(var_mproperty
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_mproperty
, var_other29
); /* == on <var_mproperty:nullable MProperty(MProperty)>*/
6965 RET_LABEL38
:(void)0;
6971 var41
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, var_node
, var_systype
, var_name
, 0);
6973 var_callsite
= var41
;
6974 if (var_callsite
== NULL
) {
6975 var42
= 1; /* is null */
6977 var42
= 0; /* arg is null but recv is not */
6980 { /* Inline kernel#Object#== (var_callsite,((val*)NULL)) on <var_callsite:nullable Object(nullable CallSite)> */
6981 var_other
= ((val
*)NULL
);
6983 { /* Inline kernel#Object#is_same_instance (var_callsite,var_other) on <var_callsite:nullable CallSite(CallSite)> */
6984 var47
= var_callsite
== var_other
;
6987 RET_LABEL46
:(void)0;
6992 RET_LABEL44
:(void)0;
7001 { /* Inline typing#AImplicitSelfExpr#is_sys= (var_nrecv,1) on <var_nrecv:AExpr(AImplicitSelfExpr)> */
7002 var_nrecv
->attrs
[COLOR_nitc__typing__AImplicitSelfExpr___is_sys
].s
= 1; /* _is_sys on <var_nrecv:AExpr(AImplicitSelfExpr)> */
7003 RET_LABEL48
:(void)0;
7007 { /* Inline typing#ASelfExpr#its_variable= (var_nrecv,((val*)NULL)) on <var_nrecv:AExpr(AImplicitSelfExpr)> */
7008 var_nrecv
->attrs
[COLOR_nitc__typing__ASelfExpr___its_variable
].val
= ((val
*)NULL
); /* _its_variable on <var_nrecv:AExpr(AImplicitSelfExpr)> */
7009 RET_LABEL49
:(void)0;
7013 { /* Inline typing#AExpr#mtype= (var_nrecv,var_systype) on <var_nrecv:AExpr(AImplicitSelfExpr)> */
7014 var_nrecv
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var_systype
; /* _mtype on <var_nrecv:AExpr(AImplicitSelfExpr)> */
7015 RET_LABEL50
:(void)0;
7018 var_recvtype
= var_systype
;
7025 if (var_callsite
== NULL
) {
7026 var51
= 1; /* is null */
7028 var51
= 0; /* arg is null but recv is not */
7031 { /* Inline kernel#Object#== (var_callsite,((val*)NULL)) on <var_callsite:nullable Object(nullable CallSite)> */
7032 var_other
= ((val
*)NULL
);
7034 { /* Inline kernel#Object#is_same_instance (var_callsite,var_other) on <var_callsite:nullable CallSite(CallSite)> */
7035 var56
= var_callsite
== var_other
;
7038 RET_LABEL55
:(void)0;
7043 RET_LABEL53
:(void)0;
7048 /* <var_nrecv:AExpr> isa ASelfExpr */
7049 cltype58
= type_nitc__ASelfExpr
.color
;
7050 idtype59
= type_nitc__ASelfExpr
.id
;
7051 if(cltype58
>= var_nrecv
->type
->table_size
) {
7054 var57
= var_nrecv
->type
->type_table
[cltype58
] == idtype59
;
7057 var60
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, var_node
, var_recvtype
, var_name
, var57
);
7059 var_callsite
= var60
;
7060 if (var_callsite
== NULL
) {
7061 var61
= 1; /* is null */
7063 var61
= 0; /* arg is null but recv is not */
7066 { /* Inline kernel#Object#== (var_callsite,((val*)NULL)) on <var_callsite:nullable Object(nullable CallSite)> */
7067 var_other
= ((val
*)NULL
);
7069 { /* Inline kernel#Object#is_same_instance (var_callsite,var_other) on <var_callsite:nullable CallSite(CallSite)> */
7070 var66
= var_callsite
== var_other
;
7073 RET_LABEL65
:(void)0;
7078 RET_LABEL63
:(void)0;
7089 { /* Inline typing#ASendExpr#callsite= (self,var_callsite) on <self:ASendExpr> */
7090 self
->attrs
[COLOR_nitc__typing__ASendExpr___callsite
].val
= var_callsite
; /* _callsite on <self:ASendExpr> */
7091 RET_LABEL67
:(void)0;
7095 { /* Inline typing#CallSite#msignature (var_callsite) on <var_callsite:nullable Object(CallSite)> */
7096 var70
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___msignature
].val
; /* _msignature on <var_callsite:nullable Object(CallSite)> */
7097 if (unlikely(var70
== NULL
)) {
7098 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature");
7099 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 660);
7103 RET_LABEL69
:(void)0;
7106 var_msignature
= var68
;
7108 var71
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__typing__ASendExpr__compute_raw_arguments
]))(self
); /* compute_raw_arguments on <self:ASendExpr>*/
7112 var72
= nitc___nitc__CallSite___check_signature(var_callsite
, var_v
, var_node
, var_args
);
7115 { /* Inline typing#CallSite#mproperty (var_callsite) on <var_callsite:nullable Object(CallSite)> */
7116 var75
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___mproperty
].val
; /* _mproperty on <var_callsite:nullable Object(CallSite)> */
7117 if (unlikely(var75
== NULL
)) {
7118 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
7119 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 653);
7123 RET_LABEL74
:(void)0;
7127 { /* Inline model#MMethod#is_init (var73) on <var73:MMethod> */
7128 var78
= var73
->attrs
[COLOR_nitc__model__MMethod___is_init
].s
; /* _is_init on <var73:MMethod> */
7130 RET_LABEL77
:(void)0;
7135 { /* Inline typing#TypeVisitor#mpropdef (var_v) on <var_v:TypeVisitor> */
7136 var81
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___mpropdef
].val
; /* _mpropdef on <var_v:TypeVisitor> */
7138 RET_LABEL80
:(void)0;
7141 var_vmpropdef
= var79
;
7142 /* <var_vmpropdef:nullable MPropDef> isa MMethodDef */
7143 cltype84
= type_nitc__MMethodDef
.color
;
7144 idtype85
= type_nitc__MMethodDef
.id
;
7145 if(var_vmpropdef
== NULL
) {
7148 if(cltype84
>= var_vmpropdef
->type
->table_size
) {
7151 var83
= var_vmpropdef
->type
->type_table
[cltype84
] == idtype85
;
7157 { /* Inline model#MPropDef#mproperty (var_vmpropdef) on <var_vmpropdef:nullable MPropDef(MMethodDef)> */
7158 var89
= var_vmpropdef
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var_vmpropdef:nullable MPropDef(MMethodDef)> */
7159 if (unlikely(var89
== NULL
)) {
7160 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
7161 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
7165 RET_LABEL88
:(void)0;
7169 { /* Inline model#MMethod#is_init (var87) on <var87:MProperty(MMethod)> */
7170 var92
= var87
->attrs
[COLOR_nitc__model__MMethod___is_init
].s
; /* _is_init on <var87:MProperty(MMethod)> */
7172 RET_LABEL91
:(void)0;
7181 if (likely(varonce94
!=NULL
)) {
7184 var96
= "Error: an `init` can only be called from another `init`.";
7185 var97
= core__flat___NativeString___to_s_full(var96
, 56l, 56l);
7190 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, var_node
, var95
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
7194 /* <var_vmpropdef:nullable MPropDef> isa MMethodDef */
7195 cltype101
= type_nitc__MMethodDef
.color
;
7196 idtype102
= type_nitc__MMethodDef
.id
;
7197 if(var_vmpropdef
== NULL
) {
7200 if(cltype101
>= var_vmpropdef
->type
->table_size
) {
7203 var100
= var_vmpropdef
->type
->type_table
[cltype101
] == idtype102
;
7209 { /* Inline model#MPropDef#mproperty (var_vmpropdef) on <var_vmpropdef:nullable MPropDef(MMethodDef)> */
7210 var106
= var_vmpropdef
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var_vmpropdef:nullable MPropDef(MMethodDef)> */
7211 if (unlikely(var106
== NULL
)) {
7212 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
7213 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
7217 RET_LABEL105
:(void)0;
7221 { /* Inline model#MMethod#is_root_init (var104) on <var104:MProperty(MMethod)> */
7222 var109
= var104
->attrs
[COLOR_nitc__model__MMethod___is_root_init
].s
; /* _is_root_init on <var104:MProperty(MMethod)> */
7224 RET_LABEL108
:(void)0;
7234 { /* Inline typing#CallSite#mproperty (var_callsite) on <var_callsite:nullable Object(CallSite)> */
7235 var113
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___mproperty
].val
; /* _mproperty on <var_callsite:nullable Object(CallSite)> */
7236 if (unlikely(var113
== NULL
)) {
7237 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
7238 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 653);
7242 RET_LABEL112
:(void)0;
7246 { /* Inline model#MMethod#is_root_init (var111) on <var111:MMethod> */
7247 var116
= var111
->attrs
[COLOR_nitc__model__MMethod___is_root_init
].s
; /* _is_root_init on <var111:MMethod> */
7249 RET_LABEL115
:(void)0;
7258 if (unlikely(varonce118
==NULL
)) {
7259 var119
= NEW_core__NativeArray(5l, &type_core__NativeArray__core__String
);
7260 if (likely(varonce120
!=NULL
)) {
7261 var121
= varonce120
;
7263 var122
= "Error: `";
7264 var123
= core__flat___NativeString___to_s_full(var122
, 8l, 8l);
7266 varonce120
= var121
;
7268 ((struct instance_core__NativeArray
*)var119
)->values
[0]=var121
;
7269 if (likely(varonce124
!=NULL
)) {
7270 var125
= varonce124
;
7272 var126
= "` cannot call a factory `";
7273 var127
= core__flat___NativeString___to_s_full(var126
, 25l, 25l);
7275 varonce124
= var125
;
7277 ((struct instance_core__NativeArray
*)var119
)->values
[2]=var125
;
7278 if (likely(varonce128
!=NULL
)) {
7279 var129
= varonce128
;
7282 var131
= core__flat___NativeString___to_s_full(var130
, 2l, 2l);
7284 varonce128
= var129
;
7286 ((struct instance_core__NativeArray
*)var119
)->values
[4]=var129
;
7288 var119
= varonce118
;
7292 var132
= ((val
*(*)(val
* self
))(var_vmpropdef
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_vmpropdef
); /* to_s on <var_vmpropdef:nullable MPropDef(MMethodDef)>*/
7294 ((struct instance_core__NativeArray
*)var119
)->values
[1]=var132
;
7296 { /* Inline typing#CallSite#mproperty (var_callsite) on <var_callsite:nullable Object(CallSite)> */
7297 var135
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___mproperty
].val
; /* _mproperty on <var_callsite:nullable Object(CallSite)> */
7298 if (unlikely(var135
== NULL
)) {
7299 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
7300 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 653);
7304 RET_LABEL134
:(void)0;
7308 var136
= ((val
*(*)(val
* self
))(var133
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var133
); /* to_s on <var133:MMethod>*/
7310 ((struct instance_core__NativeArray
*)var119
)->values
[3]=var136
;
7312 var137
= ((val
*(*)(val
* self
))(var119
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var119
); /* native_to_s on <var119:NativeArray[String]>*/
7314 varonce118
= var119
;
7316 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, var_node
, var137
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
7323 { /* Inline model#MSignature#return_mtype (var_msignature) on <var_msignature:MSignature> */
7324 var140
= var_msignature
->attrs
[COLOR_nitc__model__MSignature___return_mtype
].val
; /* _return_mtype on <var_msignature:MSignature> */
7326 RET_LABEL139
:(void)0;
7330 if (var_ret
== NULL
) {
7331 var141
= 0; /* is null */
7333 var141
= 1; /* arg is null and recv is not */
7336 { /* Inline kernel#Object#!= (var_ret,((val*)NULL)) on <var_ret:nullable MType> */
7337 var_other29
= ((val
*)NULL
);
7339 var144
= ((short int(*)(val
* self
, val
* p0
))(var_ret
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_ret
, var_other29
); /* == on <var_ret:nullable MType(MType)>*/
7344 RET_LABEL143
:(void)0;
7350 { /* Inline typing#AExpr#mtype= (self,var_ret) on <self:ASendExpr> */
7351 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var_ret
; /* _mtype on <self:ASendExpr> */
7352 RET_LABEL146
:(void)0;
7357 { /* Inline typing#AExpr#is_typed= (self,1) on <self:ASendExpr> */
7358 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:ASendExpr> */
7359 RET_LABEL147
:(void)0;
7365 /* method typing#ASendExpr#property_node for (self: ASendExpr): ANode */
7366 val
* nitc__typing___ASendExpr___property_node(val
* self
) {
7367 val
* var
/* : ANode */;
7373 /* method typing#ASendExpr#raw_arguments for (self: ASendExpr): Array[AExpr] */
7374 val
* nitc__typing___ASendExpr___raw_arguments(val
* self
) {
7375 val
* var
/* : Array[AExpr] */;
7376 val
* var1
/* : Array[AExpr] */;
7378 var1
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__typing__ASendExpr__compute_raw_arguments
]))(self
); /* compute_raw_arguments on <self:ASendExpr>*/
7385 /* method typing#ABinopExpr#compute_raw_arguments for (self: ABinopExpr): Array[AExpr] */
7386 val
* nitc__typing___ABinopExpr___ASendExpr__compute_raw_arguments(val
* self
) {
7387 val
* var
/* : Array[AExpr] */;
7388 val
* var1
/* : Array[AExpr] */;
7389 val
* var_
/* var : Array[AExpr] */;
7390 val
* var2
/* : AExpr */;
7391 val
* var4
/* : AExpr */;
7392 var1
= NEW_core__Array(&type_core__Array__nitc__AExpr
);
7394 core___core__Array___with_capacity(var1
, 1l); /* Direct call array#Array#with_capacity on <var1:Array[AExpr]>*/
7398 { /* Inline parser_nodes#ABinopExpr#n_expr2 (self) on <self:ABinopExpr> */
7399 var4
= self
->attrs
[COLOR_nitc__parser_nodes__ABinopExpr___n_expr2
].val
; /* _n_expr2 on <self:ABinopExpr> */
7400 if (unlikely(var4
== NULL
)) {
7401 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
7402 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2033);
7410 core___core__AbstractArray___core__abstract_collection__Sequence__push(var_
, var2
); /* Direct call array#AbstractArray#push on <var_:Array[AExpr]>*/
7417 /* method typing#ABinopExpr#property_name for (self: ABinopExpr): String */
7418 val
* nitc__typing___ABinopExpr___ASendExpr__property_name(val
* self
) {
7419 val
* var
/* : String */;
7420 val
* var1
/* : String */;
7422 var1
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__parser_nodes__ABinopExpr__operator
]))(self
); /* operator on <self:ABinopExpr>*/
7429 /* method typing#ABinopExpr#property_node for (self: ABinopExpr): ANode */
7430 val
* nitc__typing___ABinopExpr___ASendExpr__property_node(val
* self
) {
7431 val
* var
/* : ANode */;
7432 val
* var1
/* : Token */;
7433 val
* var3
/* : Token */;
7435 { /* Inline parser_nodes#ABinopExpr#n_op (self) on <self:ABinopExpr> */
7436 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ABinopExpr___n_op
].val
; /* _n_op on <self:ABinopExpr> */
7437 if (unlikely(var3
== NULL
)) {
7438 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_op");
7439 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2030);
7451 /* method typing#AEqFormExpr#accept_typing for (self: AEqFormExpr, TypeVisitor) */
7452 void nitc__typing___AEqFormExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
7453 val
* var_v
/* var v: TypeVisitor */;
7456 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nitc__typing___AEqFormExpr___AExpr__accept_typing
]))(self
, p0
); /* accept_typing on <self:AEqFormExpr>*/
7459 nitc__typing___nitc__typing__TypeVisitor___null_test(var_v
, self
); /* Direct call typing#TypeVisitor#null_test on <var_v:TypeVisitor>*/
7463 /* method typing#AEqFormExpr#accept_post_typing for (self: AEqFormExpr, TypeVisitor) */
7464 void nitc__typing___AEqFormExpr___ANode__accept_post_typing(val
* self
, val
* p0
) {
7465 val
* var_v
/* var v: TypeVisitor */;
7466 val
* var
/* : AExpr */;
7467 val
* var2
/* : AExpr */;
7468 val
* var3
/* : nullable MType */;
7469 val
* var_mtype
/* var mtype: nullable MType */;
7470 val
* var4
/* : AExpr */;
7471 val
* var6
/* : AExpr */;
7472 val
* var7
/* : nullable MType */;
7473 val
* var_mtype2
/* var mtype2: nullable MType */;
7474 short int var8
/* : Bool */;
7475 short int var9
/* : Bool */;
7476 short int var10
/* : Bool */;
7477 val
* var_other
/* var other: nullable Object */;
7478 short int var12
/* : Bool */;
7479 short int var14
/* : Bool */;
7480 short int var_
/* var : Bool */;
7481 short int var15
/* : Bool */;
7482 short int var16
/* : Bool */;
7483 short int var18
/* : Bool */;
7484 short int var20
/* : Bool */;
7485 short int var21
/* : Bool */;
7488 short int var22
/* : Bool */;
7489 val
* var23
/* : AExpr */;
7490 val
* var25
/* : AExpr */;
7491 short int var26
/* : Bool */;
7494 { /* Inline parser_nodes#ASendExpr#n_expr (self) on <self:AEqFormExpr> */
7495 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ASendExpr___n_expr
].val
; /* _n_expr on <self:AEqFormExpr> */
7496 if (unlikely(var2
== NULL
)) {
7497 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
7498 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2022);
7506 var3
= ((val
*(*)(val
* self
))(var
->class->vft
[COLOR_nitc__typing__AExpr__mtype
]))(var
); /* mtype on <var:AExpr>*/
7510 { /* Inline parser_nodes#ABinopExpr#n_expr2 (self) on <self:AEqFormExpr> */
7511 var6
= self
->attrs
[COLOR_nitc__parser_nodes__ABinopExpr___n_expr2
].val
; /* _n_expr2 on <self:AEqFormExpr> */
7512 if (unlikely(var6
== NULL
)) {
7513 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
7514 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2033);
7522 var7
= ((val
*(*)(val
* self
))(var4
->class->vft
[COLOR_nitc__typing__AExpr__mtype
]))(var4
); /* mtype on <var4:AExpr>*/
7525 if (var_mtype
== NULL
) {
7526 var9
= 1; /* is null */
7528 var9
= 0; /* arg is null but recv is not */
7531 { /* Inline kernel#Object#== (var_mtype,((val*)NULL)) on <var_mtype:nullable MType> */
7532 var_other
= ((val
*)NULL
);
7534 { /* Inline kernel#Object#is_same_instance (var_mtype,var_other) on <var_mtype:nullable MType(MType)> */
7535 var14
= var_mtype
== var_other
;
7538 RET_LABEL13
:(void)0;
7543 RET_LABEL11
:(void)0;
7551 if (var_mtype2
== NULL
) {
7552 var15
= 1; /* is null */
7554 var15
= 0; /* arg is null but recv is not */
7557 { /* Inline kernel#Object#== (var_mtype2,((val*)NULL)) on <var_mtype2:nullable MType> */
7558 var_other
= ((val
*)NULL
);
7560 { /* Inline kernel#Object#is_same_instance (var_mtype2,var_other) on <var_mtype2:nullable MType(MType)> */
7561 var20
= var_mtype2
== var_other
;
7564 RET_LABEL19
:(void)0;
7569 RET_LABEL17
:(void)0;
7579 /* <var_mtype2:nullable MType(MType)> isa MNullType */
7580 cltype
= type_nitc__MNullType
.color
;
7581 idtype
= type_nitc__MNullType
.id
;
7582 if(cltype
>= var_mtype2
->type
->table_size
) {
7585 var21
= var_mtype2
->type
->type_table
[cltype
] == idtype
;
7593 { /* Inline parser_nodes#ASendExpr#n_expr (self) on <self:AEqFormExpr> */
7594 var25
= self
->attrs
[COLOR_nitc__parser_nodes__ASendExpr___n_expr
].val
; /* _n_expr on <self:AEqFormExpr> */
7595 if (unlikely(var25
== NULL
)) {
7596 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
7597 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2022);
7601 RET_LABEL24
:(void)0;
7605 var26
= nitc__typing___nitc__typing__TypeVisitor___check_can_be_null(var_v
, var23
, var_mtype
);
7609 /* method typing#AUnaryopExpr#property_name for (self: AUnaryopExpr): String */
7610 val
* nitc__typing___AUnaryopExpr___ASendExpr__property_name(val
* self
) {
7611 val
* var
/* : String */;
7612 val
* var1
/* : NativeArray[String] */;
7613 static val
* varonce
;
7614 static val
* varonce2
;
7615 val
* var3
/* : String */;
7616 char* var4
/* : NativeString */;
7617 val
* var5
/* : String */;
7618 val
* var6
/* : String */;
7619 val
* var7
/* : String */;
7620 if (unlikely(varonce
==NULL
)) {
7621 var1
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
7622 if (likely(varonce2
!=NULL
)) {
7626 var5
= core__flat___NativeString___to_s_full(var4
, 6l, 6l);
7630 ((struct instance_core__NativeArray
*)var1
)->values
[0]=var3
;
7636 var6
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__parser_nodes__AUnaryopExpr__operator
]))(self
); /* operator on <self:AUnaryopExpr>*/
7638 ((struct instance_core__NativeArray
*)var1
)->values
[1]=var6
;
7640 var7
= ((val
*(*)(val
* self
))(var1
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var1
); /* native_to_s on <var1:NativeArray[String]>*/
7648 /* method typing#AUnaryopExpr#compute_raw_arguments for (self: AUnaryopExpr): Array[AExpr] */
7649 val
* nitc__typing___AUnaryopExpr___ASendExpr__compute_raw_arguments(val
* self
) {
7650 val
* var
/* : Array[AExpr] */;
7651 val
* var1
/* : Array[AExpr] */;
7652 var1
= NEW_core__Array(&type_core__Array__nitc__AExpr
);
7654 core___core__Array___core__kernel__Object__init(var1
); /* Direct call array#Array#init on <var1:Array[AExpr]>*/
7661 /* method typing#ACallExpr#property_name for (self: ACallExpr): String */
7662 val
* nitc__typing___ACallExpr___ASendExpr__property_name(val
* self
) {
7663 val
* var
/* : String */;
7664 val
* var1
/* : AQid */;
7665 val
* var3
/* : AQid */;
7666 val
* var4
/* : TId */;
7667 val
* var6
/* : TId */;
7668 val
* var7
/* : String */;
7670 { /* Inline parser_nodes#ACallFormExpr#n_qid (self) on <self:ACallExpr> */
7671 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_qid
].val
; /* _n_qid on <self:ACallExpr> */
7672 if (unlikely(var3
== NULL
)) {
7673 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_qid");
7674 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2296);
7682 { /* Inline parser_nodes#AQid#n_id (var1) on <var1:AQid> */
7683 var6
= var1
->attrs
[COLOR_nitc__parser_nodes__AQid___n_id
].val
; /* _n_id on <var1:AQid> */
7684 if (unlikely(var6
== NULL
)) {
7685 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
7686 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1658);
7694 var7
= nitc__lexer_work___Token___text(var4
);
7701 /* method typing#ACallExpr#property_node for (self: ACallExpr): ANode */
7702 val
* nitc__typing___ACallExpr___ASendExpr__property_node(val
* self
) {
7703 val
* var
/* : ANode */;
7704 val
* var1
/* : AQid */;
7705 val
* var3
/* : AQid */;
7707 { /* Inline parser_nodes#ACallFormExpr#n_qid (self) on <self:ACallExpr> */
7708 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_qid
].val
; /* _n_qid on <self:ACallExpr> */
7709 if (unlikely(var3
== NULL
)) {
7710 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_qid");
7711 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2296);
7723 /* method typing#ACallExpr#compute_raw_arguments for (self: ACallExpr): Array[AExpr] */
7724 val
* nitc__typing___ACallExpr___ASendExpr__compute_raw_arguments(val
* self
) {
7725 val
* var
/* : Array[AExpr] */;
7726 val
* var1
/* : AExprs */;
7727 val
* var3
/* : AExprs */;
7728 val
* var4
/* : Array[AExpr] */;
7730 { /* Inline parser_nodes#ACallFormExpr#n_args (self) on <self:ACallExpr> */
7731 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_args
].val
; /* _n_args on <self:ACallExpr> */
7732 if (unlikely(var3
== NULL
)) {
7733 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
7734 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2299);
7742 var4
= nitc__typing___AExprs___to_a(var1
);
7749 /* method typing#ACallAssignExpr#property_name for (self: ACallAssignExpr): String */
7750 val
* nitc__typing___ACallAssignExpr___ASendExpr__property_name(val
* self
) {
7751 val
* var
/* : String */;
7752 val
* var1
/* : AQid */;
7753 val
* var3
/* : AQid */;
7754 val
* var4
/* : TId */;
7755 val
* var6
/* : TId */;
7756 val
* var7
/* : String */;
7757 static val
* varonce
;
7758 val
* var8
/* : String */;
7759 char* var9
/* : NativeString */;
7760 val
* var10
/* : String */;
7761 val
* var11
/* : String */;
7763 { /* Inline parser_nodes#ACallFormExpr#n_qid (self) on <self:ACallAssignExpr> */
7764 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_qid
].val
; /* _n_qid on <self:ACallAssignExpr> */
7765 if (unlikely(var3
== NULL
)) {
7766 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_qid");
7767 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2296);
7775 { /* Inline parser_nodes#AQid#n_id (var1) on <var1:AQid> */
7776 var6
= var1
->attrs
[COLOR_nitc__parser_nodes__AQid___n_id
].val
; /* _n_id on <var1:AQid> */
7777 if (unlikely(var6
== NULL
)) {
7778 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
7779 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1658);
7787 var7
= nitc__lexer_work___Token___text(var4
);
7789 if (likely(varonce
!=NULL
)) {
7793 var10
= core__flat___NativeString___to_s_full(var9
, 1l, 1l);
7798 var11
= ((val
*(*)(val
* self
, val
* p0
))(var7
->class->vft
[COLOR_core__abstract_text__String___43d
]))(var7
, var8
); /* + on <var7:String>*/
7805 /* method typing#ACallAssignExpr#property_node for (self: ACallAssignExpr): ANode */
7806 val
* nitc__typing___ACallAssignExpr___ASendExpr__property_node(val
* self
) {
7807 val
* var
/* : ANode */;
7808 val
* var1
/* : AQid */;
7809 val
* var3
/* : AQid */;
7811 { /* Inline parser_nodes#ACallFormExpr#n_qid (self) on <self:ACallAssignExpr> */
7812 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_qid
].val
; /* _n_qid on <self:ACallAssignExpr> */
7813 if (unlikely(var3
== NULL
)) {
7814 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_qid");
7815 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2296);
7827 /* method typing#ACallAssignExpr#compute_raw_arguments for (self: ACallAssignExpr): Array[AExpr] */
7828 val
* nitc__typing___ACallAssignExpr___ASendExpr__compute_raw_arguments(val
* self
) {
7829 val
* var
/* : Array[AExpr] */;
7830 val
* var1
/* : AExprs */;
7831 val
* var3
/* : AExprs */;
7832 val
* var4
/* : Array[AExpr] */;
7833 val
* var_res
/* var res: Array[AExpr] */;
7834 val
* var5
/* : AExpr */;
7835 val
* var7
/* : AExpr */;
7837 { /* Inline parser_nodes#ACallFormExpr#n_args (self) on <self:ACallAssignExpr> */
7838 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_args
].val
; /* _n_args on <self:ACallAssignExpr> */
7839 if (unlikely(var3
== NULL
)) {
7840 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
7841 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2299);
7849 var4
= nitc__typing___AExprs___to_a(var1
);
7853 { /* Inline parser_nodes#AAssignFormExpr#n_value (self) on <self:ACallAssignExpr> */
7854 var7
= self
->attrs
[COLOR_nitc__parser_nodes__AAssignFormExpr___n_value
].val
; /* _n_value on <self:ACallAssignExpr> */
7855 if (unlikely(var7
== NULL
)) {
7856 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
7857 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1992);
7865 core___core__Array___core__abstract_collection__SimpleCollection__add(var_res
, var5
); /* Direct call array#Array#add on <var_res:Array[AExpr]>*/
7872 /* method typing#ABraExpr#property_name for (self: ABraExpr): String */
7873 val
* nitc__typing___ABraExpr___ASendExpr__property_name(val
* self
) {
7874 val
* var
/* : String */;
7875 static val
* varonce
;
7876 val
* var1
/* : String */;
7877 char* var2
/* : NativeString */;
7878 val
* var3
/* : String */;
7879 if (likely(varonce
!=NULL
)) {
7883 var3
= core__flat___NativeString___to_s_full(var2
, 2l, 2l);
7892 /* method typing#ABraExpr#compute_raw_arguments for (self: ABraExpr): Array[AExpr] */
7893 val
* nitc__typing___ABraExpr___ASendExpr__compute_raw_arguments(val
* self
) {
7894 val
* var
/* : Array[AExpr] */;
7895 val
* var1
/* : AExprs */;
7896 val
* var3
/* : AExprs */;
7897 val
* var4
/* : Array[AExpr] */;
7899 { /* Inline parser_nodes#ABraFormExpr#n_args (self) on <self:ABraExpr> */
7900 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ABraFormExpr___n_args
].val
; /* _n_args on <self:ABraExpr> */
7901 if (unlikely(var3
== NULL
)) {
7902 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
7903 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2368);
7911 var4
= nitc__typing___AExprs___to_a(var1
);
7918 /* method typing#ABraAssignExpr#property_name for (self: ABraAssignExpr): String */
7919 val
* nitc__typing___ABraAssignExpr___ASendExpr__property_name(val
* self
) {
7920 val
* var
/* : String */;
7921 static val
* varonce
;
7922 val
* var1
/* : String */;
7923 char* var2
/* : NativeString */;
7924 val
* var3
/* : String */;
7925 if (likely(varonce
!=NULL
)) {
7929 var3
= core__flat___NativeString___to_s_full(var2
, 3l, 3l);
7938 /* method typing#ABraAssignExpr#compute_raw_arguments for (self: ABraAssignExpr): Array[AExpr] */
7939 val
* nitc__typing___ABraAssignExpr___ASendExpr__compute_raw_arguments(val
* self
) {
7940 val
* var
/* : Array[AExpr] */;
7941 val
* var1
/* : AExprs */;
7942 val
* var3
/* : AExprs */;
7943 val
* var4
/* : Array[AExpr] */;
7944 val
* var_res
/* var res: Array[AExpr] */;
7945 val
* var5
/* : AExpr */;
7946 val
* var7
/* : AExpr */;
7948 { /* Inline parser_nodes#ABraFormExpr#n_args (self) on <self:ABraAssignExpr> */
7949 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ABraFormExpr___n_args
].val
; /* _n_args on <self:ABraAssignExpr> */
7950 if (unlikely(var3
== NULL
)) {
7951 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
7952 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2368);
7960 var4
= nitc__typing___AExprs___to_a(var1
);
7964 { /* Inline parser_nodes#AAssignFormExpr#n_value (self) on <self:ABraAssignExpr> */
7965 var7
= self
->attrs
[COLOR_nitc__parser_nodes__AAssignFormExpr___n_value
].val
; /* _n_value on <self:ABraAssignExpr> */
7966 if (unlikely(var7
== NULL
)) {
7967 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
7968 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1992);
7976 core___core__Array___core__abstract_collection__SimpleCollection__add(var_res
, var5
); /* Direct call array#Array#add on <var_res:Array[AExpr]>*/
7983 /* method typing#ASendReassignFormExpr#write_callsite for (self: ASendReassignFormExpr): nullable CallSite */
7984 val
* nitc__typing___ASendReassignFormExpr___write_callsite(val
* self
) {
7985 val
* var
/* : nullable CallSite */;
7986 val
* var1
/* : nullable CallSite */;
7987 var1
= self
->attrs
[COLOR_nitc__typing__ASendReassignFormExpr___write_callsite
].val
; /* _write_callsite on <self:ASendReassignFormExpr> */
7992 /* method typing#ASendReassignFormExpr#write_callsite= for (self: ASendReassignFormExpr, nullable CallSite) */
7993 void nitc__typing___ASendReassignFormExpr___write_callsite_61d(val
* self
, val
* p0
) {
7994 self
->attrs
[COLOR_nitc__typing__ASendReassignFormExpr___write_callsite
].val
= p0
; /* _write_callsite on <self:ASendReassignFormExpr> */
7997 /* method typing#ASendReassignFormExpr#accept_typing for (self: ASendReassignFormExpr, TypeVisitor) */
7998 void nitc__typing___ASendReassignFormExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
7999 val
* var_v
/* var v: TypeVisitor */;
8000 val
* var
/* : AExpr */;
8001 val
* var2
/* : AExpr */;
8002 val
* var3
/* : nullable MType */;
8003 val
* var_recvtype
/* var recvtype: nullable MType */;
8004 val
* var4
/* : String */;
8005 val
* var_name
/* var name: String */;
8006 val
* var5
/* : ANode */;
8007 val
* var_node
/* var node: ANode */;
8008 short int var6
/* : Bool */;
8009 short int var7
/* : Bool */;
8010 val
* var_other
/* var other: nullable Object */;
8011 short int var9
/* : Bool */;
8012 short int var11
/* : Bool */;
8013 val
* var12
/* : AExpr */;
8014 val
* var14
/* : AExpr */;
8015 short int var15
/* : Bool */;
8018 short int var_for_self
/* var for_self: Bool */;
8019 val
* var16
/* : nullable CallSite */;
8020 val
* var_callsite
/* var callsite: nullable CallSite */;
8021 short int var17
/* : Bool */;
8022 short int var18
/* : Bool */;
8023 short int var20
/* : Bool */;
8024 short int var22
/* : Bool */;
8025 val
* var24
/* : Array[AExpr] */;
8026 val
* var_args
/* var args: Array[AExpr] */;
8027 short int var25
/* : Bool */;
8028 val
* var26
/* : MSignature */;
8029 val
* var28
/* : MSignature */;
8030 val
* var29
/* : nullable MType */;
8031 val
* var31
/* : nullable MType */;
8032 val
* var_readtype
/* var readtype: nullable MType */;
8033 short int var32
/* : Bool */;
8034 short int var33
/* : Bool */;
8035 short int var35
/* : Bool */;
8036 short int var37
/* : Bool */;
8037 val
* var38
/* : NativeArray[String] */;
8038 static val
* varonce
;
8039 static val
* varonce39
;
8040 val
* var40
/* : String */;
8041 char* var41
/* : NativeString */;
8042 val
* var42
/* : String */;
8043 static val
* varonce43
;
8044 val
* var44
/* : String */;
8045 char* var45
/* : NativeString */;
8046 val
* var46
/* : String */;
8047 val
* var47
/* : String */;
8048 static val
* varonce48
;
8049 val
* var49
/* : String */;
8050 char* var50
/* : NativeString */;
8051 val
* var51
/* : String */;
8052 val
* var52
/* : String */;
8053 val
* var53
/* : AExpr */;
8054 val
* var55
/* : AExpr */;
8055 short int var56
/* : Bool */;
8058 val
* var59
/* : nullable CallSite */;
8059 val
* var_wcallsite
/* var wcallsite: nullable CallSite */;
8060 short int var60
/* : Bool */;
8061 short int var61
/* : Bool */;
8062 short int var63
/* : Bool */;
8063 short int var65
/* : Bool */;
8064 val
* var67
/* : MSignature */;
8065 val
* var69
/* : MSignature */;
8066 val
* var70
/* : Array[MParameter] */;
8067 val
* var72
/* : Array[MParameter] */;
8068 val
* var73
/* : nullable Object */;
8069 val
* var74
/* : MType */;
8070 val
* var76
/* : MType */;
8071 val
* var77
/* : nullable MType */;
8072 val
* var_wtype
/* var wtype: nullable MType */;
8073 short int var78
/* : Bool */;
8074 short int var79
/* : Bool */;
8075 short int var81
/* : Bool */;
8076 short int var83
/* : Bool */;
8077 val
* var84
/* : Array[nullable Object] */;
8078 val
* var85
/* : AExpr */;
8079 val
* var87
/* : AExpr */;
8080 short int var88
/* : Bool */;
8083 { /* Inline parser_nodes#ASendExpr#n_expr (self) on <self:ASendReassignFormExpr> */
8084 var2
= self
->attrs
[COLOR_nitc__parser_nodes__ASendExpr___n_expr
].val
; /* _n_expr on <self:ASendReassignFormExpr> */
8085 if (unlikely(var2
== NULL
)) {
8086 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
8087 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2022);
8095 var3
= nitc__typing___nitc__typing__TypeVisitor___visit_expr(var_v
, var
);
8097 var_recvtype
= var3
;
8099 var4
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__typing__ASendExpr__property_name
]))(self
); /* property_name on <self:ASendReassignFormExpr>*/
8103 var5
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__typing__ASendExpr__property_node
]))(self
); /* property_node on <self:ASendReassignFormExpr>*/
8106 if (var_recvtype
== NULL
) {
8107 var6
= 1; /* is null */
8109 var6
= 0; /* arg is null but recv is not */
8112 { /* Inline kernel#Object#== (var_recvtype,((val*)NULL)) on <var_recvtype:nullable MType> */
8113 var_other
= ((val
*)NULL
);
8115 { /* Inline kernel#Object#is_same_instance (var_recvtype,var_other) on <var_recvtype:nullable MType(MType)> */
8116 var11
= var_recvtype
== var_other
;
8119 RET_LABEL10
:(void)0;
8133 { /* Inline parser_nodes#ASendExpr#n_expr (self) on <self:ASendReassignFormExpr> */
8134 var14
= self
->attrs
[COLOR_nitc__parser_nodes__ASendExpr___n_expr
].val
; /* _n_expr on <self:ASendReassignFormExpr> */
8135 if (unlikely(var14
== NULL
)) {
8136 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
8137 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2022);
8141 RET_LABEL13
:(void)0;
8144 /* <var12:AExpr> isa ASelfExpr */
8145 cltype
= type_nitc__ASelfExpr
.color
;
8146 idtype
= type_nitc__ASelfExpr
.id
;
8147 if(cltype
>= var12
->type
->table_size
) {
8150 var15
= var12
->type
->type_table
[cltype
] == idtype
;
8152 var_for_self
= var15
;
8154 var16
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, var_node
, var_recvtype
, var_name
, var_for_self
);
8156 var_callsite
= var16
;
8157 if (var_callsite
== NULL
) {
8158 var17
= 1; /* is null */
8160 var17
= 0; /* arg is null but recv is not */
8163 { /* Inline kernel#Object#== (var_callsite,((val*)NULL)) on <var_callsite:nullable CallSite> */
8164 var_other
= ((val
*)NULL
);
8166 { /* Inline kernel#Object#is_same_instance (var_callsite,var_other) on <var_callsite:nullable CallSite(CallSite)> */
8167 var22
= var_callsite
== var_other
;
8170 RET_LABEL21
:(void)0;
8175 RET_LABEL19
:(void)0;
8184 { /* Inline typing#ASendExpr#callsite= (self,var_callsite) on <self:ASendReassignFormExpr> */
8185 self
->attrs
[COLOR_nitc__typing__ASendExpr___callsite
].val
= var_callsite
; /* _callsite on <self:ASendReassignFormExpr> */
8186 RET_LABEL23
:(void)0;
8190 var24
= ((val
*(*)(val
* self
))(self
->class->vft
[COLOR_nitc__typing__ASendExpr__compute_raw_arguments
]))(self
); /* compute_raw_arguments on <self:ASendReassignFormExpr>*/
8194 var25
= nitc___nitc__CallSite___check_signature(var_callsite
, var_v
, var_node
, var_args
);
8197 { /* Inline typing#CallSite#msignature (var_callsite) on <var_callsite:nullable CallSite(CallSite)> */
8198 var28
= var_callsite
->attrs
[COLOR_nitc__typing__CallSite___msignature
].val
; /* _msignature on <var_callsite:nullable CallSite(CallSite)> */
8199 if (unlikely(var28
== NULL
)) {
8200 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature");
8201 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 660);
8205 RET_LABEL27
:(void)0;
8209 { /* Inline model#MSignature#return_mtype (var26) on <var26:MSignature> */
8210 var31
= var26
->attrs
[COLOR_nitc__model__MSignature___return_mtype
].val
; /* _return_mtype on <var26:MSignature> */
8212 RET_LABEL30
:(void)0;
8215 var_readtype
= var29
;
8216 if (var_readtype
== NULL
) {
8217 var32
= 1; /* is null */
8219 var32
= 0; /* arg is null but recv is not */
8222 { /* Inline kernel#Object#== (var_readtype,((val*)NULL)) on <var_readtype:nullable MType> */
8223 var_other
= ((val
*)NULL
);
8225 { /* Inline kernel#Object#is_same_instance (var_readtype,var_other) on <var_readtype:nullable MType(MType)> */
8226 var37
= var_readtype
== var_other
;
8229 RET_LABEL36
:(void)0;
8234 RET_LABEL34
:(void)0;
8239 if (unlikely(varonce
==NULL
)) {
8240 var38
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
8241 if (likely(varonce39
!=NULL
)) {
8245 var42
= core__flat___NativeString___to_s_full(var41
, 8l, 8l);
8249 ((struct instance_core__NativeArray
*)var38
)->values
[0]=var40
;
8250 if (likely(varonce43
!=NULL
)) {
8253 var45
= "` is not a function.";
8254 var46
= core__flat___NativeString___to_s_full(var45
, 20l, 20l);
8258 ((struct instance_core__NativeArray
*)var38
)->values
[2]=var44
;
8263 ((struct instance_core__NativeArray
*)var38
)->values
[1]=var_name
;
8265 var47
= ((val
*(*)(val
* self
))(var38
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var38
); /* native_to_s on <var38:NativeArray[String]>*/
8269 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, var_node
, var47
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
8274 if (likely(varonce48
!=NULL
)) {
8278 var51
= core__flat___NativeString___to_s_full(var50
, 1l, 1l);
8283 var52
= ((val
*(*)(val
* self
, val
* p0
))(var_name
->class->vft
[COLOR_core__abstract_text__String___43d
]))(var_name
, var49
); /* + on <var_name:String>*/
8286 { /* Inline parser_nodes#ASendExpr#n_expr (self) on <self:ASendReassignFormExpr> */
8287 var55
= self
->attrs
[COLOR_nitc__parser_nodes__ASendExpr___n_expr
].val
; /* _n_expr on <self:ASendReassignFormExpr> */
8288 if (unlikely(var55
== NULL
)) {
8289 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
8290 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2022);
8294 RET_LABEL54
:(void)0;
8297 /* <var53:AExpr> isa ASelfExpr */
8298 cltype57
= type_nitc__ASelfExpr
.color
;
8299 idtype58
= type_nitc__ASelfExpr
.id
;
8300 if(cltype57
>= var53
->type
->table_size
) {
8303 var56
= var53
->type
->type_table
[cltype57
] == idtype58
;
8306 var59
= nitc__typing___nitc__typing__TypeVisitor___get_method(var_v
, var_node
, var_recvtype
, var52
, var56
);
8308 var_wcallsite
= var59
;
8309 if (var_wcallsite
== NULL
) {
8310 var60
= 1; /* is null */
8312 var60
= 0; /* arg is null but recv is not */
8315 { /* Inline kernel#Object#== (var_wcallsite,((val*)NULL)) on <var_wcallsite:nullable CallSite> */
8316 var_other
= ((val
*)NULL
);
8318 { /* Inline kernel#Object#is_same_instance (var_wcallsite,var_other) on <var_wcallsite:nullable CallSite(CallSite)> */
8319 var65
= var_wcallsite
== var_other
;
8322 RET_LABEL64
:(void)0;
8327 RET_LABEL62
:(void)0;
8336 { /* Inline typing#ASendReassignFormExpr#write_callsite= (self,var_wcallsite) on <self:ASendReassignFormExpr> */
8337 self
->attrs
[COLOR_nitc__typing__ASendReassignFormExpr___write_callsite
].val
= var_wcallsite
; /* _write_callsite on <self:ASendReassignFormExpr> */
8338 RET_LABEL66
:(void)0;
8342 { /* Inline typing#CallSite#msignature (var_wcallsite) on <var_wcallsite:nullable CallSite(CallSite)> */
8343 var69
= var_wcallsite
->attrs
[COLOR_nitc__typing__CallSite___msignature
].val
; /* _msignature on <var_wcallsite:nullable CallSite(CallSite)> */
8344 if (unlikely(var69
== NULL
)) {
8345 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _msignature");
8346 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 660);
8350 RET_LABEL68
:(void)0;
8354 { /* Inline model#MSignature#mparameters (var67) on <var67:MSignature> */
8355 var72
= var67
->attrs
[COLOR_nitc__model__MSignature___mparameters
].val
; /* _mparameters on <var67:MSignature> */
8356 if (unlikely(var72
== NULL
)) {
8357 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mparameters");
8358 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1783);
8362 RET_LABEL71
:(void)0;
8366 var73
= core___core__SequenceRead___last(var70
);
8369 { /* Inline model#MParameter#mtype (var73) on <var73:nullable Object(MParameter)> */
8370 var76
= var73
->attrs
[COLOR_nitc__model__MParameter___mtype
].val
; /* _mtype on <var73:nullable Object(MParameter)> */
8371 if (unlikely(var76
== NULL
)) {
8372 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mtype");
8373 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 1900);
8377 RET_LABEL75
:(void)0;
8381 var77
= nitc__typing___AReassignFormExpr___resolve_reassignment(self
, var_v
, var_readtype
, var74
);
8384 if (var_wtype
== NULL
) {
8385 var78
= 1; /* is null */
8387 var78
= 0; /* arg is null but recv is not */
8390 { /* Inline kernel#Object#== (var_wtype,((val*)NULL)) on <var_wtype:nullable MType> */
8391 var_other
= ((val
*)NULL
);
8393 { /* Inline kernel#Object#is_same_instance (var_wtype,var_other) on <var_wtype:nullable MType(MType)> */
8394 var83
= var_wtype
== var_other
;
8397 RET_LABEL82
:(void)0;
8402 RET_LABEL80
:(void)0;
8411 var84
= core__array___Collection___to_a(var_args
);
8415 { /* Inline parser_nodes#AReassignFormExpr#n_value (self) on <self:ASendReassignFormExpr> */
8416 var87
= self
->attrs
[COLOR_nitc__parser_nodes__AReassignFormExpr___n_value
].val
; /* _n_value on <self:ASendReassignFormExpr> */
8417 if (unlikely(var87
== NULL
)) {
8418 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
8419 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2003);
8423 RET_LABEL86
:(void)0;
8427 core___core__Array___core__abstract_collection__SimpleCollection__add(var_args
, var85
); /* Direct call array#Array#add on <var_args:Array[AExpr]>*/
8430 var88
= nitc___nitc__CallSite___check_signature(var_wcallsite
, var_v
, var_node
, var_args
);
8433 { /* Inline typing#AExpr#is_typed= (self,1) on <self:ASendReassignFormExpr> */
8434 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:ASendReassignFormExpr> */
8435 RET_LABEL89
:(void)0;
8440 /* method typing#ACallReassignExpr#property_name for (self: ACallReassignExpr): String */
8441 val
* nitc__typing___ACallReassignExpr___ASendExpr__property_name(val
* self
) {
8442 val
* var
/* : String */;
8443 val
* var1
/* : AQid */;
8444 val
* var3
/* : AQid */;
8445 val
* var4
/* : TId */;
8446 val
* var6
/* : TId */;
8447 val
* var7
/* : String */;
8449 { /* Inline parser_nodes#ACallFormExpr#n_qid (self) on <self:ACallReassignExpr> */
8450 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_qid
].val
; /* _n_qid on <self:ACallReassignExpr> */
8451 if (unlikely(var3
== NULL
)) {
8452 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_qid");
8453 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2296);
8461 { /* Inline parser_nodes#AQid#n_id (var1) on <var1:AQid> */
8462 var6
= var1
->attrs
[COLOR_nitc__parser_nodes__AQid___n_id
].val
; /* _n_id on <var1:AQid> */
8463 if (unlikely(var6
== NULL
)) {
8464 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
8465 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1658);
8473 var7
= nitc__lexer_work___Token___text(var4
);
8480 /* method typing#ACallReassignExpr#property_node for (self: ACallReassignExpr): ANode */
8481 val
* nitc__typing___ACallReassignExpr___ASendExpr__property_node(val
* self
) {
8482 val
* var
/* : ANode */;
8483 val
* var1
/* : AQid */;
8484 val
* var3
/* : AQid */;
8485 val
* var4
/* : TId */;
8486 val
* var6
/* : TId */;
8488 { /* Inline parser_nodes#ACallFormExpr#n_qid (self) on <self:ACallReassignExpr> */
8489 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_qid
].val
; /* _n_qid on <self:ACallReassignExpr> */
8490 if (unlikely(var3
== NULL
)) {
8491 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_qid");
8492 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2296);
8500 { /* Inline parser_nodes#AQid#n_id (var1) on <var1:AQid> */
8501 var6
= var1
->attrs
[COLOR_nitc__parser_nodes__AQid___n_id
].val
; /* _n_id on <var1:AQid> */
8502 if (unlikely(var6
== NULL
)) {
8503 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
8504 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1658);
8516 /* method typing#ACallReassignExpr#compute_raw_arguments for (self: ACallReassignExpr): Array[AExpr] */
8517 val
* nitc__typing___ACallReassignExpr___ASendExpr__compute_raw_arguments(val
* self
) {
8518 val
* var
/* : Array[AExpr] */;
8519 val
* var1
/* : AExprs */;
8520 val
* var3
/* : AExprs */;
8521 val
* var4
/* : Array[AExpr] */;
8523 { /* Inline parser_nodes#ACallFormExpr#n_args (self) on <self:ACallReassignExpr> */
8524 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ACallFormExpr___n_args
].val
; /* _n_args on <self:ACallReassignExpr> */
8525 if (unlikely(var3
== NULL
)) {
8526 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
8527 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2299);
8535 var4
= nitc__typing___AExprs___to_a(var1
);
8542 /* method typing#ABraReassignExpr#property_name for (self: ABraReassignExpr): String */
8543 val
* nitc__typing___ABraReassignExpr___ASendExpr__property_name(val
* self
) {
8544 val
* var
/* : String */;
8545 static val
* varonce
;
8546 val
* var1
/* : String */;
8547 char* var2
/* : NativeString */;
8548 val
* var3
/* : String */;
8549 if (likely(varonce
!=NULL
)) {
8553 var3
= core__flat___NativeString___to_s_full(var2
, 2l, 2l);
8562 /* method typing#ABraReassignExpr#compute_raw_arguments for (self: ABraReassignExpr): Array[AExpr] */
8563 val
* nitc__typing___ABraReassignExpr___ASendExpr__compute_raw_arguments(val
* self
) {
8564 val
* var
/* : Array[AExpr] */;
8565 val
* var1
/* : AExprs */;
8566 val
* var3
/* : AExprs */;
8567 val
* var4
/* : Array[AExpr] */;
8569 { /* Inline parser_nodes#ABraFormExpr#n_args (self) on <self:ABraReassignExpr> */
8570 var3
= self
->attrs
[COLOR_nitc__parser_nodes__ABraFormExpr___n_args
].val
; /* _n_args on <self:ABraReassignExpr> */
8571 if (unlikely(var3
== NULL
)) {
8572 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
8573 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2368);
8581 var4
= nitc__typing___AExprs___to_a(var1
);
8588 /* method typing#AInitExpr#property_name for (self: AInitExpr): String */
8589 val
* nitc__typing___AInitExpr___ASendExpr__property_name(val
* self
) {
8590 val
* var
/* : String */;
8591 static val
* varonce
;
8592 val
* var1
/* : String */;
8593 char* var2
/* : NativeString */;
8594 val
* var3
/* : String */;
8595 if (likely(varonce
!=NULL
)) {
8599 var3
= core__flat___NativeString___to_s_full(var2
, 4l, 4l);
8608 /* method typing#AInitExpr#property_node for (self: AInitExpr): ANode */
8609 val
* nitc__typing___AInitExpr___ASendExpr__property_node(val
* self
) {
8610 val
* var
/* : ANode */;
8611 val
* var1
/* : TKwinit */;
8612 val
* var3
/* : TKwinit */;
8614 { /* Inline parser_nodes#AInitExpr#n_kwinit (self) on <self:AInitExpr> */
8615 var3
= self
->attrs
[COLOR_nitc__parser_nodes__AInitExpr___n_kwinit
].val
; /* _n_kwinit on <self:AInitExpr> */
8616 if (unlikely(var3
== NULL
)) {
8617 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_kwinit");
8618 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2357);
8630 /* method typing#AInitExpr#compute_raw_arguments for (self: AInitExpr): Array[AExpr] */
8631 val
* nitc__typing___AInitExpr___ASendExpr__compute_raw_arguments(val
* self
) {
8632 val
* var
/* : Array[AExpr] */;
8633 val
* var1
/* : AExprs */;
8634 val
* var3
/* : AExprs */;
8635 val
* var4
/* : Array[AExpr] */;
8637 { /* Inline parser_nodes#AInitExpr#n_args (self) on <self:AInitExpr> */
8638 var3
= self
->attrs
[COLOR_nitc__parser_nodes__AInitExpr___n_args
].val
; /* _n_args on <self:AInitExpr> */
8639 if (unlikely(var3
== NULL
)) {
8640 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
8641 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2360);
8649 var4
= nitc__typing___AExprs___to_a(var1
);
8656 /* method typing#AExprs#to_a for (self: AExprs): Array[AExpr] */
8657 val
* nitc__typing___AExprs___to_a(val
* self
) {
8658 val
* var
/* : Array[AExpr] */;
8659 val
* var1
/* : ANodes[AExpr] */;
8660 val
* var3
/* : ANodes[AExpr] */;
8661 val
* var4
/* : Array[nullable Object] */;
8663 { /* Inline parser_nodes#AExprs#n_exprs (self) on <self:AExprs> */
8664 var3
= self
->attrs
[COLOR_nitc__parser_nodes__AExprs___n_exprs
].val
; /* _n_exprs on <self:AExprs> */
8665 if (unlikely(var3
== NULL
)) {
8666 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs");
8667 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2709);
8675 var4
= core__array___Collection___to_a(var1
);
8682 /* method typing#ASuperExpr#callsite for (self: ASuperExpr): nullable CallSite */
8683 val
* nitc__typing___ASuperExpr___callsite(val
* self
) {
8684 val
* var
/* : nullable CallSite */;
8685 val
* var1
/* : nullable CallSite */;
8686 var1
= self
->attrs
[COLOR_nitc__typing__ASuperExpr___callsite
].val
; /* _callsite on <self:ASuperExpr> */
8691 /* method typing#ASuperExpr#callsite= for (self: ASuperExpr, nullable CallSite) */
8692 void nitc__typing___ASuperExpr___callsite_61d(val
* self
, val
* p0
) {
8693 self
->attrs
[COLOR_nitc__typing__ASuperExpr___callsite
].val
= p0
; /* _callsite on <self:ASuperExpr> */
8696 /* method typing#ASuperExpr#mpropdef for (self: ASuperExpr): nullable MMethodDef */
8697 val
* nitc__typing___ASuperExpr___mpropdef(val
* self
) {
8698 val
* var
/* : nullable MMethodDef */;
8699 val
* var1
/* : nullable MMethodDef */;
8700 var1
= self
->attrs
[COLOR_nitc__typing__ASuperExpr___mpropdef
].val
; /* _mpropdef on <self:ASuperExpr> */
8705 /* method typing#ASuperExpr#mpropdef= for (self: ASuperExpr, nullable MMethodDef) */
8706 void nitc__typing___ASuperExpr___mpropdef_61d(val
* self
, val
* p0
) {
8707 self
->attrs
[COLOR_nitc__typing__ASuperExpr___mpropdef
].val
= p0
; /* _mpropdef on <self:ASuperExpr> */
8710 /* method typing#ASuperExpr#accept_typing for (self: ASuperExpr, TypeVisitor) */
8711 void nitc__typing___ASuperExpr___AExpr__accept_typing(val
* self
, val
* p0
) {
8712 val
* var_v
/* var v: TypeVisitor */;
8713 val
* var
/* : nullable MClassType */;
8714 val
* var2
/* : nullable MClassType */;
8715 val
* var_anchor
/* var anchor: nullable MClassType */;
8716 short int var3
/* : Bool */;
8717 short int var4
/* : Bool */;
8718 val
* var_other
/* var other: nullable Object */;
8719 short int var6
/* : Bool */;
8720 short int var7
/* : Bool */;
8721 val
* var8
/* : Variable */;
8722 val
* var10
/* : Variable */;
8723 val
* var11
/* : nullable MType */;
8724 val
* var_recvtype
/* var recvtype: nullable MType */;
8725 short int var12
/* : Bool */;
8726 short int var13
/* : Bool */;
8727 short int var15
/* : Bool */;
8728 short int var16
/* : Bool */;
8729 val
* var17
/* : nullable MPropDef */;
8730 val
* var19
/* : nullable MPropDef */;
8731 val
* var20
/* : MProperty */;
8732 val
* var22
/* : MProperty */;
8733 val
* var_mproperty
/* var mproperty: MProperty */;
8734 short int var23
/* : Bool */;
8737 short int var24
/* : Bool */;
8738 static val
* varonce
;
8739 val
* var25
/* : String */;
8740 char* var26
/* : NativeString */;
8741 val
* var27
/* : String */;
8742 val
* var28
/* : MModule */;
8743 val
* var30
/* : MModule */;
8744 val
* var31
/* : Array[MPropDef] */;
8745 val
* var_superprops
/* var superprops: Array[MMethodDef] */;
8746 long var32
/* : Int */;
8747 long var34
/* : Int */;
8748 short int var35
/* : Bool */;
8749 short int var37
/* : Bool */;
8750 short int var38
/* : Bool */;
8751 short int var39
/* : Bool */;
8752 short int var41
/* : Bool */;
8753 short int var_
/* var : Bool */;
8754 val
* var42
/* : nullable MPropDef */;
8755 val
* var44
/* : nullable MPropDef */;
8756 short int var45
/* : Bool */;
8757 val
* var47
/* : NativeArray[String] */;
8758 static val
* varonce46
;
8759 static val
* varonce48
;
8760 val
* var49
/* : String */;
8761 char* var50
/* : NativeString */;
8762 val
* var51
/* : String */;
8763 static val
* varonce52
;
8764 val
* var53
/* : String */;
8765 char* var54
/* : NativeString */;
8766 val
* var55
/* : String */;
8767 val
* var56
/* : String */;
8768 val
* var57
/* : String */;
8769 val
* var58
/* : nullable Object */;
8770 val
* var_superprop
/* var superprop: MMethodDef */;
8771 val
* var59
/* : nullable MSignature */;
8772 val
* var61
/* : nullable MSignature */;
8773 val
* var_msignature
/* var msignature: MSignature */;
8774 val
* var62
/* : MType */;
8775 short int var63
/* : Bool */;
8778 const char* var_class_name
;
8779 val
* var66
/* : AExprs */;
8780 val
* var68
/* : AExprs */;
8781 val
* var69
/* : Array[AExpr] */;
8782 val
* var_args
/* var args: Array[AExpr] */;
8783 long var70
/* : Int */;
8784 long var72
/* : Int */;
8785 short int var73
/* : Bool */;
8786 short int var75
/* : Bool */;
8789 const char* var_class_name78
;
8790 short int var79
/* : Bool */;
8791 val
* var80
/* : nullable SignatureMap */;
8792 val
* var82
/* : nullable MType */;
8793 val
* var84
/* : nullable MType */;
8794 val
* var87
/* : nullable MPropDef */;
8795 val
* var89
/* : nullable MPropDef */;
8796 val
* var91
/* : nullable MPropDef */;
8797 val
* var93
/* : nullable MPropDef */;
8798 short int var94
/* : Bool */;
8801 const char* var_class_name97
;
8804 { /* Inline typing#TypeVisitor#anchor (var_v) on <var_v:TypeVisitor> */
8805 var2
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___anchor
].val
; /* _anchor on <var_v:TypeVisitor> */
8811 if (var_anchor
== NULL
) {
8812 var3
= 0; /* is null */
8814 var3
= 1; /* arg is null and recv is not */
8817 { /* Inline kernel#Object#!= (var_anchor,((val*)NULL)) on <var_anchor:nullable MClassType> */
8818 var_other
= ((val
*)NULL
);
8820 var6
= ((short int(*)(val
* self
, val
* p0
))(var_anchor
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_anchor
, var_other
); /* == on <var_anchor:nullable MClassType(MClassType)>*/
8829 if (unlikely(!var3
)) {
8830 PRINT_ERROR("Runtime error: %s", "Assert failed");
8831 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1930);
8835 { /* Inline typing#TypeVisitor#selfvariable (var_v) on <var_v:TypeVisitor> */
8836 var10
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___selfvariable
].val
; /* _selfvariable on <var_v:TypeVisitor> */
8837 if (unlikely(var10
== NULL
)) {
8838 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _selfvariable");
8839 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 51);
8847 var11
= nitc__typing___nitc__typing__TypeVisitor___get_variable(var_v
, self
, var8
);
8849 var_recvtype
= var11
;
8850 if (var_recvtype
== NULL
) {
8851 var12
= 0; /* is null */
8853 var12
= 1; /* arg is null and recv is not */
8856 { /* Inline kernel#Object#!= (var_recvtype,((val*)NULL)) on <var_recvtype:nullable MType> */
8857 var_other
= ((val
*)NULL
);
8859 var15
= ((short int(*)(val
* self
, val
* p0
))(var_recvtype
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_recvtype
, var_other
); /* == on <var_recvtype:nullable MType(MType)>*/
8864 RET_LABEL14
:(void)0;
8868 if (unlikely(!var12
)) {
8869 PRINT_ERROR("Runtime error: %s", "Assert failed");
8870 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1932);
8874 { /* Inline typing#TypeVisitor#mpropdef (var_v) on <var_v:TypeVisitor> */
8875 var19
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___mpropdef
].val
; /* _mpropdef on <var_v:TypeVisitor> */
8877 RET_LABEL18
:(void)0;
8880 if (var17
== NULL
) {
8881 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8882 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1933);
8885 { /* Inline model#MPropDef#mproperty (var17) on <var17:nullable MPropDef> */
8886 if (unlikely(var17
== NULL
)) {
8887 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8888 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
8891 var22
= var17
->attrs
[COLOR_nitc__model__MPropDef___mproperty
].val
; /* _mproperty on <var17:nullable MPropDef> */
8892 if (unlikely(var22
== NULL
)) {
8893 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mproperty");
8894 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__model
, 2230);
8898 RET_LABEL21
:(void)0;
8901 var_mproperty
= var20
;
8902 /* <var_mproperty:MProperty> isa MMethod */
8903 cltype
= type_nitc__MMethod
.color
;
8904 idtype
= type_nitc__MMethod
.id
;
8905 if(cltype
>= var_mproperty
->type
->table_size
) {
8908 var23
= var_mproperty
->type
->type_table
[cltype
] == idtype
;
8912 if (likely(varonce
!=NULL
)) {
8915 var26
= "Error: `super` only usable in a `method`.";
8916 var27
= core__flat___NativeString___to_s_full(var26
, 41l, 41l);
8921 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var25
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
8927 { /* Inline typing#TypeVisitor#mmodule (var_v) on <var_v:TypeVisitor> */
8928 var30
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___mmodule
].val
; /* _mmodule on <var_v:TypeVisitor> */
8929 if (unlikely(var30
== NULL
)) {
8930 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _mmodule");
8931 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 37);
8935 RET_LABEL29
:(void)0;
8939 var31
= nitc___nitc__MProperty___lookup_super_definitions(var_mproperty
, var28
, var_anchor
);
8941 var_superprops
= var31
;
8943 { /* Inline array#AbstractArrayRead#length (var_superprops) on <var_superprops:Array[MMethodDef]> */
8944 var34
= var_superprops
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_superprops:Array[MMethodDef]> */
8946 RET_LABEL33
:(void)0;
8950 { /* Inline kernel#Int#== (var32,0l) on <var32:Int> */
8951 var37
= var32
== 0l;
8954 RET_LABEL36
:(void)0;
8959 { /* Inline model#MMethod#is_init (var_mproperty) on <var_mproperty:MProperty(MMethod)> */
8960 var41
= var_mproperty
->attrs
[COLOR_nitc__model__MMethod___is_init
].s
; /* _is_init on <var_mproperty:MProperty(MMethod)> */
8962 RET_LABEL40
:(void)0;
8968 { /* Inline typing#TypeVisitor#mpropdef (var_v) on <var_v:TypeVisitor> */
8969 var44
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___mpropdef
].val
; /* _mpropdef on <var_v:TypeVisitor> */
8971 RET_LABEL43
:(void)0;
8974 if (var42
== NULL
) {
8975 PRINT_ERROR("Runtime error: %s", "Receiver is null");
8976 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1940);
8979 var45
= nitc___nitc__MPropDef___is_intro(var42
);
8987 nitc__typing___ASuperExpr___process_superinit(self
, var_v
); /* Direct call typing#ASuperExpr#process_superinit on <self:ASuperExpr>*/
8992 if (unlikely(varonce46
==NULL
)) {
8993 var47
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
8994 if (likely(varonce48
!=NULL
)) {
8997 var50
= "Error: no super method to call for `";
8998 var51
= core__flat___NativeString___to_s_full(var50
, 36l, 36l);
9002 ((struct instance_core__NativeArray
*)var47
)->values
[0]=var49
;
9003 if (likely(varonce52
!=NULL
)) {
9007 var55
= core__flat___NativeString___to_s_full(var54
, 2l, 2l);
9011 ((struct instance_core__NativeArray
*)var47
)->values
[2]=var53
;
9017 var56
= ((val
*(*)(val
* self
))(var_mproperty
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_mproperty
); /* to_s on <var_mproperty:MProperty(MMethod)>*/
9019 ((struct instance_core__NativeArray
*)var47
)->values
[1]=var56
;
9021 var57
= ((val
*(*)(val
* self
))(var47
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var47
); /* native_to_s on <var47:NativeArray[String]>*/
9025 nitc__typing___nitc__typing__TypeVisitor___error(var_v
, self
, var57
); /* Direct call typing#TypeVisitor#error on <var_v:TypeVisitor>*/
9031 var58
= core___core__SequenceRead___Collection__first(var_superprops
);
9033 var_superprop
= var58
;
9035 { /* Inline model#MMethodDef#msignature (var_superprop) on <var_superprop:MMethodDef> */
9036 var61
= var_superprop
->attrs
[COLOR_nitc__model__MMethodDef___msignature
].val
; /* _msignature on <var_superprop:MMethodDef> */
9038 RET_LABEL60
:(void)0;
9041 if (unlikely(var59
== NULL
)) {
9042 PRINT_ERROR("Runtime error: %s", "Cast failed");
9043 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1950);
9046 var_msignature
= var59
;
9048 var62
= nitc__typing___nitc__typing__TypeVisitor___resolve_for(var_v
, var_msignature
, var_recvtype
, 1);
9050 /* <var62:MType> isa MSignature */
9051 cltype64
= type_nitc__MSignature
.color
;
9052 idtype65
= type_nitc__MSignature
.id
;
9053 if(cltype64
>= var62
->type
->table_size
) {
9056 var63
= var62
->type
->type_table
[cltype64
] == idtype65
;
9058 if (unlikely(!var63
)) {
9059 var_class_name
= var62
== NULL ?
"null" : var62
->type
->name
;
9060 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MSignature", var_class_name
);
9061 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1951);
9064 var_msignature
= var62
;
9066 { /* Inline parser_nodes#ASuperExpr#n_args (self) on <self:ASuperExpr> */
9067 var68
= self
->attrs
[COLOR_nitc__parser_nodes__ASuperExpr___n_args
].val
; /* _n_args on <self:ASuperExpr> */
9068 if (unlikely(var68
== NULL
)) {
9069 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
9070 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 2348);
9074 RET_LABEL67
:(void)0;
9078 var69
= nitc__typing___AExprs___to_a(var66
);
9082 { /* Inline array#AbstractArrayRead#length (var_args) on <var_args:Array[AExpr]> */
9083 var72
= var_args
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_args:Array[AExpr]> */
9085 RET_LABEL71
:(void)0;
9089 { /* Inline kernel#Int#> (var70,0l) on <var70:Int> */
9090 /* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
9091 /* <0l:Int> isa OTHER */
9092 var75
= 1; /* easy <0l:Int> isa OTHER*/
9093 if (unlikely(!var75
)) {
9094 var_class_name78
= type_core__Int
.name
;
9095 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name78
);
9096 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 730);
9102 RET_LABEL74
:(void)0;
9107 var80
= nitc__typing___nitc__typing__TypeVisitor___check_signature(var_v
, self
, var_args
, var_mproperty
, var_msignature
);
9110 { /* Inline typing#ASuperExpr#signaturemap= (self,var80) on <self:ASuperExpr> */
9111 self
->attrs
[COLOR_nitc__typing__ASuperExpr___signaturemap
].val
= var80
; /* _signaturemap on <self:ASuperExpr> */
9112 RET_LABEL81
:(void)0;
9118 { /* Inline model#MSignature#return_mtype (var_msignature) on <var_msignature:MSignature> */
9119 var84
= var_msignature
->attrs
[COLOR_nitc__model__MSignature___return_mtype
].val
; /* _return_mtype on <var_msignature:MSignature> */
9121 RET_LABEL83
:(void)0;
9125 { /* Inline typing#AExpr#mtype= (self,var82) on <self:ASuperExpr> */
9126 self
->attrs
[COLOR_nitc__typing__AExpr___mtype
].val
= var82
; /* _mtype on <self:ASuperExpr> */
9127 RET_LABEL85
:(void)0;
9131 { /* Inline typing#AExpr#is_typed= (self,1) on <self:ASuperExpr> */
9132 self
->attrs
[COLOR_nitc__typing__AExpr___is_typed
].s
= 1; /* _is_typed on <self:ASuperExpr> */
9133 RET_LABEL86
:(void)0;
9137 { /* Inline typing#TypeVisitor#mpropdef (var_v) on <var_v:TypeVisitor> */
9138 var89
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___mpropdef
].val
; /* _mpropdef on <var_v:TypeVisitor> */
9140 RET_LABEL88
:(void)0;
9143 if (var87
== NULL
) {
9144 PRINT_ERROR("Runtime error: %s", "Receiver is null");
9145 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1958);
9148 { /* Inline modelize_property#MPropDef#has_supercall= (var87,1) on <var87:nullable MPropDef> */
9149 if (unlikely(var87
== NULL
)) {
9150 PRINT_ERROR("Runtime error: %s", "Receiver is null");
9151 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__modelize_property
, 483);
9154 var87
->attrs
[COLOR_nitc__modelize_property__MPropDef___has_supercall
].s
= 1; /* _has_supercall on <var87:nullable MPropDef> */
9155 RET_LABEL90
:(void)0;
9159 { /* Inline typing#TypeVisitor#mpropdef (var_v) on <var_v:TypeVisitor> */
9160 var93
= var_v
->attrs
[COLOR_nitc__typing__TypeVisitor___mpropdef
].val
; /* _mpropdef on <var_v:TypeVisitor> */
9162 RET_LABEL92
:(void)0;
9165 /* <var91:nullable MPropDef> isa MMethodDef */
9166 cltype95
= type_nitc__MMethodDef
.color
;
9167 idtype96
= type_nitc__MMethodDef
.id
;
9171 if(cltype95
>= var91
->type
->table_size
) {
9174 var94
= var91
->type
->type_table
[cltype95
] == idtype96
;
9177 if (unlikely(!var94
)) {
9178 var_class_name97
= var91
== NULL ?
"null" : var91
->type
->name
;
9179 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "MMethodDef", var_class_name97
);
9180 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__typing
, 1959);
9184 { /* Inline typing#ASuperExpr#mpropdef= (self,var91) on <self:ASuperExpr> */
9185 self
->attrs
[COLOR_nitc__typing__ASuperExpr___mpropdef
].val
= var91
; /* _mpropdef on <self:ASuperExpr> */
9186 RET_LABEL98
:(void)0;
9191 /* method typing#ASuperExpr#signaturemap for (self: ASuperExpr): nullable SignatureMap */
9192 val
* nitc__typing___ASuperExpr___signaturemap(val
* self
) {
9193 val
* var
/* : nullable SignatureMap */;
9194 val
* var1
/* : nullable SignatureMap */;
9195 var1
= self
->attrs
[COLOR_nitc__typing__ASuperExpr___signaturemap
].val
; /* _signaturemap on <self:ASuperExpr> */
9200 /* method typing#ASuperExpr#signaturemap= for (self: ASuperExpr, nullable SignatureMap) */
9201 void nitc__typing___ASuperExpr___signaturemap_61d(val
* self
, val
* p0
) {
9202 self
->attrs
[COLOR_nitc__typing__ASuperExpr___signaturemap
].val
= p0
; /* _signaturemap on <self:ASuperExpr> */