1 /* This C file is generated by NIT to compile module analysis___reachable_as_init_impl. */
2 #include "analysis___reachable_as_init_impl._sep.h"
3 val_t
analysis___reachable_as_init_impl___ReachableAsInitBuilder___context(val_t p0
){
4 struct {struct stack_frame_t me
;} fra
;
7 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8 fra
.me
.file
= LOCATE_analysis___reachable_as_init_impl
;
10 fra
.me
.meth
= LOCATE_analysis___reachable_as_init_impl___ReachableAsInitBuilder___context
;
13 fra
.me
.nitni_local_ref_head
= NULL
;
14 fra
.me
.REG
[0] = NIT_NULL
;
16 /* ./analysis//reachable_as_init_impl.nit:24 */
17 REGB0
= TAG_Bool(ATTR_analysis___reachable_as_init_impl___ReachableAsInitBuilder____context(fra
.me
.REG
[0])!=NIT_NULL
);
18 if (UNTAG_Bool(REGB0
)) {
20 nit_abort("Uninitialized attribute %s", "_context", LOCATE_analysis___reachable_as_init_impl
, 24);
22 fra
.me
.REG
[0] = ATTR_analysis___reachable_as_init_impl___ReachableAsInitBuilder____context(fra
.me
.REG
[0]);
23 stack_frame_head
= fra
.me
.prev
;
26 val_t
analysis___reachable_as_init_impl___ReachableAsInitBuilder___program(val_t p0
){
27 struct {struct stack_frame_t me
;} fra
;
30 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
31 fra
.me
.file
= LOCATE_analysis___reachable_as_init_impl
;
33 fra
.me
.meth
= LOCATE_analysis___reachable_as_init_impl___ReachableAsInitBuilder___program
;
36 fra
.me
.nitni_local_ref_head
= NULL
;
37 fra
.me
.REG
[0] = NIT_NULL
;
39 /* ./analysis//reachable_as_init_impl.nit:25 */
40 REGB0
= TAG_Bool(ATTR_analysis___reachable_as_init_impl___ReachableAsInitBuilder____program(fra
.me
.REG
[0])!=NIT_NULL
);
41 if (UNTAG_Bool(REGB0
)) {
43 nit_abort("Uninitialized attribute %s", "_program", LOCATE_analysis___reachable_as_init_impl
, 25);
45 fra
.me
.REG
[0] = ATTR_analysis___reachable_as_init_impl___ReachableAsInitBuilder____program(fra
.me
.REG
[0]);
46 stack_frame_head
= fra
.me
.prev
;
49 void analysis___reachable_as_init_impl___ReachableAsInitBuilder___work(val_t p0
){
50 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
52 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
53 fra
.me
.file
= LOCATE_analysis___reachable_as_init_impl
;
55 fra
.me
.meth
= LOCATE_analysis___reachable_as_init_impl___ReachableAsInitBuilder___work
;
58 fra
.me
.nitni_local_ref_head
= NULL
;
59 fra
.me
.REG
[0] = NIT_NULL
;
60 fra
.me
.REG
[1] = NIT_NULL
;
62 /* ./analysis//reachable_as_init_impl.nit:28 */
63 fra
.me
.REG
[1] = CALL_analysis___reachable_as_init_impl___ReachableAsInitBuilder___program(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
64 CALL_program___Program___with_each_iroutines(fra
.me
.REG
[1])(fra
.me
.REG
[1], (&(fra
.me
)), ((fun_t
)OC_analysis___reachable_as_init_impl___ReachableAsInitBuilder___work_1
));
65 stack_frame_head
= fra
.me
.prev
;
68 void OC_analysis___reachable_as_init_impl___ReachableAsInitBuilder___work_1(struct stack_frame_t
*closctx
, val_t p0
, val_t p1
){
69 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
72 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
73 fra
.me
.file
= LOCATE_analysis___reachable_as_init_impl
;
75 fra
.me
.meth
= LOCATE_analysis___reachable_as_init_impl___ReachableAsInitBuilder___work
;
78 fra
.me
.nitni_local_ref_head
= NULL
;
79 fra
.me
.REG
[0] = NIT_NULL
;
80 fra
.me
.REG
[1] = NIT_NULL
;
83 /* ./analysis//reachable_as_init_impl.nit:29 */
84 fra
.me
.REG
[1] = CALL_analysis___reachable_as_init_impl___ReachableAsInitBuilder___program(closctx
->REG
[0])(closctx
->REG
[0]);
85 fra
.me
.REG
[1] = CALL_analysis___reachable_method_analysis___Program___rma(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
86 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
87 if (UNTAG_Bool(REGB0
)) {
88 nit_abort("Reciever is null", NULL
, LOCATE_analysis___reachable_as_init_impl
, 29);
90 REGB0
= CALL_analysis___reachable_method_analysis___ReachableMethodAnalysis___is_iroutine_reachable(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
91 if (UNTAG_Bool(REGB0
)) {
92 /* ./analysis//reachable_as_init_impl.nit:30 */
93 fra
.me
.REG
[1] = NEW_RAIVisitor_analysis___reachable_as_init_impl___RAIVisitor___init(closctx
->REG
[0]);
94 /* ./analysis//reachable_as_init_impl.nit:31 */
95 CALL_icode___icode_tools___ICodeVisitor___visit_iroutine(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
97 stack_frame_head
= fra
.me
.prev
;
100 void analysis___reachable_as_init_impl___ReachableAsInitBuilder___init(val_t p0
, val_t p1
, int* init_table
){
101 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_analysis___reachable_as_init_impl___ReachableAsInitBuilder
].i
;
102 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
104 if (init_table
[itpos0
]) return;
105 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
106 fra
.me
.file
= LOCATE_analysis___reachable_as_init_impl
;
108 fra
.me
.meth
= LOCATE_analysis___reachable_as_init_impl___ReachableAsInitBuilder___init
;
109 fra
.me
.has_broke
= 0;
111 fra
.me
.nitni_local_ref_head
= NULL
;
112 fra
.me
.REG
[0] = NIT_NULL
;
113 fra
.me
.REG
[1] = NIT_NULL
;
116 /* ./analysis//reachable_as_init_impl.nit:37 */
117 ATTR_analysis___reachable_as_init_impl___ReachableAsInitBuilder____program(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
118 stack_frame_head
= fra
.me
.prev
;
119 init_table
[itpos0
] = 1;
122 val_t
analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl___is_method_reachable_as_init(val_t p0
, val_t p1
, val_t p2
){
123 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
127 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
128 fra
.me
.file
= LOCATE_analysis___reachable_as_init_impl
;
130 fra
.me
.meth
= LOCATE_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl___is_method_reachable_as_init
;
131 fra
.me
.has_broke
= 0;
133 fra
.me
.nitni_local_ref_head
= NULL
;
134 fra
.me
.REG
[0] = NIT_NULL
;
135 fra
.me
.REG
[1] = NIT_NULL
;
136 fra
.me
.REG
[2] = NIT_NULL
;
137 fra
.me
.REG
[3] = NIT_NULL
;
141 /* ./analysis//reachable_as_init_impl.nit:48 */
142 REGB0
= TAG_Bool(ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[0])!=NIT_NULL
);
143 if (UNTAG_Bool(REGB0
)) {
145 nit_abort("Uninitialized attribute %s", "_methods", LOCATE_analysis___reachable_as_init_impl
, 48);
147 fra
.me
.REG
[3] = ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[0]);
148 REGB0
= CALL_standard___collection___abstract_collection___MapRead___has_key(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
149 if (UNTAG_Bool(REGB0
)) {
150 REGB0
= TAG_Bool(ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[0])!=NIT_NULL
);
151 if (UNTAG_Bool(REGB0
)) {
153 nit_abort("Uninitialized attribute %s", "_methods", LOCATE_analysis___reachable_as_init_impl
, 48);
155 fra
.me
.REG
[0] = ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[0]);
156 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
157 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
158 if (UNTAG_Bool(REGB0
)) {
159 nit_abort("Reciever is null", NULL
, LOCATE_analysis___reachable_as_init_impl
, 48);
161 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
164 /* ./analysis//reachable_as_init_impl.nit:49 */
165 REGB1
= TAG_Bool(false);
169 stack_frame_head
= fra
.me
.prev
;
172 void analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl___init(val_t p0
, int* init_table
){
173 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl
].i
;
174 struct {struct stack_frame_t me
;} fra
;
176 if (init_table
[itpos1
]) return;
177 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
178 fra
.me
.file
= LOCATE_analysis___reachable_as_init_impl
;
180 fra
.me
.meth
= LOCATE_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl___init
;
181 fra
.me
.has_broke
= 0;
183 fra
.me
.nitni_local_ref_head
= NULL
;
184 fra
.me
.REG
[0] = NIT_NULL
;
186 /* ./analysis//reachable_as_init_impl.nit:52 */
187 CALL_analysis___reachable_as_init___ReachableAsInitAnalysis___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
188 stack_frame_head
= fra
.me
.prev
;
189 init_table
[itpos1
] = 1;
192 val_t
analysis___reachable_as_init_impl___RAIVisitor___builder(val_t p0
){
193 struct {struct stack_frame_t me
;} fra
;
196 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
197 fra
.me
.file
= LOCATE_analysis___reachable_as_init_impl
;
199 fra
.me
.meth
= LOCATE_analysis___reachable_as_init_impl___RAIVisitor___builder
;
200 fra
.me
.has_broke
= 0;
202 fra
.me
.nitni_local_ref_head
= NULL
;
203 fra
.me
.REG
[0] = NIT_NULL
;
205 /* ./analysis//reachable_as_init_impl.nit:57 */
206 REGB0
= TAG_Bool(ATTR_analysis___reachable_as_init_impl___RAIVisitor____builder(fra
.me
.REG
[0])!=NIT_NULL
);
207 if (UNTAG_Bool(REGB0
)) {
209 nit_abort("Uninitialized attribute %s", "_builder", LOCATE_analysis___reachable_as_init_impl
, 57);
211 fra
.me
.REG
[0] = ATTR_analysis___reachable_as_init_impl___RAIVisitor____builder(fra
.me
.REG
[0]);
212 stack_frame_head
= fra
.me
.prev
;
213 return fra
.me
.REG
[0];
215 void analysis___reachable_as_init_impl___RAIVisitor___visit_icode(val_t p0
, val_t p1
){
216 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
219 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
220 fra
.me
.file
= LOCATE_analysis___reachable_as_init_impl
;
222 fra
.me
.meth
= LOCATE_analysis___reachable_as_init_impl___RAIVisitor___visit_icode
;
223 fra
.me
.has_broke
= 0;
225 fra
.me
.nitni_local_ref_head
= NULL
;
226 fra
.me
.REG
[0] = NIT_NULL
;
227 fra
.me
.REG
[1] = NIT_NULL
;
228 fra
.me
.REG
[2] = NIT_NULL
;
229 fra
.me
.REG
[3] = NIT_NULL
;
230 fra
.me
.REG
[4] = NIT_NULL
;
231 fra
.me
.REG
[5] = NIT_NULL
;
232 fra
.me
.REG
[6] = NIT_NULL
;
235 /* ./analysis//reachable_as_init_impl.nit:59 */
236 fra
.me
.REG
[2] = fra
.me
.REG
[0];
237 fra
.me
.REG
[3] = fra
.me
.REG
[1];
238 /* ./analysis//reachable_as_init_impl.nit:61 */
239 REGB0
= TAG_Bool((fra
.me
.REG
[3]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[3], COLOR_icode___icode_base___INew
, ID_icode___icode_base___INew
)) /*cast INew*/;
240 if (UNTAG_Bool(REGB0
)) {
241 /* ./analysis//reachable_as_init_impl.nit:63 */
242 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
243 if (UNTAG_Bool(REGB0
)) {
244 nit_abort("Reciever is null", NULL
, LOCATE_analysis___reachable_as_init_impl
, 63);
246 fra
.me
.REG
[4] = CALL_icode___icode_base___INew___stype(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
247 /* ./analysis//reachable_as_init_impl.nit:64 */
248 fra
.me
.REG
[5] = CALL_analysis___reachable_as_init_impl___RAIVisitor___builder(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
249 fra
.me
.REG
[5] = CALL_analysis___reachable_as_init_impl___ReachableAsInitBuilder___program(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
250 fra
.me
.REG
[5] = CALL_program___Program___main_module(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
251 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMType___for_module(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
252 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
253 /* ./analysis//reachable_as_init_impl.nit:65 */
254 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
255 if (UNTAG_Bool(REGB0
)) {
256 nit_abort("Reciever is null", NULL
, LOCATE_analysis___reachable_as_init_impl
, 65);
258 fra
.me
.REG
[3] = CALL_icode___icode_base___IAbsCall___property(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
259 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
260 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass_____bra(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
261 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[3], COLOR_metamodel___abstractmetamodel___MMMethod
, ID_metamodel___abstractmetamodel___MMMethod
)) /*cast MMMethod*/;
262 if (UNTAG_Bool(REGB0
)) {
264 nit_abort("Cast failed", NULL
, LOCATE_analysis___reachable_as_init_impl
, 65);
266 /* ./analysis//reachable_as_init_impl.nit:66 */
267 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
268 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
269 if (UNTAG_Bool(REGB0
)) {
271 nit_abort("Assert failed", NULL
, LOCATE_analysis___reachable_as_init_impl
, 66);
273 /* ./analysis//reachable_as_init_impl.nit:67 */
274 fra
.me
.REG
[4] = CALL_analysis___reachable_as_init_impl___RAIVisitor___builder(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
275 fra
.me
.REG
[4] = CALL_analysis___reachable_as_init_impl___ReachableAsInitBuilder___context(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
276 REGB0
= TAG_Bool(ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[4])!=NIT_NULL
);
277 if (UNTAG_Bool(REGB0
)) {
279 nit_abort("Uninitialized attribute %s", "_methods", LOCATE_analysis___reachable_as_init_impl
, 67);
281 fra
.me
.REG
[4] = ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[4]);
282 REGB0
= CALL_standard___collection___abstract_collection___MapRead___has_key(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
283 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
284 if (UNTAG_Bool(REGB0
)) {
285 fra
.me
.REG
[4] = CALL_analysis___reachable_as_init_impl___RAIVisitor___builder(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
286 fra
.me
.REG
[4] = CALL_analysis___reachable_as_init_impl___ReachableAsInitBuilder___context(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
287 REGB0
= TAG_Bool(ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[4])!=NIT_NULL
);
288 if (UNTAG_Bool(REGB0
)) {
290 nit_abort("Uninitialized attribute %s", "_methods", LOCATE_analysis___reachable_as_init_impl
, 67);
292 fra
.me
.REG
[4] = ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[4]);
293 fra
.me
.REG
[6] = NEW_List_standard___collection___list___List___init();
294 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5], fra
.me
.REG
[6]);
296 /* ./analysis//reachable_as_init_impl.nit:68 */
297 fra
.me
.REG
[6] = CALL_analysis___reachable_as_init_impl___RAIVisitor___builder(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
298 fra
.me
.REG
[6] = CALL_analysis___reachable_as_init_impl___ReachableAsInitBuilder___context(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
299 REGB0
= TAG_Bool(ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[6])!=NIT_NULL
);
300 if (UNTAG_Bool(REGB0
)) {
302 nit_abort("Uninitialized attribute %s", "_methods", LOCATE_analysis___reachable_as_init_impl
, 68);
304 fra
.me
.REG
[6] = ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[6]);
305 fra
.me
.REG
[6] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
306 REGB0
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
307 if (UNTAG_Bool(REGB0
)) {
308 nit_abort("Reciever is null", NULL
, LOCATE_analysis___reachable_as_init_impl
, 68);
310 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
311 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
312 if (UNTAG_Bool(REGB0
)) {
313 fra
.me
.REG
[2] = CALL_analysis___reachable_as_init_impl___RAIVisitor___builder(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
314 fra
.me
.REG
[2] = CALL_analysis___reachable_as_init_impl___ReachableAsInitBuilder___context(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
315 REGB0
= TAG_Bool(ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[2])!=NIT_NULL
);
316 if (UNTAG_Bool(REGB0
)) {
318 nit_abort("Uninitialized attribute %s", "_methods", LOCATE_analysis___reachable_as_init_impl
, 68);
320 fra
.me
.REG
[2] = ATTR_analysis___reachable_as_init_impl___ReachableAsInitAnalysisImpl____methods(fra
.me
.REG
[2]);
321 fra
.me
.REG
[5] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[5]);
322 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
323 if (UNTAG_Bool(REGB0
)) {
324 nit_abort("Reciever is null", NULL
, LOCATE_analysis___reachable_as_init_impl
, 68);
326 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
329 /* ./analysis//reachable_as_init_impl.nit:70 */
330 CALL_SUPER_analysis___reachable_as_init_impl___RAIVisitor___visit_icode(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
331 stack_frame_head
= fra
.me
.prev
;
334 void analysis___reachable_as_init_impl___RAIVisitor___init(val_t p0
, val_t p1
, int* init_table
){
335 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_analysis___reachable_as_init_impl___RAIVisitor
].i
;
336 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
338 if (init_table
[itpos2
]) return;
339 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
340 fra
.me
.file
= LOCATE_analysis___reachable_as_init_impl
;
342 fra
.me
.meth
= LOCATE_analysis___reachable_as_init_impl___RAIVisitor___init
;
343 fra
.me
.has_broke
= 0;
345 fra
.me
.nitni_local_ref_head
= NULL
;
346 fra
.me
.REG
[0] = NIT_NULL
;
347 fra
.me
.REG
[1] = NIT_NULL
;
348 fra
.me
.REG
[2] = NIT_NULL
;
351 /* ./analysis//reachable_as_init_impl.nit:73 */
352 fra
.me
.REG
[2] = fra
.me
.REG
[0];
353 CALL_icode___icode_tools___ICodeVisitor___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
354 /* ./analysis//reachable_as_init_impl.nit:75 */
355 ATTR_analysis___reachable_as_init_impl___RAIVisitor____builder(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
356 stack_frame_head
= fra
.me
.prev
;
357 init_table
[itpos2
] = 1;