1 #include "nit__scope.sep.0.h"
2 /* method scope#ToolContext#scope_phase for (self: ToolContext): Phase */
3 val
* nit__scope___ToolContext___scope_phase(val
* self
) {
4 val
* var
/* : Phase */;
5 val
* var1
/* : Phase */;
6 var1
= self
->attrs
[COLOR_nit__scope__ToolContext___scope_phase
].val
; /* _scope_phase on <self:ToolContext> */
7 if (unlikely(var1
== NULL
)) {
8 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scope_phase");
9 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 23);
16 /* method scope#ScopePhase#process_npropdef for (self: ScopePhase, APropdef) */
17 void nit__scope___nit__scope__ScopePhase___nit__phase__Phase__process_npropdef(val
* self
, val
* p0
) {
18 val
* var_npropdef
/* var npropdef: APropdef */;
19 val
* var
/* : ToolContext */;
20 val
* var2
/* : ToolContext */;
23 { /* Inline phase#Phase#toolcontext (self) on <self:ScopePhase> */
24 var2
= self
->attrs
[COLOR_nit__phase__Phase___toolcontext
].val
; /* _toolcontext on <self:ScopePhase> */
25 if (unlikely(var2
== NULL
)) {
26 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
27 PRINT_ERROR(" (%s:%d)\n", FILE_nit__phase
, 200);
35 nit__scope___APropdef___do_scope(var_npropdef
, var
); /* Direct call scope#APropdef#do_scope on <var_npropdef:APropdef>*/
39 /* method scope#Variable#name for (self: Variable): String */
40 val
* nit___nit__Variable___name(val
* self
) {
41 val
* var
/* : String */;
42 val
* var1
/* : String */;
43 var1
= self
->attrs
[COLOR_nit__scope__Variable___name
].val
; /* _name on <self:Variable> */
44 if (unlikely(var1
== NULL
)) {
45 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
46 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 35);
53 /* method scope#Variable#name= for (self: Variable, String) */
54 void nit___nit__Variable___name_61d(val
* self
, val
* p0
) {
55 self
->attrs
[COLOR_nit__scope__Variable___name
].val
= p0
; /* _name on <self:Variable> */
58 /* method scope#Variable#to_s for (self: Variable): String */
59 val
* nit___nit__Variable___standard__string__Object__to_s(val
* self
) {
60 val
* var
/* : String */;
61 val
* var1
/* : String */;
62 val
* var3
/* : String */;
64 { /* Inline scope#Variable#name (self) on <self:Variable> */
65 var3
= self
->attrs
[COLOR_nit__scope__Variable___name
].val
; /* _name on <self:Variable> */
66 if (unlikely(var3
== NULL
)) {
67 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
68 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 35);
80 /* method scope#Variable#location for (self: Variable): nullable Location */
81 val
* nit___nit__Variable___location(val
* self
) {
82 val
* var
/* : nullable Location */;
83 val
* var1
/* : nullable Location */;
84 var1
= self
->attrs
[COLOR_nit__scope__Variable___location
].val
; /* _location on <self:Variable> */
89 /* method scope#Variable#location= for (self: Variable, nullable Location) */
90 void nit___nit__Variable___location_61d(val
* self
, val
* p0
) {
91 self
->attrs
[COLOR_nit__scope__Variable___location
].val
= p0
; /* _location on <self:Variable> */
94 /* method scope#Variable#warn_unread for (self: Variable): Bool */
95 short int nit___nit__Variable___warn_unread(val
* self
) {
96 short int var
/* : Bool */;
97 short int var1
/* : Bool */;
98 var1
= self
->attrs
[COLOR_nit__scope__Variable___warn_unread
].s
; /* _warn_unread on <self:Variable> */
103 /* method scope#Variable#warn_unread= for (self: Variable, Bool) */
104 void nit___nit__Variable___warn_unread_61d(val
* self
, short int p0
) {
105 self
->attrs
[COLOR_nit__scope__Variable___warn_unread
].s
= p0
; /* _warn_unread on <self:Variable> */
108 /* method scope#Variable#init for (self: Variable) */
109 void nit___nit__Variable___standard__kernel__Object__init(val
* self
) {
111 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nit___nit__Variable___standard__kernel__Object__init
]))(self
); /* init on <self:Variable>*/
115 /* method scope#EscapeMark#name for (self: EscapeMark): nullable String */
116 val
* nit___nit__EscapeMark___name(val
* self
) {
117 val
* var
/* : nullable String */;
118 val
* var1
/* : nullable String */;
119 var1
= self
->attrs
[COLOR_nit__scope__EscapeMark___name
].val
; /* _name on <self:EscapeMark> */
124 /* method scope#EscapeMark#name= for (self: EscapeMark, nullable String) */
125 void nit___nit__EscapeMark___name_61d(val
* self
, val
* p0
) {
126 self
->attrs
[COLOR_nit__scope__EscapeMark___name
].val
= p0
; /* _name on <self:EscapeMark> */
129 /* method scope#EscapeMark#continue_mark for (self: EscapeMark): nullable EscapeMark */
130 val
* nit___nit__EscapeMark___continue_mark(val
* self
) {
131 val
* var
/* : nullable EscapeMark */;
132 val
* var1
/* : nullable EscapeMark */;
133 var1
= self
->attrs
[COLOR_nit__scope__EscapeMark___continue_mark
].val
; /* _continue_mark on <self:EscapeMark> */
138 /* method scope#EscapeMark#continue_mark= for (self: EscapeMark, nullable EscapeMark) */
139 void nit___nit__EscapeMark___continue_mark_61d(val
* self
, val
* p0
) {
140 self
->attrs
[COLOR_nit__scope__EscapeMark___continue_mark
].val
= p0
; /* _continue_mark on <self:EscapeMark> */
143 /* method scope#EscapeMark#escapes for (self: EscapeMark): Array[AEscapeExpr] */
144 val
* nit___nit__EscapeMark___escapes(val
* self
) {
145 val
* var
/* : Array[AEscapeExpr] */;
146 val
* var1
/* : Array[AEscapeExpr] */;
147 var1
= self
->attrs
[COLOR_nit__scope__EscapeMark___escapes
].val
; /* _escapes on <self:EscapeMark> */
148 if (unlikely(var1
== NULL
)) {
149 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _escapes");
150 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 58);
157 /* method scope#EscapeMark#init for (self: EscapeMark) */
158 void nit___nit__EscapeMark___standard__kernel__Object__init(val
* self
) {
160 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nit___nit__EscapeMark___standard__kernel__Object__init
]))(self
); /* init on <self:EscapeMark>*/
164 /* method scope#ScopeVisitor#toolcontext for (self: ScopeVisitor): ToolContext */
165 val
* nit__scope___nit__scope__ScopeVisitor___toolcontext(val
* self
) {
166 val
* var
/* : ToolContext */;
167 val
* var1
/* : ToolContext */;
168 var1
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___toolcontext
].val
; /* _toolcontext on <self:ScopeVisitor> */
169 if (unlikely(var1
== NULL
)) {
170 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
171 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 70);
178 /* method scope#ScopeVisitor#toolcontext= for (self: ScopeVisitor, ToolContext) */
179 void nit__scope___nit__scope__ScopeVisitor___toolcontext_61d(val
* self
, val
* p0
) {
180 self
->attrs
[COLOR_nit__scope__ScopeVisitor___toolcontext
].val
= p0
; /* _toolcontext on <self:ScopeVisitor> */
183 /* method scope#ScopeVisitor#selfvariable for (self: ScopeVisitor): Variable */
184 val
* nit__scope___nit__scope__ScopeVisitor___selfvariable(val
* self
) {
185 val
* var
/* : Variable */;
186 val
* var1
/* : Variable */;
187 var1
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___selfvariable
].val
; /* _selfvariable on <self:ScopeVisitor> */
188 if (unlikely(var1
== NULL
)) {
189 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _selfvariable");
190 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 73);
197 /* method scope#ScopeVisitor#init for (self: ScopeVisitor) */
198 void nit__scope___nit__scope__ScopeVisitor___standard__kernel__Object__init(val
* self
) {
199 val
* var
/* : List[Scope] */;
200 val
* var2
/* : List[Scope] */;
201 val
* var3
/* : Scope */;
203 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nit__scope___nit__scope__ScopeVisitor___standard__kernel__Object__init
]))(self
); /* init on <self:ScopeVisitor>*/
206 { /* Inline scope#ScopeVisitor#scopes (self) on <self:ScopeVisitor> */
207 var2
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <self:ScopeVisitor> */
208 if (unlikely(var2
== NULL
)) {
209 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
210 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
217 var3
= NEW_nit__scope__Scope(&type_nit__scope__Scope
);
219 { /* Inline kernel#Object#init (var3) on <var3:Scope> */
224 standard___standard__Sequence___SimpleCollection__add(var
, var3
); /* Direct call abstract_collection#Sequence#add on <var:List[Scope]>*/
228 /* method scope#ScopeVisitor#scopes for (self: ScopeVisitor): List[Scope] */
229 val
* nit__scope___nit__scope__ScopeVisitor___scopes(val
* self
) {
230 val
* var
/* : List[Scope] */;
231 val
* var1
/* : List[Scope] */;
232 var1
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <self:ScopeVisitor> */
233 if (unlikely(var1
== NULL
)) {
234 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
235 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
242 /* method scope#ScopeVisitor#shift_scope for (self: ScopeVisitor) */
243 void nit__scope___nit__scope__ScopeVisitor___shift_scope(val
* self
) {
244 val
* var
/* : List[Scope] */;
245 val
* var2
/* : List[Scope] */;
246 short int var3
/* : Bool */;
247 short int var4
/* : Bool */;
248 val
* var5
/* : List[Scope] */;
249 val
* var7
/* : List[Scope] */;
250 val
* var8
/* : nullable Object */;
251 val
* var_scope
/* var scope: Scope */;
252 val
* var9
/* : HashMap[String, Variable] */;
253 val
* var11
/* : HashMap[String, Variable] */;
254 val
* var12
/* : RemovableCollection[nullable Object] */;
255 val
* var_
/* var : RemovableCollection[Variable] */;
256 val
* var13
/* : Iterator[nullable Object] */;
257 val
* var_14
/* var : Iterator[Variable] */;
258 short int var15
/* : Bool */;
259 val
* var16
/* : nullable Object */;
260 val
* var_v
/* var v: Variable */;
261 short int var17
/* : Bool */;
262 short int var19
/* : Bool */;
263 val
* var20
/* : ToolContext */;
264 val
* var22
/* : ToolContext */;
265 val
* var23
/* : nullable Location */;
266 val
* var25
/* : nullable Location */;
268 val
* var26
/* : String */;
269 char* var27
/* : NativeString */;
270 val
* var28
/* : FlatString */;
271 val
* var30
/* : NativeArray[String] */;
272 static val
* varonce29
;
273 static val
* varonce31
;
274 val
* var32
/* : String */;
275 char* var33
/* : NativeString */;
276 val
* var34
/* : FlatString */;
277 static val
* varonce35
;
278 val
* var36
/* : String */;
279 char* var37
/* : NativeString */;
280 val
* var38
/* : FlatString */;
281 val
* var39
/* : String */;
282 val
* var41
/* : String */;
283 val
* var42
/* : String */;
284 val
* var43
/* : nullable Message */;
286 { /* Inline scope#ScopeVisitor#scopes (self) on <self:ScopeVisitor> */
287 var2
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <self:ScopeVisitor> */
288 if (unlikely(var2
== NULL
)) {
289 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
290 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
298 var3
= standard___standard__List___standard__abstract_collection__Collection__is_empty(var
);
301 if (unlikely(!var4
)) {
302 PRINT_ERROR("Runtime error: %s", "Assert failed");
303 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 86);
307 { /* Inline scope#ScopeVisitor#scopes (self) on <self:ScopeVisitor> */
308 var7
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <self:ScopeVisitor> */
309 if (unlikely(var7
== NULL
)) {
310 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
311 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
319 var8
= standard___standard__List___standard__abstract_collection__Sequence__shift(var5
);
323 { /* Inline scope#Scope#variables (var_scope) on <var_scope:Scope> */
324 var11
= var_scope
->attrs
[COLOR_nit__scope__Scope___variables
].val
; /* _variables on <var_scope:Scope> */
325 if (unlikely(var11
== NULL
)) {
326 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _variables");
327 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 225);
335 var12
= standard___standard__HashMap___standard__abstract_collection__MapRead__values(var9
);
339 var13
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_standard__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:RemovableCollection[Variable]>*/
344 var15
= ((short int(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_14
); /* is_ok on <var_14:Iterator[Variable]>*/
348 var16
= ((val
*(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_14
); /* item on <var_14:Iterator[Variable]>*/
352 { /* Inline scope#Variable#warn_unread (var_v) on <var_v:Variable> */
353 var19
= var_v
->attrs
[COLOR_nit__scope__Variable___warn_unread
].s
; /* _warn_unread on <var_v:Variable> */
360 { /* Inline scope#ScopeVisitor#toolcontext (self) on <self:ScopeVisitor> */
361 var22
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___toolcontext
].val
; /* _toolcontext on <self:ScopeVisitor> */
362 if (unlikely(var22
== NULL
)) {
363 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
364 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 70);
372 { /* Inline scope#Variable#location (var_v) on <var_v:Variable> */
373 var25
= var_v
->attrs
[COLOR_nit__scope__Variable___location
].val
; /* _location on <var_v:Variable> */
378 if (likely(varonce
!=NULL
)) {
381 var27
= "unread-variable";
382 var28
= standard___standard__NativeString___to_s_with_length(var27
, 15l);
386 if (unlikely(varonce29
==NULL
)) {
387 var30
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
388 if (likely(varonce31
!=NULL
)) {
391 var33
= "Warning: local variable ";
392 var34
= standard___standard__NativeString___to_s_with_length(var33
, 24l);
396 ((struct instance_standard__NativeArray
*)var30
)->values
[0]=var32
;
397 if (likely(varonce35
!=NULL
)) {
400 var37
= " is never read.";
401 var38
= standard___standard__NativeString___to_s_with_length(var37
, 15l);
405 ((struct instance_standard__NativeArray
*)var30
)->values
[2]=var36
;
411 { /* Inline scope#Variable#name (var_v) on <var_v:Variable> */
412 var41
= var_v
->attrs
[COLOR_nit__scope__Variable___name
].val
; /* _name on <var_v:Variable> */
413 if (unlikely(var41
== NULL
)) {
414 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
415 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 35);
422 ((struct instance_standard__NativeArray
*)var30
)->values
[1]=var39
;
424 var42
= ((val
*(*)(val
* self
))(var30
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var30
); /* native_to_s on <var30:NativeArray[String]>*/
428 var43
= nit___nit__ToolContext___advice(var20
, var23
, var26
, var42
);
433 ((void(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_14
); /* next on <var_14:Iterator[Variable]>*/
439 BREAK_label
: (void)0;
441 ((void(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_14
); /* finish on <var_14:Iterator[Variable]>*/
445 /* method scope#ScopeVisitor#register_variable for (self: ScopeVisitor, ANode, Variable): Bool */
446 short int nit__scope___nit__scope__ScopeVisitor___register_variable(val
* self
, val
* p0
, val
* p1
) {
447 short int var
/* : Bool */;
448 val
* var_node
/* var node: ANode */;
449 val
* var_variable
/* var variable: Variable */;
450 val
* var1
/* : String */;
451 val
* var3
/* : String */;
452 val
* var_name
/* var name: String */;
453 val
* var4
/* : nullable Variable */;
454 val
* var_found
/* var found: nullable Variable */;
455 short int var5
/* : Bool */;
456 short int var6
/* : Bool */;
457 val
* var_other
/* var other: nullable Object */;
458 short int var8
/* : Bool */;
459 short int var9
/* : Bool */;
460 val
* var10
/* : NativeArray[String] */;
462 static val
* varonce11
;
463 val
* var12
/* : String */;
464 char* var13
/* : NativeString */;
465 val
* var14
/* : FlatString */;
466 static val
* varonce15
;
467 val
* var16
/* : String */;
468 char* var17
/* : NativeString */;
469 val
* var18
/* : FlatString */;
470 val
* var19
/* : String */;
471 val
* var20
/* : List[Scope] */;
472 val
* var22
/* : List[Scope] */;
473 val
* var23
/* : nullable Object */;
474 val
* var24
/* : HashMap[String, Variable] */;
475 val
* var26
/* : HashMap[String, Variable] */;
476 val
* var27
/* : Location */;
477 val
* var29
/* : Location */;
481 { /* Inline scope#Variable#name (var_variable) on <var_variable:Variable> */
482 var3
= var_variable
->attrs
[COLOR_nit__scope__Variable___name
].val
; /* _name on <var_variable:Variable> */
483 if (unlikely(var3
== NULL
)) {
484 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _name");
485 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 35);
494 var4
= nit__scope___nit__scope__ScopeVisitor___search_variable(self
, var_name
);
497 if (var_found
== NULL
) {
498 var5
= 0; /* is null */
500 var5
= 1; /* arg is null and recv is not */
503 { /* Inline kernel#Object#!= (var_found,((val*)NULL)) on <var_found:nullable Variable> */
504 var_other
= ((val
*)NULL
);
506 var8
= ((short int(*)(val
* self
, val
* p0
))(var_found
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_found
, var_other
); /* == on <var_found:nullable Variable(Variable)>*/
516 if (unlikely(varonce
==NULL
)) {
517 var10
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
518 if (likely(varonce11
!=NULL
)) {
521 var13
= "Error: a variable named `";
522 var14
= standard___standard__NativeString___to_s_with_length(var13
, 25l);
526 ((struct instance_standard__NativeArray
*)var10
)->values
[0]=var12
;
527 if (likely(varonce15
!=NULL
)) {
530 var17
= "` already exists.";
531 var18
= standard___standard__NativeString___to_s_with_length(var17
, 17l);
535 ((struct instance_standard__NativeArray
*)var10
)->values
[2]=var16
;
540 ((struct instance_standard__NativeArray
*)var10
)->values
[1]=var_name
;
542 var19
= ((val
*(*)(val
* self
))(var10
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var10
); /* native_to_s on <var10:NativeArray[String]>*/
546 nit__scope___nit__scope__ScopeVisitor___error(self
, var_node
, var19
); /* Direct call scope#ScopeVisitor#error on <self:ScopeVisitor>*/
553 { /* Inline scope#ScopeVisitor#scopes (self) on <self:ScopeVisitor> */
554 var22
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <self:ScopeVisitor> */
555 if (unlikely(var22
== NULL
)) {
556 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
557 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
565 var23
= standard___standard__List___standard__abstract_collection__Collection__first(var20
);
568 { /* Inline scope#Scope#variables (var23) on <var23:nullable Object(Scope)> */
569 var26
= var23
->attrs
[COLOR_nit__scope__Scope___variables
].val
; /* _variables on <var23:nullable Object(Scope)> */
570 if (unlikely(var26
== NULL
)) {
571 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _variables");
572 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 225);
580 standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(var24
, var_name
, var_variable
); /* Direct call hash_collection#HashMap#[]= on <var24:HashMap[String, Variable]>*/
583 { /* Inline parser_nodes#ANode#location (var_node) on <var_node:ANode> */
584 var29
= var_node
->attrs
[COLOR_nit__parser_nodes__ANode___location
].val
; /* _location on <var_node:ANode> */
585 if (unlikely(var29
== NULL
)) {
586 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
587 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 24);
595 { /* Inline scope#Variable#location= (var_variable,var27) on <var_variable:Variable> */
596 var_variable
->attrs
[COLOR_nit__scope__Variable___location
].val
= var27
; /* _location on <var_variable:Variable> */
605 /* method scope#ScopeVisitor#search_variable for (self: ScopeVisitor, String): nullable Variable */
606 val
* nit__scope___nit__scope__ScopeVisitor___search_variable(val
* self
, val
* p0
) {
607 val
* var
/* : nullable Variable */;
608 val
* var_name
/* var name: String */;
609 val
* var1
/* : List[Scope] */;
610 val
* var3
/* : List[Scope] */;
611 val
* var_
/* var : List[Scope] */;
612 val
* var4
/* : ListIterator[nullable Object] */;
613 val
* var_5
/* var : ListIterator[Scope] */;
614 short int var6
/* : Bool */;
615 val
* var7
/* : nullable Object */;
616 val
* var_scope
/* var scope: Scope */;
617 val
* var8
/* : nullable Variable */;
618 val
* var_res
/* var res: nullable Variable */;
619 short int var9
/* : Bool */;
620 short int var10
/* : Bool */;
621 val
* var_other
/* var other: nullable Object */;
622 short int var12
/* : Bool */;
623 short int var13
/* : Bool */;
626 { /* Inline scope#ScopeVisitor#scopes (self) on <self:ScopeVisitor> */
627 var3
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <self:ScopeVisitor> */
628 if (unlikely(var3
== NULL
)) {
629 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
630 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
639 var4
= standard___standard__List___standard__abstract_collection__Collection__iterator(var_
);
644 var6
= standard___standard__ListIterator___standard__abstract_collection__Iterator__is_ok(var_5
);
648 var7
= standard___standard__ListIterator___standard__abstract_collection__Iterator__item(var_5
);
652 var8
= nit__scope___nit__scope__Scope___get_variable(var_scope
, var_name
);
655 if (var_res
== NULL
) {
656 var9
= 0; /* is null */
658 var9
= 1; /* arg is null and recv is not */
661 { /* Inline kernel#Object#!= (var_res,((val*)NULL)) on <var_res:nullable Variable> */
662 var_other
= ((val
*)NULL
);
664 var12
= ((short int(*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res
, var_other
); /* == on <var_res:nullable Variable(Variable)>*/
679 standard___standard__ListIterator___standard__abstract_collection__Iterator__next(var_5
); /* Direct call list#ListIterator#next on <var_5:ListIterator[Scope]>*/
685 BREAK_label
: (void)0;
687 { /* Inline abstract_collection#Iterator#finish (var_5) on <var_5:ListIterator[Scope]> */
696 /* method scope#ScopeVisitor#visit for (self: ScopeVisitor, ANode) */
697 void nit__scope___nit__scope__ScopeVisitor___nit__parser_nodes__Visitor__visit(val
* self
, val
* p0
) {
698 val
* var_n
/* var n: ANode */;
701 ((void(*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_nit__scope__ANode__accept_scope_visitor
]))(var_n
, self
); /* accept_scope_visitor on <var_n:ANode>*/
705 /* method scope#ScopeVisitor#enter_visit_block for (self: ScopeVisitor, nullable AExpr, nullable EscapeMark) */
706 void nit__scope___nit__scope__ScopeVisitor___enter_visit_block(val
* self
, val
* p0
, val
* p1
) {
707 val
* var_node
/* var node: nullable AExpr */;
708 val
* var_escapemark
/* var escapemark: nullable EscapeMark */;
709 short int var
/* : Bool */;
710 short int var1
/* : Bool */;
711 val
* var_other
/* var other: nullable Object */;
712 short int var3
/* : Bool */;
713 short int var5
/* : Bool */;
714 val
* var6
/* : Scope */;
715 val
* var_scope
/* var scope: Scope */;
716 val
* var9
/* : List[Scope] */;
717 val
* var11
/* : List[Scope] */;
720 if (var_node
== NULL
) {
721 var
= 1; /* is null */
723 var
= 0; /* arg is null but recv is not */
726 { /* Inline kernel#Object#== (var_node,((val*)NULL)) on <var_node:nullable AExpr> */
727 var_other
= ((val
*)NULL
);
729 { /* Inline kernel#Object#is_same_instance (var_node,var_other) on <var_node:nullable AExpr(AExpr)> */
730 var5
= var_node
== var_other
;
746 var6
= NEW_nit__scope__Scope(&type_nit__scope__Scope
);
748 { /* Inline kernel#Object#init (var6) on <var6:Scope> */
754 { /* Inline scope#Scope#escapemark= (var_scope,var_escapemark) on <var_scope:Scope> */
755 var_scope
->attrs
[COLOR_nit__scope__Scope___escapemark
].val
= var_escapemark
; /* _escapemark on <var_scope:Scope> */
760 { /* Inline scope#ScopeVisitor#scopes (self) on <self:ScopeVisitor> */
761 var11
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <self:ScopeVisitor> */
762 if (unlikely(var11
== NULL
)) {
763 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
764 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
772 standard___standard__List___standard__abstract_collection__Sequence__unshift(var9
, var_scope
); /* Direct call list#List#unshift on <var9:List[Scope]>*/
775 nit___nit__Visitor___enter_visit(self
, var_node
); /* Direct call parser_nodes#Visitor#enter_visit on <self:ScopeVisitor>*/
778 nit__scope___nit__scope__ScopeVisitor___shift_scope(self
); /* Direct call scope#ScopeVisitor#shift_scope on <self:ScopeVisitor>*/
782 /* method scope#ScopeVisitor#search_label for (self: ScopeVisitor, String): nullable EscapeMark */
783 val
* nit__scope___nit__scope__ScopeVisitor___search_label(val
* self
, val
* p0
) {
784 val
* var
/* : nullable EscapeMark */;
785 val
* var_name
/* var name: String */;
786 val
* var1
/* : List[Scope] */;
787 val
* var3
/* : List[Scope] */;
788 val
* var_
/* var : List[Scope] */;
789 val
* var4
/* : ListIterator[nullable Object] */;
790 val
* var_5
/* var : ListIterator[Scope] */;
791 short int var6
/* : Bool */;
792 val
* var7
/* : nullable Object */;
793 val
* var_scope
/* var scope: Scope */;
794 val
* var8
/* : nullable EscapeMark */;
795 val
* var10
/* : nullable EscapeMark */;
796 val
* var_res
/* var res: nullable EscapeMark */;
797 short int var11
/* : Bool */;
798 short int var12
/* : Bool */;
799 short int var13
/* : Bool */;
800 val
* var_other
/* var other: nullable Object */;
801 short int var15
/* : Bool */;
802 short int var16
/* : Bool */;
803 short int var_17
/* var : Bool */;
804 val
* var18
/* : nullable String */;
805 val
* var20
/* : nullable String */;
806 short int var21
/* : Bool */;
807 short int var22
/* : Bool */;
810 { /* Inline scope#ScopeVisitor#scopes (self) on <self:ScopeVisitor> */
811 var3
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <self:ScopeVisitor> */
812 if (unlikely(var3
== NULL
)) {
813 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
814 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
823 var4
= standard___standard__List___standard__abstract_collection__Collection__iterator(var_
);
828 var6
= standard___standard__ListIterator___standard__abstract_collection__Iterator__is_ok(var_5
);
832 var7
= standard___standard__ListIterator___standard__abstract_collection__Iterator__item(var_5
);
836 { /* Inline scope#Scope#escapemark (var_scope) on <var_scope:Scope> */
837 var10
= var_scope
->attrs
[COLOR_nit__scope__Scope___escapemark
].val
; /* _escapemark on <var_scope:Scope> */
843 if (var_res
== NULL
) {
844 var12
= 0; /* is null */
846 var12
= 1; /* arg is null and recv is not */
849 { /* Inline kernel#Object#!= (var_res,((val*)NULL)) on <var_res:nullable EscapeMark> */
850 var_other
= ((val
*)NULL
);
852 var15
= ((short int(*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res
, var_other
); /* == on <var_res:nullable EscapeMark(EscapeMark)>*/
864 { /* Inline scope#EscapeMark#name (var_res) on <var_res:nullable EscapeMark(EscapeMark)> */
865 var20
= var_res
->attrs
[COLOR_nit__scope__EscapeMark___name
].val
; /* _name on <var_res:nullable EscapeMark(EscapeMark)> */
871 var21
= 0; /* <var_name:String> cannot be null */
873 var22
= ((short int(*)(val
* self
, val
* p0
))(var18
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var18
, var_name
); /* == on <var18:nullable String>*/
886 standard___standard__ListIterator___standard__abstract_collection__Iterator__next(var_5
); /* Direct call list#ListIterator#next on <var_5:ListIterator[Scope]>*/
892 BREAK_label
: (void)0;
894 { /* Inline abstract_collection#Iterator#finish (var_5) on <var_5:ListIterator[Scope]> */
903 /* method scope#ScopeVisitor#make_escape_mark for (self: ScopeVisitor, nullable ALabel, Bool): EscapeMark */
904 val
* nit__scope___nit__scope__ScopeVisitor___make_escape_mark(val
* self
, val
* p0
, short int p1
) {
905 val
* var
/* : EscapeMark */;
906 val
* var_nlabel
/* var nlabel: nullable ALabel */;
907 short int var_for_loop
/* var for_loop: Bool */;
908 short int var1
/* : Bool */;
909 short int var2
/* : Bool */;
910 val
* var_other
/* var other: nullable Object */;
911 short int var4
/* : Bool */;
912 short int var5
/* : Bool */;
913 val
* var6
/* : nullable TId */;
914 val
* var8
/* : nullable TId */;
915 val
* var_nid
/* var nid: nullable TId */;
916 short int var9
/* : Bool */;
917 short int var10
/* : Bool */;
918 val
* var_other12
/* var other: nullable Object */;
919 short int var13
/* : Bool */;
920 short int var15
/* : Bool */;
922 val
* var16
/* : String */;
923 char* var17
/* : NativeString */;
924 val
* var18
/* : FlatString */;
925 val
* var19
/* : nullable EscapeMark */;
926 val
* var_res
/* var res: nullable EscapeMark */;
927 short int var20
/* : Bool */;
928 short int var21
/* : Bool */;
929 short int var23
/* : Bool */;
930 short int var24
/* : Bool */;
931 static val
* varonce25
;
932 val
* var26
/* : String */;
933 char* var27
/* : NativeString */;
934 val
* var28
/* : FlatString */;
935 static val
* varonce29
;
936 val
* var30
/* : String */;
937 char* var31
/* : NativeString */;
938 val
* var32
/* : FlatString */;
939 val
* var_name
/* var name: nullable String */;
940 val
* var33
/* : String */;
941 val
* var34
/* : nullable EscapeMark */;
942 val
* var_found
/* var found: nullable EscapeMark */;
943 short int var35
/* : Bool */;
944 short int var36
/* : Bool */;
945 short int var38
/* : Bool */;
946 short int var39
/* : Bool */;
947 val
* var41
/* : NativeArray[String] */;
948 static val
* varonce40
;
949 static val
* varonce42
;
950 val
* var43
/* : String */;
951 char* var44
/* : NativeString */;
952 val
* var45
/* : FlatString */;
953 static val
* varonce46
;
954 val
* var47
/* : String */;
955 char* var48
/* : NativeString */;
956 val
* var49
/* : FlatString */;
957 val
* var50
/* : String */;
958 val
* var51
/* : EscapeMark */;
959 val
* var_res52
/* var res: EscapeMark */;
960 val
* var53
/* : EscapeMark */;
963 if (var_nlabel
== NULL
) {
964 var1
= 0; /* is null */
966 var1
= 1; /* arg is null and recv is not */
969 { /* Inline kernel#Object#!= (var_nlabel,((val*)NULL)) on <var_nlabel:nullable ALabel> */
970 var_other
= ((val
*)NULL
);
972 var4
= ((short int(*)(val
* self
, val
* p0
))(var_nlabel
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_nlabel
, var_other
); /* == on <var_nlabel:nullable ALabel(ALabel)>*/
983 { /* Inline parser_nodes#ALabel#n_id (var_nlabel) on <var_nlabel:nullable ALabel(ALabel)> */
984 var8
= var_nlabel
->attrs
[COLOR_nit__parser_nodes__ALabel___n_id
].val
; /* _n_id on <var_nlabel:nullable ALabel(ALabel)> */
990 if (var_nid
== NULL
) {
991 var9
= 1; /* is null */
993 var9
= 0; /* arg is null but recv is not */
996 { /* Inline kernel#Object#== (var_nid,((val*)NULL)) on <var_nid:nullable TId> */
997 var_other12
= ((val
*)NULL
);
999 { /* Inline kernel#Object#is_same_instance (var_nid,var_other12) on <var_nid:nullable TId(TId)> */
1000 var15
= var_nid
== var_other12
;
1003 RET_LABEL14
:(void)0;
1008 RET_LABEL11
:(void)0;
1013 if (likely(varonce
!=NULL
)) {
1017 var18
= standard___standard__NativeString___to_s_with_length(var17
, 0l);
1022 var19
= nit__scope___nit__scope__ScopeVisitor___search_label(self
, var16
);
1025 if (var_res
== NULL
) {
1026 var20
= 0; /* is null */
1028 var20
= 1; /* arg is null and recv is not */
1031 { /* Inline kernel#Object#!= (var_res,((val*)NULL)) on <var_res:nullable EscapeMark> */
1032 var_other
= ((val
*)NULL
);
1034 var23
= ((short int(*)(val
* self
, val
* p0
))(var_res
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res
, var_other
); /* == on <var_res:nullable EscapeMark(EscapeMark)>*/
1039 RET_LABEL22
:(void)0;
1044 if (likely(varonce25
!=NULL
)) {
1047 var27
= "Syntax Error: anonymous label already defined.";
1048 var28
= standard___standard__NativeString___to_s_with_length(var27
, 46l);
1053 nit__scope___nit__scope__ScopeVisitor___error(self
, var_nlabel
, var26
); /* Direct call scope#ScopeVisitor#error on <self:ScopeVisitor>*/
1057 if (likely(varonce29
!=NULL
)) {
1061 var32
= standard___standard__NativeString___to_s_with_length(var31
, 0l);
1068 var33
= nit__lexer_work___Token___text(var_nid
);
1072 var34
= nit__scope___nit__scope__ScopeVisitor___search_label(self
, var_name
);
1075 if (var_found
== NULL
) {
1076 var35
= 0; /* is null */
1078 var35
= 1; /* arg is null and recv is not */
1081 { /* Inline kernel#Object#!= (var_found,((val*)NULL)) on <var_found:nullable EscapeMark> */
1082 var_other
= ((val
*)NULL
);
1084 var38
= ((short int(*)(val
* self
, val
* p0
))(var_found
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_found
, var_other
); /* == on <var_found:nullable EscapeMark(EscapeMark)>*/
1089 RET_LABEL37
:(void)0;
1094 if (unlikely(varonce40
==NULL
)) {
1095 var41
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
1096 if (likely(varonce42
!=NULL
)) {
1099 var44
= "Syntax Error: label `";
1100 var45
= standard___standard__NativeString___to_s_with_length(var44
, 21l);
1104 ((struct instance_standard__NativeArray
*)var41
)->values
[0]=var43
;
1105 if (likely(varonce46
!=NULL
)) {
1108 var48
= "` already defined.";
1109 var49
= standard___standard__NativeString___to_s_with_length(var48
, 18l);
1113 ((struct instance_standard__NativeArray
*)var41
)->values
[2]=var47
;
1118 ((struct instance_standard__NativeArray
*)var41
)->values
[1]=var_name
;
1120 var50
= ((val
*(*)(val
* self
))(var41
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var41
); /* native_to_s on <var41:NativeArray[String]>*/
1124 nit__scope___nit__scope__ScopeVisitor___error(self
, var_nlabel
, var50
); /* Direct call scope#ScopeVisitor#error on <self:ScopeVisitor>*/
1130 var_name
= ((val
*)NULL
);
1132 var51
= NEW_nit__EscapeMark(&type_nit__EscapeMark
);
1134 ((void(*)(val
* self
, val
* p0
))(var51
->class->vft
[COLOR_nit__scope__EscapeMark__name_61d
]))(var51
, var_name
); /* name= on <var51:EscapeMark>*/
1137 ((void(*)(val
* self
))(var51
->class->vft
[COLOR_standard__kernel__Object__init
]))(var51
); /* init on <var51:EscapeMark>*/
1141 var53
= NEW_nit__EscapeMark(&type_nit__EscapeMark
);
1143 ((void(*)(val
* self
, val
* p0
))(var53
->class->vft
[COLOR_nit__scope__EscapeMark__name_61d
]))(var53
, var_name
); /* name= on <var53:EscapeMark>*/
1146 ((void(*)(val
* self
))(var53
->class->vft
[COLOR_standard__kernel__Object__init
]))(var53
); /* init on <var53:EscapeMark>*/
1149 { /* Inline scope#EscapeMark#continue_mark= (var_res52,var53) on <var_res52:EscapeMark> */
1150 var_res52
->attrs
[COLOR_nit__scope__EscapeMark___continue_mark
].val
= var53
; /* _continue_mark on <var_res52:EscapeMark> */
1151 RET_LABEL54
:(void)0;
1161 /* method scope#ScopeVisitor#get_escapemark for (self: ScopeVisitor, ANode, nullable ALabel): nullable EscapeMark */
1162 val
* nit__scope___nit__scope__ScopeVisitor___get_escapemark(val
* self
, val
* p0
, val
* p1
) {
1163 val
* var
/* : nullable EscapeMark */;
1164 val
* var_node
/* var node: ANode */;
1165 val
* var_nlabel
/* var nlabel: nullable ALabel */;
1166 short int var1
/* : Bool */;
1167 short int var2
/* : Bool */;
1168 val
* var_other
/* var other: nullable Object */;
1169 short int var4
/* : Bool */;
1170 short int var5
/* : Bool */;
1171 val
* var6
/* : nullable TId */;
1172 val
* var8
/* : nullable TId */;
1173 val
* var_nid
/* var nid: nullable TId */;
1174 short int var9
/* : Bool */;
1175 short int var10
/* : Bool */;
1176 val
* var_other12
/* var other: nullable Object */;
1177 short int var13
/* : Bool */;
1178 short int var15
/* : Bool */;
1179 static val
* varonce
;
1180 val
* var16
/* : String */;
1181 char* var17
/* : NativeString */;
1182 val
* var18
/* : FlatString */;
1183 val
* var19
/* : nullable EscapeMark */;
1184 val
* var_res
/* var res: nullable EscapeMark */;
1185 short int var20
/* : Bool */;
1186 short int var21
/* : Bool */;
1187 short int var23
/* : Bool */;
1188 short int var25
/* : Bool */;
1189 static val
* varonce26
;
1190 val
* var27
/* : String */;
1191 char* var28
/* : NativeString */;
1192 val
* var29
/* : FlatString */;
1193 val
* var30
/* : String */;
1194 val
* var_name
/* var name: String */;
1195 val
* var31
/* : nullable EscapeMark */;
1196 val
* var_res32
/* var res: nullable EscapeMark */;
1197 short int var33
/* : Bool */;
1198 short int var34
/* : Bool */;
1199 short int var36
/* : Bool */;
1200 short int var38
/* : Bool */;
1201 val
* var40
/* : NativeArray[String] */;
1202 static val
* varonce39
;
1203 static val
* varonce41
;
1204 val
* var42
/* : String */;
1205 char* var43
/* : NativeString */;
1206 val
* var44
/* : FlatString */;
1207 static val
* varonce45
;
1208 val
* var46
/* : String */;
1209 char* var47
/* : NativeString */;
1210 val
* var48
/* : FlatString */;
1211 val
* var49
/* : String */;
1212 val
* var50
/* : List[Scope] */;
1213 val
* var52
/* : List[Scope] */;
1214 val
* var_
/* var : List[Scope] */;
1215 val
* var53
/* : ListIterator[nullable Object] */;
1216 val
* var_54
/* var : ListIterator[Scope] */;
1217 short int var55
/* : Bool */;
1218 val
* var56
/* : nullable Object */;
1219 val
* var_scope
/* var scope: Scope */;
1220 val
* var57
/* : nullable EscapeMark */;
1221 val
* var59
/* : nullable EscapeMark */;
1222 val
* var_res60
/* var res: nullable EscapeMark */;
1223 short int var61
/* : Bool */;
1224 short int var62
/* : Bool */;
1225 short int var64
/* : Bool */;
1226 short int var65
/* : Bool */;
1227 static val
* varonce67
;
1228 val
* var68
/* : String */;
1229 char* var69
/* : NativeString */;
1230 val
* var70
/* : FlatString */;
1233 if (var_nlabel
== NULL
) {
1234 var1
= 0; /* is null */
1236 var1
= 1; /* arg is null and recv is not */
1239 { /* Inline kernel#Object#!= (var_nlabel,((val*)NULL)) on <var_nlabel:nullable ALabel> */
1240 var_other
= ((val
*)NULL
);
1242 var4
= ((short int(*)(val
* self
, val
* p0
))(var_nlabel
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_nlabel
, var_other
); /* == on <var_nlabel:nullable ALabel(ALabel)>*/
1253 { /* Inline parser_nodes#ALabel#n_id (var_nlabel) on <var_nlabel:nullable ALabel(ALabel)> */
1254 var8
= var_nlabel
->attrs
[COLOR_nit__parser_nodes__ALabel___n_id
].val
; /* _n_id on <var_nlabel:nullable ALabel(ALabel)> */
1260 if (var_nid
== NULL
) {
1261 var9
= 1; /* is null */
1263 var9
= 0; /* arg is null but recv is not */
1266 { /* Inline kernel#Object#== (var_nid,((val*)NULL)) on <var_nid:nullable TId> */
1267 var_other12
= ((val
*)NULL
);
1269 { /* Inline kernel#Object#is_same_instance (var_nid,var_other12) on <var_nid:nullable TId(TId)> */
1270 var15
= var_nid
== var_other12
;
1273 RET_LABEL14
:(void)0;
1278 RET_LABEL11
:(void)0;
1283 if (likely(varonce
!=NULL
)) {
1287 var18
= standard___standard__NativeString___to_s_with_length(var17
, 0l);
1292 var19
= nit__scope___nit__scope__ScopeVisitor___search_label(self
, var16
);
1295 if (var_res
== NULL
) {
1296 var20
= 1; /* is null */
1298 var20
= 0; /* arg is null but recv is not */
1301 { /* Inline kernel#Object#== (var_res,((val*)NULL)) on <var_res:nullable EscapeMark> */
1302 var_other12
= ((val
*)NULL
);
1304 { /* Inline kernel#Object#is_same_instance (var_res,var_other12) on <var_res:nullable EscapeMark(EscapeMark)> */
1305 var25
= var_res
== var_other12
;
1308 RET_LABEL24
:(void)0;
1313 RET_LABEL22
:(void)0;
1318 if (likely(varonce26
!=NULL
)) {
1321 var28
= "Syntax Error: invalid anonymous label.";
1322 var29
= standard___standard__NativeString___to_s_with_length(var28
, 38l);
1327 nit__scope___nit__scope__ScopeVisitor___error(self
, var_nlabel
, var27
); /* Direct call scope#ScopeVisitor#error on <self:ScopeVisitor>*/
1338 var30
= nit__lexer_work___Token___text(var_nid
);
1342 var31
= nit__scope___nit__scope__ScopeVisitor___search_label(self
, var_name
);
1345 if (var_res32
== NULL
) {
1346 var33
= 1; /* is null */
1348 var33
= 0; /* arg is null but recv is not */
1351 { /* Inline kernel#Object#== (var_res32,((val*)NULL)) on <var_res32:nullable EscapeMark> */
1352 var_other12
= ((val
*)NULL
);
1354 { /* Inline kernel#Object#is_same_instance (var_res32,var_other12) on <var_res32:nullable EscapeMark(EscapeMark)> */
1355 var38
= var_res32
== var_other12
;
1358 RET_LABEL37
:(void)0;
1363 RET_LABEL35
:(void)0;
1368 if (unlikely(varonce39
==NULL
)) {
1369 var40
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
1370 if (likely(varonce41
!=NULL
)) {
1373 var43
= "Syntax Error: invalid label `";
1374 var44
= standard___standard__NativeString___to_s_with_length(var43
, 29l);
1378 ((struct instance_standard__NativeArray
*)var40
)->values
[0]=var42
;
1379 if (likely(varonce45
!=NULL
)) {
1383 var48
= standard___standard__NativeString___to_s_with_length(var47
, 2l);
1387 ((struct instance_standard__NativeArray
*)var40
)->values
[2]=var46
;
1392 ((struct instance_standard__NativeArray
*)var40
)->values
[1]=var_name
;
1394 var49
= ((val
*(*)(val
* self
))(var40
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var40
); /* native_to_s on <var40:NativeArray[String]>*/
1398 nit__scope___nit__scope__ScopeVisitor___error(self
, var_nlabel
, var49
); /* Direct call scope#ScopeVisitor#error on <self:ScopeVisitor>*/
1408 { /* Inline scope#ScopeVisitor#scopes (self) on <self:ScopeVisitor> */
1409 var52
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <self:ScopeVisitor> */
1410 if (unlikely(var52
== NULL
)) {
1411 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
1412 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
1416 RET_LABEL51
:(void)0;
1421 var53
= standard___standard__List___standard__abstract_collection__Collection__iterator(var_
);
1426 var55
= standard___standard__ListIterator___standard__abstract_collection__Iterator__is_ok(var_54
);
1430 var56
= standard___standard__ListIterator___standard__abstract_collection__Iterator__item(var_54
);
1434 { /* Inline scope#Scope#escapemark (var_scope) on <var_scope:Scope> */
1435 var59
= var_scope
->attrs
[COLOR_nit__scope__Scope___escapemark
].val
; /* _escapemark on <var_scope:Scope> */
1437 RET_LABEL58
:(void)0;
1441 if (var_res60
== NULL
) {
1442 var61
= 0; /* is null */
1444 var61
= 1; /* arg is null and recv is not */
1447 { /* Inline kernel#Object#!= (var_res60,((val*)NULL)) on <var_res60:nullable EscapeMark> */
1448 var_other
= ((val
*)NULL
);
1450 var64
= ((short int(*)(val
* self
, val
* p0
))(var_res60
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_res60
, var_other
); /* == on <var_res60:nullable EscapeMark(EscapeMark)>*/
1455 RET_LABEL63
:(void)0;
1465 standard___standard__ListIterator___standard__abstract_collection__Iterator__next(var_54
); /* Direct call list#ListIterator#next on <var_54:ListIterator[Scope]>*/
1471 BREAK_label
: (void)0;
1473 { /* Inline abstract_collection#Iterator#finish (var_54) on <var_54:ListIterator[Scope]> */
1474 RET_LABEL66
:(void)0;
1477 if (likely(varonce67
!=NULL
)) {
1480 var69
= "Syntax Error: `break` statement outside block.";
1481 var70
= standard___standard__NativeString___to_s_with_length(var69
, 46l);
1486 nit__scope___nit__scope__ScopeVisitor___error(self
, var_node
, var68
); /* Direct call scope#ScopeVisitor#error on <self:ScopeVisitor>*/
1494 /* method scope#ScopeVisitor#error for (self: ScopeVisitor, ANode, String) */
1495 void nit__scope___nit__scope__ScopeVisitor___error(val
* self
, val
* p0
, val
* p1
) {
1496 val
* var_node
/* var node: ANode */;
1497 val
* var_message
/* var message: String */;
1498 val
* var
/* : ToolContext */;
1499 val
* var2
/* : ToolContext */;
1500 val
* var3
/* : Location */;
1501 val
* var4
/* : Message */;
1505 { /* Inline scope#ScopeVisitor#toolcontext (self) on <self:ScopeVisitor> */
1506 var2
= self
->attrs
[COLOR_nit__scope__ScopeVisitor___toolcontext
].val
; /* _toolcontext on <self:ScopeVisitor> */
1507 if (unlikely(var2
== NULL
)) {
1508 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1509 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 70);
1517 var3
= ((val
*(*)(val
* self
))(var_node
->class->vft
[COLOR_nit__parser_nodes__ANode__hot_location
]))(var_node
); /* hot_location on <var_node:ANode>*/
1520 var4
= nit___nit__ToolContext___error(var
, var3
, var_message
);
1524 /* method scope#Scope#variables for (self: Scope): HashMap[String, Variable] */
1525 val
* nit__scope___nit__scope__Scope___variables(val
* self
) {
1526 val
* var
/* : HashMap[String, Variable] */;
1527 val
* var1
/* : HashMap[String, Variable] */;
1528 var1
= self
->attrs
[COLOR_nit__scope__Scope___variables
].val
; /* _variables on <self:Scope> */
1529 if (unlikely(var1
== NULL
)) {
1530 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _variables");
1531 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 225);
1538 /* method scope#Scope#escapemark for (self: Scope): nullable EscapeMark */
1539 val
* nit__scope___nit__scope__Scope___escapemark(val
* self
) {
1540 val
* var
/* : nullable EscapeMark */;
1541 val
* var1
/* : nullable EscapeMark */;
1542 var1
= self
->attrs
[COLOR_nit__scope__Scope___escapemark
].val
; /* _escapemark on <self:Scope> */
1547 /* method scope#Scope#escapemark= for (self: Scope, nullable EscapeMark) */
1548 void nit__scope___nit__scope__Scope___escapemark_61d(val
* self
, val
* p0
) {
1549 self
->attrs
[COLOR_nit__scope__Scope___escapemark
].val
= p0
; /* _escapemark on <self:Scope> */
1552 /* method scope#Scope#get_variable for (self: Scope, String): nullable Variable */
1553 val
* nit__scope___nit__scope__Scope___get_variable(val
* self
, val
* p0
) {
1554 val
* var
/* : nullable Variable */;
1555 val
* var_name
/* var name: String */;
1556 val
* var1
/* : HashMap[String, Variable] */;
1557 val
* var3
/* : HashMap[String, Variable] */;
1558 short int var4
/* : Bool */;
1559 val
* var5
/* : HashMap[String, Variable] */;
1560 val
* var7
/* : HashMap[String, Variable] */;
1561 val
* var8
/* : nullable Object */;
1564 { /* Inline scope#Scope#variables (self) on <self:Scope> */
1565 var3
= self
->attrs
[COLOR_nit__scope__Scope___variables
].val
; /* _variables on <self:Scope> */
1566 if (unlikely(var3
== NULL
)) {
1567 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _variables");
1568 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 225);
1576 var4
= standard___standard__HashMap___standard__abstract_collection__MapRead__has_key(var1
, var_name
);
1580 { /* Inline scope#Scope#variables (self) on <self:Scope> */
1581 var7
= self
->attrs
[COLOR_nit__scope__Scope___variables
].val
; /* _variables on <self:Scope> */
1582 if (unlikely(var7
== NULL
)) {
1583 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _variables");
1584 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 225);
1592 var8
= standard___standard__HashMap___standard__abstract_collection__MapRead___91d_93d(var5
, var_name
);
1603 /* method scope#ANode#accept_scope_visitor for (self: ANode, ScopeVisitor) */
1604 void nit__scope___ANode___accept_scope_visitor(val
* self
, val
* p0
) {
1605 val
* var_v
/* var v: ScopeVisitor */;
1608 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nit__parser_nodes__ANode__visit_all
]))(self
, var_v
); /* visit_all on <self:ANode>*/
1612 /* method scope#APropdef#do_scope for (self: APropdef, ToolContext) */
1613 void nit__scope___APropdef___do_scope(val
* self
, val
* p0
) {
1614 val
* var_toolcontext
/* var toolcontext: ToolContext */;
1615 val
* var
/* : ScopeVisitor */;
1616 val
* var_v
/* var v: ScopeVisitor */;
1617 var_toolcontext
= p0
;
1618 var
= NEW_nit__scope__ScopeVisitor(&type_nit__scope__ScopeVisitor
);
1620 ((void(*)(val
* self
, val
* p0
))(var
->class->vft
[COLOR_nit__scope__ScopeVisitor__toolcontext_61d
]))(var
, var_toolcontext
); /* toolcontext= on <var:ScopeVisitor>*/
1623 ((void(*)(val
* self
))(var
->class->vft
[COLOR_standard__kernel__Object__init
]))(var
); /* init on <var:ScopeVisitor>*/
1627 nit___nit__Visitor___enter_visit(var_v
, self
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:ScopeVisitor>*/
1630 nit__scope___nit__scope__ScopeVisitor___shift_scope(var_v
); /* Direct call scope#ScopeVisitor#shift_scope on <var_v:ScopeVisitor>*/
1634 /* method scope#AParam#variable for (self: AParam): nullable Variable */
1635 val
* nit__scope___AParam___variable(val
* self
) {
1636 val
* var
/* : nullable Variable */;
1637 val
* var1
/* : nullable Variable */;
1638 var1
= self
->attrs
[COLOR_nit__scope__AParam___variable
].val
; /* _variable on <self:AParam> */
1643 /* method scope#AParam#variable= for (self: AParam, nullable Variable) */
1644 void nit__scope___AParam___variable_61d(val
* self
, val
* p0
) {
1645 self
->attrs
[COLOR_nit__scope__AParam___variable
].val
= p0
; /* _variable on <self:AParam> */
1648 /* method scope#AParam#accept_scope_visitor for (self: AParam, ScopeVisitor) */
1649 void nit__scope___AParam___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
1650 val
* var_v
/* var v: ScopeVisitor */;
1651 val
* var
/* : TId */;
1652 val
* var2
/* : TId */;
1653 val
* var_nid
/* var nid: TId */;
1654 val
* var3
/* : Variable */;
1655 val
* var4
/* : String */;
1656 val
* var_variable
/* var variable: Variable */;
1657 short int var5
/* : Bool */;
1660 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nit__scope___AParam___ANode__accept_scope_visitor
]))(self
, p0
); /* accept_scope_visitor on <self:AParam>*/
1663 { /* Inline parser_nodes#AParam#n_id (self) on <self:AParam> */
1664 var2
= self
->attrs
[COLOR_nit__parser_nodes__AParam___n_id
].val
; /* _n_id on <self:AParam> */
1665 if (unlikely(var2
== NULL
)) {
1666 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
1667 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1707);
1675 var3
= NEW_nit__Variable(&type_nit__Variable
);
1677 var4
= nit__lexer_work___Token___text(var_nid
);
1680 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nit__scope__Variable__name_61d
]))(var3
, var4
); /* name= on <var3:Variable>*/
1683 ((void(*)(val
* self
))(var3
->class->vft
[COLOR_standard__kernel__Object__init
]))(var3
); /* init on <var3:Variable>*/
1685 var_variable
= var3
;
1687 var5
= nit__scope___nit__scope__ScopeVisitor___register_variable(var_v
, var_nid
, var_variable
);
1690 { /* Inline scope#AParam#variable= (self,var_variable) on <self:AParam> */
1691 self
->attrs
[COLOR_nit__scope__AParam___variable
].val
= var_variable
; /* _variable on <self:AParam> */
1697 /* method scope#AVardeclExpr#variable for (self: AVardeclExpr): nullable Variable */
1698 val
* nit__scope___AVardeclExpr___variable(val
* self
) {
1699 val
* var
/* : nullable Variable */;
1700 val
* var1
/* : nullable Variable */;
1701 var1
= self
->attrs
[COLOR_nit__scope__AVardeclExpr___variable
].val
; /* _variable on <self:AVardeclExpr> */
1706 /* method scope#AVardeclExpr#variable= for (self: AVardeclExpr, nullable Variable) */
1707 void nit__scope___AVardeclExpr___variable_61d(val
* self
, val
* p0
) {
1708 self
->attrs
[COLOR_nit__scope__AVardeclExpr___variable
].val
= p0
; /* _variable on <self:AVardeclExpr> */
1711 /* method scope#AVardeclExpr#accept_scope_visitor for (self: AVardeclExpr, ScopeVisitor) */
1712 void nit__scope___AVardeclExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
1713 val
* var_v
/* var v: ScopeVisitor */;
1714 val
* var
/* : TId */;
1715 val
* var2
/* : TId */;
1716 val
* var_nid
/* var nid: TId */;
1717 val
* var3
/* : Variable */;
1718 val
* var4
/* : String */;
1719 val
* var_variable
/* var variable: Variable */;
1720 short int var5
/* : Bool */;
1723 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nit__scope___AVardeclExpr___ANode__accept_scope_visitor
]))(self
, p0
); /* accept_scope_visitor on <self:AVardeclExpr>*/
1726 { /* Inline parser_nodes#AVardeclExpr#n_id (self) on <self:AVardeclExpr> */
1727 var2
= self
->attrs
[COLOR_nit__parser_nodes__AVardeclExpr___n_id
].val
; /* _n_id on <self:AVardeclExpr> */
1728 if (unlikely(var2
== NULL
)) {
1729 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
1730 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1773);
1738 var3
= NEW_nit__Variable(&type_nit__Variable
);
1740 var4
= nit__lexer_work___Token___text(var_nid
);
1743 ((void(*)(val
* self
, val
* p0
))(var3
->class->vft
[COLOR_nit__scope__Variable__name_61d
]))(var3
, var4
); /* name= on <var3:Variable>*/
1746 ((void(*)(val
* self
))(var3
->class->vft
[COLOR_standard__kernel__Object__init
]))(var3
); /* init on <var3:Variable>*/
1748 var_variable
= var3
;
1750 var5
= nit__scope___nit__scope__ScopeVisitor___register_variable(var_v
, var_nid
, var_variable
);
1753 { /* Inline scope#Variable#warn_unread= (var_variable,1) on <var_variable:Variable> */
1754 var_variable
->attrs
[COLOR_nit__scope__Variable___warn_unread
].s
= 1; /* _warn_unread on <var_variable:Variable> */
1759 { /* Inline scope#AVardeclExpr#variable= (self,var_variable) on <self:AVardeclExpr> */
1760 self
->attrs
[COLOR_nit__scope__AVardeclExpr___variable
].val
= var_variable
; /* _variable on <self:AVardeclExpr> */
1766 /* method scope#ASelfExpr#variable= for (self: ASelfExpr, nullable Variable) */
1767 void nit__scope___ASelfExpr___variable_61d(val
* self
, val
* p0
) {
1768 self
->attrs
[COLOR_nit__scope__ASelfExpr___variable
].val
= p0
; /* _variable on <self:ASelfExpr> */
1771 /* method scope#ASelfExpr#accept_scope_visitor for (self: ASelfExpr, ScopeVisitor) */
1772 void nit__scope___ASelfExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
1773 val
* var_v
/* var v: ScopeVisitor */;
1774 val
* var
/* : Variable */;
1775 val
* var2
/* : Variable */;
1778 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nit__scope___ASelfExpr___ANode__accept_scope_visitor
]))(self
, p0
); /* accept_scope_visitor on <self:ASelfExpr>*/
1781 { /* Inline scope#ScopeVisitor#selfvariable (var_v) on <var_v:ScopeVisitor> */
1782 var2
= var_v
->attrs
[COLOR_nit__scope__ScopeVisitor___selfvariable
].val
; /* _selfvariable on <var_v:ScopeVisitor> */
1783 if (unlikely(var2
== NULL
)) {
1784 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _selfvariable");
1785 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 73);
1793 { /* Inline scope#ASelfExpr#variable= (self,var) on <self:ASelfExpr> */
1794 self
->attrs
[COLOR_nit__scope__ASelfExpr___variable
].val
= var
; /* _variable on <self:ASelfExpr> */
1800 /* method scope#AEscapeExpr#escapemark for (self: AEscapeExpr): nullable EscapeMark */
1801 val
* nit__scope___AEscapeExpr___escapemark(val
* self
) {
1802 val
* var
/* : nullable EscapeMark */;
1803 val
* var1
/* : nullable EscapeMark */;
1804 var1
= self
->attrs
[COLOR_nit__scope__AEscapeExpr___escapemark
].val
; /* _escapemark on <self:AEscapeExpr> */
1809 /* method scope#AEscapeExpr#escapemark= for (self: AEscapeExpr, nullable EscapeMark) */
1810 void nit__scope___AEscapeExpr___escapemark_61d(val
* self
, val
* p0
) {
1811 self
->attrs
[COLOR_nit__scope__AEscapeExpr___escapemark
].val
= p0
; /* _escapemark on <self:AEscapeExpr> */
1814 /* method scope#AContinueExpr#accept_scope_visitor for (self: AContinueExpr, ScopeVisitor) */
1815 void nit__scope___AContinueExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
1816 val
* var_v
/* var v: ScopeVisitor */;
1817 val
* var
/* : nullable ALabel */;
1818 val
* var2
/* : nullable ALabel */;
1819 val
* var3
/* : nullable EscapeMark */;
1820 val
* var_escapemark
/* var escapemark: nullable EscapeMark */;
1821 short int var4
/* : Bool */;
1822 short int var5
/* : Bool */;
1823 val
* var_other
/* var other: nullable Object */;
1824 short int var7
/* : Bool */;
1825 short int var9
/* : Bool */;
1826 val
* var10
/* : nullable EscapeMark */;
1827 val
* var12
/* : nullable EscapeMark */;
1828 short int var13
/* : Bool */;
1829 short int var14
/* : Bool */;
1830 short int var16
/* : Bool */;
1831 short int var18
/* : Bool */;
1832 static val
* varonce
;
1833 val
* var19
/* : String */;
1834 char* var20
/* : NativeString */;
1835 val
* var21
/* : FlatString */;
1836 val
* var22
/* : Array[AEscapeExpr] */;
1837 val
* var24
/* : Array[AEscapeExpr] */;
1840 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nit__scope___AContinueExpr___ANode__accept_scope_visitor
]))(self
, p0
); /* accept_scope_visitor on <self:AContinueExpr>*/
1843 { /* Inline parser_nodes#ALabelable#n_label (self) on <self:AContinueExpr> */
1844 var2
= self
->attrs
[COLOR_nit__parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:AContinueExpr> */
1850 var3
= nit__scope___nit__scope__ScopeVisitor___get_escapemark(var_v
, self
, var
);
1852 var_escapemark
= var3
;
1853 if (var_escapemark
== NULL
) {
1854 var4
= 1; /* is null */
1856 var4
= 0; /* arg is null but recv is not */
1859 { /* Inline kernel#Object#== (var_escapemark,((val*)NULL)) on <var_escapemark:nullable EscapeMark> */
1860 var_other
= ((val
*)NULL
);
1862 { /* Inline kernel#Object#is_same_instance (var_escapemark,var_other) on <var_escapemark:nullable EscapeMark(EscapeMark)> */
1863 var9
= var_escapemark
== var_other
;
1880 { /* Inline scope#EscapeMark#continue_mark (var_escapemark) on <var_escapemark:nullable EscapeMark(EscapeMark)> */
1881 var12
= var_escapemark
->attrs
[COLOR_nit__scope__EscapeMark___continue_mark
].val
; /* _continue_mark on <var_escapemark:nullable EscapeMark(EscapeMark)> */
1883 RET_LABEL11
:(void)0;
1886 var_escapemark
= var10
;
1887 if (var_escapemark
== NULL
) {
1888 var13
= 1; /* is null */
1890 var13
= 0; /* arg is null but recv is not */
1893 { /* Inline kernel#Object#== (var_escapemark,((val*)NULL)) on <var_escapemark:nullable EscapeMark> */
1894 var_other
= ((val
*)NULL
);
1896 { /* Inline kernel#Object#is_same_instance (var_escapemark,var_other) on <var_escapemark:nullable EscapeMark(EscapeMark)> */
1897 var18
= var_escapemark
== var_other
;
1900 RET_LABEL17
:(void)0;
1905 RET_LABEL15
:(void)0;
1910 if (likely(varonce
!=NULL
)) {
1913 var20
= "Error: cannot \'continue\', only \'break\'.";
1914 var21
= standard___standard__NativeString___to_s_with_length(var20
, 39l);
1919 nit__scope___nit__scope__ScopeVisitor___error(var_v
, self
, var19
); /* Direct call scope#ScopeVisitor#error on <var_v:ScopeVisitor>*/
1925 { /* Inline scope#EscapeMark#escapes (var_escapemark) on <var_escapemark:nullable EscapeMark(EscapeMark)> */
1926 var24
= var_escapemark
->attrs
[COLOR_nit__scope__EscapeMark___escapes
].val
; /* _escapes on <var_escapemark:nullable EscapeMark(EscapeMark)> */
1927 if (unlikely(var24
== NULL
)) {
1928 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _escapes");
1929 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 58);
1933 RET_LABEL23
:(void)0;
1937 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var22
, self
); /* Direct call array#Array#add on <var22:Array[AEscapeExpr]>*/
1940 { /* Inline scope#AEscapeExpr#escapemark= (self,var_escapemark) on <self:AContinueExpr> */
1941 self
->attrs
[COLOR_nit__scope__AEscapeExpr___escapemark
].val
= var_escapemark
; /* _escapemark on <self:AContinueExpr> */
1942 RET_LABEL25
:(void)0;
1947 /* method scope#ABreakExpr#accept_scope_visitor for (self: ABreakExpr, ScopeVisitor) */
1948 void nit__scope___ABreakExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
1949 val
* var_v
/* var v: ScopeVisitor */;
1950 val
* var
/* : nullable ALabel */;
1951 val
* var2
/* : nullable ALabel */;
1952 val
* var3
/* : nullable EscapeMark */;
1953 val
* var_escapemark
/* var escapemark: nullable EscapeMark */;
1954 short int var4
/* : Bool */;
1955 short int var5
/* : Bool */;
1956 val
* var_other
/* var other: nullable Object */;
1957 short int var7
/* : Bool */;
1958 short int var9
/* : Bool */;
1959 val
* var10
/* : Array[AEscapeExpr] */;
1960 val
* var12
/* : Array[AEscapeExpr] */;
1963 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nit__scope___ABreakExpr___ANode__accept_scope_visitor
]))(self
, p0
); /* accept_scope_visitor on <self:ABreakExpr>*/
1966 { /* Inline parser_nodes#ALabelable#n_label (self) on <self:ABreakExpr> */
1967 var2
= self
->attrs
[COLOR_nit__parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:ABreakExpr> */
1973 var3
= nit__scope___nit__scope__ScopeVisitor___get_escapemark(var_v
, self
, var
);
1975 var_escapemark
= var3
;
1976 if (var_escapemark
== NULL
) {
1977 var4
= 1; /* is null */
1979 var4
= 0; /* arg is null but recv is not */
1982 { /* Inline kernel#Object#== (var_escapemark,((val*)NULL)) on <var_escapemark:nullable EscapeMark> */
1983 var_other
= ((val
*)NULL
);
1985 { /* Inline kernel#Object#is_same_instance (var_escapemark,var_other) on <var_escapemark:nullable EscapeMark(EscapeMark)> */
1986 var9
= var_escapemark
== var_other
;
2003 { /* Inline scope#EscapeMark#escapes (var_escapemark) on <var_escapemark:nullable EscapeMark(EscapeMark)> */
2004 var12
= var_escapemark
->attrs
[COLOR_nit__scope__EscapeMark___escapes
].val
; /* _escapes on <var_escapemark:nullable EscapeMark(EscapeMark)> */
2005 if (unlikely(var12
== NULL
)) {
2006 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _escapes");
2007 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 58);
2011 RET_LABEL11
:(void)0;
2015 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var10
, self
); /* Direct call array#Array#add on <var10:Array[AEscapeExpr]>*/
2018 { /* Inline scope#AEscapeExpr#escapemark= (self,var_escapemark) on <self:ABreakExpr> */
2019 self
->attrs
[COLOR_nit__scope__AEscapeExpr___escapemark
].val
= var_escapemark
; /* _escapemark on <self:ABreakExpr> */
2020 RET_LABEL13
:(void)0;
2025 /* method scope#ADoExpr#break_mark for (self: ADoExpr): nullable EscapeMark */
2026 val
* nit__scope___ADoExpr___break_mark(val
* self
) {
2027 val
* var
/* : nullable EscapeMark */;
2028 val
* var1
/* : nullable EscapeMark */;
2029 var1
= self
->attrs
[COLOR_nit__scope__ADoExpr___break_mark
].val
; /* _break_mark on <self:ADoExpr> */
2034 /* method scope#ADoExpr#break_mark= for (self: ADoExpr, nullable EscapeMark) */
2035 void nit__scope___ADoExpr___break_mark_61d(val
* self
, val
* p0
) {
2036 self
->attrs
[COLOR_nit__scope__ADoExpr___break_mark
].val
= p0
; /* _break_mark on <self:ADoExpr> */
2039 /* method scope#ADoExpr#accept_scope_visitor for (self: ADoExpr, ScopeVisitor) */
2040 void nit__scope___ADoExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
2041 val
* var_v
/* var v: ScopeVisitor */;
2042 val
* var
/* : nullable ALabel */;
2043 val
* var2
/* : nullable ALabel */;
2044 val
* var3
/* : EscapeMark */;
2045 val
* var5
/* : nullable AExpr */;
2046 val
* var7
/* : nullable AExpr */;
2047 val
* var8
/* : nullable EscapeMark */;
2048 val
* var10
/* : nullable EscapeMark */;
2051 { /* Inline parser_nodes#ALabelable#n_label (self) on <self:ADoExpr> */
2052 var2
= self
->attrs
[COLOR_nit__parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:ADoExpr> */
2058 var3
= nit__scope___nit__scope__ScopeVisitor___make_escape_mark(var_v
, var
, 0);
2061 { /* Inline scope#ADoExpr#break_mark= (self,var3) on <self:ADoExpr> */
2062 self
->attrs
[COLOR_nit__scope__ADoExpr___break_mark
].val
= var3
; /* _break_mark on <self:ADoExpr> */
2067 { /* Inline parser_nodes#ADoExpr#n_block (self) on <self:ADoExpr> */
2068 var7
= self
->attrs
[COLOR_nit__parser_nodes__ADoExpr___n_block
].val
; /* _n_block on <self:ADoExpr> */
2074 { /* Inline scope#ADoExpr#break_mark (self) on <self:ADoExpr> */
2075 var10
= self
->attrs
[COLOR_nit__scope__ADoExpr___break_mark
].val
; /* _break_mark on <self:ADoExpr> */
2081 nit__scope___nit__scope__ScopeVisitor___enter_visit_block(var_v
, var5
, var8
); /* Direct call scope#ScopeVisitor#enter_visit_block on <var_v:ScopeVisitor>*/
2085 /* method scope#AIfExpr#accept_scope_visitor for (self: AIfExpr, ScopeVisitor) */
2086 void nit__scope___AIfExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
2087 val
* var_v
/* var v: ScopeVisitor */;
2088 val
* var
/* : AExpr */;
2089 val
* var2
/* : AExpr */;
2090 val
* var3
/* : nullable AExpr */;
2091 val
* var5
/* : nullable AExpr */;
2092 val
* var6
/* : nullable AExpr */;
2093 val
* var8
/* : nullable AExpr */;
2096 { /* Inline parser_nodes#AIfExpr#n_expr (self) on <self:AIfExpr> */
2097 var2
= self
->attrs
[COLOR_nit__parser_nodes__AIfExpr___n_expr
].val
; /* _n_expr on <self:AIfExpr> */
2098 if (unlikely(var2
== NULL
)) {
2099 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
2100 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1857);
2108 nit___nit__Visitor___enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:ScopeVisitor>*/
2111 { /* Inline parser_nodes#AIfExpr#n_then (self) on <self:AIfExpr> */
2112 var5
= self
->attrs
[COLOR_nit__parser_nodes__AIfExpr___n_then
].val
; /* _n_then on <self:AIfExpr> */
2118 nit__scope___nit__scope__ScopeVisitor___enter_visit_block(var_v
, var3
, ((val
*)NULL
)); /* Direct call scope#ScopeVisitor#enter_visit_block on <var_v:ScopeVisitor>*/
2121 { /* Inline parser_nodes#AIfExpr#n_else (self) on <self:AIfExpr> */
2122 var8
= self
->attrs
[COLOR_nit__parser_nodes__AIfExpr___n_else
].val
; /* _n_else on <self:AIfExpr> */
2128 nit__scope___nit__scope__ScopeVisitor___enter_visit_block(var_v
, var6
, ((val
*)NULL
)); /* Direct call scope#ScopeVisitor#enter_visit_block on <var_v:ScopeVisitor>*/
2132 /* method scope#AWhileExpr#break_mark for (self: AWhileExpr): nullable EscapeMark */
2133 val
* nit__scope___AWhileExpr___break_mark(val
* self
) {
2134 val
* var
/* : nullable EscapeMark */;
2135 val
* var1
/* : nullable EscapeMark */;
2136 var1
= self
->attrs
[COLOR_nit__scope__AWhileExpr___break_mark
].val
; /* _break_mark on <self:AWhileExpr> */
2141 /* method scope#AWhileExpr#break_mark= for (self: AWhileExpr, nullable EscapeMark) */
2142 void nit__scope___AWhileExpr___break_mark_61d(val
* self
, val
* p0
) {
2143 self
->attrs
[COLOR_nit__scope__AWhileExpr___break_mark
].val
= p0
; /* _break_mark on <self:AWhileExpr> */
2146 /* method scope#AWhileExpr#continue_mark for (self: AWhileExpr): nullable EscapeMark */
2147 val
* nit__scope___AWhileExpr___continue_mark(val
* self
) {
2148 val
* var
/* : nullable EscapeMark */;
2149 val
* var1
/* : nullable EscapeMark */;
2150 var1
= self
->attrs
[COLOR_nit__scope__AWhileExpr___continue_mark
].val
; /* _continue_mark on <self:AWhileExpr> */
2155 /* method scope#AWhileExpr#continue_mark= for (self: AWhileExpr, nullable EscapeMark) */
2156 void nit__scope___AWhileExpr___continue_mark_61d(val
* self
, val
* p0
) {
2157 self
->attrs
[COLOR_nit__scope__AWhileExpr___continue_mark
].val
= p0
; /* _continue_mark on <self:AWhileExpr> */
2160 /* method scope#AWhileExpr#accept_scope_visitor for (self: AWhileExpr, ScopeVisitor) */
2161 void nit__scope___AWhileExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
2162 val
* var_v
/* var v: ScopeVisitor */;
2163 val
* var
/* : nullable ALabel */;
2164 val
* var2
/* : nullable ALabel */;
2165 val
* var3
/* : EscapeMark */;
2166 val
* var_escapemark
/* var escapemark: EscapeMark */;
2167 val
* var5
/* : nullable EscapeMark */;
2168 val
* var7
/* : nullable EscapeMark */;
2169 val
* var9
/* : AExpr */;
2170 val
* var11
/* : AExpr */;
2171 val
* var12
/* : nullable AExpr */;
2172 val
* var14
/* : nullable AExpr */;
2175 { /* Inline parser_nodes#ALabelable#n_label (self) on <self:AWhileExpr> */
2176 var2
= self
->attrs
[COLOR_nit__parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:AWhileExpr> */
2182 var3
= nit__scope___nit__scope__ScopeVisitor___make_escape_mark(var_v
, var
, 1);
2184 var_escapemark
= var3
;
2186 { /* Inline scope#AWhileExpr#break_mark= (self,var_escapemark) on <self:AWhileExpr> */
2187 self
->attrs
[COLOR_nit__scope__AWhileExpr___break_mark
].val
= var_escapemark
; /* _break_mark on <self:AWhileExpr> */
2192 { /* Inline scope#EscapeMark#continue_mark (var_escapemark) on <var_escapemark:EscapeMark> */
2193 var7
= var_escapemark
->attrs
[COLOR_nit__scope__EscapeMark___continue_mark
].val
; /* _continue_mark on <var_escapemark:EscapeMark> */
2199 { /* Inline scope#AWhileExpr#continue_mark= (self,var5) on <self:AWhileExpr> */
2200 self
->attrs
[COLOR_nit__scope__AWhileExpr___continue_mark
].val
= var5
; /* _continue_mark on <self:AWhileExpr> */
2205 { /* Inline parser_nodes#AWhileExpr#n_expr (self) on <self:AWhileExpr> */
2206 var11
= self
->attrs
[COLOR_nit__parser_nodes__AWhileExpr___n_expr
].val
; /* _n_expr on <self:AWhileExpr> */
2207 if (unlikely(var11
== NULL
)) {
2208 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
2209 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1904);
2213 RET_LABEL10
:(void)0;
2217 nit___nit__Visitor___enter_visit(var_v
, var9
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:ScopeVisitor>*/
2220 { /* Inline parser_nodes#AWhileExpr#n_block (self) on <self:AWhileExpr> */
2221 var14
= self
->attrs
[COLOR_nit__parser_nodes__AWhileExpr___n_block
].val
; /* _n_block on <self:AWhileExpr> */
2223 RET_LABEL13
:(void)0;
2227 nit__scope___nit__scope__ScopeVisitor___enter_visit_block(var_v
, var12
, var_escapemark
); /* Direct call scope#ScopeVisitor#enter_visit_block on <var_v:ScopeVisitor>*/
2231 /* method scope#ALoopExpr#break_mark for (self: ALoopExpr): nullable EscapeMark */
2232 val
* nit__scope___ALoopExpr___break_mark(val
* self
) {
2233 val
* var
/* : nullable EscapeMark */;
2234 val
* var1
/* : nullable EscapeMark */;
2235 var1
= self
->attrs
[COLOR_nit__scope__ALoopExpr___break_mark
].val
; /* _break_mark on <self:ALoopExpr> */
2240 /* method scope#ALoopExpr#break_mark= for (self: ALoopExpr, nullable EscapeMark) */
2241 void nit__scope___ALoopExpr___break_mark_61d(val
* self
, val
* p0
) {
2242 self
->attrs
[COLOR_nit__scope__ALoopExpr___break_mark
].val
= p0
; /* _break_mark on <self:ALoopExpr> */
2245 /* method scope#ALoopExpr#continue_mark for (self: ALoopExpr): nullable EscapeMark */
2246 val
* nit__scope___ALoopExpr___continue_mark(val
* self
) {
2247 val
* var
/* : nullable EscapeMark */;
2248 val
* var1
/* : nullable EscapeMark */;
2249 var1
= self
->attrs
[COLOR_nit__scope__ALoopExpr___continue_mark
].val
; /* _continue_mark on <self:ALoopExpr> */
2254 /* method scope#ALoopExpr#continue_mark= for (self: ALoopExpr, nullable EscapeMark) */
2255 void nit__scope___ALoopExpr___continue_mark_61d(val
* self
, val
* p0
) {
2256 self
->attrs
[COLOR_nit__scope__ALoopExpr___continue_mark
].val
= p0
; /* _continue_mark on <self:ALoopExpr> */
2259 /* method scope#ALoopExpr#accept_scope_visitor for (self: ALoopExpr, ScopeVisitor) */
2260 void nit__scope___ALoopExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
2261 val
* var_v
/* var v: ScopeVisitor */;
2262 val
* var
/* : nullable ALabel */;
2263 val
* var2
/* : nullable ALabel */;
2264 val
* var3
/* : EscapeMark */;
2265 val
* var_escapemark
/* var escapemark: EscapeMark */;
2266 val
* var5
/* : nullable EscapeMark */;
2267 val
* var7
/* : nullable EscapeMark */;
2268 val
* var9
/* : nullable AExpr */;
2269 val
* var11
/* : nullable AExpr */;
2272 { /* Inline parser_nodes#ALabelable#n_label (self) on <self:ALoopExpr> */
2273 var2
= self
->attrs
[COLOR_nit__parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:ALoopExpr> */
2279 var3
= nit__scope___nit__scope__ScopeVisitor___make_escape_mark(var_v
, var
, 1);
2281 var_escapemark
= var3
;
2283 { /* Inline scope#ALoopExpr#break_mark= (self,var_escapemark) on <self:ALoopExpr> */
2284 self
->attrs
[COLOR_nit__scope__ALoopExpr___break_mark
].val
= var_escapemark
; /* _break_mark on <self:ALoopExpr> */
2289 { /* Inline scope#EscapeMark#continue_mark (var_escapemark) on <var_escapemark:EscapeMark> */
2290 var7
= var_escapemark
->attrs
[COLOR_nit__scope__EscapeMark___continue_mark
].val
; /* _continue_mark on <var_escapemark:EscapeMark> */
2296 { /* Inline scope#ALoopExpr#continue_mark= (self,var5) on <self:ALoopExpr> */
2297 self
->attrs
[COLOR_nit__scope__ALoopExpr___continue_mark
].val
= var5
; /* _continue_mark on <self:ALoopExpr> */
2302 { /* Inline parser_nodes#ALoopExpr#n_block (self) on <self:ALoopExpr> */
2303 var11
= self
->attrs
[COLOR_nit__parser_nodes__ALoopExpr___n_block
].val
; /* _n_block on <self:ALoopExpr> */
2305 RET_LABEL10
:(void)0;
2309 nit__scope___nit__scope__ScopeVisitor___enter_visit_block(var_v
, var9
, var_escapemark
); /* Direct call scope#ScopeVisitor#enter_visit_block on <var_v:ScopeVisitor>*/
2313 /* method scope#AForExpr#variables for (self: AForExpr): nullable Array[Variable] */
2314 val
* nit__scope___AForExpr___variables(val
* self
) {
2315 val
* var
/* : nullable Array[Variable] */;
2316 val
* var1
/* : nullable Array[Variable] */;
2317 var1
= self
->attrs
[COLOR_nit__scope__AForExpr___variables
].val
; /* _variables on <self:AForExpr> */
2322 /* method scope#AForExpr#variables= for (self: AForExpr, nullable Array[Variable]) */
2323 void nit__scope___AForExpr___variables_61d(val
* self
, val
* p0
) {
2324 self
->attrs
[COLOR_nit__scope__AForExpr___variables
].val
= p0
; /* _variables on <self:AForExpr> */
2327 /* method scope#AForExpr#break_mark for (self: AForExpr): nullable EscapeMark */
2328 val
* nit__scope___AForExpr___break_mark(val
* self
) {
2329 val
* var
/* : nullable EscapeMark */;
2330 val
* var1
/* : nullable EscapeMark */;
2331 var1
= self
->attrs
[COLOR_nit__scope__AForExpr___break_mark
].val
; /* _break_mark on <self:AForExpr> */
2336 /* method scope#AForExpr#break_mark= for (self: AForExpr, nullable EscapeMark) */
2337 void nit__scope___AForExpr___break_mark_61d(val
* self
, val
* p0
) {
2338 self
->attrs
[COLOR_nit__scope__AForExpr___break_mark
].val
= p0
; /* _break_mark on <self:AForExpr> */
2341 /* method scope#AForExpr#continue_mark for (self: AForExpr): nullable EscapeMark */
2342 val
* nit__scope___AForExpr___continue_mark(val
* self
) {
2343 val
* var
/* : nullable EscapeMark */;
2344 val
* var1
/* : nullable EscapeMark */;
2345 var1
= self
->attrs
[COLOR_nit__scope__AForExpr___continue_mark
].val
; /* _continue_mark on <self:AForExpr> */
2350 /* method scope#AForExpr#continue_mark= for (self: AForExpr, nullable EscapeMark) */
2351 void nit__scope___AForExpr___continue_mark_61d(val
* self
, val
* p0
) {
2352 self
->attrs
[COLOR_nit__scope__AForExpr___continue_mark
].val
= p0
; /* _continue_mark on <self:AForExpr> */
2355 /* method scope#AForExpr#accept_scope_visitor for (self: AForExpr, ScopeVisitor) */
2356 void nit__scope___AForExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
2357 val
* var_v
/* var v: ScopeVisitor */;
2358 val
* var
/* : AExpr */;
2359 val
* var2
/* : AExpr */;
2360 val
* var3
/* : List[Scope] */;
2361 val
* var5
/* : List[Scope] */;
2362 val
* var6
/* : Scope */;
2363 val
* var8
/* : Array[Variable] */;
2364 val
* var_variables
/* var variables: Array[Variable] */;
2365 val
* var10
/* : ANodes[TId] */;
2366 val
* var12
/* : ANodes[TId] */;
2367 val
* var_
/* var : ANodes[TId] */;
2368 val
* var13
/* : Iterator[ANode] */;
2369 val
* var_14
/* var : Iterator[TId] */;
2370 short int var15
/* : Bool */;
2371 val
* var16
/* : nullable Object */;
2372 val
* var_nid
/* var nid: TId */;
2373 val
* var17
/* : Variable */;
2374 val
* var18
/* : String */;
2375 val
* var_va
/* var va: Variable */;
2376 short int var19
/* : Bool */;
2377 val
* var20
/* : nullable ALabel */;
2378 val
* var22
/* : nullable ALabel */;
2379 val
* var23
/* : EscapeMark */;
2380 val
* var_escapemark
/* var escapemark: EscapeMark */;
2381 val
* var25
/* : nullable EscapeMark */;
2382 val
* var27
/* : nullable EscapeMark */;
2383 val
* var29
/* : nullable AExpr */;
2384 val
* var31
/* : nullable AExpr */;
2387 { /* Inline parser_nodes#AForExpr#n_expr (self) on <self:AForExpr> */
2388 var2
= self
->attrs
[COLOR_nit__parser_nodes__AForExpr___n_expr
].val
; /* _n_expr on <self:AForExpr> */
2389 if (unlikely(var2
== NULL
)) {
2390 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
2391 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1940);
2399 nit___nit__Visitor___enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:ScopeVisitor>*/
2402 { /* Inline scope#ScopeVisitor#scopes (var_v) on <var_v:ScopeVisitor> */
2403 var5
= var_v
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <var_v:ScopeVisitor> */
2404 if (unlikely(var5
== NULL
)) {
2405 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
2406 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
2413 var6
= NEW_nit__scope__Scope(&type_nit__scope__Scope
);
2415 { /* Inline kernel#Object#init (var6) on <var6:Scope> */
2420 standard___standard__List___standard__abstract_collection__Sequence__unshift(var3
, var6
); /* Direct call list#List#unshift on <var3:List[Scope]>*/
2422 var8
= NEW_standard__Array(&type_standard__Array__nit__Variable
);
2424 standard___standard__Array___standard__kernel__Object__init(var8
); /* Direct call array#Array#init on <var8:Array[Variable]>*/
2426 var_variables
= var8
;
2428 { /* Inline scope#AForExpr#variables= (self,var_variables) on <self:AForExpr> */
2429 self
->attrs
[COLOR_nit__scope__AForExpr___variables
].val
= var_variables
; /* _variables on <self:AForExpr> */
2434 { /* Inline parser_nodes#AForExpr#n_ids (self) on <self:AForExpr> */
2435 var12
= self
->attrs
[COLOR_nit__parser_nodes__AForExpr___n_ids
].val
; /* _n_ids on <self:AForExpr> */
2436 if (unlikely(var12
== NULL
)) {
2437 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_ids");
2438 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1934);
2442 RET_LABEL11
:(void)0;
2447 var13
= nit___nit__ANodes___standard__abstract_collection__Collection__iterator(var_
);
2452 var15
= ((short int(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_standard__abstract_collection__Iterator__is_ok
]))(var_14
); /* is_ok on <var_14:Iterator[TId]>*/
2456 var16
= ((val
*(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_standard__abstract_collection__Iterator__item
]))(var_14
); /* item on <var_14:Iterator[TId]>*/
2459 var17
= NEW_nit__Variable(&type_nit__Variable
);
2461 var18
= nit__lexer_work___Token___text(var_nid
);
2464 ((void(*)(val
* self
, val
* p0
))(var17
->class->vft
[COLOR_nit__scope__Variable__name_61d
]))(var17
, var18
); /* name= on <var17:Variable>*/
2467 ((void(*)(val
* self
))(var17
->class->vft
[COLOR_standard__kernel__Object__init
]))(var17
); /* init on <var17:Variable>*/
2471 var19
= nit__scope___nit__scope__ScopeVisitor___register_variable(var_v
, var_nid
, var_va
);
2474 standard___standard__Array___standard__abstract_collection__SimpleCollection__add(var_variables
, var_va
); /* Direct call array#Array#add on <var_variables:Array[Variable]>*/
2477 ((void(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_standard__abstract_collection__Iterator__next
]))(var_14
); /* next on <var_14:Iterator[TId]>*/
2483 BREAK_label
: (void)0;
2485 ((void(*)(val
* self
))((((long)var_14
&3)?class_info
[((long)var_14
&3)]:var_14
->class)->vft
[COLOR_standard__abstract_collection__Iterator__finish
]))(var_14
); /* finish on <var_14:Iterator[TId]>*/
2488 { /* Inline parser_nodes#ALabelable#n_label (self) on <self:AForExpr> */
2489 var22
= self
->attrs
[COLOR_nit__parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:AForExpr> */
2491 RET_LABEL21
:(void)0;
2495 var23
= nit__scope___nit__scope__ScopeVisitor___make_escape_mark(var_v
, var20
, 1);
2497 var_escapemark
= var23
;
2499 { /* Inline scope#AForExpr#break_mark= (self,var_escapemark) on <self:AForExpr> */
2500 self
->attrs
[COLOR_nit__scope__AForExpr___break_mark
].val
= var_escapemark
; /* _break_mark on <self:AForExpr> */
2501 RET_LABEL24
:(void)0;
2505 { /* Inline scope#EscapeMark#continue_mark (var_escapemark) on <var_escapemark:EscapeMark> */
2506 var27
= var_escapemark
->attrs
[COLOR_nit__scope__EscapeMark___continue_mark
].val
; /* _continue_mark on <var_escapemark:EscapeMark> */
2508 RET_LABEL26
:(void)0;
2512 { /* Inline scope#AForExpr#continue_mark= (self,var25) on <self:AForExpr> */
2513 self
->attrs
[COLOR_nit__scope__AForExpr___continue_mark
].val
= var25
; /* _continue_mark on <self:AForExpr> */
2514 RET_LABEL28
:(void)0;
2518 { /* Inline parser_nodes#AForExpr#n_block (self) on <self:AForExpr> */
2519 var31
= self
->attrs
[COLOR_nit__parser_nodes__AForExpr___n_block
].val
; /* _n_block on <self:AForExpr> */
2521 RET_LABEL30
:(void)0;
2525 nit__scope___nit__scope__ScopeVisitor___enter_visit_block(var_v
, var29
, var_escapemark
); /* Direct call scope#ScopeVisitor#enter_visit_block on <var_v:ScopeVisitor>*/
2528 nit__scope___nit__scope__ScopeVisitor___shift_scope(var_v
); /* Direct call scope#ScopeVisitor#shift_scope on <var_v:ScopeVisitor>*/
2532 /* method scope#AWithExpr#break_mark for (self: AWithExpr): nullable EscapeMark */
2533 val
* nit__scope___AWithExpr___break_mark(val
* self
) {
2534 val
* var
/* : nullable EscapeMark */;
2535 val
* var1
/* : nullable EscapeMark */;
2536 var1
= self
->attrs
[COLOR_nit__scope__AWithExpr___break_mark
].val
; /* _break_mark on <self:AWithExpr> */
2541 /* method scope#AWithExpr#break_mark= for (self: AWithExpr, nullable EscapeMark) */
2542 void nit__scope___AWithExpr___break_mark_61d(val
* self
, val
* p0
) {
2543 self
->attrs
[COLOR_nit__scope__AWithExpr___break_mark
].val
= p0
; /* _break_mark on <self:AWithExpr> */
2546 /* method scope#AWithExpr#accept_scope_visitor for (self: AWithExpr, ScopeVisitor) */
2547 void nit__scope___AWithExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
2548 val
* var_v
/* var v: ScopeVisitor */;
2549 val
* var
/* : List[Scope] */;
2550 val
* var2
/* : List[Scope] */;
2551 val
* var3
/* : Scope */;
2552 val
* var5
/* : nullable ALabel */;
2553 val
* var7
/* : nullable ALabel */;
2554 val
* var8
/* : EscapeMark */;
2555 val
* var_escapemark
/* var escapemark: EscapeMark */;
2556 val
* var10
/* : AExpr */;
2557 val
* var12
/* : AExpr */;
2558 val
* var13
/* : nullable AExpr */;
2559 val
* var15
/* : nullable AExpr */;
2562 { /* Inline scope#ScopeVisitor#scopes (var_v) on <var_v:ScopeVisitor> */
2563 var2
= var_v
->attrs
[COLOR_nit__scope__ScopeVisitor___scopes
].val
; /* _scopes on <var_v:ScopeVisitor> */
2564 if (unlikely(var2
== NULL
)) {
2565 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _scopes");
2566 PRINT_ERROR(" (%s:%d)\n", FILE_nit__scope
, 80);
2573 var3
= NEW_nit__scope__Scope(&type_nit__scope__Scope
);
2575 { /* Inline kernel#Object#init (var3) on <var3:Scope> */
2580 standard___standard__List___standard__abstract_collection__Sequence__unshift(var
, var3
); /* Direct call list#List#unshift on <var:List[Scope]>*/
2583 { /* Inline parser_nodes#ALabelable#n_label (self) on <self:AWithExpr> */
2584 var7
= self
->attrs
[COLOR_nit__parser_nodes__ALabelable___n_label
].val
; /* _n_label on <self:AWithExpr> */
2590 var8
= nit__scope___nit__scope__ScopeVisitor___make_escape_mark(var_v
, var5
, 1);
2592 var_escapemark
= var8
;
2594 { /* Inline scope#AWithExpr#break_mark= (self,var_escapemark) on <self:AWithExpr> */
2595 self
->attrs
[COLOR_nit__scope__AWithExpr___break_mark
].val
= var_escapemark
; /* _break_mark on <self:AWithExpr> */
2600 { /* Inline parser_nodes#AWithExpr#n_expr (self) on <self:AWithExpr> */
2601 var12
= self
->attrs
[COLOR_nit__parser_nodes__AWithExpr___n_expr
].val
; /* _n_expr on <self:AWithExpr> */
2602 if (unlikely(var12
== NULL
)) {
2603 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
2604 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1958);
2608 RET_LABEL11
:(void)0;
2612 nit___nit__Visitor___enter_visit(var_v
, var10
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:ScopeVisitor>*/
2615 { /* Inline parser_nodes#AWithExpr#n_block (self) on <self:AWithExpr> */
2616 var15
= self
->attrs
[COLOR_nit__parser_nodes__AWithExpr___n_block
].val
; /* _n_block on <self:AWithExpr> */
2618 RET_LABEL14
:(void)0;
2622 nit__scope___nit__scope__ScopeVisitor___enter_visit_block(var_v
, var13
, var_escapemark
); /* Direct call scope#ScopeVisitor#enter_visit_block on <var_v:ScopeVisitor>*/
2625 nit__scope___nit__scope__ScopeVisitor___shift_scope(var_v
); /* Direct call scope#ScopeVisitor#shift_scope on <var_v:ScopeVisitor>*/
2629 /* method scope#AAssertExpr#accept_scope_visitor for (self: AAssertExpr, ScopeVisitor) */
2630 void nit__scope___AAssertExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
2631 val
* var_v
/* var v: ScopeVisitor */;
2632 val
* var
/* : AExpr */;
2633 val
* var2
/* : AExpr */;
2634 val
* var3
/* : nullable AExpr */;
2635 val
* var5
/* : nullable AExpr */;
2638 { /* Inline parser_nodes#AAssertExpr#n_expr (self) on <self:AAssertExpr> */
2639 var2
= self
->attrs
[COLOR_nit__parser_nodes__AAssertExpr___n_expr
].val
; /* _n_expr on <self:AAssertExpr> */
2640 if (unlikely(var2
== NULL
)) {
2641 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
2642 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1978);
2650 nit___nit__Visitor___enter_visit(var_v
, var
); /* Direct call parser_nodes#Visitor#enter_visit on <var_v:ScopeVisitor>*/
2653 { /* Inline parser_nodes#AAssertExpr#n_else (self) on <self:AAssertExpr> */
2654 var5
= self
->attrs
[COLOR_nit__parser_nodes__AAssertExpr___n_else
].val
; /* _n_else on <self:AAssertExpr> */
2660 nit__scope___nit__scope__ScopeVisitor___enter_visit_block(var_v
, var3
, ((val
*)NULL
)); /* Direct call scope#ScopeVisitor#enter_visit_block on <var_v:ScopeVisitor>*/
2664 /* method scope#AVarFormExpr#variable for (self: AVarFormExpr): nullable Variable */
2665 val
* nit__scope___AVarFormExpr___variable(val
* self
) {
2666 val
* var
/* : nullable Variable */;
2667 val
* var1
/* : nullable Variable */;
2668 var1
= self
->attrs
[COLOR_nit__scope__AVarFormExpr___variable
].val
; /* _variable on <self:AVarFormExpr> */
2673 /* method scope#AVarFormExpr#variable= for (self: AVarFormExpr, nullable Variable) */
2674 void nit__scope___AVarFormExpr___variable_61d(val
* self
, val
* p0
) {
2675 self
->attrs
[COLOR_nit__scope__AVarFormExpr___variable
].val
= p0
; /* _variable on <self:AVarFormExpr> */
2678 /* method scope#ACallFormExpr#accept_scope_visitor for (self: ACallFormExpr, ScopeVisitor) */
2679 void nit__scope___ACallFormExpr___ANode__accept_scope_visitor(val
* self
, val
* p0
) {
2680 val
* var_v
/* var v: ScopeVisitor */;
2681 val
* var
/* : AExpr */;
2682 val
* var2
/* : AExpr */;
2683 short int var3
/* : Bool */;
2686 val
* var4
/* : TId */;
2687 val
* var6
/* : TId */;
2688 val
* var7
/* : String */;
2689 val
* var_name
/* var name: String */;
2690 val
* var8
/* : nullable Variable */;
2691 val
* var_variable
/* var variable: nullable Variable */;
2692 short int var9
/* : Bool */;
2693 short int var10
/* : Bool */;
2694 val
* var_other
/* var other: nullable Object */;
2695 short int var12
/* : Bool */;
2696 short int var13
/* : Bool */;
2697 short int var14
/* : Bool */;
2698 val
* var15
/* : AExprs */;
2699 val
* var17
/* : AExprs */;
2700 val
* var18
/* : ANodes[AExpr] */;
2701 val
* var20
/* : ANodes[AExpr] */;
2702 short int var21
/* : Bool */;
2703 short int var22
/* : Bool */;
2704 short int var_
/* var : Bool */;
2705 val
* var23
/* : AExprs */;
2706 val
* var25
/* : AExprs */;
2707 short int var26
/* : Bool */;
2710 val
* var29
/* : NativeArray[String] */;
2711 static val
* varonce
;
2712 static val
* varonce30
;
2713 val
* var31
/* : String */;
2714 char* var32
/* : NativeString */;
2715 val
* var33
/* : FlatString */;
2716 static val
* varonce34
;
2717 val
* var35
/* : String */;
2718 char* var36
/* : NativeString */;
2719 val
* var37
/* : FlatString */;
2720 val
* var38
/* : String */;
2721 val
* var39
/* : AVarFormExpr */;
2722 val
* var_n
/* var n: AExpr */;
2725 { /* Inline parser_nodes#ASendExpr#n_expr (self) on <self:ACallFormExpr> */
2726 var2
= self
->attrs
[COLOR_nit__parser_nodes__ASendExpr___n_expr
].val
; /* _n_expr on <self:ACallFormExpr> */
2727 if (unlikely(var2
== NULL
)) {
2728 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
2729 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2025);
2736 /* <var:AExpr> isa AImplicitSelfExpr */
2737 cltype
= type_nit__AImplicitSelfExpr
.color
;
2738 idtype
= type_nit__AImplicitSelfExpr
.id
;
2739 if(cltype
>= var
->type
->table_size
) {
2742 var3
= var
->type
->type_table
[cltype
] == idtype
;
2746 { /* Inline parser_nodes#ACallFormExpr#n_id (self) on <self:ACallFormExpr> */
2747 var6
= self
->attrs
[COLOR_nit__parser_nodes__ACallFormExpr___n_id
].val
; /* _n_id on <self:ACallFormExpr> */
2748 if (unlikely(var6
== NULL
)) {
2749 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
2750 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2292);
2758 var7
= nit__lexer_work___Token___text(var4
);
2762 var8
= nit__scope___nit__scope__ScopeVisitor___search_variable(var_v
, var_name
);
2764 var_variable
= var8
;
2765 if (var_variable
== NULL
) {
2766 var9
= 0; /* is null */
2768 var9
= 1; /* arg is null and recv is not */
2771 { /* Inline kernel#Object#!= (var_variable,((val*)NULL)) on <var_variable:nullable Variable> */
2772 var_other
= ((val
*)NULL
);
2774 var12
= ((short int(*)(val
* self
, val
* p0
))(var_variable
->class->vft
[COLOR_standard__kernel__Object___61d_61d
]))(var_variable
, var_other
); /* == on <var_variable:nullable Variable(Variable)>*/
2779 RET_LABEL11
:(void)0;
2785 { /* Inline parser_nodes#ACallFormExpr#n_args (self) on <self:ACallFormExpr> */
2786 var17
= self
->attrs
[COLOR_nit__parser_nodes__ACallFormExpr___n_args
].val
; /* _n_args on <self:ACallFormExpr> */
2787 if (unlikely(var17
== NULL
)) {
2788 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
2789 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2295);
2793 RET_LABEL16
:(void)0;
2797 { /* Inline parser_nodes#AExprs#n_exprs (var15) on <var15:AExprs> */
2798 var20
= var15
->attrs
[COLOR_nit__parser_nodes__AExprs___n_exprs
].val
; /* _n_exprs on <var15:AExprs> */
2799 if (unlikely(var20
== NULL
)) {
2800 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_exprs");
2801 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2771);
2805 RET_LABEL19
:(void)0;
2809 var21
= nit___nit__ANodes___standard__abstract_collection__Collection__is_empty(var18
);
2817 { /* Inline parser_nodes#ACallFormExpr#n_args (self) on <self:ACallFormExpr> */
2818 var25
= self
->attrs
[COLOR_nit__parser_nodes__ACallFormExpr___n_args
].val
; /* _n_args on <self:ACallFormExpr> */
2819 if (unlikely(var25
== NULL
)) {
2820 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_args");
2821 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2295);
2825 RET_LABEL24
:(void)0;
2828 /* <var23:AExprs> isa AParExprs */
2829 cltype27
= type_nit__AParExprs
.color
;
2830 idtype28
= type_nit__AParExprs
.id
;
2831 if(cltype27
>= var23
->type
->table_size
) {
2834 var26
= var23
->type
->type_table
[cltype27
] == idtype28
;
2839 if (unlikely(varonce
==NULL
)) {
2840 var29
= NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String
);
2841 if (likely(varonce30
!=NULL
)) {
2845 var33
= standard___standard__NativeString___to_s_with_length(var32
, 8l);
2849 ((struct instance_standard__NativeArray
*)var29
)->values
[0]=var31
;
2850 if (likely(varonce34
!=NULL
)) {
2853 var36
= "` is a variable, not a method.";
2854 var37
= standard___standard__NativeString___to_s_with_length(var36
, 30l);
2858 ((struct instance_standard__NativeArray
*)var29
)->values
[2]=var35
;
2863 ((struct instance_standard__NativeArray
*)var29
)->values
[1]=var_name
;
2865 var38
= ((val
*(*)(val
* self
))(var29
->class->vft
[COLOR_standard__string__NativeArray__native_to_s
]))(var29
); /* native_to_s on <var29:NativeArray[String]>*/
2869 nit__scope___nit__scope__ScopeVisitor___error(var_v
, self
, var38
); /* Direct call scope#ScopeVisitor#error on <var_v:ScopeVisitor>*/
2875 var39
= ((val
*(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nit__scope__ACallFormExpr__variable_create
]))(self
, var_variable
); /* variable_create on <self:ACallFormExpr>*/
2879 { /* Inline scope#AVarFormExpr#variable= (var_n,var_variable) on <var_n:AExpr(AVarFormExpr)> */
2880 var_n
->attrs
[COLOR_nit__scope__AVarFormExpr___variable
].val
= var_variable
; /* _variable on <var_n:AExpr(AVarFormExpr)> */
2881 RET_LABEL40
:(void)0;
2885 nit__transform___AExpr___nit__parser_nodes__ANode__replace_with(self
, var_n
); /* Direct call transform#AExpr#replace_with on <self:ACallFormExpr>*/
2888 nit__scope___ANode___accept_scope_visitor(var_n
, var_v
); /* Direct call scope#ANode#accept_scope_visitor on <var_n:AExpr(AVarFormExpr)>*/
2896 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nit__scope___ACallFormExpr___ANode__accept_scope_visitor
]))(self
, p0
); /* accept_scope_visitor on <self:ACallFormExpr>*/
2900 /* method scope#ACallExpr#variable_create for (self: ACallExpr, Variable): AVarFormExpr */
2901 val
* nit__scope___ACallExpr___ACallFormExpr__variable_create(val
* self
, val
* p0
) {
2902 val
* var
/* : AVarFormExpr */;
2903 val
* var_variable
/* var variable: Variable */;
2904 val
* var2
/* : AVarExpr */;
2905 val
* var3
/* : TId */;
2906 val
* var5
/* : TId */;
2909 { /* Inline scope#Variable#warn_unread= (var_variable,0) on <var_variable:Variable> */
2910 var_variable
->attrs
[COLOR_nit__scope__Variable___warn_unread
].s
= 0; /* _warn_unread on <var_variable:Variable> */
2914 var2
= NEW_nit__AVarExpr(&type_nit__AVarExpr
);
2916 { /* Inline parser_nodes#ACallFormExpr#n_id (self) on <self:ACallExpr> */
2917 var5
= self
->attrs
[COLOR_nit__parser_nodes__ACallFormExpr___n_id
].val
; /* _n_id on <self:ACallExpr> */
2918 if (unlikely(var5
== NULL
)) {
2919 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
2920 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2292);
2928 nit__parser_prod___AVarExpr___init_avarexpr(var2
, var3
); /* Direct call parser_prod#AVarExpr#init_avarexpr on <var2:AVarExpr>*/
2935 /* method scope#ACallAssignExpr#variable_create for (self: ACallAssignExpr, Variable): AVarFormExpr */
2936 val
* nit__scope___ACallAssignExpr___ACallFormExpr__variable_create(val
* self
, val
* p0
) {
2937 val
* var
/* : AVarFormExpr */;
2938 val
* var_variable
/* var variable: Variable */;
2939 val
* var1
/* : AVarAssignExpr */;
2940 val
* var2
/* : TId */;
2941 val
* var4
/* : TId */;
2942 val
* var5
/* : TAssign */;
2943 val
* var7
/* : TAssign */;
2944 val
* var8
/* : AExpr */;
2945 val
* var10
/* : AExpr */;
2947 var1
= NEW_nit__AVarAssignExpr(&type_nit__AVarAssignExpr
);
2949 { /* Inline parser_nodes#ACallFormExpr#n_id (self) on <self:ACallAssignExpr> */
2950 var4
= self
->attrs
[COLOR_nit__parser_nodes__ACallFormExpr___n_id
].val
; /* _n_id on <self:ACallAssignExpr> */
2951 if (unlikely(var4
== NULL
)) {
2952 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
2953 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2292);
2961 { /* Inline parser_nodes#AAssignFormExpr#n_assign (self) on <self:ACallAssignExpr> */
2962 var7
= self
->attrs
[COLOR_nit__parser_nodes__AAssignFormExpr___n_assign
].val
; /* _n_assign on <self:ACallAssignExpr> */
2963 if (unlikely(var7
== NULL
)) {
2964 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign");
2965 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1992);
2973 { /* Inline parser_nodes#AAssignFormExpr#n_value (self) on <self:ACallAssignExpr> */
2974 var10
= self
->attrs
[COLOR_nit__parser_nodes__AAssignFormExpr___n_value
].val
; /* _n_value on <self:ACallAssignExpr> */
2975 if (unlikely(var10
== NULL
)) {
2976 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
2977 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 1995);
2985 nit__parser_prod___AVarAssignExpr___init_avarassignexpr(var1
, var2
, var5
, var8
); /* Direct call parser_prod#AVarAssignExpr#init_avarassignexpr on <var1:AVarAssignExpr>*/
2992 /* method scope#ACallReassignExpr#variable_create for (self: ACallReassignExpr, Variable): AVarFormExpr */
2993 val
* nit__scope___ACallReassignExpr___ACallFormExpr__variable_create(val
* self
, val
* p0
) {
2994 val
* var
/* : AVarFormExpr */;
2995 val
* var_variable
/* var variable: Variable */;
2996 val
* var2
/* : AVarReassignExpr */;
2997 val
* var3
/* : TId */;
2998 val
* var5
/* : TId */;
2999 val
* var6
/* : AAssignOp */;
3000 val
* var8
/* : AAssignOp */;
3001 val
* var9
/* : AExpr */;
3002 val
* var11
/* : AExpr */;
3005 { /* Inline scope#Variable#warn_unread= (var_variable,0) on <var_variable:Variable> */
3006 var_variable
->attrs
[COLOR_nit__scope__Variable___warn_unread
].s
= 0; /* _warn_unread on <var_variable:Variable> */
3010 var2
= NEW_nit__AVarReassignExpr(&type_nit__AVarReassignExpr
);
3012 { /* Inline parser_nodes#ACallFormExpr#n_id (self) on <self:ACallReassignExpr> */
3013 var5
= self
->attrs
[COLOR_nit__parser_nodes__ACallFormExpr___n_id
].val
; /* _n_id on <self:ACallReassignExpr> */
3014 if (unlikely(var5
== NULL
)) {
3015 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_id");
3016 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2292);
3024 { /* Inline parser_nodes#AReassignFormExpr#n_assign_op (self) on <self:ACallReassignExpr> */
3025 var8
= self
->attrs
[COLOR_nit__parser_nodes__AReassignFormExpr___n_assign_op
].val
; /* _n_assign_op on <self:ACallReassignExpr> */
3026 if (unlikely(var8
== NULL
)) {
3027 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_assign_op");
3028 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2003);
3036 { /* Inline parser_nodes#AReassignFormExpr#n_value (self) on <self:ACallReassignExpr> */
3037 var11
= self
->attrs
[COLOR_nit__parser_nodes__AReassignFormExpr___n_value
].val
; /* _n_value on <self:ACallReassignExpr> */
3038 if (unlikely(var11
== NULL
)) {
3039 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_value");
3040 PRINT_ERROR(" (%s:%d)\n", FILE_nit__parser_nodes
, 2006);
3044 RET_LABEL10
:(void)0;
3048 nit__parser_prod___AVarReassignExpr___init_avarreassignexpr(var2
, var3
, var6
, var9
); /* Direct call parser_prod#AVarReassignExpr#init_avarreassignexpr on <var2:AVarReassignExpr>*/