1 #include "nitc__phase.sep.0.h"
2 /* method phase#ToolContext#phases for (self: ToolContext): POSet[Phase] */
3 val
* nitc__phase___ToolContext___phases(val
* self
) {
4 val
* var
/* : POSet[Phase] */;
5 val
* var1
/* : POSet[Phase] */;
6 var1
= self
->attrs
[COLOR_nitc__phase__ToolContext___phases
].val
; /* _phases on <self:ToolContext> */
7 if (unlikely(var1
== NULL
)) {
8 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _phases");
9 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 23);
16 /* method phase#ToolContext#opt_disable_phase for (self: ToolContext): OptionArray */
17 val
* nitc__phase___ToolContext___opt_disable_phase(val
* self
) {
18 val
* var
/* : OptionArray */;
19 val
* var1
/* : OptionArray */;
20 var1
= self
->attrs
[COLOR_nitc__phase__ToolContext___opt_disable_phase
].val
; /* _opt_disable_phase on <self:ToolContext> */
21 if (unlikely(var1
== NULL
)) {
22 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_disable_phase");
23 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 30);
30 /* method phase#ToolContext#opt_sloppy for (self: ToolContext): OptionBool */
31 val
* nitc__phase___ToolContext___opt_sloppy(val
* self
) {
32 val
* var
/* : OptionBool */;
33 val
* var1
/* : OptionBool */;
34 var1
= self
->attrs
[COLOR_nitc__phase__ToolContext___opt_sloppy
].val
; /* _opt_sloppy on <self:ToolContext> */
35 if (unlikely(var1
== NULL
)) {
36 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_sloppy");
37 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 33);
44 /* method phase#ToolContext#init for (self: ToolContext) */
45 void nitc__phase___ToolContext___core__kernel__Object__init(val
* self
) {
46 val
* var
/* : OptionContext */;
47 val
* var2
/* : OptionContext */;
48 val
* var3
/* : OptionArray */;
49 val
* var5
/* : OptionArray */;
50 val
* var6
/* : OptionBool */;
51 val
* var8
/* : OptionBool */;
52 val
* var9
/* : Array[Option] */;
53 val
* var10
/* : NativeArray[Option] */;
55 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc__phase___ToolContext___core__kernel__Object__init
]))(self
); /* init on <self:ToolContext>*/
58 { /* Inline toolcontext#ToolContext#option_context (self) on <self:ToolContext> */
59 var2
= self
->attrs
[COLOR_nitc__toolcontext__ToolContext___option_context
].val
; /* _option_context on <self:ToolContext> */
60 if (unlikely(var2
== NULL
)) {
61 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _option_context");
62 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__toolcontext
, 342);
70 { /* Inline phase#ToolContext#opt_disable_phase (self) on <self:ToolContext> */
71 var5
= self
->attrs
[COLOR_nitc__phase__ToolContext___opt_disable_phase
].val
; /* _opt_disable_phase on <self:ToolContext> */
72 if (unlikely(var5
== NULL
)) {
73 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_disable_phase");
74 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 30);
82 { /* Inline phase#ToolContext#opt_sloppy (self) on <self:ToolContext> */
83 var8
= self
->attrs
[COLOR_nitc__phase__ToolContext___opt_sloppy
].val
; /* _opt_sloppy on <self:ToolContext> */
84 if (unlikely(var8
== NULL
)) {
85 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_sloppy");
86 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 33);
93 var9
= NEW_core__Array(&type_core__Array__opts__Option
);
94 { /* var9 = array_instance Array[Option] */
95 var10
= NEW_core__NativeArray(2l, &type_core__NativeArray__opts__Option
);
96 ((struct instance_core__NativeArray
*)var10
)->values
[0] = (val
*) var3
;
97 ((struct instance_core__NativeArray
*)var10
)->values
[1] = (val
*) var6
;
99 ((void(*)(val
* self
, val
* p0
, long p1
))(var9
->class->vft
[COLOR_core__array__Array__with_native
]))(var9
, var10
, 2l); /* with_native on <var9:Array[Option]>*/
103 opts___opts__OptionContext___add_option(var
, var9
); /* Direct call opts#OptionContext#add_option on <var:OptionContext>*/
107 /* method phase#ToolContext#process_options for (self: ToolContext, Sequence[String]) */
108 void nitc__phase___ToolContext___process_options(val
* self
, val
* p0
) {
109 val
* var_args
/* var args: Sequence[String] */;
110 val
* var
/* : OptionArray */;
111 val
* var2
/* : OptionArray */;
112 val
* var3
/* : nullable Object */;
113 val
* var5
/* : nullable Object */;
114 val
* var_
/* var : Array[String] */;
115 val
* var6
/* : IndexedIterator[nullable Object] */;
116 val
* var_7
/* var : IndexedIterator[String] */;
117 short int var8
/* : Bool */;
118 val
* var9
/* : nullable Object */;
119 val
* var_v
/* var v: String */;
121 val
* var10
/* : String */;
122 char* var11
/* : NativeString */;
123 val
* var12
/* : String */;
124 short int var13
/* : Bool */;
125 val
* var14
/* : Sequence[Phase] */;
126 val
* var_15
/* var : Sequence[Phase] */;
127 val
* var16
/* : Iterator[nullable Object] */;
128 val
* var_17
/* var : IndexedIterator[Phase] */;
129 short int var18
/* : Bool */;
130 val
* var20
/* : nullable Object */;
131 val
* var_p
/* var p: Phase */;
132 val
* var21
/* : POSetElement[Phase] */;
133 val
* var23
/* : POSetElement[Phase] */;
134 val
* var24
/* : Collection[nullable Object] */;
135 val
* var_deps
/* var deps: Collection[Phase] */;
136 short int var25
/* : Bool */;
137 val
* var26
/* : Sys */;
138 val
* var27
/* : Sys */;
139 val
* var29
/* : NativeArray[String] */;
140 static val
* varonce28
;
141 static val
* varonce30
;
142 val
* var31
/* : String */;
143 char* var32
/* : NativeString */;
144 val
* var33
/* : String */;
145 static val
* varonce34
;
146 val
* var35
/* : String */;
147 char* var36
/* : NativeString */;
148 val
* var37
/* : String */;
149 val
* var38
/* : String */;
150 static val
* varonce39
;
151 val
* var40
/* : String */;
152 char* var41
/* : NativeString */;
153 val
* var42
/* : String */;
154 val
* var43
/* : String */;
155 val
* var44
/* : String */;
156 val
* var45
/* : Sys */;
157 short int var_found
/* var found: Bool */;
158 val
* var47
/* : POSet[Phase] */;
159 val
* var49
/* : POSet[Phase] */;
160 val
* var_50
/* var : POSet[Phase] */;
161 val
* var51
/* : Iterator[nullable Object] */;
162 val
* var_52
/* var : Iterator[Phase] */;
163 short int var53
/* : Bool */;
164 val
* var55
/* : nullable Object */;
165 val
* var_p56
/* var p: Phase */;
166 val
* var57
/* : String */;
167 short int var58
/* : Bool */;
168 val
* var_other
/* var other: nullable Object */;
169 short int var60
/* : Bool */;
170 short int var61
/* : Bool */;
171 short int var64
/* : Bool */;
172 val
* var66
/* : NativeArray[String] */;
173 static val
* varonce65
;
174 static val
* varonce67
;
175 val
* var68
/* : String */;
176 char* var69
/* : NativeString */;
177 val
* var70
/* : String */;
178 static val
* varonce71
;
179 val
* var72
/* : String */;
180 char* var73
/* : NativeString */;
181 val
* var74
/* : String */;
182 val
* var75
/* : String */;
183 val
* var76
/* : OptionBool */;
184 val
* var78
/* : OptionBool */;
185 val
* var79
/* : nullable Object */;
186 val
* var81
/* : nullable Object */;
187 short int var82
/* : Bool */;
190 ((void(*)(val
* self
, val
* p0
))(self
->class->vft
[COLOR_nitc__phase___ToolContext___process_options
]))(self
, p0
); /* process_options on <self:ToolContext>*/
193 { /* Inline phase#ToolContext#opt_disable_phase (self) on <self:ToolContext> */
194 var2
= self
->attrs
[COLOR_nitc__phase__ToolContext___opt_disable_phase
].val
; /* _opt_disable_phase on <self:ToolContext> */
195 if (unlikely(var2
== NULL
)) {
196 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_disable_phase");
197 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 30);
205 { /* Inline opts#Option#value (var) on <var:OptionArray> */
206 var5
= var
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var:OptionArray> */
213 var6
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_
);
218 var8
= ((short int(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_7
); /* is_ok on <var_7:IndexedIterator[String]>*/
225 var9
= ((val
*(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_7
); /* item on <var_7:IndexedIterator[String]>*/
228 if (likely(varonce
!=NULL
)) {
232 var12
= core__flat___NativeString___to_s_full(var11
, 4l, 4l);
237 var13
= ((short int(*)(val
* self
, val
* p0
))(var_v
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_v
, var10
); /* == on <var_v:String>*/
241 var14
= nitc__phase___ToolContext___phases_list(self
);
245 var16
= ((val
*(*)(val
* self
))((((long)var_15
&3)?class_info
[((long)var_15
&3)]:var_15
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_15
); /* iterator on <var_15:Sequence[Phase]>*/
250 var18
= ((short int(*)(val
* self
))((((long)var_17
&3)?class_info
[((long)var_17
&3)]:var_17
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_17
); /* is_ok on <var_17:IndexedIterator[Phase]>*/
257 var20
= ((val
*(*)(val
* self
))((((long)var_17
&3)?class_info
[((long)var_17
&3)]:var_17
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_17
); /* item on <var_17:IndexedIterator[Phase]>*/
261 { /* Inline phase#Phase#in_hierarchy (var_p) on <var_p:Phase> */
262 var23
= var_p
->attrs
[COLOR_nitc__phase__Phase___in_hierarchy
].val
; /* _in_hierarchy on <var_p:Phase> */
263 if (unlikely(var23
== NULL
)) {
264 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_hierarchy");
265 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 203);
273 var24
= poset___poset__POSetElement___direct_greaters(var21
);
277 var25
= ((short int(*)(val
* self
))((((long)var_deps
&3)?class_info
[((long)var_deps
&3)]:var_deps
->class)->vft
[COLOR_core__abstract_collection__Collection__is_empty
]))(var_deps
); /* is_empty on <var_deps:Collection[Phase]>*/
282 core__file___Sys___print(var26
, var_p
); /* Direct call file#Sys#print on <var26:Sys>*/
286 if (unlikely(varonce28
==NULL
)) {
287 var29
= NEW_core__NativeArray(4l, &type_core__NativeArray__core__String
);
288 if (likely(varonce30
!=NULL
)) {
292 var33
= core__flat___NativeString___to_s_full(var32
, 7l, 7l);
296 ((struct instance_core__NativeArray
*)var29
)->values
[1]=var31
;
297 if (likely(varonce34
!=NULL
)) {
301 var37
= core__flat___NativeString___to_s_full(var36
, 1l, 1l);
305 ((struct instance_core__NativeArray
*)var29
)->values
[3]=var35
;
311 var38
= ((val
*(*)(val
* self
))(var_p
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_p
); /* to_s on <var_p:Phase>*/
313 ((struct instance_core__NativeArray
*)var29
)->values
[0]=var38
;
314 if (likely(varonce39
!=NULL
)) {
318 var42
= core__flat___NativeString___to_s_full(var41
, 2l, 2l);
323 var43
= core__abstract_text___Collection___join(var_deps
, var40
);
325 ((struct instance_core__NativeArray
*)var29
)->values
[2]=var43
;
327 var44
= ((val
*(*)(val
* self
))(var29
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var29
); /* native_to_s on <var29:NativeArray[String]>*/
331 core__file___Sys___print(var27
, var44
); /* Direct call file#Sys#print on <var27:Sys>*/
335 ((void(*)(val
* self
))((((long)var_17
&3)?class_info
[((long)var_17
&3)]:var_17
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_17
); /* next on <var_17:IndexedIterator[Phase]>*/
338 BREAK_label19
: (void)0;
340 ((void(*)(val
* self
))((((long)var_17
&3)?class_info
[((long)var_17
&3)]:var_17
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_17
); /* finish on <var_17:IndexedIterator[Phase]>*/
344 { /* Inline kernel#Sys#exit (var45,0l) on <var45:Sys> */
353 { /* Inline phase#ToolContext#phases (self) on <self:ToolContext> */
354 var49
= self
->attrs
[COLOR_nitc__phase__ToolContext___phases
].val
; /* _phases on <self:ToolContext> */
355 if (unlikely(var49
== NULL
)) {
356 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _phases");
357 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 23);
366 var51
= poset___poset__POSet___core__abstract_collection__Collection__iterator(var_50
);
371 var53
= ((short int(*)(val
* self
))((((long)var_52
&3)?class_info
[((long)var_52
&3)]:var_52
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_52
); /* is_ok on <var_52:Iterator[Phase]>*/
378 var55
= ((val
*(*)(val
* self
))((((long)var_52
&3)?class_info
[((long)var_52
&3)]:var_52
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_52
); /* item on <var_52:Iterator[Phase]>*/
382 var57
= nitc___nitc__Phase___core__abstract_text__Object__to_s(var_p56
);
385 { /* Inline kernel#Object#!= (var_v,var57) on <var_v:String> */
388 var60
= ((short int(*)(val
* self
, val
* p0
))(var_v
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_v
, var_other
); /* == on <var_v:String>*/
402 { /* Inline phase#Phase#disabled= (var_p56,1) on <var_p56:Phase> */
403 var_p56
->attrs
[COLOR_nitc__phase__Phase___disabled
].s
= 1; /* _disabled on <var_p56:Phase> */
407 BREAK_label62
: (void)0;
409 ((void(*)(val
* self
))((((long)var_52
&3)?class_info
[((long)var_52
&3)]:var_52
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_52
); /* next on <var_52:Iterator[Phase]>*/
412 BREAK_label54
: (void)0;
414 ((void(*)(val
* self
))((((long)var_52
&3)?class_info
[((long)var_52
&3)]:var_52
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_52
); /* finish on <var_52:Iterator[Phase]>*/
418 if (unlikely(varonce65
==NULL
)) {
419 var66
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
420 if (likely(varonce67
!=NULL
)) {
423 var69
= "Error: no phase named `";
424 var70
= core__flat___NativeString___to_s_full(var69
, 23l, 23l);
428 ((struct instance_core__NativeArray
*)var66
)->values
[0]=var68
;
429 if (likely(varonce71
!=NULL
)) {
432 var73
= "`. Use `list` to list all phases.";
433 var74
= core__flat___NativeString___to_s_full(var73
, 33l, 33l);
437 ((struct instance_core__NativeArray
*)var66
)->values
[2]=var72
;
442 ((struct instance_core__NativeArray
*)var66
)->values
[1]=var_v
;
444 var75
= ((val
*(*)(val
* self
))(var66
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var66
); /* native_to_s on <var66:NativeArray[String]>*/
448 nitc___nitc__ToolContext___fatal_error(self
, ((val
*)NULL
), var75
); /* Direct call toolcontext#ToolContext#fatal_error on <self:ToolContext>*/
453 ((void(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_7
); /* next on <var_7:IndexedIterator[String]>*/
456 BREAK_label
: (void)0;
458 ((void(*)(val
* self
))((((long)var_7
&3)?class_info
[((long)var_7
&3)]:var_7
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_7
); /* finish on <var_7:IndexedIterator[String]>*/
461 { /* Inline phase#ToolContext#opt_sloppy (self) on <self:ToolContext> */
462 var78
= self
->attrs
[COLOR_nitc__phase__ToolContext___opt_sloppy
].val
; /* _opt_sloppy on <self:ToolContext> */
463 if (unlikely(var78
== NULL
)) {
464 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _opt_sloppy");
465 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 33);
473 { /* Inline opts#Option#value (var76) on <var76:OptionBool> */
474 var81
= var76
->attrs
[COLOR_opts__Option___value
].val
; /* _value on <var76:OptionBool> */
479 var82
= (short int)((long)(var79
)>>2);
482 { /* Inline phase#ToolContext#semantize_is_lazy= (self,1) on <self:ToolContext> */
483 self
->attrs
[COLOR_nitc__phase__ToolContext___semantize_is_lazy
].s
= 1; /* _semantize_is_lazy on <self:ToolContext> */
491 /* method phase#ToolContext#phases_list for (self: ToolContext): Sequence[Phase] */
492 val
* nitc__phase___ToolContext___phases_list(val
* self
) {
493 val
* var
/* : Sequence[Phase] */;
494 short int var1
/* : Bool */;
495 val
* var2
/* : Sequence[Phase] */;
496 val
* var3
/* : Sequence[Phase] */;
497 val
* var5
/* : POSet[Phase] */;
498 val
* var7
/* : POSet[Phase] */;
499 val
* var8
/* : Array[nullable Object] */;
500 val
* var_phases
/* var phases: Array[Phase] */;
501 val
* var9
/* : POSet[Phase] */;
502 val
* var11
/* : POSet[Phase] */;
503 var1
= self
->attrs
[COLOR_nitc__phase__ToolContext___phases_list
].val
!= NULL
; /* _phases_list on <self:ToolContext> */
505 var2
= self
->attrs
[COLOR_nitc__phase__ToolContext___phases_list
].val
; /* _phases_list on <self:ToolContext> */
506 if (unlikely(var2
== NULL
)) {
507 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _phases_list");
508 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 72);
514 { /* Inline phase#ToolContext#phases (self) on <self:ToolContext> */
515 var7
= self
->attrs
[COLOR_nitc__phase__ToolContext___phases
].val
; /* _phases on <self:ToolContext> */
516 if (unlikely(var7
== NULL
)) {
517 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _phases");
518 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 23);
526 var8
= core__array___Collection___to_a(var5
);
530 { /* Inline phase#ToolContext#phases (self) on <self:ToolContext> */
531 var11
= self
->attrs
[COLOR_nitc__phase__ToolContext___phases
].val
; /* _phases on <self:ToolContext> */
532 if (unlikely(var11
== NULL
)) {
533 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _phases");
534 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 23);
542 core___core__Comparator___sort(var9
, var_phases
); /* Direct call sorter#Comparator#sort on <var9:POSet[Phase]>*/
548 self
->attrs
[COLOR_nitc__phase__ToolContext___phases_list
].val
= var3
; /* _phases_list on <self:ToolContext> */
555 /* method phase#ToolContext#semantize_is_lazy for (self: ToolContext): Bool */
556 short int nitc__phase___ToolContext___semantize_is_lazy(val
* self
) {
557 short int var
/* : Bool */;
558 short int var1
/* : Bool */;
559 var1
= self
->attrs
[COLOR_nitc__phase__ToolContext___semantize_is_lazy
].s
; /* _semantize_is_lazy on <self:ToolContext> */
564 /* method phase#ToolContext#semantize_is_lazy= for (self: ToolContext, Bool) */
565 void nitc__phase___ToolContext___semantize_is_lazy_61d(val
* self
, short int p0
) {
566 self
->attrs
[COLOR_nitc__phase__ToolContext___semantize_is_lazy
].s
= p0
; /* _semantize_is_lazy on <self:ToolContext> */
569 /* method phase#ToolContext#phased_modules for (self: ToolContext): HashSet[AModule] */
570 val
* nitc__phase___ToolContext___phased_modules(val
* self
) {
571 val
* var
/* : HashSet[AModule] */;
572 val
* var1
/* : HashSet[AModule] */;
573 var1
= self
->attrs
[COLOR_nitc__phase__ToolContext___phased_modules
].val
; /* _phased_modules on <self:ToolContext> */
574 if (unlikely(var1
== NULL
)) {
575 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _phased_modules");
576 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 86);
583 /* method phase#ToolContext#run_phases for (self: ToolContext, Collection[AModule]) */
584 void nitc__phase___ToolContext___run_phases(val
* self
, val
* p0
) {
585 val
* var_nmodules
/* var nmodules: Collection[AModule] */;
586 val
* var
/* : Sys */;
587 long var1
/* : Int */;
588 long var3
/* : Int */;
589 long var_time0
/* var time0: Int */;
591 val
* var4
/* : String */;
592 char* var5
/* : NativeString */;
593 val
* var6
/* : String */;
594 val
* var7
/* : Sequence[Phase] */;
595 val
* var_phases
/* var phases: Sequence[Phase] */;
596 val
* var_
/* var : Sequence[Phase] */;
597 val
* var8
/* : Iterator[nullable Object] */;
598 val
* var_9
/* var : IndexedIterator[Phase] */;
599 short int var10
/* : Bool */;
600 val
* var11
/* : nullable Object */;
601 val
* var_phase
/* var phase: Phase */;
602 val
* var13
/* : NativeArray[String] */;
603 static val
* varonce12
;
604 static val
* varonce14
;
605 val
* var15
/* : String */;
606 char* var16
/* : NativeString */;
607 val
* var17
/* : String */;
608 val
* var18
/* : String */;
609 val
* var19
/* : String */;
610 val
* var_20
/* var : Collection[AModule] */;
611 val
* var21
/* : Iterator[nullable Object] */;
612 val
* var_22
/* var : Iterator[AModule] */;
613 short int var23
/* : Bool */;
614 val
* var25
/* : nullable Object */;
615 val
* var_nmodule
/* var nmodule: AModule */;
616 val
* var26
/* : HashSet[AModule] */;
617 val
* var28
/* : HashSet[AModule] */;
618 short int var29
/* : Bool */;
619 val
* var31
/* : HashSet[AModule] */;
620 val
* var33
/* : HashSet[AModule] */;
621 val
* var35
/* : NativeArray[String] */;
622 static val
* varonce34
;
623 static val
* varonce36
;
624 val
* var37
/* : String */;
625 char* var38
/* : NativeString */;
626 val
* var39
/* : String */;
627 val
* var40
/* : Location */;
628 val
* var42
/* : Location */;
629 val
* var43
/* : nullable SourceFile */;
630 val
* var45
/* : nullable SourceFile */;
631 val
* var46
/* : String */;
632 val
* var48
/* : String */;
633 val
* var49
/* : String */;
634 val
* var50
/* : AnnotationPhaseVisitor */;
635 val
* var_vannot
/* var vannot: AnnotationPhaseVisitor */;
636 val
* var_52
/* var : Sequence[Phase] */;
637 val
* var53
/* : Iterator[nullable Object] */;
638 val
* var_54
/* var : IndexedIterator[Phase] */;
639 short int var55
/* : Bool */;
640 val
* var57
/* : nullable Object */;
641 val
* var_phase58
/* var phase: Phase */;
642 short int var59
/* : Bool */;
643 short int var61
/* : Bool */;
644 val
* var63
/* : ToolContext */;
645 val
* var65
/* : ToolContext */;
646 short int var66
/* : Bool */;
647 val
* var_other
/* var other: nullable Object */;
648 short int var68
/* : Bool */;
649 short int var70
/* : Bool */;
650 long var71
/* : Int */;
651 long var73
/* : Int */;
652 long var_errcount
/* var errcount: Int */;
653 long var74
/* : Int */;
654 long var76
/* : Int */;
655 short int var77
/* : Bool */;
656 short int var79
/* : Bool */;
657 short int var80
/* : Bool */;
658 short int var81
/* : Bool */;
659 long var82
/* : Int */;
660 long var84
/* : Int */;
661 val
* var85
/* : ANodes[AClassdef] */;
662 val
* var87
/* : ANodes[AClassdef] */;
663 val
* var_88
/* var : ANodes[AClassdef] */;
664 val
* var89
/* : Iterator[ANode] */;
665 val
* var_90
/* var : Iterator[AClassdef] */;
666 short int var91
/* : Bool */;
667 val
* var93
/* : nullable Object */;
668 val
* var_nclassdef
/* var nclassdef: AClassdef */;
669 val
* var94
/* : ToolContext */;
670 val
* var96
/* : ToolContext */;
671 short int var97
/* : Bool */;
672 short int var99
/* : Bool */;
673 short int var101
/* : Bool */;
674 short int var102
/* : Bool */;
675 short int var104
/* : Bool */;
676 short int var105
/* : Bool */;
677 val
* var106
/* : ANodes[APropdef] */;
678 val
* var108
/* : ANodes[APropdef] */;
679 val
* var_109
/* var : ANodes[APropdef] */;
680 val
* var110
/* : Iterator[ANode] */;
681 val
* var_111
/* var : Iterator[APropdef] */;
682 short int var112
/* : Bool */;
683 val
* var114
/* : nullable Object */;
684 val
* var_npropdef
/* var npropdef: APropdef */;
685 val
* var115
/* : ToolContext */;
686 val
* var117
/* : ToolContext */;
687 short int var118
/* : Bool */;
688 short int var120
/* : Bool */;
689 short int var122
/* : Bool */;
690 long var123
/* : Int */;
691 long var125
/* : Int */;
692 short int var126
/* : Bool */;
693 short int var128
/* : Bool */;
694 short int var129
/* : Bool */;
695 short int var130
/* : Bool */;
696 val
* var131
/* : Array[AAnnotation] */;
697 val
* var133
/* : Array[AAnnotation] */;
698 val
* var_134
/* var : Array[AAnnotation] */;
699 val
* var135
/* : IndexedIterator[nullable Object] */;
700 val
* var_136
/* var : IndexedIterator[AAnnotation] */;
701 short int var137
/* : Bool */;
702 val
* var139
/* : nullable Object */;
703 val
* var_na
/* var na: AAnnotation */;
704 val
* var140
/* : nullable ANode */;
705 val
* var142
/* : nullable ANode */;
706 val
* var_p
/* var p: nullable ANode */;
707 short int var143
/* : Bool */;
710 val
* var144
/* : nullable ANode */;
711 val
* var146
/* : nullable ANode */;
712 short int var147
/* : Bool */;
713 short int var148
/* : Bool */;
714 val
* var_other150
/* var other: nullable Object */;
715 short int var151
/* : Bool */;
716 short int var152
/* : Bool */;
717 long var153
/* : Int */;
718 long var155
/* : Int */;
719 short int var156
/* : Bool */;
720 short int var158
/* : Bool */;
721 short int var159
/* : Bool */;
722 short int var160
/* : Bool */;
723 short int var161
/* : Bool */;
724 val
* var162
/* : Sys */;
725 long var163
/* : Int */;
726 long var165
/* : Int */;
727 long var_time1
/* var time1: Int */;
728 val
* var167
/* : NativeArray[String] */;
729 static val
* varonce166
;
730 static val
* varonce168
;
731 val
* var169
/* : String */;
732 char* var170
/* : NativeString */;
733 val
* var171
/* : String */;
734 static val
* varonce172
;
735 val
* var173
/* : String */;
736 char* var174
/* : NativeString */;
737 val
* var175
/* : String */;
738 long var176
/* : Int */;
739 short int var178
/* : Bool */;
742 const char* var_class_name
;
743 long var181
/* : Int */;
744 val
* var182
/* : String */;
745 val
* var183
/* : String */;
746 short int var184
/* : Bool */;
750 { /* Inline time#Sys#get_time (var) on <var:Sys> */
751 struct nitni_instance
* var_for_c_0
;
752 var_for_c_0
= nit_alloc(sizeof(struct nitni_instance
));
753 var_for_c_0
->value
= var
;
754 var3
= time___Sys_get_time___impl(var_for_c_0
);
761 if (likely(varonce
!=NULL
)) {
764 var5
= "*** SEMANTIC ANALYSIS ***";
765 var6
= core__flat___NativeString___to_s_full(var5
, 25l, 25l);
770 nitc___nitc__ToolContext___info(self
, var4
, 1l); /* Direct call toolcontext#ToolContext#info on <self:ToolContext>*/
773 var7
= nitc__phase___ToolContext___phases_list(self
);
778 var8
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Sequence[Phase]>*/
783 var10
= ((short int(*)(val
* self
))((((long)var_9
&3)?class_info
[((long)var_9
&3)]:var_9
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_9
); /* is_ok on <var_9:IndexedIterator[Phase]>*/
790 var11
= ((val
*(*)(val
* self
))((((long)var_9
&3)?class_info
[((long)var_9
&3)]:var_9
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_9
); /* item on <var_9:IndexedIterator[Phase]>*/
793 if (unlikely(varonce12
==NULL
)) {
794 var13
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
795 if (likely(varonce14
!=NULL
)) {
798 var16
= " registered phases: ";
799 var17
= core__flat___NativeString___to_s_full(var16
, 20l, 20l);
803 ((struct instance_core__NativeArray
*)var13
)->values
[0]=var15
;
809 var18
= ((val
*(*)(val
* self
))(var_phase
->class->vft
[COLOR_core__abstract_text__Object__to_s
]))(var_phase
); /* to_s on <var_phase:Phase>*/
811 ((struct instance_core__NativeArray
*)var13
)->values
[1]=var18
;
813 var19
= ((val
*(*)(val
* self
))(var13
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var13
); /* native_to_s on <var13:NativeArray[String]>*/
817 nitc___nitc__ToolContext___info(self
, var19
, 2l); /* Direct call toolcontext#ToolContext#info on <self:ToolContext>*/
820 ((void(*)(val
* self
))((((long)var_9
&3)?class_info
[((long)var_9
&3)]:var_9
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_9
); /* next on <var_9:IndexedIterator[Phase]>*/
823 BREAK_label
: (void)0;
825 ((void(*)(val
* self
))((((long)var_9
&3)?class_info
[((long)var_9
&3)]:var_9
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_9
); /* finish on <var_9:IndexedIterator[Phase]>*/
827 var_20
= var_nmodules
;
829 var21
= ((val
*(*)(val
* self
))((((long)var_20
&3)?class_info
[((long)var_20
&3)]:var_20
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_20
); /* iterator on <var_20:Collection[AModule]>*/
834 var23
= ((short int(*)(val
* self
))((((long)var_22
&3)?class_info
[((long)var_22
&3)]:var_22
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_22
); /* is_ok on <var_22:Iterator[AModule]>*/
841 var25
= ((val
*(*)(val
* self
))((((long)var_22
&3)?class_info
[((long)var_22
&3)]:var_22
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_22
); /* item on <var_22:Iterator[AModule]>*/
845 { /* Inline phase#ToolContext#phased_modules (self) on <self:ToolContext> */
846 var28
= self
->attrs
[COLOR_nitc__phase__ToolContext___phased_modules
].val
; /* _phased_modules on <self:ToolContext> */
847 if (unlikely(var28
== NULL
)) {
848 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _phased_modules");
849 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 86);
857 var29
= core___core__HashSet___core__abstract_collection__Collection__has(var26
, var_nmodule
);
864 { /* Inline phase#ToolContext#phased_modules (self) on <self:ToolContext> */
865 var33
= self
->attrs
[COLOR_nitc__phase__ToolContext___phased_modules
].val
; /* _phased_modules on <self:ToolContext> */
866 if (unlikely(var33
== NULL
)) {
867 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _phased_modules");
868 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 86);
876 core___core__HashSet___core__abstract_collection__SimpleCollection__add(var31
, var_nmodule
); /* Direct call hash_collection#HashSet#add on <var31:HashSet[AModule]>*/
878 if (unlikely(varonce34
==NULL
)) {
879 var35
= NEW_core__NativeArray(2l, &type_core__NativeArray__core__String
);
880 if (likely(varonce36
!=NULL
)) {
883 var38
= "Semantic analysis module ";
884 var39
= core__flat___NativeString___to_s_full(var38
, 25l, 25l);
888 ((struct instance_core__NativeArray
*)var35
)->values
[0]=var37
;
894 { /* Inline parser_nodes#ANode#location (var_nmodule) on <var_nmodule:AModule> */
895 var42
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__ANode___location
].val
; /* _location on <var_nmodule:AModule> */
896 if (unlikely(var42
== NULL
)) {
897 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _location");
898 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 24);
906 { /* Inline location#Location#file (var40) on <var40:Location> */
907 var45
= var40
->attrs
[COLOR_nitc__location__Location___file
].val
; /* _file on <var40:Location> */
913 PRINT_ERROR("Runtime error: %s", "Receiver is null");
914 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 106);
917 { /* Inline location#SourceFile#filename (var43) on <var43:nullable SourceFile> */
918 if (unlikely(var43
== NULL
)) {
919 PRINT_ERROR("Runtime error: %s", "Receiver is null");
920 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__location
, 22);
923 var48
= var43
->attrs
[COLOR_nitc__location__SourceFile___filename
].val
; /* _filename on <var43:nullable SourceFile> */
924 if (unlikely(var48
== NULL
)) {
925 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename");
926 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__location
, 22);
933 ((struct instance_core__NativeArray
*)var35
)->values
[1]=var46
;
935 var49
= ((val
*(*)(val
* self
))(var35
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var35
); /* native_to_s on <var35:NativeArray[String]>*/
939 nitc___nitc__ToolContext___info(self
, var49
, 2l); /* Direct call toolcontext#ToolContext#info on <self:ToolContext>*/
941 var50
= NEW_nitc__phase__AnnotationPhaseVisitor(&type_nitc__phase__AnnotationPhaseVisitor
);
943 { /* Inline kernel#Object#init (var50) on <var50:AnnotationPhaseVisitor> */
949 nitc___nitc__Visitor___enter_visit(var_vannot
, var_nmodule
); /* Direct call parser_nodes#Visitor#enter_visit on <var_vannot:AnnotationPhaseVisitor>*/
953 var53
= ((val
*(*)(val
* self
))((((long)var_52
&3)?class_info
[((long)var_52
&3)]:var_52
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_52
); /* iterator on <var_52:Sequence[Phase]>*/
958 var55
= ((short int(*)(val
* self
))((((long)var_54
&3)?class_info
[((long)var_54
&3)]:var_54
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_54
); /* is_ok on <var_54:IndexedIterator[Phase]>*/
965 var57
= ((val
*(*)(val
* self
))((((long)var_54
&3)?class_info
[((long)var_54
&3)]:var_54
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_54
); /* item on <var_54:IndexedIterator[Phase]>*/
969 { /* Inline phase#Phase#disabled (var_phase58) on <var_phase58:Phase> */
970 var61
= var_phase58
->attrs
[COLOR_nitc__phase__Phase___disabled
].s
; /* _disabled on <var_phase58:Phase> */
980 { /* Inline phase#Phase#toolcontext (var_phase58) on <var_phase58:Phase> */
981 var65
= var_phase58
->attrs
[COLOR_nitc__phase__Phase___toolcontext
].val
; /* _toolcontext on <var_phase58:Phase> */
982 if (unlikely(var65
== NULL
)) {
983 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
984 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 200);
992 { /* Inline kernel#Object#== (var63,self) on <var63:ToolContext> */
995 { /* Inline kernel#Object#is_same_instance (var63,var_other) on <var63:ToolContext> */
996 var70
= var63
== var_other
;
1004 RET_LABEL67
:(void)0;
1007 if (unlikely(!var66
)) {
1008 PRINT_ERROR("Runtime error: %s", "Assert failed");
1009 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 113);
1013 { /* Inline toolcontext#ToolContext#error_count (self) on <self:ToolContext> */
1014 var73
= self
->attrs
[COLOR_nitc__toolcontext__ToolContext___error_count
].l
; /* _error_count on <self:ToolContext> */
1016 RET_LABEL72
:(void)0;
1019 var_errcount
= var71
;
1021 ((void(*)(val
* self
, val
* p0
))(var_phase58
->class->vft
[COLOR_nitc__phase__Phase__process_nmodule
]))(var_phase58
, var_nmodule
); /* process_nmodule on <var_phase58:Phase>*/
1024 { /* Inline toolcontext#ToolContext#error_count (self) on <self:ToolContext> */
1025 var76
= self
->attrs
[COLOR_nitc__toolcontext__ToolContext___error_count
].l
; /* _error_count on <self:ToolContext> */
1027 RET_LABEL75
:(void)0;
1031 { /* Inline kernel#Int#!= (var_errcount,var74) on <var_errcount:Int> */
1032 var79
= var_errcount
== var74
;
1036 RET_LABEL78
:(void)0;
1041 var81
= nitc___nitc__ToolContext___check_errors(self
);
1046 { /* Inline toolcontext#ToolContext#error_count (self) on <self:ToolContext> */
1047 var84
= self
->attrs
[COLOR_nitc__toolcontext__ToolContext___error_count
].l
; /* _error_count on <self:ToolContext> */
1049 RET_LABEL83
:(void)0;
1052 var_errcount
= var82
;
1054 { /* Inline parser_nodes#AModule#n_classdefs (var_nmodule) on <var_nmodule:AModule> */
1055 var87
= var_nmodule
->attrs
[COLOR_nitc__parser_nodes__AModule___n_classdefs
].val
; /* _n_classdefs on <var_nmodule:AModule> */
1056 if (unlikely(var87
== NULL
)) {
1057 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_classdefs");
1058 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1062);
1062 RET_LABEL86
:(void)0;
1067 var89
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_88
);
1072 var91
= ((short int(*)(val
* self
))((((long)var_90
&3)?class_info
[((long)var_90
&3)]:var_90
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_90
); /* is_ok on <var_90:Iterator[AClassdef]>*/
1079 var93
= ((val
*(*)(val
* self
))((((long)var_90
&3)?class_info
[((long)var_90
&3)]:var_90
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_90
); /* item on <var_90:Iterator[AClassdef]>*/
1081 var_nclassdef
= var93
;
1083 { /* Inline phase#Phase#toolcontext (var_phase58) on <var_phase58:Phase> */
1084 var96
= var_phase58
->attrs
[COLOR_nitc__phase__Phase___toolcontext
].val
; /* _toolcontext on <var_phase58:Phase> */
1085 if (unlikely(var96
== NULL
)) {
1086 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1087 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 200);
1091 RET_LABEL95
:(void)0;
1095 { /* Inline kernel#Object#== (var94,self) on <var94:ToolContext> */
1098 { /* Inline kernel#Object#is_same_instance (var94,var_other) on <var94:ToolContext> */
1099 var101
= var94
== var_other
;
1102 RET_LABEL100
:(void)0;
1107 RET_LABEL98
:(void)0;
1110 if (unlikely(!var97
)) {
1111 PRINT_ERROR("Runtime error: %s", "Assert failed");
1112 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 121);
1116 ((void(*)(val
* self
, val
* p0
))(var_phase58
->class->vft
[COLOR_nitc__phase__Phase__process_nclassdef
]))(var_phase58
, var_nclassdef
); /* process_nclassdef on <var_phase58:Phase>*/
1119 { /* Inline phase#ToolContext#semantize_is_lazy (self) on <self:ToolContext> */
1120 var104
= self
->attrs
[COLOR_nitc__phase__ToolContext___semantize_is_lazy
].s
; /* _semantize_is_lazy on <self:ToolContext> */
1122 RET_LABEL103
:(void)0;
1128 { /* Inline parser_nodes#AClassdef#n_propdefs (var_nclassdef) on <var_nclassdef:AClassdef> */
1129 var108
= var_nclassdef
->attrs
[COLOR_nitc__parser_nodes__AClassdef___n_propdefs
].val
; /* _n_propdefs on <var_nclassdef:AClassdef> */
1130 if (unlikely(var108
== NULL
)) {
1131 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_propdefs");
1132 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_nodes
, 1155);
1136 RET_LABEL107
:(void)0;
1141 var110
= nitc___nitc__ANodes___core__abstract_collection__Collection__iterator(var_109
);
1146 var112
= ((short int(*)(val
* self
))((((long)var_111
&3)?class_info
[((long)var_111
&3)]:var_111
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_111
); /* is_ok on <var_111:Iterator[APropdef]>*/
1150 goto BREAK_label113
;
1153 var114
= ((val
*(*)(val
* self
))((((long)var_111
&3)?class_info
[((long)var_111
&3)]:var_111
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_111
); /* item on <var_111:Iterator[APropdef]>*/
1155 var_npropdef
= var114
;
1157 { /* Inline phase#Phase#toolcontext (var_phase58) on <var_phase58:Phase> */
1158 var117
= var_phase58
->attrs
[COLOR_nitc__phase__Phase___toolcontext
].val
; /* _toolcontext on <var_phase58:Phase> */
1159 if (unlikely(var117
== NULL
)) {
1160 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1161 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 200);
1165 RET_LABEL116
:(void)0;
1169 { /* Inline kernel#Object#== (var115,self) on <var115:ToolContext> */
1172 { /* Inline kernel#Object#is_same_instance (var115,var_other) on <var115:ToolContext> */
1173 var122
= var115
== var_other
;
1176 RET_LABEL121
:(void)0;
1181 RET_LABEL119
:(void)0;
1184 if (unlikely(!var118
)) {
1185 PRINT_ERROR("Runtime error: %s", "Assert failed");
1186 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 124);
1190 nitc__phase___ToolContext___phase_process_npropdef(self
, var_phase58
, var_npropdef
); /* Direct call phase#ToolContext#phase_process_npropdef on <self:ToolContext>*/
1193 ((void(*)(val
* self
))((((long)var_111
&3)?class_info
[((long)var_111
&3)]:var_111
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_111
); /* next on <var_111:Iterator[APropdef]>*/
1196 BREAK_label113
: (void)0;
1198 ((void(*)(val
* self
))((((long)var_111
&3)?class_info
[((long)var_111
&3)]:var_111
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_111
); /* finish on <var_111:Iterator[APropdef]>*/
1203 ((void(*)(val
* self
))((((long)var_90
&3)?class_info
[((long)var_90
&3)]:var_90
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_90
); /* next on <var_90:Iterator[AClassdef]>*/
1206 BREAK_label92
: (void)0;
1208 ((void(*)(val
* self
))((((long)var_90
&3)?class_info
[((long)var_90
&3)]:var_90
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_90
); /* finish on <var_90:Iterator[AClassdef]>*/
1211 { /* Inline toolcontext#ToolContext#error_count (self) on <self:ToolContext> */
1212 var125
= self
->attrs
[COLOR_nitc__toolcontext__ToolContext___error_count
].l
; /* _error_count on <self:ToolContext> */
1214 RET_LABEL124
:(void)0;
1218 { /* Inline kernel#Int#!= (var_errcount,var123) on <var_errcount:Int> */
1219 var128
= var_errcount
== var123
;
1223 RET_LABEL127
:(void)0;
1228 var130
= nitc___nitc__ToolContext___check_errors(self
);
1233 { /* Inline phase#AnnotationPhaseVisitor#annotations (var_vannot) on <var_vannot:AnnotationPhaseVisitor> */
1234 var133
= var_vannot
->attrs
[COLOR_nitc__phase__AnnotationPhaseVisitor___annotations
].val
; /* _annotations on <var_vannot:AnnotationPhaseVisitor> */
1235 if (unlikely(var133
== NULL
)) {
1236 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _annotations");
1237 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 187);
1241 RET_LABEL132
:(void)0;
1246 var135
= core___core__AbstractArrayRead___core__abstract_collection__Collection__iterator(var_134
);
1251 var137
= ((short int(*)(val
* self
))((((long)var_136
&3)?class_info
[((long)var_136
&3)]:var_136
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_136
); /* is_ok on <var_136:IndexedIterator[AAnnotation]>*/
1255 goto BREAK_label138
;
1258 var139
= ((val
*(*)(val
* self
))((((long)var_136
&3)?class_info
[((long)var_136
&3)]:var_136
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_136
); /* item on <var_136:IndexedIterator[AAnnotation]>*/
1262 { /* Inline parser_nodes#ANode#parent (var_na) on <var_na:AAnnotation> */
1263 var142
= var_na
->attrs
[COLOR_nitc__parser_nodes__ANode___parent
].val
; /* _parent on <var_na:AAnnotation> */
1265 RET_LABEL141
:(void)0;
1269 /* <var_p:nullable ANode> isa AAnnotations */
1270 cltype
= type_nitc__AAnnotations
.color
;
1271 idtype
= type_nitc__AAnnotations
.id
;
1275 if(cltype
>= var_p
->type
->table_size
) {
1278 var143
= var_p
->type
->type_table
[cltype
] == idtype
;
1283 { /* Inline parser_nodes#ANode#parent (var_p) on <var_p:nullable ANode(AAnnotations)> */
1284 var146
= var_p
->attrs
[COLOR_nitc__parser_nodes__ANode___parent
].val
; /* _parent on <var_p:nullable ANode(AAnnotations)> */
1286 RET_LABEL145
:(void)0;
1292 if (var_p
== NULL
) {
1293 var147
= 0; /* is null */
1295 var147
= 1; /* arg is null and recv is not */
1298 { /* Inline kernel#Object#!= (var_p,((val*)NULL)) on <var_p:nullable ANode> */
1299 var_other150
= ((val
*)NULL
);
1301 var151
= ((short int(*)(val
* self
, val
* p0
))(var_p
->class->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_p
, var_other150
); /* == on <var_p:nullable ANode(ANode)>*/
1306 RET_LABEL149
:(void)0;
1310 if (unlikely(!var147
)) {
1311 PRINT_ERROR("Runtime error: %s", "Assert failed");
1312 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 134);
1316 ((void(*)(val
* self
, val
* p0
, val
* p1
))(var_phase58
->class->vft
[COLOR_nitc__phase__Phase__process_annotated_node
]))(var_phase58
, var_p
, var_na
); /* process_annotated_node on <var_phase58:Phase>*/
1319 ((void(*)(val
* self
))((((long)var_136
&3)?class_info
[((long)var_136
&3)]:var_136
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_136
); /* next on <var_136:IndexedIterator[AAnnotation]>*/
1322 BREAK_label138
: (void)0;
1324 ((void(*)(val
* self
))((((long)var_136
&3)?class_info
[((long)var_136
&3)]:var_136
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_136
); /* finish on <var_136:IndexedIterator[AAnnotation]>*/
1327 { /* Inline toolcontext#ToolContext#error_count (self) on <self:ToolContext> */
1328 var155
= self
->attrs
[COLOR_nitc__toolcontext__ToolContext___error_count
].l
; /* _error_count on <self:ToolContext> */
1330 RET_LABEL154
:(void)0;
1334 { /* Inline kernel#Int#!= (var_errcount,var153) on <var_errcount:Int> */
1335 var158
= var_errcount
== var153
;
1339 RET_LABEL157
:(void)0;
1344 var160
= nitc___nitc__ToolContext___check_errors(self
);
1348 BREAK_label62
: (void)0;
1350 ((void(*)(val
* self
))((((long)var_54
&3)?class_info
[((long)var_54
&3)]:var_54
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_54
); /* next on <var_54:IndexedIterator[Phase]>*/
1353 BREAK_label56
: (void)0;
1355 ((void(*)(val
* self
))((((long)var_54
&3)?class_info
[((long)var_54
&3)]:var_54
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_54
); /* finish on <var_54:IndexedIterator[Phase]>*/
1358 var161
= nitc___nitc__ToolContext___check_errors(self
);
1360 BREAK_label30
: (void)0;
1362 ((void(*)(val
* self
))((((long)var_22
&3)?class_info
[((long)var_22
&3)]:var_22
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_22
); /* next on <var_22:Iterator[AModule]>*/
1365 BREAK_label24
: (void)0;
1367 ((void(*)(val
* self
))((((long)var_22
&3)?class_info
[((long)var_22
&3)]:var_22
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_22
); /* finish on <var_22:Iterator[AModule]>*/
1371 { /* Inline time#Sys#get_time (var162) on <var162:Sys> */
1372 struct nitni_instance
* var_for_c_0
;
1373 var_for_c_0
= nit_alloc(sizeof(struct nitni_instance
));
1374 var_for_c_0
->value
= var162
;
1375 var165
= time___Sys_get_time___impl(var_for_c_0
);
1378 RET_LABEL164
:(void)0;
1382 if (unlikely(varonce166
==NULL
)) {
1383 var167
= NEW_core__NativeArray(3l, &type_core__NativeArray__core__String
);
1384 if (likely(varonce168
!=NULL
)) {
1385 var169
= varonce168
;
1387 var170
= "*** END SEMANTIC ANALYSIS: ";
1388 var171
= core__flat___NativeString___to_s_full(var170
, 27l, 27l);
1390 varonce168
= var169
;
1392 ((struct instance_core__NativeArray
*)var167
)->values
[0]=var169
;
1393 if (likely(varonce172
!=NULL
)) {
1394 var173
= varonce172
;
1397 var175
= core__flat___NativeString___to_s_full(var174
, 4l, 4l);
1399 varonce172
= var173
;
1401 ((struct instance_core__NativeArray
*)var167
)->values
[2]=var173
;
1403 var167
= varonce166
;
1407 { /* Inline kernel#Int#- (var_time1,var_time0) on <var_time1:Int> */
1408 /* Covariant cast for argument 0 (i) <var_time0:Int> isa OTHER */
1409 /* <var_time0:Int> isa OTHER */
1410 var178
= 1; /* easy <var_time0:Int> isa OTHER*/
1411 if (unlikely(!var178
)) {
1412 var_class_name
= type_core__Int
.name
;
1413 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name
);
1414 PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel
, 734);
1417 var181
= var_time1
- var_time0
;
1420 RET_LABEL177
:(void)0;
1423 var182
= core__flat___Int___core__abstract_text__Object__to_s(var176
);
1424 ((struct instance_core__NativeArray
*)var167
)->values
[1]=var182
;
1426 var183
= ((val
*(*)(val
* self
))(var167
->class->vft
[COLOR_core__abstract_text__NativeArray__native_to_s
]))(var167
); /* native_to_s on <var167:NativeArray[String]>*/
1428 varonce166
= var167
;
1430 nitc___nitc__ToolContext___info(self
, var183
, 2l); /* Direct call toolcontext#ToolContext#info on <self:ToolContext>*/
1433 var184
= nitc___nitc__ToolContext___check_errors(self
);
1437 /* method phase#ToolContext#phase_process_npropdef for (self: ToolContext, Phase, APropdef) */
1438 void nitc__phase___ToolContext___phase_process_npropdef(val
* self
, val
* p0
, val
* p1
) {
1439 val
* var_phase
/* var phase: Phase */;
1440 val
* var_npropdef
/* var npropdef: APropdef */;
1444 ((void(*)(val
* self
, val
* p0
))(var_phase
->class->vft
[COLOR_nitc__phase__Phase__process_npropdef
]))(var_phase
, var_npropdef
); /* process_npropdef on <var_phase:Phase>*/
1448 /* method phase#ToolContext#run_phases_on_npropdef for (self: ToolContext, APropdef) */
1449 void nitc__phase___ToolContext___run_phases_on_npropdef(val
* self
, val
* p0
) {
1450 val
* var_npropdef
/* var npropdef: APropdef */;
1451 short int var
/* : Bool */;
1452 short int var2
/* : Bool */;
1453 short int var3
/* : Bool */;
1454 short int var4
/* : Bool */;
1455 short int var6
/* : Bool */;
1456 val
* var8
/* : Sequence[Phase] */;
1457 val
* var_phases
/* var phases: Sequence[Phase] */;
1458 val
* var_
/* var : Sequence[Phase] */;
1459 val
* var9
/* : Iterator[nullable Object] */;
1460 val
* var_10
/* var : IndexedIterator[Phase] */;
1461 short int var11
/* : Bool */;
1462 val
* var12
/* : nullable Object */;
1463 val
* var_phase
/* var phase: Phase */;
1464 short int var13
/* : Bool */;
1465 short int var15
/* : Bool */;
1466 val
* var17
/* : ToolContext */;
1467 val
* var19
/* : ToolContext */;
1468 short int var20
/* : Bool */;
1469 val
* var_other
/* var other: nullable Object */;
1470 short int var22
/* : Bool */;
1471 short int var24
/* : Bool */;
1472 short int var25
/* : Bool */;
1475 { /* Inline phase#ToolContext#semantize_is_lazy (self) on <self:ToolContext> */
1476 var2
= self
->attrs
[COLOR_nitc__phase__ToolContext___semantize_is_lazy
].s
; /* _semantize_is_lazy on <self:ToolContext> */
1487 { /* Inline phase#APropdef#is_phased (var_npropdef) on <var_npropdef:APropdef> */
1488 var6
= var_npropdef
->attrs
[COLOR_nitc__phase__APropdef___is_phased
].s
; /* _is_phased on <var_npropdef:APropdef> */
1498 { /* Inline phase#APropdef#is_phased= (var_npropdef,1) on <var_npropdef:APropdef> */
1499 var_npropdef
->attrs
[COLOR_nitc__phase__APropdef___is_phased
].s
= 1; /* _is_phased on <var_npropdef:APropdef> */
1504 var8
= nitc__phase___ToolContext___phases_list(self
);
1509 var9
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Sequence[Phase]>*/
1514 var11
= ((short int(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_10
); /* is_ok on <var_10:IndexedIterator[Phase]>*/
1521 var12
= ((val
*(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_10
); /* item on <var_10:IndexedIterator[Phase]>*/
1525 { /* Inline phase#Phase#disabled (var_phase) on <var_phase:Phase> */
1526 var15
= var_phase
->attrs
[COLOR_nitc__phase__Phase___disabled
].s
; /* _disabled on <var_phase:Phase> */
1528 RET_LABEL14
:(void)0;
1536 { /* Inline phase#Phase#toolcontext (var_phase) on <var_phase:Phase> */
1537 var19
= var_phase
->attrs
[COLOR_nitc__phase__Phase___toolcontext
].val
; /* _toolcontext on <var_phase:Phase> */
1538 if (unlikely(var19
== NULL
)) {
1539 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1540 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 200);
1544 RET_LABEL18
:(void)0;
1548 { /* Inline kernel#Object#== (var17,self) on <var17:ToolContext> */
1551 { /* Inline kernel#Object#is_same_instance (var17,var_other) on <var17:ToolContext> */
1552 var24
= var17
== var_other
;
1555 RET_LABEL23
:(void)0;
1560 RET_LABEL21
:(void)0;
1563 if (unlikely(!var20
)) {
1564 PRINT_ERROR("Runtime error: %s", "Assert failed");
1565 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 170);
1569 nitc__phase___ToolContext___phase_process_npropdef(self
, var_phase
, var_npropdef
); /* Direct call phase#ToolContext#phase_process_npropdef on <self:ToolContext>*/
1572 var25
= nitc___nitc__ToolContext___check_errors(self
);
1574 BREAK_label16
: (void)0;
1576 ((void(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_10
); /* next on <var_10:IndexedIterator[Phase]>*/
1579 BREAK_label
: (void)0;
1581 ((void(*)(val
* self
))((((long)var_10
&3)?class_info
[((long)var_10
&3)]:var_10
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_10
); /* finish on <var_10:IndexedIterator[Phase]>*/
1585 /* method phase#APropdef#is_phased for (self: APropdef): Bool */
1586 short int nitc__phase___APropdef___is_phased(val
* self
) {
1587 short int var
/* : Bool */;
1588 short int var1
/* : Bool */;
1589 var1
= self
->attrs
[COLOR_nitc__phase__APropdef___is_phased
].s
; /* _is_phased on <self:APropdef> */
1594 /* method phase#APropdef#is_phased= for (self: APropdef, Bool) */
1595 void nitc__phase___APropdef___is_phased_61d(val
* self
, short int p0
) {
1596 self
->attrs
[COLOR_nitc__phase__APropdef___is_phased
].s
= p0
; /* _is_phased on <self:APropdef> */
1599 /* method phase#AnnotationPhaseVisitor#annotations for (self: AnnotationPhaseVisitor): Array[AAnnotation] */
1600 val
* nitc__phase___nitc__phase__AnnotationPhaseVisitor___annotations(val
* self
) {
1601 val
* var
/* : Array[AAnnotation] */;
1602 val
* var1
/* : Array[AAnnotation] */;
1603 var1
= self
->attrs
[COLOR_nitc__phase__AnnotationPhaseVisitor___annotations
].val
; /* _annotations on <self:AnnotationPhaseVisitor> */
1604 if (unlikely(var1
== NULL
)) {
1605 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _annotations");
1606 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 187);
1613 /* method phase#AnnotationPhaseVisitor#visit for (self: AnnotationPhaseVisitor, ANode) */
1614 void nitc__phase___nitc__phase__AnnotationPhaseVisitor___nitc__parser_nodes__Visitor__visit(val
* self
, val
* p0
) {
1615 val
* var_n
/* var n: ANode */;
1616 short int var
/* : Bool */;
1619 val
* var1
/* : Array[AAnnotation] */;
1620 val
* var3
/* : Array[AAnnotation] */;
1623 ((void(*)(val
* self
, val
* p0
))(var_n
->class->vft
[COLOR_nitc__parser_nodes__ANode__visit_all
]))(var_n
, self
); /* visit_all on <var_n:ANode>*/
1625 /* <var_n:ANode> isa AAnnotation */
1626 cltype
= type_nitc__AAnnotation
.color
;
1627 idtype
= type_nitc__AAnnotation
.id
;
1628 if(cltype
>= var_n
->type
->table_size
) {
1631 var
= var_n
->type
->type_table
[cltype
] == idtype
;
1635 { /* Inline phase#AnnotationPhaseVisitor#annotations (self) on <self:AnnotationPhaseVisitor> */
1636 var3
= self
->attrs
[COLOR_nitc__phase__AnnotationPhaseVisitor___annotations
].val
; /* _annotations on <self:AnnotationPhaseVisitor> */
1637 if (unlikely(var3
== NULL
)) {
1638 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _annotations");
1639 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 187);
1647 core___core__Array___core__abstract_collection__SimpleCollection__add(var1
, var_n
); /* Direct call array#Array#add on <var1:Array[AAnnotation]>*/
1653 /* method phase#Phase#toolcontext for (self: Phase): ToolContext */
1654 val
* nitc___nitc__Phase___toolcontext(val
* self
) {
1655 val
* var
/* : ToolContext */;
1656 val
* var1
/* : ToolContext */;
1657 var1
= self
->attrs
[COLOR_nitc__phase__Phase___toolcontext
].val
; /* _toolcontext on <self:Phase> */
1658 if (unlikely(var1
== NULL
)) {
1659 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1660 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 200);
1667 /* method phase#Phase#toolcontext= for (self: Phase, ToolContext) */
1668 void nitc___nitc__Phase___toolcontext_61d(val
* self
, val
* p0
) {
1669 self
->attrs
[COLOR_nitc__phase__Phase___toolcontext
].val
= p0
; /* _toolcontext on <self:Phase> */
1672 /* method phase#Phase#in_hierarchy for (self: Phase): POSetElement[Phase] */
1673 val
* nitc___nitc__Phase___in_hierarchy(val
* self
) {
1674 val
* var
/* : POSetElement[Phase] */;
1675 val
* var1
/* : POSetElement[Phase] */;
1676 var1
= self
->attrs
[COLOR_nitc__phase__Phase___in_hierarchy
].val
; /* _in_hierarchy on <self:Phase> */
1677 if (unlikely(var1
== NULL
)) {
1678 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _in_hierarchy");
1679 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 203);
1686 /* method phase#Phase#in_hierarchy= for (self: Phase, POSetElement[Phase]) */
1687 void nitc___nitc__Phase___in_hierarchy_61d(val
* self
, val
* p0
) {
1688 self
->attrs
[COLOR_nitc__phase__Phase___in_hierarchy
].val
= p0
; /* _in_hierarchy on <self:Phase> */
1691 /* method phase#Phase#depends for (self: Phase): nullable Collection[Phase] */
1692 val
* nitc___nitc__Phase___depends(val
* self
) {
1693 val
* var
/* : nullable Collection[Phase] */;
1694 val
* var1
/* : nullable Collection[Phase] */;
1695 var1
= self
->attrs
[COLOR_nitc__phase__Phase___depends
].val
; /* _depends on <self:Phase> */
1700 /* method phase#Phase#depends= for (self: Phase, nullable Collection[Phase]) */
1701 void nitc___nitc__Phase___depends_61d(val
* self
, val
* p0
) {
1702 self
->attrs
[COLOR_nitc__phase__Phase___depends
].val
= p0
; /* _depends on <self:Phase> */
1705 /* method phase#Phase#init for (self: Phase) */
1706 void nitc___nitc__Phase___core__kernel__Object__init(val
* self
) {
1707 val
* var
/* : ToolContext */;
1708 val
* var2
/* : ToolContext */;
1709 val
* var3
/* : POSet[Phase] */;
1710 val
* var5
/* : POSet[Phase] */;
1711 val
* var6
/* : POSetElement[nullable Object] */;
1712 val
* var8
/* : nullable Collection[Phase] */;
1713 val
* var10
/* : nullable Collection[Phase] */;
1714 val
* var_depends
/* var depends: nullable Collection[Phase] */;
1715 short int var11
/* : Bool */;
1716 short int var12
/* : Bool */;
1717 val
* var_other
/* var other: nullable Object */;
1718 short int var14
/* : Bool */;
1719 short int var15
/* : Bool */;
1720 val
* var_
/* var : Collection[Phase] */;
1721 val
* var16
/* : Iterator[nullable Object] */;
1722 val
* var_17
/* var : Iterator[Phase] */;
1723 short int var18
/* : Bool */;
1724 val
* var19
/* : nullable Object */;
1725 val
* var_d
/* var d: Phase */;
1726 val
* var20
/* : ToolContext */;
1727 val
* var22
/* : ToolContext */;
1728 val
* var23
/* : POSet[Phase] */;
1729 val
* var25
/* : POSet[Phase] */;
1731 ((void(*)(val
* self
))(self
->class->vft
[COLOR_nitc___nitc__Phase___core__kernel__Object__init
]))(self
); /* init on <self:Phase>*/
1734 { /* Inline phase#Phase#toolcontext (self) on <self:Phase> */
1735 var2
= self
->attrs
[COLOR_nitc__phase__Phase___toolcontext
].val
; /* _toolcontext on <self:Phase> */
1736 if (unlikely(var2
== NULL
)) {
1737 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1738 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 200);
1746 { /* Inline phase#ToolContext#phases (var) on <var:ToolContext> */
1747 var5
= var
->attrs
[COLOR_nitc__phase__ToolContext___phases
].val
; /* _phases on <var:ToolContext> */
1748 if (unlikely(var5
== NULL
)) {
1749 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _phases");
1750 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 23);
1758 var6
= poset___poset__POSet___add_node(var3
, self
);
1761 { /* Inline phase#Phase#in_hierarchy= (self,var6) on <self:Phase> */
1762 self
->attrs
[COLOR_nitc__phase__Phase___in_hierarchy
].val
= var6
; /* _in_hierarchy on <self:Phase> */
1767 { /* Inline phase#Phase#depends (self) on <self:Phase> */
1768 var10
= self
->attrs
[COLOR_nitc__phase__Phase___depends
].val
; /* _depends on <self:Phase> */
1774 if (var_depends
== NULL
) {
1775 var11
= 0; /* is null */
1777 var11
= 1; /* arg is null and recv is not */
1780 { /* Inline kernel#Object#!= (var_depends,((val*)NULL)) on <var_depends:nullable Collection[Phase]> */
1781 var_other
= ((val
*)NULL
);
1783 var14
= ((short int(*)(val
* self
, val
* p0
))((((long)var_depends
&3)?class_info
[((long)var_depends
&3)]:var_depends
->class)->vft
[COLOR_core__kernel__Object___61d_61d
]))(var_depends
, var_other
); /* == on <var_depends:nullable Collection[Phase](Collection[Phase])>*/
1788 RET_LABEL13
:(void)0;
1795 var16
= ((val
*(*)(val
* self
))((((long)var_
&3)?class_info
[((long)var_
&3)]:var_
->class)->vft
[COLOR_core__abstract_collection__Collection__iterator
]))(var_
); /* iterator on <var_:Collection[Phase]>*/
1800 var18
= ((short int(*)(val
* self
))((((long)var_17
&3)?class_info
[((long)var_17
&3)]:var_17
->class)->vft
[COLOR_core__abstract_collection__Iterator__is_ok
]))(var_17
); /* is_ok on <var_17:Iterator[Phase]>*/
1807 var19
= ((val
*(*)(val
* self
))((((long)var_17
&3)?class_info
[((long)var_17
&3)]:var_17
->class)->vft
[COLOR_core__abstract_collection__Iterator__item
]))(var_17
); /* item on <var_17:Iterator[Phase]>*/
1811 { /* Inline phase#Phase#toolcontext (self) on <self:Phase> */
1812 var22
= self
->attrs
[COLOR_nitc__phase__Phase___toolcontext
].val
; /* _toolcontext on <self:Phase> */
1813 if (unlikely(var22
== NULL
)) {
1814 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _toolcontext");
1815 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 200);
1819 RET_LABEL21
:(void)0;
1823 { /* Inline phase#ToolContext#phases (var20) on <var20:ToolContext> */
1824 var25
= var20
->attrs
[COLOR_nitc__phase__ToolContext___phases
].val
; /* _phases on <var20:ToolContext> */
1825 if (unlikely(var25
== NULL
)) {
1826 PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _phases");
1827 PRINT_ERROR(" (%s:%d)\n", FILE_nitc__phase
, 23);
1831 RET_LABEL24
:(void)0;
1835 poset___poset__POSet___add_edge(var23
, self
, var_d
); /* Direct call poset#POSet#add_edge on <var23:POSet[Phase]>*/
1838 ((void(*)(val
* self
))((((long)var_17
&3)?class_info
[((long)var_17
&3)]:var_17
->class)->vft
[COLOR_core__abstract_collection__Iterator__next
]))(var_17
); /* next on <var_17:Iterator[Phase]>*/
1841 BREAK_label
: (void)0;
1843 ((void(*)(val
* self
))((((long)var_17
&3)?class_info
[((long)var_17
&3)]:var_17
->class)->vft
[COLOR_core__abstract_collection__Iterator__finish
]))(var_17
); /* finish on <var_17:Iterator[Phase]>*/
1849 /* method phase#Phase#to_s for (self: Phase): String */
1850 val
* nitc___nitc__Phase___core__abstract_text__Object__to_s(val
* self
) {
1851 val
* var
/* : String */;
1852 val
* var1
/* : String */;
1853 static val
* varonce
;
1854 val
* var2
/* : String */;
1855 char* var3
/* : NativeString */;
1856 val
* var4
/* : String */;
1857 val
* var5
/* : String */;
1858 val
* var6
/* : String */;
1860 var1
= core__abstract_text___Object___class_name(self
);
1862 if (likely(varonce
!=NULL
)) {
1866 var4
= core__flat___NativeString___to_s_full(var3
, 5l, 5l);
1871 var5
= core__file___String___strip_extension(var1
, var2
);
1874 var6
= core___core__String___to_snake_case(var5
);
1881 /* method phase#Phase#disabled for (self: Phase): Bool */
1882 short int nitc___nitc__Phase___disabled(val
* self
) {
1883 short int var
/* : Bool */;
1884 short int var1
/* : Bool */;
1885 var1
= self
->attrs
[COLOR_nitc__phase__Phase___disabled
].s
; /* _disabled on <self:Phase> */
1890 /* method phase#Phase#disabled= for (self: Phase, Bool) */
1891 void nitc___nitc__Phase___disabled_61d(val
* self
, short int p0
) {
1892 self
->attrs
[COLOR_nitc__phase__Phase___disabled
].s
= p0
; /* _disabled on <self:Phase> */
1895 /* method phase#Phase#process_nmodule for (self: Phase, AModule) */
1896 void nitc___nitc__Phase___process_nmodule(val
* self
, val
* p0
) {
1897 val
* var_nmodule
/* var nmodule: AModule */;
1901 /* method phase#Phase#process_nclassdef for (self: Phase, AClassdef) */
1902 void nitc___nitc__Phase___process_nclassdef(val
* self
, val
* p0
) {
1903 val
* var_nclassdef
/* var nclassdef: AClassdef */;
1907 /* method phase#Phase#process_npropdef for (self: Phase, APropdef) */
1908 void nitc___nitc__Phase___process_npropdef(val
* self
, val
* p0
) {
1909 val
* var_npropdef
/* var npropdef: APropdef */;
1913 /* method phase#Phase#process_annotated_node for (self: Phase, ANode, AAnnotation) */
1914 void nitc___nitc__Phase___process_annotated_node(val
* self
, val
* p0
, val
* p1
) {
1915 val
* var_node
/* var node: ANode */;
1916 val
* var_nat
/* var nat: AAnnotation */;