1 /* This C file is generated by NIT to compile module scope. */
2 #include "scope._sep.h"
3 val_t
scope___ScopeContext_____bra(val_t p0
, val_t p1
){
4 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
10 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
11 fra
.me
.file
= LOCATE_scope
;
13 fra
.me
.meth
= LOCATE_scope___ScopeContext_____bra
;
16 fra
.me
.REG
[0] = NIT_NULL
;
17 fra
.me
.REG
[1] = NIT_NULL
;
18 fra
.me
.REG
[2] = NIT_NULL
;
21 /* ./syntax//scope.nit:48 */
22 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0])!=NIT_NULL
);
23 if (UNTAG_Bool(REGB0
)) {
25 nit_abort("Uninitialized attribute %s", "_stack", LOCATE_scope
, 48);
27 fra
.me
.REG
[2] = ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0]);
28 /* ./../lib/standard//collection//array.nit:23 */
29 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
30 if (UNTAG_Bool(REGB0
)) {
32 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
34 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
35 /* ./syntax//scope.nit:48 */
37 /* ./../lib/standard//kernel.nit:217 */
38 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
39 /* ./syntax//scope.nit:49 */
42 /* ./../lib/standard//kernel.nit:213 */
43 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
44 /* ./syntax//scope.nit:49 */
45 if (UNTAG_Bool(REGB0
)) {
46 /* ./syntax//scope.nit:50 */
47 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0])!=NIT_NULL
);
48 if (UNTAG_Bool(REGB0
)) {
50 nit_abort("Uninitialized attribute %s", "_stack", LOCATE_scope
, 50);
52 fra
.me
.REG
[2] = ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0]);
53 /* ./../lib/standard//collection//array.nit:243 */
55 /* ./../lib/standard//collection//array.nit:245 */
57 /* ./../lib/standard//kernel.nit:213 */
58 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
59 /* ./../lib/standard//collection//array.nit:245 */
60 if (UNTAG_Bool(REGB2
)) {
61 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
62 if (UNTAG_Bool(REGB2
)) {
64 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
66 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
67 /* ./../lib/standard//kernel.nit:212 */
68 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
70 /* ./../lib/standard//collection//array.nit:245 */
71 REGB3
= TAG_Bool(false);
74 if (UNTAG_Bool(REGB2
)) {
76 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
78 /* ./../lib/standard//collection//array.nit:246 */
79 fra
.me
.REG
[2] = ATTR_array___Array____items(fra
.me
.REG
[2]);
80 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
81 if (UNTAG_Bool(REGB2
)) {
82 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
84 /* ./../lib/standard//collection//array.nit:654 */
85 fra
.me
.REG
[2] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB0
)];
86 /* ./../lib/standard//collection//array.nit:246 */
89 /* ./syntax//scope.nit:51 */
90 fra
.me
.REG
[2] = CALL_scope___ScopeBlock___get_variable(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
91 /* ./syntax//scope.nit:52 */
92 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
93 if (UNTAG_Bool(REGB0
)) {
95 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
96 if (UNTAG_Bool(REGB2
)) {
97 REGB2
= TAG_Bool(false);
100 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
104 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
105 if (UNTAG_Bool(REGB0
)) {
108 /* ./syntax//scope.nit:53 */
110 /* ./../lib/standard//kernel.nit:217 */
111 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
112 /* ./syntax//scope.nit:53 */
115 /* ./syntax//scope.nit:49 */
120 /* ./syntax//scope.nit:55 */
121 fra
.me
.REG
[2] = NIT_NULL
;
124 stack_frame_head
= fra
.me
.prev
;
125 return fra
.me
.REG
[2];
127 void scope___ScopeContext___add_variable(val_t p0
, val_t p1
){
128 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
132 static val_t once_value_1
; /* Once value */
133 static val_t once_value_2
; /* Once value */
134 static val_t once_value_3
; /* Once value */
135 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
136 fra
.me
.file
= LOCATE_scope
;
138 fra
.me
.meth
= LOCATE_scope___ScopeContext___add_variable
;
139 fra
.me
.has_broke
= 0;
141 fra
.me
.REG
[0] = NIT_NULL
;
142 fra
.me
.REG
[1] = NIT_NULL
;
143 fra
.me
.REG
[2] = NIT_NULL
;
144 fra
.me
.REG
[3] = NIT_NULL
;
145 fra
.me
.REG
[4] = NIT_NULL
;
146 fra
.me
.REG
[5] = NIT_NULL
;
147 fra
.me
.REG
[6] = NIT_NULL
;
150 /* ./syntax//scope.nit:62 */
151 fra
.me
.REG
[2] = CALL_syntax_base___Variable___name(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
152 fra
.me
.REG
[2] = CALL_scope___ScopeContext_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
153 /* ./syntax//scope.nit:63 */
154 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
155 if (UNTAG_Bool(REGB0
)) {
157 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
158 if (UNTAG_Bool(REGB1
)) {
159 REGB1
= TAG_Bool(false);
162 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
166 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
167 if (UNTAG_Bool(REGB0
)) {
168 /* ./syntax//scope.nit:64 */
169 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____visitor(fra
.me
.REG
[0])!=NIT_NULL
);
170 if (UNTAG_Bool(REGB0
)) {
172 nit_abort("Uninitialized attribute %s", "_visitor", LOCATE_scope
, 64);
174 fra
.me
.REG
[3] = ATTR_scope___ScopeContext____visitor(fra
.me
.REG
[0]);
175 fra
.me
.REG
[4] = CALL_syntax_base___Variable___decl(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
177 fra
.me
.REG
[5] = NEW_Array_array___Array___with_capacity(REGB0
);
179 fra
.me
.REG
[6] = BOX_NativeString("Error: '");
181 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
182 once_value_1
= fra
.me
.REG
[6];
183 register_static_object(&once_value_1
);
184 } else fra
.me
.REG
[6] = once_value_1
;
185 fra
.me
.REG
[6] = fra
.me
.REG
[6];
186 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
187 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
188 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
190 fra
.me
.REG
[6] = BOX_NativeString("' already defined at ");
192 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
193 once_value_2
= fra
.me
.REG
[6];
194 register_static_object(&once_value_2
);
195 } else fra
.me
.REG
[6] = once_value_2
;
196 fra
.me
.REG
[6] = fra
.me
.REG
[6];
197 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
198 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
199 if (UNTAG_Bool(REGB0
)) {
200 nit_abort("Reciever is null", NULL
, LOCATE_scope
, 64);
202 fra
.me
.REG
[2] = CALL_syntax_base___Variable___decl(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
203 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
204 if (UNTAG_Bool(REGB0
)) {
205 nit_abort("Reciever is null", NULL
, LOCATE_scope
, 64);
207 fra
.me
.REG
[2] = CALL_parser_nodes___ANode___location(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
208 fra
.me
.REG
[6] = CALL_syntax_base___Variable___decl(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
209 REGB0
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
210 if (UNTAG_Bool(REGB0
)) {
211 nit_abort("Reciever is null", NULL
, LOCATE_scope
, 64);
213 fra
.me
.REG
[6] = CALL_parser_nodes___ANode___location(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
214 fra
.me
.REG
[6] = CALL_location___Location___relative_to(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
215 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
217 fra
.me
.REG
[6] = BOX_NativeString(".");
219 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
220 once_value_3
= fra
.me
.REG
[6];
221 register_static_object(&once_value_3
);
222 } else fra
.me
.REG
[6] = once_value_3
;
223 fra
.me
.REG
[6] = fra
.me
.REG
[6];
224 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
225 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
226 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4], fra
.me
.REG
[5]);
228 /* ./syntax//scope.nit:66 */
229 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0])!=NIT_NULL
);
230 if (UNTAG_Bool(REGB0
)) {
232 nit_abort("Uninitialized attribute %s", "_stack", LOCATE_scope
, 66);
234 fra
.me
.REG
[5] = ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0]);
235 fra
.me
.REG
[5] = CALL_abstract_collection___SequenceRead___last(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
236 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
237 if (UNTAG_Bool(REGB0
)) {
238 nit_abort("Reciever is null", NULL
, LOCATE_scope
, 66);
240 CALL_scope___ScopeBlock___add_variable(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[1]);
241 /* ./syntax//scope.nit:67 */
242 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____variables(fra
.me
.REG
[0])!=NIT_NULL
);
243 if (UNTAG_Bool(REGB0
)) {
245 nit_abort("Uninitialized attribute %s", "_variables", LOCATE_scope
, 67);
247 fra
.me
.REG
[0] = ATTR_scope___ScopeContext____variables(fra
.me
.REG
[0]);
248 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
249 stack_frame_head
= fra
.me
.prev
;
252 void scope___ScopeContext___push(val_t p0
, val_t p1
){
253 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
256 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
257 fra
.me
.file
= LOCATE_scope
;
259 fra
.me
.meth
= LOCATE_scope___ScopeContext___push
;
260 fra
.me
.has_broke
= 0;
262 fra
.me
.REG
[0] = NIT_NULL
;
263 fra
.me
.REG
[1] = NIT_NULL
;
266 /* ./syntax//scope.nit:73 */
267 fra
.me
.REG
[1] = NEW_ScopeBlock_scope___ScopeBlock___init(fra
.me
.REG
[1]);
268 /* ./syntax//scope.nit:74 */
269 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0])!=NIT_NULL
);
270 if (UNTAG_Bool(REGB0
)) {
272 nit_abort("Uninitialized attribute %s", "_stack", LOCATE_scope
, 74);
274 fra
.me
.REG
[0] = ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0]);
275 CALL_abstract_collection___Sequence___push(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
276 stack_frame_head
= fra
.me
.prev
;
279 void scope___ScopeContext___push_escapable(val_t p0
, val_t p1
, val_t p2
){
280 struct {struct stack_frame_t me
; val_t MORE_REG
[9];} fra
;
285 static val_t once_value_1
; /* Once value */
286 static val_t once_value_2
; /* Once value */
287 static val_t once_value_3
; /* Once value */
288 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
289 fra
.me
.file
= LOCATE_scope
;
291 fra
.me
.meth
= LOCATE_scope___ScopeContext___push_escapable
;
292 fra
.me
.has_broke
= 0;
293 fra
.me
.REG_size
= 10;
294 fra
.me
.REG
[0] = NIT_NULL
;
295 fra
.me
.REG
[1] = NIT_NULL
;
296 fra
.me
.REG
[2] = NIT_NULL
;
297 fra
.me
.REG
[3] = NIT_NULL
;
298 fra
.me
.REG
[4] = NIT_NULL
;
299 fra
.me
.REG
[5] = NIT_NULL
;
300 fra
.me
.REG
[6] = NIT_NULL
;
301 fra
.me
.REG
[7] = NIT_NULL
;
302 fra
.me
.REG
[8] = NIT_NULL
;
303 fra
.me
.REG
[9] = NIT_NULL
;
307 /* ./syntax//scope.nit:81 */
308 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0])!=NIT_NULL
);
309 if (UNTAG_Bool(REGB0
)) {
311 nit_abort("Uninitialized attribute %s", "_stack", LOCATE_scope
, 81);
313 fra
.me
.REG
[3] = ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0]);
314 CALL_abstract_collection___Sequence___push(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
315 /* ./syntax//scope.nit:82 */
316 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
317 if (UNTAG_Bool(REGB0
)) {
319 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
320 if (UNTAG_Bool(REGB1
)) {
321 REGB1
= TAG_Bool(false);
324 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
328 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
329 if (UNTAG_Bool(REGB0
)) {
330 /* ./syntax//scope.nit:83 */
331 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
332 if (UNTAG_Bool(REGB0
)) {
333 nit_abort("Reciever is null", NULL
, LOCATE_scope
, 83);
335 fra
.me
.REG
[3] = CALL_parser_nodes___ALabel___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
336 fra
.me
.REG
[3] = CALL_syntax_base___Token___to_symbol(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
337 /* ./syntax//scope.nit:84 */
338 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____labels(fra
.me
.REG
[0])!=NIT_NULL
);
339 if (UNTAG_Bool(REGB0
)) {
341 nit_abort("Uninitialized attribute %s", "_labels", LOCATE_scope
, 84);
343 fra
.me
.REG
[4] = ATTR_scope___ScopeContext____labels(fra
.me
.REG
[0]);
344 /* ./../lib/standard//collection//array.nit:234 */
346 /* ./../lib/standard//collection//array.nit:235 */
347 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
348 if (UNTAG_Bool(REGB1
)) {
350 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 235);
352 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[4]);
353 /* ./../lib/standard//collection//array.nit:236 */
354 fra
.me
.REG
[5] = ATTR_array___Array____items(fra
.me
.REG
[4]);
355 /* ./../lib/standard//collection//array.nit:237 */
357 /* ./../lib/standard//collection//array.nit:23 */
358 REGB1
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
359 if (UNTAG_Bool(REGB1
)) {
361 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
363 REGB1
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[4]);
364 /* ./../lib/standard//kernel.nit:212 */
365 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
366 /* ./../lib/standard//collection//array.nit:237 */
367 if (UNTAG_Bool(REGB1
)) {
368 /* ./../lib/standard//collection//array.nit:238 */
369 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
370 if (UNTAG_Bool(REGB1
)) {
371 nit_abort("Reciever is null", NULL
, LOCATE_array
, 238);
373 /* ./../lib/standard//collection//array.nit:654 */
374 fra
.me
.REG
[6] = ((Nit_NativeArray
)fra
.me
.REG
[5])->val
[UNTAG_Int(REGB0
)];
375 /* ./syntax//scope.nit:85 */
376 REGB1
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[6],fra
.me
.REG
[2]));
377 if (UNTAG_Bool(REGB1
)) {
379 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
380 if (UNTAG_Bool(REGB2
)) {
381 REGB2
= TAG_Bool(false);
384 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[6]);
388 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
389 if (UNTAG_Bool(REGB1
)) {
390 fra
.me
.REG
[7] = CALL_parser_nodes___ALabel___n_id(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
391 fra
.me
.REG
[7] = CALL_syntax_base___Token___to_symbol(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
392 REGB1
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[3],fra
.me
.REG
[7]));
393 if (UNTAG_Bool(REGB1
)) {
395 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[7]);
399 REGB2
= TAG_Bool(false);
402 if (UNTAG_Bool(REGB1
)) {
403 /* ./syntax//scope.nit:86 */
404 fra
.me
.REG
[7] = CALL_scope___ScopeContext___visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
406 fra
.me
.REG
[8] = NEW_Array_array___Array___with_capacity(REGB1
);
408 fra
.me
.REG
[9] = BOX_NativeString("Syntax error: label ");
410 fra
.me
.REG
[9] = NEW_String_string___String___with_native(fra
.me
.REG
[9], REGB1
);
411 once_value_1
= fra
.me
.REG
[9];
412 register_static_object(&once_value_1
);
413 } else fra
.me
.REG
[9] = once_value_1
;
414 fra
.me
.REG
[9] = fra
.me
.REG
[9];
415 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[9]);
416 fra
.me
.REG
[9] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
417 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[9]);
419 fra
.me
.REG
[9] = BOX_NativeString(" already defined at ");
421 fra
.me
.REG
[9] = NEW_String_string___String___with_native(fra
.me
.REG
[9], REGB1
);
422 once_value_2
= fra
.me
.REG
[9];
423 register_static_object(&once_value_2
);
424 } else fra
.me
.REG
[9] = once_value_2
;
425 fra
.me
.REG
[9] = fra
.me
.REG
[9];
426 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[9]);
427 fra
.me
.REG
[6] = CALL_parser_nodes___ANode___location(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
428 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
429 if (UNTAG_Bool(REGB1
)) {
430 nit_abort("Reciever is null", NULL
, LOCATE_scope
, 86);
432 fra
.me
.REG
[9] = CALL_parser_nodes___ANode___location(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
433 fra
.me
.REG
[9] = CALL_location___Location___relative_to(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[9]);
434 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[9]);
436 fra
.me
.REG
[9] = BOX_NativeString(".");
438 fra
.me
.REG
[9] = NEW_String_string___String___with_native(fra
.me
.REG
[9], REGB1
);
439 once_value_3
= fra
.me
.REG
[9];
440 register_static_object(&once_value_3
);
441 } else fra
.me
.REG
[9] = once_value_3
;
442 fra
.me
.REG
[9] = fra
.me
.REG
[9];
443 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[9]);
444 fra
.me
.REG
[8] = CALL_string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
445 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[2], fra
.me
.REG
[8]);
446 /* ./syntax//scope.nit:87 */
449 /* ./../lib/standard//collection//array.nit:239 */
451 /* ./../lib/standard//kernel.nit:215 */
452 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
453 /* ./../lib/standard//collection//array.nit:239 */
456 /* ./../lib/standard//collection//array.nit:237 */
461 /* ./syntax//scope.nit:90 */
462 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____labels(fra
.me
.REG
[0])!=NIT_NULL
);
463 if (UNTAG_Bool(REGB0
)) {
465 nit_abort("Uninitialized attribute %s", "_labels", LOCATE_scope
, 90);
467 fra
.me
.REG
[0] = ATTR_scope___ScopeContext____labels(fra
.me
.REG
[0]);
468 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
469 /* ./syntax//scope.nit:91 */
470 ATTR_scope___EscapableBlock____lab(fra
.me
.REG
[1]) = fra
.me
.REG
[3];
473 stack_frame_head
= fra
.me
.prev
;
476 val_t
scope___ScopeContext___head(val_t p0
){
477 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
483 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
484 fra
.me
.file
= LOCATE_scope
;
486 fra
.me
.meth
= LOCATE_scope___ScopeContext___head
;
487 fra
.me
.has_broke
= 0;
489 fra
.me
.REG
[0] = NIT_NULL
;
490 fra
.me
.REG
[1] = NIT_NULL
;
492 /* ./syntax//scope.nit:98 */
493 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0])!=NIT_NULL
);
494 if (UNTAG_Bool(REGB0
)) {
496 nit_abort("Uninitialized attribute %s", "_stack", LOCATE_scope
, 98);
498 fra
.me
.REG
[1] = ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0]);
499 /* ./../lib/standard//collection//array.nit:23 */
500 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
501 if (UNTAG_Bool(REGB0
)) {
503 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
505 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
506 /* ./syntax//scope.nit:98 */
508 /* ./../lib/standard//kernel.nit:217 */
509 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
510 /* ./syntax//scope.nit:99 */
513 /* ./../lib/standard//kernel.nit:213 */
514 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
515 /* ./syntax//scope.nit:99 */
516 if (UNTAG_Bool(REGB0
)) {
517 /* ./syntax//scope.nit:100 */
518 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0])!=NIT_NULL
);
519 if (UNTAG_Bool(REGB0
)) {
521 nit_abort("Uninitialized attribute %s", "_stack", LOCATE_scope
, 100);
523 fra
.me
.REG
[1] = ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0]);
524 /* ./../lib/standard//collection//array.nit:243 */
526 /* ./../lib/standard//collection//array.nit:245 */
528 /* ./../lib/standard//kernel.nit:213 */
529 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
530 /* ./../lib/standard//collection//array.nit:245 */
531 if (UNTAG_Bool(REGB2
)) {
532 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
533 if (UNTAG_Bool(REGB2
)) {
535 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
537 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[1]);
538 /* ./../lib/standard//kernel.nit:212 */
539 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
541 /* ./../lib/standard//collection//array.nit:245 */
542 REGB3
= TAG_Bool(false);
545 if (UNTAG_Bool(REGB2
)) {
547 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
549 /* ./../lib/standard//collection//array.nit:246 */
550 fra
.me
.REG
[1] = ATTR_array___Array____items(fra
.me
.REG
[1]);
551 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
552 if (UNTAG_Bool(REGB2
)) {
553 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
555 /* ./../lib/standard//collection//array.nit:654 */
556 fra
.me
.REG
[1] = ((Nit_NativeArray
)fra
.me
.REG
[1])->val
[UNTAG_Int(REGB0
)];
557 /* ./../lib/standard//collection//array.nit:246 */
560 /* ./syntax//scope.nit:101 */
561 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[1], COLOR_EscapableBlock
, ID_EscapableBlock
)) /*cast EscapableBlock*/;
562 if (UNTAG_Bool(REGB0
)) {
563 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[1], COLOR_BreakOnlyEscapableBlock
, ID_BreakOnlyEscapableBlock
)) /*cast BreakOnlyEscapableBlock*/;
564 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
566 REGB2
= TAG_Bool(false);
569 if (UNTAG_Bool(REGB0
)) {
572 /* ./syntax//scope.nit:102 */
574 /* ./../lib/standard//kernel.nit:217 */
575 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
576 /* ./syntax//scope.nit:102 */
579 /* ./syntax//scope.nit:99 */
584 /* ./syntax//scope.nit:104 */
585 fra
.me
.REG
[1] = NIT_NULL
;
588 stack_frame_head
= fra
.me
.prev
;
589 return fra
.me
.REG
[1];
591 val_t
scope___ScopeContext___get_by_label(val_t p0
, val_t p1
){
592 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
598 static val_t once_value_4
; /* Once value */
599 static val_t once_value_5
; /* Once value */
600 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
601 fra
.me
.file
= LOCATE_scope
;
603 fra
.me
.meth
= LOCATE_scope___ScopeContext___get_by_label
;
604 fra
.me
.has_broke
= 0;
606 fra
.me
.REG
[0] = NIT_NULL
;
607 fra
.me
.REG
[1] = NIT_NULL
;
608 fra
.me
.REG
[2] = NIT_NULL
;
609 fra
.me
.REG
[3] = NIT_NULL
;
610 fra
.me
.REG
[4] = NIT_NULL
;
611 fra
.me
.REG
[5] = NIT_NULL
;
614 /* ./syntax//scope.nit:111 */
615 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0])!=NIT_NULL
);
616 if (UNTAG_Bool(REGB0
)) {
618 nit_abort("Uninitialized attribute %s", "_stack", LOCATE_scope
, 111);
620 fra
.me
.REG
[2] = ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0]);
621 /* ./../lib/standard//collection//array.nit:23 */
622 REGB0
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
623 if (UNTAG_Bool(REGB0
)) {
625 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 23);
627 REGB0
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[2]);
628 /* ./syntax//scope.nit:111 */
630 /* ./../lib/standard//kernel.nit:217 */
631 REGB1
= TAG_Int(UNTAG_Int(REGB0
)-UNTAG_Int(REGB1
));
632 /* ./syntax//scope.nit:112 */
633 fra
.me
.REG
[2] = CALL_parser_nodes___ALabel___n_id(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
634 fra
.me
.REG
[2] = CALL_syntax_base___Token___to_symbol(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
635 /* ./syntax//scope.nit:113 */
638 /* ./../lib/standard//kernel.nit:213 */
639 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
640 /* ./syntax//scope.nit:113 */
641 if (UNTAG_Bool(REGB0
)) {
642 /* ./syntax//scope.nit:114 */
643 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0])!=NIT_NULL
);
644 if (UNTAG_Bool(REGB0
)) {
646 nit_abort("Uninitialized attribute %s", "_stack", LOCATE_scope
, 114);
648 fra
.me
.REG
[3] = ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0]);
649 /* ./../lib/standard//collection//array.nit:243 */
651 /* ./../lib/standard//collection//array.nit:245 */
653 /* ./../lib/standard//kernel.nit:213 */
654 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB2
));
655 /* ./../lib/standard//collection//array.nit:245 */
656 if (UNTAG_Bool(REGB2
)) {
657 REGB2
= TAG_Bool(ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
658 if (UNTAG_Bool(REGB2
)) {
660 nit_abort("Uninitialized attribute %s", "_length", LOCATE_array
, 245);
662 REGB2
= ATTR_array___AbstractArrayRead____length(fra
.me
.REG
[3]);
663 /* ./../lib/standard//kernel.nit:212 */
664 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
666 /* ./../lib/standard//collection//array.nit:245 */
667 REGB3
= TAG_Bool(false);
670 if (UNTAG_Bool(REGB2
)) {
672 nit_abort("Assert %s failed", "'index'", LOCATE_array
, 245);
674 /* ./../lib/standard//collection//array.nit:246 */
675 fra
.me
.REG
[3] = ATTR_array___Array____items(fra
.me
.REG
[3]);
676 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
677 if (UNTAG_Bool(REGB2
)) {
678 nit_abort("Reciever is null", NULL
, LOCATE_array
, 246);
680 /* ./../lib/standard//collection//array.nit:654 */
681 fra
.me
.REG
[3] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB0
)];
682 /* ./../lib/standard//collection//array.nit:246 */
685 /* ./syntax//scope.nit:115 */
686 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[3], COLOR_EscapableBlock
, ID_EscapableBlock
)) /*cast EscapableBlock*/;
687 if (UNTAG_Bool(REGB0
)) {
688 fra
.me
.REG
[4] = CALL_scope___EscapableBlock___lab(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
689 REGB0
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[2],fra
.me
.REG
[4]));
690 if (UNTAG_Bool(REGB0
)) {
692 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
693 if (UNTAG_Bool(REGB2
)) {
694 REGB2
= TAG_Bool(false);
697 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
702 REGB2
= TAG_Bool(false);
705 if (UNTAG_Bool(REGB0
)) {
708 /* ./syntax//scope.nit:116 */
710 /* ./../lib/standard//kernel.nit:217 */
711 REGB0
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB0
));
712 /* ./syntax//scope.nit:116 */
715 /* ./syntax//scope.nit:113 */
720 /* ./syntax//scope.nit:118 */
721 fra
.me
.REG
[0] = CALL_scope___ScopeContext___visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
723 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB1
);
725 fra
.me
.REG
[5] = BOX_NativeString("Syntax error: invalid label ");
727 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB1
);
728 once_value_4
= fra
.me
.REG
[5];
729 register_static_object(&once_value_4
);
730 } else fra
.me
.REG
[5] = once_value_4
;
731 fra
.me
.REG
[5] = fra
.me
.REG
[5];
732 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
733 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
734 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
736 fra
.me
.REG
[2] = BOX_NativeString(".");
738 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB1
);
739 once_value_5
= fra
.me
.REG
[2];
740 register_static_object(&once_value_5
);
741 } else fra
.me
.REG
[2] = once_value_5
;
742 fra
.me
.REG
[2] = fra
.me
.REG
[2];
743 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
744 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
745 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[4]);
746 /* ./syntax//scope.nit:119 */
747 fra
.me
.REG
[3] = NIT_NULL
;
750 stack_frame_head
= fra
.me
.prev
;
751 return fra
.me
.REG
[3];
753 void scope___ScopeContext___pop(val_t p0
){
754 struct {struct stack_frame_t me
;} fra
;
757 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
758 fra
.me
.file
= LOCATE_scope
;
760 fra
.me
.meth
= LOCATE_scope___ScopeContext___pop
;
761 fra
.me
.has_broke
= 0;
763 fra
.me
.REG
[0] = NIT_NULL
;
765 /* ./syntax//scope.nit:125 */
766 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0])!=NIT_NULL
);
767 if (UNTAG_Bool(REGB0
)) {
769 nit_abort("Uninitialized attribute %s", "_stack", LOCATE_scope
, 125);
771 fra
.me
.REG
[0] = ATTR_scope___ScopeContext____stack(fra
.me
.REG
[0]);
772 fra
.me
.REG
[0] = CALL_abstract_collection___Sequence___pop(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
773 stack_frame_head
= fra
.me
.prev
;
776 val_t
scope___ScopeContext___visitor(val_t p0
){
777 struct {struct stack_frame_t me
;} fra
;
780 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
781 fra
.me
.file
= LOCATE_scope
;
783 fra
.me
.meth
= LOCATE_scope___ScopeContext___visitor
;
784 fra
.me
.has_broke
= 0;
786 fra
.me
.REG
[0] = NIT_NULL
;
788 /* ./syntax//scope.nit:128 */
789 REGB0
= TAG_Bool(ATTR_scope___ScopeContext____visitor(fra
.me
.REG
[0])!=NIT_NULL
);
790 if (UNTAG_Bool(REGB0
)) {
792 nit_abort("Uninitialized attribute %s", "_visitor", LOCATE_scope
, 128);
794 fra
.me
.REG
[0] = ATTR_scope___ScopeContext____visitor(fra
.me
.REG
[0]);
795 stack_frame_head
= fra
.me
.prev
;
796 return fra
.me
.REG
[0];
798 void scope___ScopeContext___init(val_t p0
, val_t p1
, int* init_table
){
799 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_ScopeContext
].i
;
800 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
802 if (init_table
[itpos0
]) return;
803 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
804 fra
.me
.file
= LOCATE_scope
;
806 fra
.me
.meth
= LOCATE_scope___ScopeContext___init
;
807 fra
.me
.has_broke
= 0;
809 fra
.me
.REG
[0] = NIT_NULL
;
810 fra
.me
.REG
[1] = NIT_NULL
;
813 /* ./syntax//scope.nit:131 */
814 ATTR_scope___ScopeContext____visitor(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
815 stack_frame_head
= fra
.me
.prev
;
816 init_table
[itpos0
] = 1;
819 val_t
scope___ScopeBlock___node(val_t p0
){
820 struct {struct stack_frame_t me
;} fra
;
823 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
824 fra
.me
.file
= LOCATE_scope
;
826 fra
.me
.meth
= LOCATE_scope___ScopeBlock___node
;
827 fra
.me
.has_broke
= 0;
829 fra
.me
.REG
[0] = NIT_NULL
;
831 /* ./syntax//scope.nit:140 */
832 REGB0
= TAG_Bool(ATTR_scope___ScopeBlock____node(fra
.me
.REG
[0])!=NIT_NULL
);
833 if (UNTAG_Bool(REGB0
)) {
835 nit_abort("Uninitialized attribute %s", "_node", LOCATE_scope
, 140);
837 fra
.me
.REG
[0] = ATTR_scope___ScopeBlock____node(fra
.me
.REG
[0]);
838 stack_frame_head
= fra
.me
.prev
;
839 return fra
.me
.REG
[0];
841 void scope___ScopeBlock___add_variable(val_t p0
, val_t p1
){
842 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
846 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
847 fra
.me
.file
= LOCATE_scope
;
849 fra
.me
.meth
= LOCATE_scope___ScopeBlock___add_variable
;
850 fra
.me
.has_broke
= 0;
852 fra
.me
.REG
[0] = NIT_NULL
;
853 fra
.me
.REG
[1] = NIT_NULL
;
854 fra
.me
.REG
[2] = NIT_NULL
;
855 fra
.me
.REG
[3] = NIT_NULL
;
858 /* ./syntax//scope.nit:149 */
859 fra
.me
.REG
[2] = ATTR_scope___ScopeBlock____dico(fra
.me
.REG
[0]);
860 /* ./syntax//scope.nit:150 */
861 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
862 if (UNTAG_Bool(REGB0
)) {
864 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
865 if (UNTAG_Bool(REGB1
)) {
866 REGB1
= TAG_Bool(false);
869 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
873 if (UNTAG_Bool(REGB0
)) {
874 /* ./syntax//scope.nit:151 */
875 fra
.me
.REG
[3] = NEW_HashMap_hash_collection___HashMap___init();
876 fra
.me
.REG
[2] = fra
.me
.REG
[3];
877 /* ./syntax//scope.nit:152 */
878 ATTR_scope___ScopeBlock____dico(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
880 /* ./syntax//scope.nit:154 */
881 fra
.me
.REG
[0] = CALL_syntax_base___Variable___name(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
882 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
883 if (UNTAG_Bool(REGB0
)) {
884 nit_abort("Reciever is null", NULL
, LOCATE_scope
, 154);
886 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0], fra
.me
.REG
[1]);
887 stack_frame_head
= fra
.me
.prev
;
890 val_t
scope___ScopeBlock___get_variable(val_t p0
, val_t p1
){
891 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
895 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
896 fra
.me
.file
= LOCATE_scope
;
898 fra
.me
.meth
= LOCATE_scope___ScopeBlock___get_variable
;
899 fra
.me
.has_broke
= 0;
901 fra
.me
.REG
[0] = NIT_NULL
;
902 fra
.me
.REG
[1] = NIT_NULL
;
903 fra
.me
.REG
[2] = NIT_NULL
;
906 /* ./syntax//scope.nit:159 */
907 fra
.me
.REG
[0] = ATTR_scope___ScopeBlock____dico(fra
.me
.REG
[0]);
908 /* ./syntax//scope.nit:160 */
909 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
910 if (UNTAG_Bool(REGB0
)) {
912 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
913 if (UNTAG_Bool(REGB1
)) {
914 REGB1
= TAG_Bool(false);
917 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
921 if (UNTAG_Bool(REGB0
)) {
922 fra
.me
.REG
[2] = NIT_NULL
;
925 /* ./syntax//scope.nit:161 */
926 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
927 if (UNTAG_Bool(REGB0
)) {
928 nit_abort("Reciever is null", NULL
, LOCATE_scope
, 161);
930 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
931 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
932 if (UNTAG_Bool(REGB0
)) {
933 fra
.me
.REG
[2] = NIT_NULL
;
936 /* ./syntax//scope.nit:162 */
937 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
938 if (UNTAG_Bool(REGB0
)) {
939 nit_abort("Reciever is null", NULL
, LOCATE_scope
, 162);
941 fra
.me
.REG
[1] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
942 fra
.me
.REG
[2] = fra
.me
.REG
[1];
945 stack_frame_head
= fra
.me
.prev
;
946 return fra
.me
.REG
[2];
948 void scope___ScopeBlock___init(val_t p0
, val_t p1
, int* init_table
){
949 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_ScopeBlock
].i
;
950 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
952 if (init_table
[itpos1
]) return;
953 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
954 fra
.me
.file
= LOCATE_scope
;
956 fra
.me
.meth
= LOCATE_scope___ScopeBlock___init
;
957 fra
.me
.has_broke
= 0;
959 fra
.me
.REG
[0] = NIT_NULL
;
960 fra
.me
.REG
[1] = NIT_NULL
;
963 /* ./syntax//scope.nit:167 */
964 ATTR_scope___ScopeBlock____node(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
965 stack_frame_head
= fra
.me
.prev
;
966 init_table
[itpos1
] = 1;
969 val_t
scope___EscapableBlock___lab(val_t p0
){
970 struct {struct stack_frame_t me
;} fra
;
972 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
973 fra
.me
.file
= LOCATE_scope
;
975 fra
.me
.meth
= LOCATE_scope___EscapableBlock___lab
;
976 fra
.me
.has_broke
= 0;
978 fra
.me
.REG
[0] = NIT_NULL
;
980 /* ./syntax//scope.nit:178 */
981 fra
.me
.REG
[0] = ATTR_scope___EscapableBlock____lab(fra
.me
.REG
[0]);
982 stack_frame_head
= fra
.me
.prev
;
983 return fra
.me
.REG
[0];
985 val_t
scope___EscapableBlock___is_break_block(val_t p0
){
986 struct {struct stack_frame_t me
;} fra
;
989 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
990 fra
.me
.file
= LOCATE_scope
;
992 fra
.me
.meth
= LOCATE_scope___EscapableBlock___is_break_block
;
993 fra
.me
.has_broke
= 0;
995 fra
.me
.REG
[0] = NIT_NULL
;
997 /* ./syntax//scope.nit:183 */
998 REGB0
= TAG_Bool(false);
1001 stack_frame_head
= fra
.me
.prev
;
1004 val_t
scope___EscapableBlock___break_list(val_t p0
){
1005 struct {struct stack_frame_t me
;} fra
;
1007 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1008 fra
.me
.file
= LOCATE_scope
;
1010 fra
.me
.meth
= LOCATE_scope___EscapableBlock___break_list
;
1011 fra
.me
.has_broke
= 0;
1012 fra
.me
.REG_size
= 1;
1013 fra
.me
.REG
[0] = NIT_NULL
;
1015 /* ./syntax//scope.nit:188 */
1016 fra
.me
.REG
[0] = NIT_NULL
;
1019 stack_frame_head
= fra
.me
.prev
;
1020 return fra
.me
.REG
[0];
1022 val_t
scope___EscapableBlock___continue_stype(val_t p0
){
1023 struct {struct stack_frame_t me
;} fra
;
1025 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1026 fra
.me
.file
= LOCATE_scope
;
1028 fra
.me
.meth
= LOCATE_scope___EscapableBlock___continue_stype
;
1029 fra
.me
.has_broke
= 0;
1030 fra
.me
.REG_size
= 1;
1031 fra
.me
.REG
[0] = NIT_NULL
;
1033 /* ./syntax//scope.nit:191 */
1034 fra
.me
.REG
[0] = NIT_NULL
;
1037 stack_frame_head
= fra
.me
.prev
;
1038 return fra
.me
.REG
[0];
1040 val_t
scope___EscapableBlock___break_flow_contexts(val_t p0
){
1041 struct {struct stack_frame_t me
;} fra
;
1044 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1045 fra
.me
.file
= LOCATE_scope
;
1047 fra
.me
.meth
= LOCATE_scope___EscapableBlock___break_flow_contexts
;
1048 fra
.me
.has_broke
= 0;
1049 fra
.me
.REG_size
= 1;
1050 fra
.me
.REG
[0] = NIT_NULL
;
1052 /* ./syntax//scope.nit:193 */
1053 REGB0
= TAG_Bool(ATTR_scope___EscapableBlock____break_flow_contexts(fra
.me
.REG
[0])!=NIT_NULL
);
1054 if (UNTAG_Bool(REGB0
)) {
1056 nit_abort("Uninitialized attribute %s", "_break_flow_contexts", LOCATE_scope
, 193);
1058 fra
.me
.REG
[0] = ATTR_scope___EscapableBlock____break_flow_contexts(fra
.me
.REG
[0]);
1059 stack_frame_head
= fra
.me
.prev
;
1060 return fra
.me
.REG
[0];
1062 void scope___EscapableBlock___init(val_t p0
, val_t p1
, int* init_table
){
1063 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_EscapableBlock
].i
;
1064 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1066 if (init_table
[itpos2
]) return;
1067 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1068 fra
.me
.file
= LOCATE_scope
;
1070 fra
.me
.meth
= LOCATE_scope___EscapableBlock___init
;
1071 fra
.me
.has_broke
= 0;
1072 fra
.me
.REG_size
= 2;
1073 fra
.me
.REG
[0] = NIT_NULL
;
1074 fra
.me
.REG
[1] = NIT_NULL
;
1077 /* ./syntax//scope.nit:198 */
1078 CALL_scope___ScopeBlock___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], init_table
);
1079 stack_frame_head
= fra
.me
.prev
;
1080 init_table
[itpos2
] = 1;
1083 val_t
scope___BreakOnlyEscapableBlock___is_break_block(val_t p0
){
1084 struct {struct stack_frame_t me
;} fra
;
1087 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1088 fra
.me
.file
= LOCATE_scope
;
1090 fra
.me
.meth
= LOCATE_scope___BreakOnlyEscapableBlock___is_break_block
;
1091 fra
.me
.has_broke
= 0;
1092 fra
.me
.REG_size
= 1;
1093 fra
.me
.REG
[0] = NIT_NULL
;
1095 /* ./syntax//scope.nit:205 */
1096 REGB0
= TAG_Bool(true);
1099 stack_frame_head
= fra
.me
.prev
;
1102 void scope___BreakOnlyEscapableBlock___init(val_t p0
, val_t p1
, int* init_table
){
1103 int itpos3
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_BreakOnlyEscapableBlock
].i
;
1104 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1106 if (init_table
[itpos3
]) return;
1107 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1108 fra
.me
.file
= LOCATE_scope
;
1110 fra
.me
.meth
= LOCATE_scope___BreakOnlyEscapableBlock___init
;
1111 fra
.me
.has_broke
= 0;
1112 fra
.me
.REG_size
= 2;
1113 fra
.me
.REG
[0] = NIT_NULL
;
1114 fra
.me
.REG
[1] = NIT_NULL
;
1117 /* ./syntax//scope.nit:207 */
1118 CALL_scope___EscapableBlock___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], init_table
);
1119 stack_frame_head
= fra
.me
.prev
;
1120 init_table
[itpos3
] = 1;
1123 val_t
scope___EscapableClosure___closure(val_t p0
){
1124 struct {struct stack_frame_t me
;} fra
;
1127 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1128 fra
.me
.file
= LOCATE_scope
;
1130 fra
.me
.meth
= LOCATE_scope___EscapableClosure___closure
;
1131 fra
.me
.has_broke
= 0;
1132 fra
.me
.REG_size
= 1;
1133 fra
.me
.REG
[0] = NIT_NULL
;
1135 /* ./syntax//scope.nit:213 */
1136 REGB0
= TAG_Bool(ATTR_scope___EscapableClosure____closure(fra
.me
.REG
[0])!=NIT_NULL
);
1137 if (UNTAG_Bool(REGB0
)) {
1139 nit_abort("Uninitialized attribute %s", "_closure", LOCATE_scope
, 213);
1141 fra
.me
.REG
[0] = ATTR_scope___EscapableClosure____closure(fra
.me
.REG
[0]);
1142 stack_frame_head
= fra
.me
.prev
;
1143 return fra
.me
.REG
[0];
1145 val_t
scope___EscapableClosure___is_break_block(val_t p0
){
1146 struct {struct stack_frame_t me
;} fra
;
1149 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1150 fra
.me
.file
= LOCATE_scope
;
1152 fra
.me
.meth
= LOCATE_scope___EscapableClosure___is_break_block
;
1153 fra
.me
.has_broke
= 0;
1154 fra
.me
.REG_size
= 1;
1155 fra
.me
.REG
[0] = NIT_NULL
;
1157 /* ./syntax//scope.nit:216 */
1158 REGB0
= TAG_Bool(ATTR_scope___EscapableClosure____closure(fra
.me
.REG
[0])!=NIT_NULL
);
1159 if (UNTAG_Bool(REGB0
)) {
1161 nit_abort("Uninitialized attribute %s", "_closure", LOCATE_scope
, 216);
1163 fra
.me
.REG
[0] = ATTR_scope___EscapableClosure____closure(fra
.me
.REG
[0]);
1164 REGB0
= CALL_static_type___MMClosure___is_break(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1167 stack_frame_head
= fra
.me
.prev
;
1170 val_t
scope___EscapableClosure___break_list(val_t p0
){
1171 struct {struct stack_frame_t me
;} fra
;
1173 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1174 fra
.me
.file
= LOCATE_scope
;
1176 fra
.me
.meth
= LOCATE_scope___EscapableClosure___break_list
;
1177 fra
.me
.has_broke
= 0;
1178 fra
.me
.REG_size
= 1;
1179 fra
.me
.REG
[0] = NIT_NULL
;
1181 /* ./syntax//scope.nit:218 */
1182 fra
.me
.REG
[0] = ATTR_scope___EscapableClosure____break_list(fra
.me
.REG
[0]);
1183 stack_frame_head
= fra
.me
.prev
;
1184 return fra
.me
.REG
[0];
1186 val_t
scope___EscapableClosure___continue_stype(val_t p0
){
1187 struct {struct stack_frame_t me
;} fra
;
1190 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1191 fra
.me
.file
= LOCATE_scope
;
1193 fra
.me
.meth
= LOCATE_scope___EscapableClosure___continue_stype
;
1194 fra
.me
.has_broke
= 0;
1195 fra
.me
.REG_size
= 1;
1196 fra
.me
.REG
[0] = NIT_NULL
;
1198 /* ./syntax//scope.nit:220 */
1199 REGB0
= TAG_Bool(ATTR_scope___EscapableClosure____closure(fra
.me
.REG
[0])!=NIT_NULL
);
1200 if (UNTAG_Bool(REGB0
)) {
1202 nit_abort("Uninitialized attribute %s", "_closure", LOCATE_scope
, 220);
1204 fra
.me
.REG
[0] = ATTR_scope___EscapableClosure____closure(fra
.me
.REG
[0]);
1205 fra
.me
.REG
[0] = CALL_static_type___MMClosure___signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1206 fra
.me
.REG
[0] = CALL_static_type___MMSignature___return_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1209 stack_frame_head
= fra
.me
.prev
;
1210 return fra
.me
.REG
[0];
1212 void scope___EscapableClosure___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
1213 int itpos4
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_EscapableClosure
].i
;
1214 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
1216 if (init_table
[itpos4
]) return;
1217 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1218 fra
.me
.file
= LOCATE_scope
;
1220 fra
.me
.meth
= LOCATE_scope___EscapableClosure___init
;
1221 fra
.me
.has_broke
= 0;
1222 fra
.me
.REG_size
= 5;
1223 fra
.me
.REG
[0] = NIT_NULL
;
1224 fra
.me
.REG
[1] = NIT_NULL
;
1225 fra
.me
.REG
[2] = NIT_NULL
;
1226 fra
.me
.REG
[3] = NIT_NULL
;
1227 fra
.me
.REG
[4] = NIT_NULL
;
1232 /* ./syntax//scope.nit:222 */
1233 fra
.me
.REG
[4] = fra
.me
.REG
[0];
1234 /* ./syntax//scope.nit:224 */
1235 CALL_scope___EscapableBlock___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], init_table
);
1236 /* ./syntax//scope.nit:225 */
1237 ATTR_scope___EscapableClosure____closure(fra
.me
.REG
[4]) = fra
.me
.REG
[2];
1238 /* ./syntax//scope.nit:226 */
1239 ATTR_scope___EscapableClosure____break_list(fra
.me
.REG
[4]) = fra
.me
.REG
[3];
1240 stack_frame_head
= fra
.me
.prev
;
1241 init_table
[itpos4
] = 1;
1244 val_t
scope___AEscapeExpr___escapable(val_t p0
){
1245 struct {struct stack_frame_t me
;} fra
;
1247 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1248 fra
.me
.file
= LOCATE_scope
;
1250 fra
.me
.meth
= LOCATE_scope___AEscapeExpr___escapable
;
1251 fra
.me
.has_broke
= 0;
1252 fra
.me
.REG_size
= 1;
1253 fra
.me
.REG
[0] = NIT_NULL
;
1255 /* ./syntax//scope.nit:234 */
1256 fra
.me
.REG
[0] = ATTR_scope___AEscapeExpr____escapable(fra
.me
.REG
[0]);
1257 stack_frame_head
= fra
.me
.prev
;
1258 return fra
.me
.REG
[0];
1260 val_t
scope___AEscapeExpr___kwname(val_t p0
){
1261 struct {struct stack_frame_t me
;} fra
;
1263 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1264 fra
.me
.file
= LOCATE_scope
;
1266 fra
.me
.meth
= LOCATE_scope___AEscapeExpr___kwname
;
1267 fra
.me
.has_broke
= 0;
1268 fra
.me
.REG_size
= 0;
1269 /* ./syntax//scope.nit:237 */
1270 nit_abort("Deferred method called", NULL
, LOCATE_scope
, 237);
1271 stack_frame_head
= fra
.me
.prev
;
1274 val_t
scope___AEscapeExpr___compute_escapable_block(val_t p0
, val_t p1
){
1275 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
1279 static val_t once_value_1
; /* Once value */
1280 static val_t once_value_2
; /* Once value */
1281 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1282 fra
.me
.file
= LOCATE_scope
;
1284 fra
.me
.meth
= LOCATE_scope___AEscapeExpr___compute_escapable_block
;
1285 fra
.me
.has_broke
= 0;
1286 fra
.me
.REG_size
= 5;
1287 fra
.me
.REG
[0] = NIT_NULL
;
1288 fra
.me
.REG
[1] = NIT_NULL
;
1289 fra
.me
.REG
[2] = NIT_NULL
;
1290 fra
.me
.REG
[3] = NIT_NULL
;
1291 fra
.me
.REG
[4] = NIT_NULL
;
1294 /* ./syntax//scope.nit:244 */
1295 fra
.me
.REG
[2] = CALL_parser_nodes___ALabelable___n_label(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1296 /* ./syntax//scope.nit:245 */
1297 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1298 if (UNTAG_Bool(REGB0
)) {
1300 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1301 if (UNTAG_Bool(REGB1
)) {
1302 REGB1
= TAG_Bool(false);
1305 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
1309 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1310 if (UNTAG_Bool(REGB0
)) {
1311 /* ./syntax//scope.nit:246 */
1312 fra
.me
.REG
[2] = CALL_scope___ScopeContext___get_by_label(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1314 /* ./syntax//scope.nit:248 */
1315 fra
.me
.REG
[3] = CALL_scope___ScopeContext___head(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1316 fra
.me
.REG
[2] = fra
.me
.REG
[3];
1317 /* ./syntax//scope.nit:249 */
1318 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1319 if (UNTAG_Bool(REGB0
)) {
1321 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
1322 if (UNTAG_Bool(REGB1
)) {
1323 REGB1
= TAG_Bool(false);
1326 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
1330 if (UNTAG_Bool(REGB0
)) {
1331 /* ./syntax//scope.nit:250 */
1332 fra
.me
.REG
[1] = CALL_scope___ScopeContext___visitor(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1334 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB0
);
1335 if (!once_value_1
) {
1336 fra
.me
.REG
[4] = BOX_NativeString("Syntax Error: '");
1337 REGB0
= TAG_Int(15);
1338 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB0
);
1339 once_value_1
= fra
.me
.REG
[4];
1340 register_static_object(&once_value_1
);
1341 } else fra
.me
.REG
[4] = once_value_1
;
1342 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1343 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1344 fra
.me
.REG
[4] = CALL_scope___AEscapeExpr___kwname(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1345 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1346 if (!once_value_2
) {
1347 fra
.me
.REG
[4] = BOX_NativeString("' statment outside block.");
1348 REGB0
= TAG_Int(25);
1349 fra
.me
.REG
[4] = NEW_String_string___String___with_native(fra
.me
.REG
[4], REGB0
);
1350 once_value_2
= fra
.me
.REG
[4];
1351 register_static_object(&once_value_2
);
1352 } else fra
.me
.REG
[4] = once_value_2
;
1353 fra
.me
.REG
[4] = fra
.me
.REG
[4];
1354 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
1355 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1356 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[3]);
1359 /* ./syntax//scope.nit:253 */
1360 ATTR_scope___AEscapeExpr____escapable(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
1361 /* ./syntax//scope.nit:254 */
1364 stack_frame_head
= fra
.me
.prev
;
1365 return fra
.me
.REG
[2];
1367 val_t
scope___AContinueExpr___kwname(val_t p0
){
1368 struct {struct stack_frame_t me
;} fra
;
1371 static val_t once_value_1
; /* Once value */
1372 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1373 fra
.me
.file
= LOCATE_scope
;
1375 fra
.me
.meth
= LOCATE_scope___AContinueExpr___kwname
;
1376 fra
.me
.has_broke
= 0;
1377 fra
.me
.REG_size
= 1;
1378 fra
.me
.REG
[0] = NIT_NULL
;
1380 /* ./syntax//scope.nit:260 */
1381 if (!once_value_1
) {
1382 fra
.me
.REG
[0] = BOX_NativeString("continue");
1384 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1385 once_value_1
= fra
.me
.REG
[0];
1386 register_static_object(&once_value_1
);
1387 } else fra
.me
.REG
[0] = once_value_1
;
1388 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1391 stack_frame_head
= fra
.me
.prev
;
1392 return fra
.me
.REG
[0];
1394 val_t
scope___ABreakExpr___kwname(val_t p0
){
1395 struct {struct stack_frame_t me
;} fra
;
1398 static val_t once_value_1
; /* Once value */
1399 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1400 fra
.me
.file
= LOCATE_scope
;
1402 fra
.me
.meth
= LOCATE_scope___ABreakExpr___kwname
;
1403 fra
.me
.has_broke
= 0;
1404 fra
.me
.REG_size
= 1;
1405 fra
.me
.REG
[0] = NIT_NULL
;
1407 /* ./syntax//scope.nit:265 */
1408 if (!once_value_1
) {
1409 fra
.me
.REG
[0] = BOX_NativeString("break");
1411 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1412 once_value_1
= fra
.me
.REG
[0];
1413 register_static_object(&once_value_1
);
1414 } else fra
.me
.REG
[0] = once_value_1
;
1415 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1418 stack_frame_head
= fra
.me
.prev
;
1419 return fra
.me
.REG
[0];