1 #include "nitc__local_var_init.sep.0.h"
2 /* method local_var_init$ToolContext$local_var_init_phase for (self: ToolContext): Phase */
3 val
* nitc__local_var_init___ToolContext___local_var_init_phase(val
* self
) {
4 val
* var
/* : Phase */;
5 val
* var1
/* : Phase */;
6 var1
= self
->attrs
[COLOR_nitc__local_var_init__ToolContext___local_var_init_phase
].val
; /* _local_var_init_phase on <self:ToolContext> */
7 if (unlikely(var1
== NULL
)) {
8 if(catchStack
.cursor
>= 0){
9 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
11 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _local_var_init_phase");
12 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 24);
19 /* method local_var_init$LocalVarInitPhase$process_npropdef for (self: LocalVarInitPhase, APropdef) */
20 void nitc__local_var_init___nitc__local_var_init__LocalVarInitPhase___nitc__phase__Phase__process_npropdef(val
* self
, val
* p0
) {
21 val
* var_npropdef
/* var npropdef: APropdef */;
22 val
* var
/* : ToolContext */;
23 val
* var2
/* : ToolContext */;
26 { /* Inline phase$Phase$toolcontext (self) on <self:LocalVarInitPhase> */
27 var2
= self
->attrs
[COLOR_nitc__phase__Phase___toolcontext
].val
; /* _toolcontext on <self:LocalVarInitPhase> */
28 if (unlikely(var2
== NULL
)) {
29 if(catchStack
.cursor
>= 0){
30 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
32 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
33 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 210);
41 nitc__local_var_init___APropdef___do_local_var_init(var_npropdef
, var
); /* Direct call local_var_init$APropdef$do_local_var_init on <var_npropdef:APropdef>*/
45 /* method local_var_init$APropdef$do_local_var_init for (self: APropdef, ToolContext) */
46 void nitc__local_var_init___APropdef___do_local_var_init(val
* self
, val
* p0
) {
47 val
* var_toolcontext
/* var toolcontext: ToolContext */;
48 val
* var
/* : LocalVarInitVisitor */;
49 val
* var_v
/* var v: LocalVarInitVisitor */;
51 var
= NEW_nitc__local_var_init__LocalVarInitVisitor(&type_nitc__local_var_init__LocalVarInitVisitor
);
53 ((void(*)(val
* self
, val
* p0
))(var
->class->vft
[COLOR_nitc__local_var_init__LocalVarInitVisitor__toolcontext_61d
]))(var
, var_toolcontext
); /* toolcontext= on <var:LocalVarInitVisitor>*/
56 ((void(*)(val
* self
))(var
->class->vft
[COLOR_core__kernel__Object__init
]))(var
); /* init on <var:LocalVarInitVisitor>*/
60 nitc___nitc__Visitor___enter_visit(var_v
, self
); /* Direct call parser_nodes$Visitor$enter_visit on <var_v:LocalVarInitVisitor>*/
64 /* method local_var_init$LocalVarInitVisitor$toolcontext for (self: LocalVarInitVisitor): ToolContext */
65 val
* nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___toolcontext(val
* self
) {
66 val
* var
/* : ToolContext */;
67 val
* var1
/* : ToolContext */;
68 var1
= self
->attrs
[COLOR_nitc__local_var_init__LocalVarInitVisitor___toolcontext
].val
; /* _toolcontext on <self:LocalVarInitVisitor> */
69 if (unlikely(var1
== NULL
)) {
70 if(catchStack
.cursor
>= 0){
71 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
73 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
74 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 46);
81 /* method local_var_init$LocalVarInitVisitor$toolcontext= for (self: LocalVarInitVisitor, ToolContext) */
82 void nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___toolcontext_61d(val
* self
, val
* p0
) {
83 self
->attrs
[COLOR_nitc__local_var_init__LocalVarInitVisitor___toolcontext
].val
= p0
; /* _toolcontext on <self:LocalVarInitVisitor> */
86 /* method local_var_init$LocalVarInitVisitor$maybe_unset_vars for (self: LocalVarInitVisitor): Set[Variable] */
87 val
* nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___maybe_unset_vars(val
* self
) {
88 val
* var
/* : Set[Variable] */;
89 val
* var1
/* : Set[Variable] */;
90 var1
= self
->attrs
[COLOR_nitc__local_var_init__LocalVarInitVisitor___maybe_unset_vars
].val
; /* _maybe_unset_vars on <self:LocalVarInitVisitor> */
91 if (unlikely(var1
== NULL
)) {
92 if(catchStack
.cursor
>= 0){
93 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
95 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _maybe_unset_vars");
96 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 48);
103 /* method local_var_init$LocalVarInitVisitor$mark_is_unset for (self: LocalVarInitVisitor, AExpr, nullable Variable) */
104 void nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___mark_is_unset(val
* self
, val
* p0
, val
* p1
) {
105 val
* var_node
/* var node: AExpr */;
106 val
* var_variable
/* var variable: nullable Variable */;
107 short int var
/* : Bool */;
108 short int var1
/* : Bool */;
109 val
* var_other
/* var other: nullable Object */;
110 short int var3
/* : Bool */;
111 short int var4
/* : Bool */;
112 val
* var5
/* : Set[Variable] */;
113 val
* var7
/* : Set[Variable] */;
116 if (var_variable
== NULL
) {
117 var
= 0; /* is null */
119 var
= 1; /* arg is null and recv is not */
122 { /* Inline kernel$Object$!= (var_variable,((val*)NULL)) on <var_variable:nullable Variable> */
123 var_other
= ((val
*)NULL
);
125 var3
= ((short int(*)(val
* self
, val
* p0
))(var_variable
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_variable
, var_other
); /* == on <var_variable:nullable Variable(Variable)>*/
134 if (unlikely(!var
)) {
135 if(catchStack
.cursor
>= 0){
136 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
138 PRINT_ERROR("Runtime error: %s", "Assert failed");
139 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 53);
143 { /* Inline local_var_init$LocalVarInitVisitor$maybe_unset_vars (self) on <self:LocalVarInitVisitor> */
144 var7
= self
->attrs
[COLOR_nitc__local_var_init__LocalVarInitVisitor___maybe_unset_vars
].val
; /* _maybe_unset_vars on <self:LocalVarInitVisitor> */
145 if (unlikely(var7
== NULL
)) {
146 if(catchStack
.cursor
>= 0){
147 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
149 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _maybe_unset_vars");
150 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 48);
158 ((void(*)(val
* self
, val
* p0
))((((long)var5
&3)?class_info
[((long)var5
&3)]:var5
->class)->vft
[COLOR_core__abstract_collection__SimpleCollection__add
]))(var5
, var_variable
); /* add on <var5:Set[Variable]>*/
162 /* method local_var_init$LocalVarInitVisitor$mark_is_set for (self: LocalVarInitVisitor, AExpr, nullable Variable) */
163 void nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___mark_is_set(val
* self
, val
* p0
, val
* p1
) {
164 val
* var_node
/* var node: AExpr */;
165 val
* var_variable
/* var variable: nullable Variable */;
166 short int var
/* : Bool */;
167 short int var1
/* : Bool */;
168 val
* var_other
/* var other: nullable Object */;
169 short int var3
/* : Bool */;
170 short int var4
/* : Bool */;
171 val
* var5
/* : Set[Variable] */;
172 val
* var7
/* : Set[Variable] */;
173 short int var8
/* : Bool */;
174 short int var9
/* : Bool */;
175 val
* var10
/* : nullable FlowContext */;
176 val
* var12
/* : nullable FlowContext */;
177 val
* var_flow
/* var flow: FlowContext */;
178 val
* var13
/* : Set[Variable] */;
179 val
* var15
/* : Set[Variable] */;
182 if (var_variable
== NULL
) {
183 var
= 0; /* is null */
185 var
= 1; /* arg is null and recv is not */
188 { /* Inline kernel$Object$!= (var_variable,((val*)NULL)) on <var_variable:nullable Variable> */
189 var_other
= ((val
*)NULL
);
191 var3
= ((short int(*)(val
* self
, val
* p0
))(var_variable
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_variable
, var_other
); /* == on <var_variable:nullable Variable(Variable)>*/
200 if (unlikely(!var
)) {
201 if(catchStack
.cursor
>= 0){
202 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
204 PRINT_ERROR("Runtime error: %s", "Assert failed");
205 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 59);
209 { /* Inline local_var_init$LocalVarInitVisitor$maybe_unset_vars (self) on <self:LocalVarInitVisitor> */
210 var7
= self
->attrs
[COLOR_nitc__local_var_init__LocalVarInitVisitor___maybe_unset_vars
].val
; /* _maybe_unset_vars on <self:LocalVarInitVisitor> */
211 if (unlikely(var7
== NULL
)) {
212 if(catchStack
.cursor
>= 0){
213 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
215 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _maybe_unset_vars");
216 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 48);
224 var8
= ((short int(*)(val
* self
, val
* p0
))((((long)var5
&3)?class_info
[((long)var5
&3)]:var5
->class)->vft
[COLOR_core__abstract_collection__Collection__has
]))(var5
, var_variable
); /* has on <var5:Set[Variable]>*/
232 { /* Inline flow$AExpr$after_flow_context (var_node) on <var_node:AExpr> */
233 var12
= var_node
->attrs
[COLOR_nitc__flow__AExpr___after_flow_context
].val
; /* _after_flow_context on <var_node:AExpr> */
238 if (unlikely(var10
== NULL
)) {
239 if(catchStack
.cursor
>= 0){
240 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
242 PRINT_ERROR("Runtime error: %s", "Cast failed");
243 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 62);
248 { /* Inline local_var_init$FlowContext$set_vars (var_flow) on <var_flow:FlowContext> */
249 var15
= var_flow
->attrs
[COLOR_nitc__local_var_init__FlowContext___set_vars
].val
; /* _set_vars on <var_flow:FlowContext> */
250 if (unlikely(var15
== NULL
)) {
251 if(catchStack
.cursor
>= 0){
252 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
254 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _set_vars");
255 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 86);
263 ((void(*)(val
* self
, val
* p0
))((((long)var13
&3)?class_info
[((long)var13
&3)]:var13
->class)->vft
[COLOR_core__abstract_collection__SimpleCollection__add
]))(var13
, var_variable
); /* add on <var13:Set[Variable]>*/
267 /* method local_var_init$LocalVarInitVisitor$check_is_set for (self: LocalVarInitVisitor, AExpr, nullable Variable) */
268 void nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___check_is_set(val
* self
, val
* p0
, val
* p1
) {
269 val
* var_node
/* var node: AExpr */;
270 val
* var_variable
/* var variable: nullable Variable */;
271 short int var
/* : Bool */;
272 short int var1
/* : Bool */;
273 val
* var_other
/* var other: nullable Object */;
274 short int var3
/* : Bool */;
275 short int var4
/* : Bool */;
276 val
* var5
/* : Set[Variable] */;
277 val
* var7
/* : Set[Variable] */;
278 short int var8
/* : Bool */;
279 short int var9
/* : Bool */;
280 val
* var10
/* : nullable FlowContext */;
281 val
* var12
/* : nullable FlowContext */;
282 val
* var_flow
/* var flow: FlowContext */;
283 short int var13
/* : Bool */;
284 short int var14
/* : Bool */;
285 val
* var15
/* : ToolContext */;
286 val
* var17
/* : ToolContext */;
287 val
* var18
/* : Location */;
288 val
* var19
/* : NativeArray[String] */;
290 static val
* varonce20
;
291 val
* var21
/* : String */;
292 char* var22
/* : CString */;
293 val
* var23
/* : String */;
294 val
* var24
/* : nullable Int */;
295 val
* var25
/* : nullable Int */;
296 val
* var26
/* : nullable Bool */;
297 val
* var27
/* : nullable Bool */;
298 static val
* varonce28
;
299 val
* var29
/* : String */;
300 char* var30
/* : CString */;
301 val
* var31
/* : String */;
302 val
* var32
/* : nullable Int */;
303 val
* var33
/* : nullable Int */;
304 val
* var34
/* : nullable Bool */;
305 val
* var35
/* : nullable Bool */;
306 val
* var36
/* : String */;
307 val
* var37
/* : String */;
308 val
* var38
/* : Message */;
309 val
* var39
/* : Set[Variable] */;
310 val
* var41
/* : Set[Variable] */;
313 if (var_variable
== NULL
) {
314 var
= 0; /* is null */
316 var
= 1; /* arg is null and recv is not */
319 { /* Inline kernel$Object$!= (var_variable,((val*)NULL)) on <var_variable:nullable Variable> */
320 var_other
= ((val
*)NULL
);
322 var3
= ((short int(*)(val
* self
, val
* p0
))(var_variable
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_variable
, var_other
); /* == on <var_variable:nullable Variable(Variable)>*/
331 if (unlikely(!var
)) {
332 if(catchStack
.cursor
>= 0){
333 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
335 PRINT_ERROR("Runtime error: %s", "Assert failed");
336 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 68);
340 { /* Inline local_var_init$LocalVarInitVisitor$maybe_unset_vars (self) on <self:LocalVarInitVisitor> */
341 var7
= self
->attrs
[COLOR_nitc__local_var_init__LocalVarInitVisitor___maybe_unset_vars
].val
; /* _maybe_unset_vars on <self:LocalVarInitVisitor> */
342 if (unlikely(var7
== NULL
)) {
343 if(catchStack
.cursor
>= 0){
344 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
346 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _maybe_unset_vars");
347 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 48);
355 var8
= ((short int(*)(val
* self
, val
* p0
))((((long)var5
&3)?class_info
[((long)var5
&3)]:var5
->class)->vft
[COLOR_core__abstract_collection__Collection__has
]))(var5
, var_variable
); /* has on <var5:Set[Variable]>*/
363 { /* Inline flow$AExpr$after_flow_context (var_node) on <var_node:AExpr> */
364 var12
= var_node
->attrs
[COLOR_nitc__flow__AExpr___after_flow_context
].val
; /* _after_flow_context on <var_node:AExpr> */
369 if (unlikely(var10
== NULL
)) {
370 if(catchStack
.cursor
>= 0){
371 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
373 PRINT_ERROR("Runtime error: %s", "Cast failed");
374 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 71);
379 var13
= nitc__local_var_init___FlowContext___is_variable_set(var_flow
, var_variable
);
384 { /* Inline local_var_init$LocalVarInitVisitor$toolcontext (self) on <self:LocalVarInitVisitor> */
385 var17
= self
->attrs
[COLOR_nitc__local_var_init__LocalVarInitVisitor___toolcontext
].val
; /* _toolcontext on <self:LocalVarInitVisitor> */
386 if (unlikely(var17
== NULL
)) {
387 if(catchStack
.cursor
>= 0){
388 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
390 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
391 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 46);
399 var18
= nitc___nitc__ANode___hot_location(var_node
);
401 if (unlikely(varonce
==NULL
)) {
402 var19
= NEW_core__NativeArray((int)3l, &type_core__NativeArray__core__String
);
403 if (likely(varonce20
!=NULL
)) {
406 var22
= "Error: possibly unset variable `";
407 var24
= (val
*)(32l<<2|1);
408 var25
= (val
*)(32l<<2|1);
409 var26
= (val
*)((long)(0)<<2|3);
410 var27
= (val
*)((long)(0)<<2|3);
411 var23
= core__flat___CString___to_s_unsafe(var22
, var24
, var25
, var26
, var27
);
415 ((struct instance_core__NativeArray
*)var19
)->values
[0]=var21
;
416 if (likely(varonce28
!=NULL
)) {
420 var32
= (val
*)(2l<<2|1);
421 var33
= (val
*)(2l<<2|1);
422 var34
= (val
*)((long)(0)<<2|3);
423 var35
= (val
*)((long)(0)<<2|3);
424 var31
= core__flat___CString___to_s_unsafe(var30
, var32
, var33
, var34
, var35
);
428 ((struct instance_core__NativeArray
*)var19
)->values
[2]=var29
;
434 var36
= ((val
*(*)(val
* self
))(var_variable
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_variable
); /* to_s on <var_variable:nullable Variable(Variable)>*/
436 ((struct instance_core__NativeArray
*)var19
)->values
[1]=var36
;
438 var37
= ((val
*(*)(val
* self
))(var19
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var19
); /* native_to_s on <var19:NativeArray[String]>*/
442 var38
= nitc___nitc__ToolContext___error(var15
, var18
, var37
);
445 { /* Inline local_var_init$LocalVarInitVisitor$maybe_unset_vars (self) on <self:LocalVarInitVisitor> */
446 var41
= self
->attrs
[COLOR_nitc__local_var_init__LocalVarInitVisitor___maybe_unset_vars
].val
; /* _maybe_unset_vars on <self:LocalVarInitVisitor> */
447 if (unlikely(var41
== NULL
)) {
448 if(catchStack
.cursor
>= 0){
449 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
451 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _maybe_unset_vars");
452 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 48);
460 ((void(*)(val
* self
, val
* p0
))((((long)var39
&3)?class_info
[((long)var39
&3)]:var39
->class)->vft
[COLOR_core__abstract_collection__RemovableCollection__remove
]))(var39
, var_variable
); /* remove on <var39:Set[Variable]>*/
466 /* method local_var_init$LocalVarInitVisitor$visit for (self: LocalVarInitVisitor, ANode) */
467 void nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___nitc__parser_nodes__Visitor__visit(val
* self
, val
* p0
) {
468 val
* var_n
/* var n: ANode */;
471 ((void(*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_nitc__local_var_init__ANode__accept_local_var_visitor
]))(var_n
, self
); /* accept_local_var_visitor on <var_n:ANode>*/
475 /* method local_var_init$LocalVarInitVisitor$init for (self: LocalVarInitVisitor) */
476 void nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___core__kernel__Object__init(val
* self
) {
478 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___core__kernel__Object__init
]))(self
); /* init on <self:LocalVarInitVisitor>*/
482 /* method local_var_init$FlowContext$set_vars for (self: FlowContext): Set[Variable] */
483 val
* nitc__local_var_init___FlowContext___set_vars(val
* self
) {
484 val
* var
/* : Set[Variable] */;
485 val
* var1
/* : Set[Variable] */;
486 var1
= self
->attrs
[COLOR_nitc__local_var_init__FlowContext___set_vars
].val
; /* _set_vars on <self:FlowContext> */
487 if (unlikely(var1
== NULL
)) {
488 if(catchStack
.cursor
>= 0){
489 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
491 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _set_vars");
492 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 86);
499 /* method local_var_init$FlowContext$is_variable_set for (self: FlowContext, Variable): Bool */
500 short int nitc__local_var_init___FlowContext___is_variable_set(val
* self
, val
* p0
) {
501 short int var
/* : Bool */;
502 val
* var_variable
/* var variable: Variable */;
503 val
* var1
/* : Set[Variable] */;
504 val
* var3
/* : Set[Variable] */;
505 short int var4
/* : Bool */;
506 val
* var5
/* : Array[FlowContext] */;
507 val
* var7
/* : Array[FlowContext] */;
508 val
* var_previous
/* var previous: Array[FlowContext] */;
509 long var8
/* : Int */;
510 long var10
/* : Int */;
511 short int var11
/* : Bool */;
512 short int var13
/* : Bool */;
513 long var14
/* : Int */;
514 long var16
/* : Int */;
515 short int var17
/* : Bool */;
516 short int var19
/* : Bool */;
517 val
* var20
/* : nullable Object */;
518 short int var21
/* : Bool */;
519 val
* var22
/* : Array[FlowContext] */;
520 val
* var24
/* : Array[FlowContext] */;
521 val
* var_
/* var : Array[FlowContext] */;
522 val
* var25
/* : IndexedIterator[nullable Object] */;
523 val
* var_26
/* var : IndexedIterator[FlowContext] */;
524 short int var27
/* : Bool */;
525 val
* var28
/* : nullable Object */;
526 val
* var_p
/* var p: FlowContext */;
527 short int var29
/* : Bool */;
528 short int var30
/* : Bool */;
529 val
* var31
/* : Set[Variable] */;
530 val
* var33
/* : Set[Variable] */;
533 { /* Inline local_var_init$FlowContext$set_vars (self) on <self:FlowContext> */
534 var3
= self
->attrs
[COLOR_nitc__local_var_init__FlowContext___set_vars
].val
; /* _set_vars on <self:FlowContext> */
535 if (unlikely(var3
== NULL
)) {
536 if(catchStack
.cursor
>= 0){
537 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
539 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _set_vars");
540 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 86);
548 var4
= ((short int(*)(val
* self
, val
* p0
))((((long)var1
&3)?class_info
[((long)var1
&3)]:var1
->class)->vft
[COLOR_core__abstract_collection__Collection__has
]))(var1
, var_variable
); /* has on <var1:Set[Variable]>*/
556 { /* Inline flow$FlowContext$previous (self) on <self:FlowContext> */
557 var7
= self
->attrs
[COLOR_nitc__flow__FlowContext___previous
].val
; /* _previous on <self:FlowContext> */
558 if (unlikely(var7
== NULL
)) {
559 if(catchStack
.cursor
>= 0){
560 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
562 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _previous");
563 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow
, 189);
572 { /* Inline array$AbstractArrayRead$length (var_previous) on <var_previous:Array[FlowContext]> */
573 var10
= var_previous
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_previous:Array[FlowContext]> */
579 { /* Inline kernel$Int$== (var8,0l) on <var8:Int> */
592 { /* Inline array$AbstractArrayRead$length (var_previous) on <var_previous:Array[FlowContext]> */
593 var16
= var_previous
->attrs
[COLOR_core__array__AbstractArrayRead___length
].l
; /* _length on <var_previous:Array[FlowContext]> */
599 { /* Inline kernel$Int$== (var14,1l) on <var14:Int> */
608 var20
= core___core__SequenceRead___Collection__first(var_previous
);
611 var21
= nitc__local_var_init___FlowContext___is_variable_set(var20
, var_variable
);
618 { /* Inline flow$FlowContext$previous (self) on <self:FlowContext> */
619 var24
= self
->attrs
[COLOR_nitc__flow__FlowContext___previous
].val
; /* _previous on <self:FlowContext> */
620 if (unlikely(var24
== NULL
)) {
621 if(catchStack
.cursor
>= 0){
622 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
624 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _previous");
625 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__flow
, 189);
634 var25
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_
);
639 var27
= ((short int(*)(val
* self
))((((long)var_26
&3)?class_info
[((long)var_26
&3)]:var_26
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_26
); /* is_ok on <var_26:IndexedIterator[FlowContext]>*/
646 var28
= ((val
*(*)(val
* self
))((((long)var_26
&3)?class_info
[((long)var_26
&3)]:var_26
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_26
); /* item on <var_26:IndexedIterator[FlowContext]>*/
650 var29
= nitc__local_var_init___FlowContext___is_variable_set(var_p
, var_variable
);
659 ((void(*)(val
* self
))((((long)var_26
&3)?class_info
[((long)var_26
&3)]:var_26
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_26
); /* next on <var_26:IndexedIterator[FlowContext]>*/
662 BREAK_label
: (void)0;
664 ((void(*)(val
* self
))((((long)var_26
&3)?class_info
[((long)var_26
&3)]:var_26
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_26
); /* finish on <var_26:IndexedIterator[FlowContext]>*/
667 { /* Inline local_var_init$FlowContext$set_vars (self) on <self:FlowContext> */
668 var33
= self
->attrs
[COLOR_nitc__local_var_init__FlowContext___set_vars
].val
; /* _set_vars on <self:FlowContext> */
669 if (unlikely(var33
== NULL
)) {
670 if(catchStack
.cursor
>= 0){
671 longjmp(catchStack
.envs
[catchStack
.cursor
], 1);
673 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _set_vars");
674 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__local_var_init
, 86);
682 ((void(*)(val
* self
, val
* p0
))((((long)var31
&3)?class_info
[((long)var31
&3)]:var31
->class)->vft
[COLOR_core__abstract_collection__SimpleCollection__add
]))(var31
, var_variable
); /* add on <var31:Set[Variable]>*/
689 /* method local_var_init$ANode$accept_local_var_visitor for (self: ANode, LocalVarInitVisitor) */
690 void nitc__local_var_init___ANode___accept_local_var_visitor(val
* self
, val
* p0
) {
691 val
* var_v
/* var v: LocalVarInitVisitor */;
694 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nitc__parser_nodes__ANode__visit_all
]))(self
, var_v
); /* visit_all on <self:ANode>*/
698 /* method local_var_init$AVardeclExpr$accept_local_var_visitor for (self: AVardeclExpr, LocalVarInitVisitor) */
699 void nitc__local_var_init___AVardeclExpr___ANode__accept_local_var_visitor(val
* self
, val
* p0
) {
700 val
* var_v
/* var v: LocalVarInitVisitor */;
701 val
* var
/* : nullable AExpr */;
702 val
* var2
/* : nullable AExpr */;
703 short int var3
/* : Bool */;
704 short int var4
/* : Bool */;
705 val
* var_other
/* var other: nullable Object */;
706 short int var6
/* : Bool */;
707 short int var8
/* : Bool */;
708 val
* var9
/* : nullable Variable */;
709 val
* var11
/* : nullable Variable */;
712 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nitc__local_var_init___AVardeclExpr___ANode__accept_local_var_visitor
]))(self
, p0
); /* accept_local_var_visitor on <self:AVardeclExpr>*/
715 { /* Inline parser_nodes$AVardeclExpr$n_expr (self) on <self:AVardeclExpr> */
716 var2
= self
->attrs
[COLOR_nitc__parser_nodes__AVardeclExpr___n_expr
].val
; /* _n_expr on <self:AVardeclExpr> */
722 var3
= 1; /* is null */
724 var3
= 0; /* arg is null but recv is not */
727 { /* Inline kernel$Object$== (var,((val*)NULL)) on <var:nullable AExpr> */
728 var_other
= ((val
*)NULL
);
730 { /* Inline kernel$Object$is_same_instance (var,var_other) on <var:nullable AExpr(AExpr)> */
731 var8
= var
== var_other
;
745 { /* Inline scope$AVardeclExpr$variable (self) on <self:AVardeclExpr> */
746 var11
= self
->attrs
[COLOR_nitc__scope__AVardeclExpr___variable
].val
; /* _variable on <self:AVardeclExpr> */
752 nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___mark_is_unset(var_v
, self
, var9
); /* Direct call local_var_init$LocalVarInitVisitor$mark_is_unset on <var_v:LocalVarInitVisitor>*/
758 /* method local_var_init$AVarExpr$accept_local_var_visitor for (self: AVarExpr, LocalVarInitVisitor) */
759 void nitc__local_var_init___AVarExpr___ANode__accept_local_var_visitor(val
* self
, val
* p0
) {
760 val
* var_v
/* var v: LocalVarInitVisitor */;
761 val
* var
/* : nullable Variable */;
762 val
* var2
/* : nullable Variable */;
765 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nitc__local_var_init___AVarExpr___ANode__accept_local_var_visitor
]))(self
, p0
); /* accept_local_var_visitor on <self:AVarExpr>*/
768 { /* Inline scope$AVarFormExpr$variable (self) on <self:AVarExpr> */
769 var2
= self
->attrs
[COLOR_nitc__scope__AVarFormExpr___variable
].val
; /* _variable on <self:AVarExpr> */
775 nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___check_is_set(var_v
, self
, var
); /* Direct call local_var_init$LocalVarInitVisitor$check_is_set on <var_v:LocalVarInitVisitor>*/
779 /* method local_var_init$AVarAssignExpr$accept_local_var_visitor for (self: AVarAssignExpr, LocalVarInitVisitor) */
780 void nitc__local_var_init___AVarAssignExpr___ANode__accept_local_var_visitor(val
* self
, val
* p0
) {
781 val
* var_v
/* var v: LocalVarInitVisitor */;
782 val
* var
/* : nullable Variable */;
783 val
* var2
/* : nullable Variable */;
786 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nitc__local_var_init___AVarAssignExpr___ANode__accept_local_var_visitor
]))(self
, p0
); /* accept_local_var_visitor on <self:AVarAssignExpr>*/
789 { /* Inline scope$AVarFormExpr$variable (self) on <self:AVarAssignExpr> */
790 var2
= self
->attrs
[COLOR_nitc__scope__AVarFormExpr___variable
].val
; /* _variable on <self:AVarAssignExpr> */
796 nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___mark_is_set(var_v
, self
, var
); /* Direct call local_var_init$LocalVarInitVisitor$mark_is_set on <var_v:LocalVarInitVisitor>*/
800 /* method local_var_init$AVarReassignExpr$accept_local_var_visitor for (self: AVarReassignExpr, LocalVarInitVisitor) */
801 void nitc__local_var_init___AVarReassignExpr___ANode__accept_local_var_visitor(val
* self
, val
* p0
) {
802 val
* var_v
/* var v: LocalVarInitVisitor */;
803 val
* var
/* : nullable Variable */;
804 val
* var2
/* : nullable Variable */;
807 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nitc__local_var_init___AVarReassignExpr___ANode__accept_local_var_visitor
]))(self
, p0
); /* accept_local_var_visitor on <self:AVarReassignExpr>*/
810 { /* Inline scope$AVarFormExpr$variable (self) on <self:AVarReassignExpr> */
811 var2
= self
->attrs
[COLOR_nitc__scope__AVarFormExpr___variable
].val
; /* _variable on <self:AVarReassignExpr> */
817 nitc__local_var_init___nitc__local_var_init__LocalVarInitVisitor___check_is_set(var_v
, self
, var
); /* Direct call local_var_init$LocalVarInitVisitor$check_is_set on <var_v:LocalVarInitVisitor>*/