1 /* This C file is generated by NIT to compile module syntax_base. */
2 #include "syntax_base._sep.h"
3 void syntax_base___MMSrcModule___clear_ast(val_t p0
){
4 struct {struct stack_frame_t me
;} fra
;
6 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
7 fra
.me
.file
= LOCATE_syntax_base
;
9 fra
.me
.meth
= LOCATE_syntax_base___MMSrcModule___clear_ast
;
12 fra
.me
.REG
[0] = NIT_NULL
;
14 /* ./syntax//syntax_base.nit:32 */
15 ATTR_syntax_base___MMSrcModule____nodes(fra
.me
.REG
[0]) = NIT_NULL
;
16 stack_frame_head
= fra
.me
.prev
;
19 val_t
syntax_base___MMSrcModule___node(val_t p0
){
20 struct {struct stack_frame_t me
;} fra
;
23 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
24 fra
.me
.file
= LOCATE_syntax_base
;
26 fra
.me
.meth
= LOCATE_syntax_base___MMSrcModule___node
;
29 fra
.me
.REG
[0] = NIT_NULL
;
31 /* ./syntax//syntax_base.nit:35 */
32 fra
.me
.REG
[0] = CALL_syntax_base___MMModule___nodes(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[0]);
33 REGB0
= TAG_Bool((fra
.me
.REG
[0]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[0], COLOR_AModule
, ID_AModule
)) /*cast AModule*/;
34 if (UNTAG_Bool(REGB0
)) {
36 nit_abort("Cast failed", NULL
, LOCATE_syntax_base
, 35);
40 stack_frame_head
= fra
.me
.prev
;
43 val_t
syntax_base___MMSrcModule___src_local_classes(val_t p0
){
44 struct {struct stack_frame_t me
;} fra
;
47 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
48 fra
.me
.file
= LOCATE_syntax_base
;
50 fra
.me
.meth
= LOCATE_syntax_base___MMSrcModule___src_local_classes
;
53 fra
.me
.REG
[0] = NIT_NULL
;
55 /* ./syntax//syntax_base.nit:37 */
56 REGB0
= TAG_Bool(ATTR_syntax_base___MMSrcModule____src_local_classes(fra
.me
.REG
[0])!=NIT_NULL
);
57 if (UNTAG_Bool(REGB0
)) {
59 nit_abort("Uninitialized attribute %s", "_src_local_classes", LOCATE_syntax_base
, 37);
61 fra
.me
.REG
[0] = ATTR_syntax_base___MMSrcModule____src_local_classes(fra
.me
.REG
[0]);
62 stack_frame_head
= fra
.me
.prev
;
65 void syntax_base___MMSrcModule___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
, val_t p5
, int* init_table
){
66 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMSrcModule
].i
;
67 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
69 if (init_table
[itpos0
]) return;
70 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
71 fra
.me
.file
= LOCATE_syntax_base
;
73 fra
.me
.meth
= LOCATE_syntax_base___MMSrcModule___init
;
76 fra
.me
.REG
[0] = NIT_NULL
;
77 fra
.me
.REG
[1] = NIT_NULL
;
78 fra
.me
.REG
[2] = NIT_NULL
;
79 fra
.me
.REG
[3] = NIT_NULL
;
80 fra
.me
.REG
[4] = NIT_NULL
;
81 fra
.me
.REG
[5] = NIT_NULL
;
82 fra
.me
.REG
[6] = NIT_NULL
;
89 /* ./syntax//syntax_base.nit:40 */
90 fra
.me
.REG
[6] = fra
.me
.REG
[0];
91 /* ./syntax//syntax_base.nit:42 */
92 CALL_abstractmetamodel___MMModule___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4], fra
.me
.REG
[3], fra
.me
.REG
[1], fra
.me
.REG
[5], init_table
);
93 /* ./syntax//syntax_base.nit:43 */
94 CALL_syntax_base___MMModule___nodes__eq(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[6], fra
.me
.REG
[2]);
95 /* ./syntax//syntax_base.nit:44 */
96 fra
.me
.REG
[2] = NEW_HashMap_hash_collection___HashMap___init();
97 ATTR_syntax_base___MMSrcModule____src_local_classes(fra
.me
.REG
[6]) = fra
.me
.REG
[2];
98 stack_frame_head
= fra
.me
.prev
;
99 init_table
[itpos0
] = 1;
102 val_t
syntax_base___MMSrcModule___nodes(val_t p0
, val_t p1
){
103 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
107 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
108 fra
.me
.file
= LOCATE_syntax_base
;
110 fra
.me
.meth
= LOCATE_syntax_base___MMSrcModule___nodes
;
111 fra
.me
.has_broke
= 0;
113 fra
.me
.REG
[0] = NIT_NULL
;
114 fra
.me
.REG
[1] = NIT_NULL
;
115 fra
.me
.REG
[2] = NIT_NULL
;
118 /* ./syntax//syntax_base.nit:49 */
119 fra
.me
.REG
[2] = ATTR_syntax_base___MMSrcModule____nodes(fra
.me
.REG
[0]);
120 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
121 if (UNTAG_Bool(REGB0
)) {
123 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
124 if (UNTAG_Bool(REGB1
)) {
125 REGB1
= TAG_Bool(false);
128 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
132 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
133 if (UNTAG_Bool(REGB0
)) {
134 fra
.me
.REG
[2] = ATTR_syntax_base___MMSrcModule____nodes(fra
.me
.REG
[0]);
135 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
136 if (UNTAG_Bool(REGB0
)) {
137 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 49);
139 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
141 REGB1
= TAG_Bool(false);
144 if (UNTAG_Bool(REGB0
)) {
145 fra
.me
.REG
[0] = ATTR_syntax_base___MMSrcModule____nodes(fra
.me
.REG
[0]);
146 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
147 if (UNTAG_Bool(REGB0
)) {
148 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 49);
150 fra
.me
.REG
[1] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
153 fra
.me
.REG
[1] = NIT_NULL
;
157 stack_frame_head
= fra
.me
.prev
;
158 return fra
.me
.REG
[1];
160 void syntax_base___MMSrcModule___nodes__eq(val_t p0
, val_t p1
, val_t p2
){
161 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
164 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
165 fra
.me
.file
= LOCATE_syntax_base
;
167 fra
.me
.meth
= LOCATE_syntax_base___MMSrcModule___nodes__eq
;
168 fra
.me
.has_broke
= 0;
170 fra
.me
.REG
[0] = NIT_NULL
;
171 fra
.me
.REG
[1] = NIT_NULL
;
172 fra
.me
.REG
[2] = NIT_NULL
;
173 fra
.me
.REG
[3] = NIT_NULL
;
177 /* ./syntax//syntax_base.nit:53 */
178 fra
.me
.REG
[3] = ATTR_syntax_base___MMSrcModule____nodes(fra
.me
.REG
[0]);
179 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
180 if (UNTAG_Bool(REGB0
)) {
181 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 53);
183 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
184 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
185 if (UNTAG_Bool(REGB0
)) {
187 nit_abort("Assert failed", NULL
, LOCATE_syntax_base
, 53);
189 /* ./syntax//syntax_base.nit:54 */
190 fra
.me
.REG
[0] = ATTR_syntax_base___MMSrcModule____nodes(fra
.me
.REG
[0]);
191 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
192 if (UNTAG_Bool(REGB0
)) {
193 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 54);
195 CALL_abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
196 stack_frame_head
= fra
.me
.prev
;
199 val_t
syntax_base___MMModule___nodes(val_t p0
, val_t p1
){
200 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
202 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
203 fra
.me
.file
= LOCATE_syntax_base
;
205 fra
.me
.meth
= LOCATE_syntax_base___MMModule___nodes
;
206 fra
.me
.has_broke
= 0;
208 fra
.me
.REG
[0] = NIT_NULL
;
209 fra
.me
.REG
[1] = NIT_NULL
;
212 /* ./syntax//syntax_base.nit:60 */
213 fra
.me
.REG
[1] = NIT_NULL
;
216 stack_frame_head
= fra
.me
.prev
;
217 return fra
.me
.REG
[1];
219 void syntax_base___MMModule___nodes__eq(val_t p0
, val_t p1
, val_t p2
){
220 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
222 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
223 fra
.me
.file
= LOCATE_syntax_base
;
225 fra
.me
.meth
= LOCATE_syntax_base___MMModule___nodes__eq
;
226 fra
.me
.has_broke
= 0;
228 fra
.me
.REG
[0] = NIT_NULL
;
229 fra
.me
.REG
[1] = NIT_NULL
;
230 fra
.me
.REG
[2] = NIT_NULL
;
234 /* ./syntax//syntax_base.nit:62 */
235 nit_abort("Aborted", NULL
, LOCATE_syntax_base
, 62);
236 stack_frame_head
= fra
.me
.prev
;
239 val_t
syntax_base___MMGlobalClass___check_visibility(val_t p0
, val_t p1
, val_t p2
, val_t p3
){
240 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
246 static val_t once_value_2
; /* Once value */
247 static val_t once_value_3
; /* Once value */
248 static val_t once_value_4
; /* Once value */
249 static val_t once_value_5
; /* Once value */
250 static val_t once_value_6
; /* Once value */
251 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
252 fra
.me
.file
= LOCATE_syntax_base
;
254 fra
.me
.meth
= LOCATE_syntax_base___MMGlobalClass___check_visibility
;
255 fra
.me
.has_broke
= 0;
257 fra
.me
.REG
[0] = NIT_NULL
;
258 fra
.me
.REG
[1] = NIT_NULL
;
259 fra
.me
.REG
[2] = NIT_NULL
;
260 fra
.me
.REG
[3] = NIT_NULL
;
261 fra
.me
.REG
[4] = NIT_NULL
;
262 fra
.me
.REG
[5] = NIT_NULL
;
267 /* ./syntax//syntax_base.nit:68 */
268 fra
.me
.REG
[4] = CALL_abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
269 fra
.me
.REG
[4] = CALL_abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
270 /* ./syntax//syntax_base.nit:69 */
271 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[4], COLOR_MMSrcModule
, ID_MMSrcModule
)) /*cast MMSrcModule*/;
272 if (UNTAG_Bool(REGB0
)) {
274 nit_abort("Assert failed", NULL
, LOCATE_syntax_base
, 69);
276 /* ./syntax//syntax_base.nit:70 */
277 REGB0
= CALL_abstractmetamodel___MMModule___visibility_for(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
278 /* ./syntax//syntax_base.nit:71 */
280 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
281 if (UNTAG_Bool(REGB2
)) {
283 /* ./../lib/standard//kernel.nit:207 */
284 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
285 /* ./syntax//syntax_base.nit:71 */
288 if (UNTAG_Bool(REGB2
)) {
289 /* ./syntax//syntax_base.nit:72 */
290 REGB2
= TAG_Bool(true);
293 /* ./syntax//syntax_base.nit:73 */
295 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
296 if (UNTAG_Bool(REGB3
)) {
298 /* ./../lib/standard//kernel.nit:207 */
299 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
300 /* ./syntax//syntax_base.nit:73 */
303 if (UNTAG_Bool(REGB3
)) {
304 /* ./syntax//syntax_base.nit:74 */
306 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB3
);
308 fra
.me
.REG
[5] = BOX_NativeString("Visibility error: Class ");
310 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB3
);
311 once_value_2
= fra
.me
.REG
[5];
312 register_static_object(&once_value_2
);
313 } else fra
.me
.REG
[5] = once_value_2
;
314 fra
.me
.REG
[5] = fra
.me
.REG
[5];
315 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
316 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
317 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
319 fra
.me
.REG
[5] = BOX_NativeString(" comes from the hidden module ");
321 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB3
);
322 once_value_3
= fra
.me
.REG
[5];
323 register_static_object(&once_value_3
);
324 } else fra
.me
.REG
[5] = once_value_3
;
325 fra
.me
.REG
[5] = fra
.me
.REG
[5];
326 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
327 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
328 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
330 fra
.me
.REG
[3] = BOX_NativeString(".");
332 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB3
);
333 once_value_4
= fra
.me
.REG
[3];
334 register_static_object(&once_value_4
);
335 } else fra
.me
.REG
[3] = once_value_4
;
336 fra
.me
.REG
[3] = fra
.me
.REG
[3];
337 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
338 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
339 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2], fra
.me
.REG
[4]);
340 /* ./syntax//syntax_base.nit:75 */
341 REGB3
= TAG_Bool(false);
345 /* ./syntax//syntax_base.nit:76 */
346 REGB3
= CALL_abstractmetamodel___MMGlobalClass___visibility_level(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
348 /* ./../lib/standard//kernel.nit:213 */
349 REGB1
= TAG_Bool(UNTAG_Int(REGB3
)>=UNTAG_Int(REGB1
));
350 /* ./syntax//syntax_base.nit:76 */
351 if (UNTAG_Bool(REGB1
)) {
352 /* ./syntax//syntax_base.nit:77 */
354 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB1
);
356 fra
.me
.REG
[3] = BOX_NativeString("Visibility error: Class ");
358 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB1
);
359 once_value_5
= fra
.me
.REG
[3];
360 register_static_object(&once_value_5
);
361 } else fra
.me
.REG
[3] = once_value_5
;
362 fra
.me
.REG
[3] = fra
.me
.REG
[3];
363 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
364 fra
.me
.REG
[0] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
365 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[0]);
367 fra
.me
.REG
[0] = BOX_NativeString(" is private.");
369 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB1
);
370 once_value_6
= fra
.me
.REG
[0];
371 register_static_object(&once_value_6
);
372 } else fra
.me
.REG
[0] = once_value_6
;
373 fra
.me
.REG
[0] = fra
.me
.REG
[0];
374 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[0]);
375 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
376 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2], fra
.me
.REG
[4]);
377 /* ./syntax//syntax_base.nit:78 */
378 REGB1
= TAG_Bool(false);
384 /* ./syntax//syntax_base.nit:80 */
385 REGB1
= TAG_Bool(true);
389 stack_frame_head
= fra
.me
.prev
;
392 val_t
syntax_base___MMSrcLocalClass___node(val_t p0
){
393 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
396 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
397 fra
.me
.file
= LOCATE_syntax_base
;
399 fra
.me
.meth
= LOCATE_syntax_base___MMSrcLocalClass___node
;
400 fra
.me
.has_broke
= 0;
402 fra
.me
.REG
[0] = NIT_NULL
;
403 fra
.me
.REG
[1] = NIT_NULL
;
405 /* ./syntax//syntax_base.nit:88 */
406 fra
.me
.REG
[1] = CALL_abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
407 fra
.me
.REG
[0] = CALL_syntax_base___MMModule___nodes(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
408 REGB0
= TAG_Bool((fra
.me
.REG
[0]==NIT_NULL
) || VAL_ISA(fra
.me
.REG
[0], COLOR_AClassdef
, ID_AClassdef
)) /*cast nullable AClassdef*/;
409 if (UNTAG_Bool(REGB0
)) {
411 nit_abort("Cast failed", NULL
, LOCATE_syntax_base
, 88);
415 stack_frame_head
= fra
.me
.prev
;
416 return fra
.me
.REG
[0];
418 val_t
syntax_base___MMSrcLocalClass___formal_dict(val_t p0
){
419 struct {struct stack_frame_t me
;} fra
;
422 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
423 fra
.me
.file
= LOCATE_syntax_base
;
425 fra
.me
.meth
= LOCATE_syntax_base___MMSrcLocalClass___formal_dict
;
426 fra
.me
.has_broke
= 0;
428 fra
.me
.REG
[0] = NIT_NULL
;
430 /* ./syntax//syntax_base.nit:90 */
431 REGB0
= TAG_Bool(ATTR_syntax_base___MMSrcLocalClass____formal_dict(fra
.me
.REG
[0])!=NIT_NULL
);
432 if (UNTAG_Bool(REGB0
)) {
434 nit_abort("Uninitialized attribute %s", "_formal_dict", LOCATE_syntax_base
, 90);
436 fra
.me
.REG
[0] = ATTR_syntax_base___MMSrcLocalClass____formal_dict(fra
.me
.REG
[0]);
437 stack_frame_head
= fra
.me
.prev
;
438 return fra
.me
.REG
[0];
440 val_t
syntax_base___MMSrcLocalClass___src_local_properties(val_t p0
){
441 struct {struct stack_frame_t me
;} fra
;
444 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
445 fra
.me
.file
= LOCATE_syntax_base
;
447 fra
.me
.meth
= LOCATE_syntax_base___MMSrcLocalClass___src_local_properties
;
448 fra
.me
.has_broke
= 0;
450 fra
.me
.REG
[0] = NIT_NULL
;
452 /* ./syntax//syntax_base.nit:93 */
453 REGB0
= TAG_Bool(ATTR_syntax_base___MMSrcLocalClass____src_local_properties(fra
.me
.REG
[0])!=NIT_NULL
);
454 if (UNTAG_Bool(REGB0
)) {
456 nit_abort("Uninitialized attribute %s", "_src_local_properties", LOCATE_syntax_base
, 93);
458 fra
.me
.REG
[0] = ATTR_syntax_base___MMSrcLocalClass____src_local_properties(fra
.me
.REG
[0]);
459 stack_frame_head
= fra
.me
.prev
;
460 return fra
.me
.REG
[0];
462 void syntax_base___MMSrcLocalClass___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
, int* init_table
){
463 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMSrcLocalClass
].i
;
464 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
467 if (init_table
[itpos1
]) return;
468 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
469 fra
.me
.file
= LOCATE_syntax_base
;
471 fra
.me
.meth
= LOCATE_syntax_base___MMSrcLocalClass___init
;
472 fra
.me
.has_broke
= 0;
474 fra
.me
.REG
[0] = NIT_NULL
;
475 fra
.me
.REG
[1] = NIT_NULL
;
476 fra
.me
.REG
[2] = NIT_NULL
;
477 fra
.me
.REG
[3] = NIT_NULL
;
478 fra
.me
.REG
[4] = NIT_NULL
;
484 /* ./syntax//syntax_base.nit:96 */
485 fra
.me
.REG
[4] = fra
.me
.REG
[0];
486 /* ./syntax//syntax_base.nit:98 */
487 CALL_abstractmetamodel___MMLocalClass___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], REGB0
, init_table
);
488 /* ./syntax//syntax_base.nit:99 */
489 CALL_syntax_base___MMModule___nodes__eq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4], fra
.me
.REG
[3]);
490 /* ./syntax//syntax_base.nit:100 */
491 fra
.me
.REG
[3] = NEW_HashMap_hash_collection___HashMap___init();
492 ATTR_syntax_base___MMSrcLocalClass____src_local_properties(fra
.me
.REG
[4]) = fra
.me
.REG
[3];
493 stack_frame_head
= fra
.me
.prev
;
494 init_table
[itpos1
] = 1;
497 val_t
syntax_base___MMGlobalProperty___check_visibility(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
){
498 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
505 static val_t once_value_2
; /* Once value */
506 static val_t once_value_3
; /* Once value */
507 static val_t once_value_4
; /* Once value */
508 static val_t once_value_5
; /* Once value */
509 static val_t once_value_6
; /* Once value */
510 static val_t once_value_7
; /* Once value */
511 static val_t once_value_8
; /* Once value */
512 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
513 fra
.me
.file
= LOCATE_syntax_base
;
515 fra
.me
.meth
= LOCATE_syntax_base___MMGlobalProperty___check_visibility
;
516 fra
.me
.has_broke
= 0;
518 fra
.me
.REG
[0] = NIT_NULL
;
519 fra
.me
.REG
[1] = NIT_NULL
;
520 fra
.me
.REG
[2] = NIT_NULL
;
521 fra
.me
.REG
[3] = NIT_NULL
;
522 fra
.me
.REG
[4] = NIT_NULL
;
523 fra
.me
.REG
[5] = NIT_NULL
;
529 /* ./syntax//syntax_base.nit:107 */
530 fra
.me
.REG
[4] = CALL_abstractmetamodel___MMGlobalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
531 fra
.me
.REG
[4] = CALL_abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
532 /* ./syntax//syntax_base.nit:108 */
533 REGB1
= TAG_Bool(VAL_ISA(fra
.me
.REG
[4], COLOR_MMSrcModule
, ID_MMSrcModule
)) /*cast MMSrcModule*/;
534 if (UNTAG_Bool(REGB1
)) {
536 nit_abort("Assert failed", NULL
, LOCATE_syntax_base
, 108);
538 /* ./syntax//syntax_base.nit:109 */
539 REGB1
= CALL_abstractmetamodel___MMModule___visibility_for(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
540 /* ./syntax//syntax_base.nit:110 */
542 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB2
));
543 if (UNTAG_Bool(REGB3
)) {
545 /* ./../lib/standard//kernel.nit:207 */
546 REGB2
= TAG_Bool((REGB1
)==(REGB2
));
547 /* ./syntax//syntax_base.nit:110 */
550 if (UNTAG_Bool(REGB3
)) {
551 /* ./syntax//syntax_base.nit:111 */
552 REGB3
= TAG_Bool(true);
555 /* ./syntax//syntax_base.nit:112 */
557 REGB4
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB2
));
558 if (UNTAG_Bool(REGB4
)) {
560 /* ./../lib/standard//kernel.nit:207 */
561 REGB2
= TAG_Bool((REGB1
)==(REGB2
));
562 /* ./syntax//syntax_base.nit:112 */
565 if (UNTAG_Bool(REGB4
)) {
566 /* ./syntax//syntax_base.nit:114 */
568 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB4
);
570 fra
.me
.REG
[5] = BOX_NativeString("Visibility error: Property ");
572 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB4
);
573 once_value_2
= fra
.me
.REG
[5];
574 register_static_object(&once_value_2
);
575 } else fra
.me
.REG
[5] = once_value_2
;
576 fra
.me
.REG
[5] = fra
.me
.REG
[5];
577 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
578 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
579 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
581 fra
.me
.REG
[5] = BOX_NativeString(" comes from the hidden module ");
583 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB4
);
584 once_value_3
= fra
.me
.REG
[5];
585 register_static_object(&once_value_3
);
586 } else fra
.me
.REG
[5] = once_value_3
;
587 fra
.me
.REG
[5] = fra
.me
.REG
[5];
588 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
589 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
590 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
592 fra
.me
.REG
[3] = BOX_NativeString(".");
594 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB4
);
595 once_value_4
= fra
.me
.REG
[3];
596 register_static_object(&once_value_4
);
597 } else fra
.me
.REG
[3] = once_value_4
;
598 fra
.me
.REG
[3] = fra
.me
.REG
[3];
599 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
600 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
601 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2], fra
.me
.REG
[4]);
602 /* ./syntax//syntax_base.nit:115 */
603 REGB4
= TAG_Bool(false);
607 /* ./syntax//syntax_base.nit:116 */
608 REGB4
= CALL_abstractmetamodel___MMGlobalProperty___visibility_level(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
610 /* ./../lib/standard//kernel.nit:213 */
611 REGB2
= TAG_Bool(UNTAG_Int(REGB4
)>=UNTAG_Int(REGB2
));
612 /* ./syntax//syntax_base.nit:116 */
613 if (UNTAG_Bool(REGB2
)) {
614 /* ./syntax//syntax_base.nit:117 */
616 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB2
);
618 fra
.me
.REG
[3] = BOX_NativeString("Visibility error: Property ");
620 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB2
);
621 once_value_5
= fra
.me
.REG
[3];
622 register_static_object(&once_value_5
);
623 } else fra
.me
.REG
[3] = once_value_5
;
624 fra
.me
.REG
[3] = fra
.me
.REG
[3];
625 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
626 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
627 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
629 fra
.me
.REG
[3] = BOX_NativeString(" is private.");
631 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB2
);
632 once_value_6
= fra
.me
.REG
[3];
633 register_static_object(&once_value_6
);
634 } else fra
.me
.REG
[3] = once_value_6
;
635 fra
.me
.REG
[3] = fra
.me
.REG
[3];
636 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
637 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
638 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2], fra
.me
.REG
[4]);
639 /* ./syntax//syntax_base.nit:118 */
640 REGB2
= TAG_Bool(false);
644 /* ./syntax//syntax_base.nit:119 */
645 REGB2
= CALL_abstractmetamodel___MMGlobalProperty___visibility_level(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
647 /* ./../lib/standard//kernel.nit:213 */
648 REGB4
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB4
));
649 /* ./syntax//syntax_base.nit:119 */
650 if (UNTAG_Bool(REGB4
)) {
651 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
653 REGB4
= TAG_Bool(false);
656 if (UNTAG_Bool(REGB0
)) {
657 /* ./syntax//syntax_base.nit:120 */
659 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB0
);
661 fra
.me
.REG
[3] = BOX_NativeString("Visibility error: Property ");
663 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
664 once_value_7
= fra
.me
.REG
[3];
665 register_static_object(&once_value_7
);
666 } else fra
.me
.REG
[3] = once_value_7
;
667 fra
.me
.REG
[3] = fra
.me
.REG
[3];
668 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
669 fra
.me
.REG
[0] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
670 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[0]);
672 fra
.me
.REG
[0] = BOX_NativeString(" is protected and can only acceded by self.");
674 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
675 once_value_8
= fra
.me
.REG
[0];
676 register_static_object(&once_value_8
);
677 } else fra
.me
.REG
[0] = once_value_8
;
678 fra
.me
.REG
[0] = fra
.me
.REG
[0];
679 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[0]);
680 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
681 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2], fra
.me
.REG
[4]);
682 /* ./syntax//syntax_base.nit:121 */
683 REGB0
= TAG_Bool(false);
690 /* ./syntax//syntax_base.nit:123 */
691 REGB0
= TAG_Bool(true);
695 stack_frame_head
= fra
.me
.prev
;
698 val_t
syntax_base___MMLocalProperty___node(val_t p0
){
699 struct {struct stack_frame_t me
;} fra
;
701 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
702 fra
.me
.file
= LOCATE_syntax_base
;
704 fra
.me
.meth
= LOCATE_syntax_base___MMLocalProperty___node
;
705 fra
.me
.has_broke
= 0;
707 fra
.me
.REG
[0] = NIT_NULL
;
709 /* ./syntax//syntax_base.nit:129 */
710 fra
.me
.REG
[0] = NIT_NULL
;
713 stack_frame_head
= fra
.me
.prev
;
714 return fra
.me
.REG
[0];
716 val_t
syntax_base___MMLocalProperty___is_init(val_t p0
){
717 struct {struct stack_frame_t me
;} fra
;
720 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
721 fra
.me
.file
= LOCATE_syntax_base
;
723 fra
.me
.meth
= LOCATE_syntax_base___MMLocalProperty___is_init
;
724 fra
.me
.has_broke
= 0;
726 fra
.me
.REG
[0] = NIT_NULL
;
728 /* ./syntax//syntax_base.nit:132 */
729 REGB0
= TAG_Bool(false);
732 stack_frame_head
= fra
.me
.prev
;
735 val_t
syntax_base___MMSrcAttribute___node(val_t p0
){
736 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
739 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
740 fra
.me
.file
= LOCATE_syntax_base
;
742 fra
.me
.meth
= LOCATE_syntax_base___MMSrcAttribute___node
;
743 fra
.me
.has_broke
= 0;
745 fra
.me
.REG
[0] = NIT_NULL
;
746 fra
.me
.REG
[1] = NIT_NULL
;
748 /* ./syntax//syntax_base.nit:138 */
749 fra
.me
.REG
[1] = CALL_abstractmetamodel___MMLocalProperty___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
750 fra
.me
.REG
[0] = CALL_syntax_base___MMModule___nodes(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
751 REGB0
= TAG_Bool((fra
.me
.REG
[0]==NIT_NULL
) || VAL_ISA(fra
.me
.REG
[0], COLOR_AAttrPropdef
, ID_AAttrPropdef
)) /*cast nullable AAttrPropdef*/;
752 if (UNTAG_Bool(REGB0
)) {
754 nit_abort("Cast failed", NULL
, LOCATE_syntax_base
, 138);
758 stack_frame_head
= fra
.me
.prev
;
759 return fra
.me
.REG
[0];
761 void syntax_base___MMSrcAttribute___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
762 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMSrcAttribute
].i
;
763 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
765 if (init_table
[itpos2
]) return;
766 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
767 fra
.me
.file
= LOCATE_syntax_base
;
769 fra
.me
.meth
= LOCATE_syntax_base___MMSrcAttribute___init
;
770 fra
.me
.has_broke
= 0;
772 fra
.me
.REG
[0] = NIT_NULL
;
773 fra
.me
.REG
[1] = NIT_NULL
;
774 fra
.me
.REG
[2] = NIT_NULL
;
775 fra
.me
.REG
[3] = NIT_NULL
;
776 fra
.me
.REG
[4] = NIT_NULL
;
781 /* ./syntax//syntax_base.nit:139 */
782 fra
.me
.REG
[4] = fra
.me
.REG
[0];
783 /* ./syntax//syntax_base.nit:141 */
784 CALL_abstractmetamodel___MMLocalProperty___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
785 /* ./syntax//syntax_base.nit:142 */
786 fra
.me
.REG
[2] = CALL_abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
787 CALL_syntax_base___MMModule___nodes__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4], fra
.me
.REG
[3]);
788 stack_frame_head
= fra
.me
.prev
;
789 init_table
[itpos2
] = 1;
792 val_t
syntax_base___MMSrcMethod___is_intern(val_t p0
){
793 struct {struct stack_frame_t me
;} fra
;
796 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
797 fra
.me
.file
= LOCATE_syntax_base
;
799 fra
.me
.meth
= LOCATE_syntax_base___MMSrcMethod___is_intern
;
800 fra
.me
.has_broke
= 0;
802 fra
.me
.REG
[0] = NIT_NULL
;
804 /* ./syntax//syntax_base.nit:149 */
805 REGB0
= TAG_Bool(false);
808 stack_frame_head
= fra
.me
.prev
;
811 val_t
syntax_base___MMSrcMethod___is_abstract(val_t p0
){
812 struct {struct stack_frame_t me
;} fra
;
815 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
816 fra
.me
.file
= LOCATE_syntax_base
;
818 fra
.me
.meth
= LOCATE_syntax_base___MMSrcMethod___is_abstract
;
819 fra
.me
.has_broke
= 0;
821 fra
.me
.REG
[0] = NIT_NULL
;
823 /* ./syntax//syntax_base.nit:150 */
824 REGB0
= TAG_Bool(false);
827 stack_frame_head
= fra
.me
.prev
;
830 val_t
syntax_base___MMSrcMethod___extern_name(val_t p0
){
831 struct {struct stack_frame_t me
;} fra
;
833 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
834 fra
.me
.file
= LOCATE_syntax_base
;
836 fra
.me
.meth
= LOCATE_syntax_base___MMSrcMethod___extern_name
;
837 fra
.me
.has_broke
= 0;
839 fra
.me
.REG
[0] = NIT_NULL
;
841 /* ./syntax//syntax_base.nit:151 */
842 fra
.me
.REG
[0] = NIT_NULL
;
845 stack_frame_head
= fra
.me
.prev
;
846 return fra
.me
.REG
[0];
848 val_t
syntax_base___MMAttrImplementationMethod___node(val_t p0
){
849 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
852 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
853 fra
.me
.file
= LOCATE_syntax_base
;
855 fra
.me
.meth
= LOCATE_syntax_base___MMAttrImplementationMethod___node
;
856 fra
.me
.has_broke
= 0;
858 fra
.me
.REG
[0] = NIT_NULL
;
859 fra
.me
.REG
[1] = NIT_NULL
;
861 /* ./syntax//syntax_base.nit:157 */
862 fra
.me
.REG
[1] = CALL_abstractmetamodel___MMLocalProperty___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
863 fra
.me
.REG
[0] = CALL_syntax_base___MMModule___nodes(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
864 REGB0
= TAG_Bool((fra
.me
.REG
[0]==NIT_NULL
) || VAL_ISA(fra
.me
.REG
[0], COLOR_AAttrPropdef
, ID_AAttrPropdef
)) /*cast nullable AAttrPropdef*/;
865 if (UNTAG_Bool(REGB0
)) {
867 nit_abort("Cast failed", NULL
, LOCATE_syntax_base
, 157);
871 stack_frame_head
= fra
.me
.prev
;
872 return fra
.me
.REG
[0];
874 void syntax_base___MMAttrImplementationMethod___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
875 int itpos3
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMAttrImplementationMethod
].i
;
876 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
878 if (init_table
[itpos3
]) return;
879 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
880 fra
.me
.file
= LOCATE_syntax_base
;
882 fra
.me
.meth
= LOCATE_syntax_base___MMAttrImplementationMethod___init
;
883 fra
.me
.has_broke
= 0;
885 fra
.me
.REG
[0] = NIT_NULL
;
886 fra
.me
.REG
[1] = NIT_NULL
;
887 fra
.me
.REG
[2] = NIT_NULL
;
888 fra
.me
.REG
[3] = NIT_NULL
;
889 fra
.me
.REG
[4] = NIT_NULL
;
894 /* ./syntax//syntax_base.nit:158 */
895 fra
.me
.REG
[4] = fra
.me
.REG
[0];
896 /* ./syntax//syntax_base.nit:160 */
897 CALL_abstractmetamodel___MMLocalProperty___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
898 /* ./syntax//syntax_base.nit:161 */
899 fra
.me
.REG
[2] = CALL_abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
900 CALL_syntax_base___MMModule___nodes__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4], fra
.me
.REG
[3]);
901 stack_frame_head
= fra
.me
.prev
;
902 init_table
[itpos3
] = 1;
905 void syntax_base___MMReadImplementationMethod___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
906 int itpos4
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMReadImplementationMethod
].i
;
907 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
909 if (init_table
[itpos4
]) return;
910 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
911 fra
.me
.file
= LOCATE_syntax_base
;
913 fra
.me
.meth
= LOCATE_syntax_base___MMReadImplementationMethod___init
;
914 fra
.me
.has_broke
= 0;
916 fra
.me
.REG
[0] = NIT_NULL
;
917 fra
.me
.REG
[1] = NIT_NULL
;
918 fra
.me
.REG
[2] = NIT_NULL
;
919 fra
.me
.REG
[3] = NIT_NULL
;
924 /* ./syntax//syntax_base.nit:170 */
925 CALL_syntax_base___MMAttrImplementationMethod___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], fra
.me
.REG
[3], init_table
);
926 stack_frame_head
= fra
.me
.prev
;
927 init_table
[itpos4
] = 1;
930 void syntax_base___MMWriteImplementationMethod___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
931 int itpos5
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMWriteImplementationMethod
].i
;
932 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
934 if (init_table
[itpos5
]) return;
935 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
936 fra
.me
.file
= LOCATE_syntax_base
;
938 fra
.me
.meth
= LOCATE_syntax_base___MMWriteImplementationMethod___init
;
939 fra
.me
.has_broke
= 0;
941 fra
.me
.REG
[0] = NIT_NULL
;
942 fra
.me
.REG
[1] = NIT_NULL
;
943 fra
.me
.REG
[2] = NIT_NULL
;
944 fra
.me
.REG
[3] = NIT_NULL
;
949 /* ./syntax//syntax_base.nit:179 */
950 CALL_syntax_base___MMAttrImplementationMethod___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], fra
.me
.REG
[3], init_table
);
951 stack_frame_head
= fra
.me
.prev
;
952 init_table
[itpos5
] = 1;
955 val_t
syntax_base___MMMethSrcMethod___is_init(val_t p0
){
956 struct {struct stack_frame_t me
;} fra
;
959 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
960 fra
.me
.file
= LOCATE_syntax_base
;
962 fra
.me
.meth
= LOCATE_syntax_base___MMMethSrcMethod___is_init
;
963 fra
.me
.has_broke
= 0;
965 fra
.me
.REG
[0] = NIT_NULL
;
967 /* ./syntax//syntax_base.nit:186 */
968 REGB0
= TAG_Bool(ATTR_syntax_base___MMMethSrcMethod____is_init(fra
.me
.REG
[0])!=NIT_NULL
);
969 if (UNTAG_Bool(REGB0
)) {
971 nit_abort("Uninitialized attribute %s", "_is_init", LOCATE_syntax_base
, 186);
973 REGB0
= ATTR_syntax_base___MMMethSrcMethod____is_init(fra
.me
.REG
[0]);
974 stack_frame_head
= fra
.me
.prev
;
977 val_t
syntax_base___MMMethSrcMethod___is_intern(val_t p0
){
978 struct {struct stack_frame_t me
;} fra
;
981 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
982 fra
.me
.file
= LOCATE_syntax_base
;
984 fra
.me
.meth
= LOCATE_syntax_base___MMMethSrcMethod___is_intern
;
985 fra
.me
.has_broke
= 0;
987 fra
.me
.REG
[0] = NIT_NULL
;
989 /* ./syntax//syntax_base.nit:187 */
990 REGB0
= TAG_Bool(ATTR_syntax_base___MMMethSrcMethod____is_intern(fra
.me
.REG
[0])!=NIT_NULL
);
991 if (UNTAG_Bool(REGB0
)) {
993 nit_abort("Uninitialized attribute %s", "_is_intern", LOCATE_syntax_base
, 187);
995 REGB0
= ATTR_syntax_base___MMMethSrcMethod____is_intern(fra
.me
.REG
[0]);
996 stack_frame_head
= fra
.me
.prev
;
999 val_t
syntax_base___MMMethSrcMethod___is_abstract(val_t p0
){
1000 struct {struct stack_frame_t me
;} fra
;
1003 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1004 fra
.me
.file
= LOCATE_syntax_base
;
1006 fra
.me
.meth
= LOCATE_syntax_base___MMMethSrcMethod___is_abstract
;
1007 fra
.me
.has_broke
= 0;
1008 fra
.me
.REG_size
= 1;
1009 fra
.me
.REG
[0] = NIT_NULL
;
1011 /* ./syntax//syntax_base.nit:188 */
1012 REGB0
= TAG_Bool(ATTR_syntax_base___MMMethSrcMethod____is_abstract(fra
.me
.REG
[0])!=NIT_NULL
);
1013 if (UNTAG_Bool(REGB0
)) {
1015 nit_abort("Uninitialized attribute %s", "_is_abstract", LOCATE_syntax_base
, 188);
1017 REGB0
= ATTR_syntax_base___MMMethSrcMethod____is_abstract(fra
.me
.REG
[0]);
1018 stack_frame_head
= fra
.me
.prev
;
1021 val_t
syntax_base___MMMethSrcMethod___extern_name(val_t p0
){
1022 struct {struct stack_frame_t me
;} fra
;
1024 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1025 fra
.me
.file
= LOCATE_syntax_base
;
1027 fra
.me
.meth
= LOCATE_syntax_base___MMMethSrcMethod___extern_name
;
1028 fra
.me
.has_broke
= 0;
1029 fra
.me
.REG_size
= 1;
1030 fra
.me
.REG
[0] = NIT_NULL
;
1032 /* ./syntax//syntax_base.nit:189 */
1033 fra
.me
.REG
[0] = ATTR_syntax_base___MMMethSrcMethod____extern_name(fra
.me
.REG
[0]);
1034 stack_frame_head
= fra
.me
.prev
;
1035 return fra
.me
.REG
[0];
1037 void syntax_base___MMMethSrcMethod___extern_name__eq(val_t p0
, val_t p1
){
1038 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1040 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1041 fra
.me
.file
= LOCATE_syntax_base
;
1043 fra
.me
.meth
= LOCATE_syntax_base___MMMethSrcMethod___extern_name__eq
;
1044 fra
.me
.has_broke
= 0;
1045 fra
.me
.REG_size
= 2;
1046 fra
.me
.REG
[0] = NIT_NULL
;
1047 fra
.me
.REG
[1] = NIT_NULL
;
1050 /* ./syntax//syntax_base.nit:189 */
1051 ATTR_syntax_base___MMMethSrcMethod____extern_name(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1052 stack_frame_head
= fra
.me
.prev
;
1055 val_t
syntax_base___MMMethSrcMethod___node(val_t p0
){
1056 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1059 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1060 fra
.me
.file
= LOCATE_syntax_base
;
1062 fra
.me
.meth
= LOCATE_syntax_base___MMMethSrcMethod___node
;
1063 fra
.me
.has_broke
= 0;
1064 fra
.me
.REG_size
= 2;
1065 fra
.me
.REG
[0] = NIT_NULL
;
1066 fra
.me
.REG
[1] = NIT_NULL
;
1068 /* ./syntax//syntax_base.nit:190 */
1069 fra
.me
.REG
[1] = CALL_abstractmetamodel___MMLocalProperty___mmmodule(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1070 fra
.me
.REG
[0] = CALL_syntax_base___MMModule___nodes(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
1071 REGB0
= TAG_Bool((fra
.me
.REG
[0]==NIT_NULL
) || VAL_ISA(fra
.me
.REG
[0], COLOR_AMethPropdef
, ID_AMethPropdef
)) /*cast nullable AMethPropdef*/;
1072 if (UNTAG_Bool(REGB0
)) {
1074 nit_abort("Cast failed", NULL
, LOCATE_syntax_base
, 190);
1078 stack_frame_head
= fra
.me
.prev
;
1079 return fra
.me
.REG
[0];
1081 void syntax_base___MMMethSrcMethod___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
1082 int itpos6
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMMethSrcMethod
].i
;
1083 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
1086 if (init_table
[itpos6
]) return;
1087 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1088 fra
.me
.file
= LOCATE_syntax_base
;
1090 fra
.me
.meth
= LOCATE_syntax_base___MMMethSrcMethod___init
;
1091 fra
.me
.has_broke
= 0;
1092 fra
.me
.REG_size
= 5;
1093 fra
.me
.REG
[0] = NIT_NULL
;
1094 fra
.me
.REG
[1] = NIT_NULL
;
1095 fra
.me
.REG
[2] = NIT_NULL
;
1096 fra
.me
.REG
[3] = NIT_NULL
;
1097 fra
.me
.REG
[4] = NIT_NULL
;
1102 /* ./syntax//syntax_base.nit:191 */
1103 fra
.me
.REG
[4] = fra
.me
.REG
[0];
1104 /* ./syntax//syntax_base.nit:193 */
1105 CALL_abstractmetamodel___MMLocalProperty___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
1106 /* ./syntax//syntax_base.nit:194 */
1107 fra
.me
.REG
[2] = CALL_abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1108 CALL_syntax_base___MMModule___nodes__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4], fra
.me
.REG
[3]);
1109 /* ./syntax//syntax_base.nit:195 */
1110 fra
.me
.REG
[3] = CALL_syntax_base___MMLocalProperty___node(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1111 REGB0
= TAG_Bool((fra
.me
.REG
[3]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[3], COLOR_AConcreteInitPropdef
, ID_AConcreteInitPropdef
)) /*cast AConcreteInitPropdef*/;
1112 ATTR_syntax_base___MMMethSrcMethod____is_init(fra
.me
.REG
[4]) = REGB0
;
1113 /* ./syntax//syntax_base.nit:196 */
1114 fra
.me
.REG
[3] = CALL_syntax_base___MMLocalProperty___node(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1115 REGB0
= TAG_Bool((fra
.me
.REG
[3]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[3], COLOR_AInternMethPropdef
, ID_AInternMethPropdef
)) /*cast AInternMethPropdef*/;
1116 ATTR_syntax_base___MMMethSrcMethod____is_intern(fra
.me
.REG
[4]) = REGB0
;
1117 /* ./syntax//syntax_base.nit:197 */
1118 fra
.me
.REG
[3] = CALL_syntax_base___MMLocalProperty___node(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1119 REGB0
= TAG_Bool((fra
.me
.REG
[3]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[3], COLOR_ADeferredMethPropdef
, ID_ADeferredMethPropdef
)) /*cast ADeferredMethPropdef*/;
1120 ATTR_syntax_base___MMMethSrcMethod____is_abstract(fra
.me
.REG
[4]) = REGB0
;
1121 /* ./syntax//syntax_base.nit:198 */
1122 ATTR_syntax_base___MMMethSrcMethod____extern_name(fra
.me
.REG
[4]) = NIT_NULL
;
1123 stack_frame_head
= fra
.me
.prev
;
1124 init_table
[itpos6
] = 1;
1127 void syntax_base___MMSrcTypeProperty___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
1128 int itpos7
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMSrcTypeProperty
].i
;
1129 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
1131 if (init_table
[itpos7
]) return;
1132 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1133 fra
.me
.file
= LOCATE_syntax_base
;
1135 fra
.me
.meth
= LOCATE_syntax_base___MMSrcTypeProperty___init
;
1136 fra
.me
.has_broke
= 0;
1137 fra
.me
.REG_size
= 4;
1138 fra
.me
.REG
[0] = NIT_NULL
;
1139 fra
.me
.REG
[1] = NIT_NULL
;
1140 fra
.me
.REG
[2] = NIT_NULL
;
1141 fra
.me
.REG
[3] = NIT_NULL
;
1146 /* ./syntax//syntax_base.nit:208 */
1147 CALL_abstractmetamodel___MMLocalProperty___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
1148 stack_frame_head
= fra
.me
.prev
;
1149 init_table
[itpos7
] = 1;
1152 val_t
syntax_base___MMImplicitInit___super_init(val_t p0
){
1153 struct {struct stack_frame_t me
;} fra
;
1155 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1156 fra
.me
.file
= LOCATE_syntax_base
;
1158 fra
.me
.meth
= LOCATE_syntax_base___MMImplicitInit___super_init
;
1159 fra
.me
.has_broke
= 0;
1160 fra
.me
.REG_size
= 0;
1161 /* ./syntax//syntax_base.nit:215 */
1162 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 215);
1163 stack_frame_head
= fra
.me
.prev
;
1166 val_t
syntax_base___MMImplicitInit___is_init(val_t p0
){
1167 struct {struct stack_frame_t me
;} fra
;
1170 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1171 fra
.me
.file
= LOCATE_syntax_base
;
1173 fra
.me
.meth
= LOCATE_syntax_base___MMImplicitInit___is_init
;
1174 fra
.me
.has_broke
= 0;
1175 fra
.me
.REG_size
= 1;
1176 fra
.me
.REG
[0] = NIT_NULL
;
1178 /* ./syntax//syntax_base.nit:216 */
1179 REGB0
= TAG_Bool(true);
1182 stack_frame_head
= fra
.me
.prev
;
1185 val_t
syntax_base___MMImplicitInit___unassigned_attributes(val_t p0
){
1186 struct {struct stack_frame_t me
;} fra
;
1189 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1190 fra
.me
.file
= LOCATE_syntax_base
;
1192 fra
.me
.meth
= LOCATE_syntax_base___MMImplicitInit___unassigned_attributes
;
1193 fra
.me
.has_broke
= 0;
1194 fra
.me
.REG_size
= 1;
1195 fra
.me
.REG
[0] = NIT_NULL
;
1197 /* ./syntax//syntax_base.nit:217 */
1198 REGB0
= TAG_Bool(ATTR_syntax_base___MMImplicitInit____unassigned_attributes(fra
.me
.REG
[0])!=NIT_NULL
);
1199 if (UNTAG_Bool(REGB0
)) {
1201 nit_abort("Uninitialized attribute %s", "_unassigned_attributes", LOCATE_syntax_base
, 217);
1203 fra
.me
.REG
[0] = ATTR_syntax_base___MMImplicitInit____unassigned_attributes(fra
.me
.REG
[0]);
1204 stack_frame_head
= fra
.me
.prev
;
1205 return fra
.me
.REG
[0];
1207 val_t
syntax_base___MMImplicitInit___super_inits(val_t p0
){
1208 struct {struct stack_frame_t me
;} fra
;
1211 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1212 fra
.me
.file
= LOCATE_syntax_base
;
1214 fra
.me
.meth
= LOCATE_syntax_base___MMImplicitInit___super_inits
;
1215 fra
.me
.has_broke
= 0;
1216 fra
.me
.REG_size
= 1;
1217 fra
.me
.REG
[0] = NIT_NULL
;
1219 /* ./syntax//syntax_base.nit:218 */
1220 REGB0
= TAG_Bool(ATTR_syntax_base___MMImplicitInit____super_inits(fra
.me
.REG
[0])!=NIT_NULL
);
1221 if (UNTAG_Bool(REGB0
)) {
1223 nit_abort("Uninitialized attribute %s", "_super_inits", LOCATE_syntax_base
, 218);
1225 fra
.me
.REG
[0] = ATTR_syntax_base___MMImplicitInit____super_inits(fra
.me
.REG
[0]);
1226 stack_frame_head
= fra
.me
.prev
;
1227 return fra
.me
.REG
[0];
1229 void syntax_base___MMImplicitInit___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
1230 int itpos8
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_MMImplicitInit
].i
;
1231 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
1234 static val_t once_value_1
; /* Once value */
1235 static val_t once_value_2
; /* Once value */
1236 if (init_table
[itpos8
]) return;
1237 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1238 fra
.me
.file
= LOCATE_syntax_base
;
1240 fra
.me
.meth
= LOCATE_syntax_base___MMImplicitInit___init
;
1241 fra
.me
.has_broke
= 0;
1242 fra
.me
.REG_size
= 6;
1243 fra
.me
.REG
[0] = NIT_NULL
;
1244 fra
.me
.REG
[1] = NIT_NULL
;
1245 fra
.me
.REG
[2] = NIT_NULL
;
1246 fra
.me
.REG
[3] = NIT_NULL
;
1247 fra
.me
.REG
[4] = NIT_NULL
;
1248 fra
.me
.REG
[5] = NIT_NULL
;
1253 /* ./syntax//syntax_base.nit:219 */
1254 fra
.me
.REG
[4] = fra
.me
.REG
[0];
1255 /* ./syntax//syntax_base.nit:221 */
1256 if (!once_value_1
) {
1257 if (!once_value_2
) {
1258 fra
.me
.REG
[5] = BOX_NativeString("init");
1260 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1261 once_value_2
= fra
.me
.REG
[5];
1262 register_static_object(&once_value_2
);
1263 } else fra
.me
.REG
[5] = once_value_2
;
1264 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1265 fra
.me
.REG
[5] = CALL_symbol___String___to_symbol(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1266 once_value_1
= fra
.me
.REG
[5];
1267 register_static_object(&once_value_1
);
1268 } else fra
.me
.REG
[5] = once_value_1
;
1269 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1270 CALL_syntax_base___MMMethSrcMethod___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[5], fra
.me
.REG
[1], NIT_NULL
, init_table
);
1271 /* ./syntax//syntax_base.nit:222 */
1272 ATTR_syntax_base___MMImplicitInit____unassigned_attributes(fra
.me
.REG
[4]) = fra
.me
.REG
[2];
1273 /* ./syntax//syntax_base.nit:223 */
1274 ATTR_syntax_base___MMImplicitInit____super_inits(fra
.me
.REG
[4]) = fra
.me
.REG
[3];
1275 stack_frame_head
= fra
.me
.prev
;
1276 init_table
[itpos8
] = 1;
1279 val_t
syntax_base___Variable___name(val_t p0
){
1280 struct {struct stack_frame_t me
;} fra
;
1283 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1284 fra
.me
.file
= LOCATE_syntax_base
;
1286 fra
.me
.meth
= LOCATE_syntax_base___Variable___name
;
1287 fra
.me
.has_broke
= 0;
1288 fra
.me
.REG_size
= 1;
1289 fra
.me
.REG
[0] = NIT_NULL
;
1291 /* ./syntax//syntax_base.nit:229 */
1292 REGB0
= TAG_Bool(ATTR_syntax_base___Variable____name(fra
.me
.REG
[0])!=NIT_NULL
);
1293 if (UNTAG_Bool(REGB0
)) {
1295 nit_abort("Uninitialized attribute %s", "_name", LOCATE_syntax_base
, 229);
1297 fra
.me
.REG
[0] = ATTR_syntax_base___Variable____name(fra
.me
.REG
[0]);
1298 stack_frame_head
= fra
.me
.prev
;
1299 return fra
.me
.REG
[0];
1301 val_t
syntax_base___Variable___decl(val_t p0
){
1302 struct {struct stack_frame_t me
;} fra
;
1304 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1305 fra
.me
.file
= LOCATE_syntax_base
;
1307 fra
.me
.meth
= LOCATE_syntax_base___Variable___decl
;
1308 fra
.me
.has_broke
= 0;
1309 fra
.me
.REG_size
= 1;
1310 fra
.me
.REG
[0] = NIT_NULL
;
1312 /* ./syntax//syntax_base.nit:232 */
1313 fra
.me
.REG
[0] = ATTR_syntax_base___Variable____decl(fra
.me
.REG
[0]);
1314 stack_frame_head
= fra
.me
.prev
;
1315 return fra
.me
.REG
[0];
1317 val_t
syntax_base___Variable___stype(val_t p0
){
1318 struct {struct stack_frame_t me
;} fra
;
1320 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1321 fra
.me
.file
= LOCATE_syntax_base
;
1323 fra
.me
.meth
= LOCATE_syntax_base___Variable___stype
;
1324 fra
.me
.has_broke
= 0;
1325 fra
.me
.REG_size
= 1;
1326 fra
.me
.REG
[0] = NIT_NULL
;
1328 /* ./syntax//syntax_base.nit:235 */
1329 fra
.me
.REG
[0] = ATTR_syntax_base___Variable____stype(fra
.me
.REG
[0]);
1330 stack_frame_head
= fra
.me
.prev
;
1331 return fra
.me
.REG
[0];
1333 void syntax_base___Variable___stype__eq(val_t p0
, val_t p1
){
1334 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1336 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1337 fra
.me
.file
= LOCATE_syntax_base
;
1339 fra
.me
.meth
= LOCATE_syntax_base___Variable___stype__eq
;
1340 fra
.me
.has_broke
= 0;
1341 fra
.me
.REG_size
= 2;
1342 fra
.me
.REG
[0] = NIT_NULL
;
1343 fra
.me
.REG
[1] = NIT_NULL
;
1346 /* ./syntax//syntax_base.nit:235 */
1347 ATTR_syntax_base___Variable____stype(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1348 stack_frame_head
= fra
.me
.prev
;
1351 val_t
syntax_base___Variable___to_s(val_t p0
){
1352 struct {struct stack_frame_t me
;} fra
;
1355 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1356 fra
.me
.file
= LOCATE_syntax_base
;
1358 fra
.me
.meth
= LOCATE_syntax_base___Variable___to_s
;
1359 fra
.me
.has_broke
= 0;
1360 fra
.me
.REG_size
= 1;
1361 fra
.me
.REG
[0] = NIT_NULL
;
1363 /* ./syntax//syntax_base.nit:238 */
1364 REGB0
= TAG_Bool(ATTR_syntax_base___Variable____name(fra
.me
.REG
[0])!=NIT_NULL
);
1365 if (UNTAG_Bool(REGB0
)) {
1367 nit_abort("Uninitialized attribute %s", "_name", LOCATE_syntax_base
, 238);
1369 fra
.me
.REG
[0] = ATTR_syntax_base___Variable____name(fra
.me
.REG
[0]);
1370 fra
.me
.REG
[0] = CALL_string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1373 stack_frame_head
= fra
.me
.prev
;
1374 return fra
.me
.REG
[0];
1376 val_t
syntax_base___Variable___kind(val_t p0
){
1377 struct {struct stack_frame_t me
;} fra
;
1379 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1380 fra
.me
.file
= LOCATE_syntax_base
;
1382 fra
.me
.meth
= LOCATE_syntax_base___Variable___kind
;
1383 fra
.me
.has_broke
= 0;
1384 fra
.me
.REG_size
= 0;
1385 /* ./syntax//syntax_base.nit:240 */
1386 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 240);
1387 stack_frame_head
= fra
.me
.prev
;
1390 void syntax_base___Variable___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
1391 int itpos9
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_Variable
].i
;
1392 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1394 if (init_table
[itpos9
]) return;
1395 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1396 fra
.me
.file
= LOCATE_syntax_base
;
1398 fra
.me
.meth
= LOCATE_syntax_base___Variable___init
;
1399 fra
.me
.has_broke
= 0;
1400 fra
.me
.REG_size
= 3;
1401 fra
.me
.REG
[0] = NIT_NULL
;
1402 fra
.me
.REG
[1] = NIT_NULL
;
1403 fra
.me
.REG
[2] = NIT_NULL
;
1407 /* ./syntax//syntax_base.nit:244 */
1408 ATTR_syntax_base___Variable____name(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
1409 /* ./syntax//syntax_base.nit:245 */
1410 ATTR_syntax_base___Variable____decl(fra
.me
.REG
[0]) = fra
.me
.REG
[2];
1411 stack_frame_head
= fra
.me
.prev
;
1412 init_table
[itpos9
] = 1;
1415 val_t
syntax_base___VarVariable___kind(val_t p0
){
1416 struct {struct stack_frame_t me
;} fra
;
1419 static val_t once_value_1
; /* Once value */
1420 static val_t once_value_2
; /* Once value */
1421 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1422 fra
.me
.file
= LOCATE_syntax_base
;
1424 fra
.me
.meth
= LOCATE_syntax_base___VarVariable___kind
;
1425 fra
.me
.has_broke
= 0;
1426 fra
.me
.REG_size
= 1;
1427 fra
.me
.REG
[0] = NIT_NULL
;
1429 /* ./syntax//syntax_base.nit:252 */
1430 if (!once_value_1
) {
1431 if (!once_value_2
) {
1432 fra
.me
.REG
[0] = BOX_NativeString("variable");
1434 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1435 once_value_2
= fra
.me
.REG
[0];
1436 register_static_object(&once_value_2
);
1437 } else fra
.me
.REG
[0] = once_value_2
;
1438 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1439 once_value_1
= fra
.me
.REG
[0];
1440 register_static_object(&once_value_1
);
1441 } else fra
.me
.REG
[0] = once_value_1
;
1442 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1445 stack_frame_head
= fra
.me
.prev
;
1446 return fra
.me
.REG
[0];
1448 void syntax_base___VarVariable___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
1449 int itpos10
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_VarVariable
].i
;
1450 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1452 if (init_table
[itpos10
]) return;
1453 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1454 fra
.me
.file
= LOCATE_syntax_base
;
1456 fra
.me
.meth
= LOCATE_syntax_base___VarVariable___init
;
1457 fra
.me
.has_broke
= 0;
1458 fra
.me
.REG_size
= 3;
1459 fra
.me
.REG
[0] = NIT_NULL
;
1460 fra
.me
.REG
[1] = NIT_NULL
;
1461 fra
.me
.REG
[2] = NIT_NULL
;
1465 /* ./syntax//syntax_base.nit:253 */
1466 CALL_syntax_base___Variable___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
1467 stack_frame_head
= fra
.me
.prev
;
1468 init_table
[itpos10
] = 1;
1471 val_t
syntax_base___ParamVariable___kind(val_t p0
){
1472 struct {struct stack_frame_t me
;} fra
;
1475 static val_t once_value_1
; /* Once value */
1476 static val_t once_value_2
; /* Once value */
1477 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1478 fra
.me
.file
= LOCATE_syntax_base
;
1480 fra
.me
.meth
= LOCATE_syntax_base___ParamVariable___kind
;
1481 fra
.me
.has_broke
= 0;
1482 fra
.me
.REG_size
= 1;
1483 fra
.me
.REG
[0] = NIT_NULL
;
1485 /* ./syntax//syntax_base.nit:259 */
1486 if (!once_value_1
) {
1487 if (!once_value_2
) {
1488 fra
.me
.REG
[0] = BOX_NativeString("parameter");
1490 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1491 once_value_2
= fra
.me
.REG
[0];
1492 register_static_object(&once_value_2
);
1493 } else fra
.me
.REG
[0] = once_value_2
;
1494 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1495 once_value_1
= fra
.me
.REG
[0];
1496 register_static_object(&once_value_1
);
1497 } else fra
.me
.REG
[0] = once_value_1
;
1498 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1501 stack_frame_head
= fra
.me
.prev
;
1502 return fra
.me
.REG
[0];
1504 void syntax_base___ParamVariable___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
1505 int itpos11
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_ParamVariable
].i
;
1506 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1508 if (init_table
[itpos11
]) return;
1509 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1510 fra
.me
.file
= LOCATE_syntax_base
;
1512 fra
.me
.meth
= LOCATE_syntax_base___ParamVariable___init
;
1513 fra
.me
.has_broke
= 0;
1514 fra
.me
.REG_size
= 3;
1515 fra
.me
.REG
[0] = NIT_NULL
;
1516 fra
.me
.REG
[1] = NIT_NULL
;
1517 fra
.me
.REG
[2] = NIT_NULL
;
1521 /* ./syntax//syntax_base.nit:260 */
1522 CALL_syntax_base___Variable___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
1523 stack_frame_head
= fra
.me
.prev
;
1524 init_table
[itpos11
] = 1;
1527 val_t
syntax_base___AutoVariable___kind(val_t p0
){
1528 struct {struct stack_frame_t me
;} fra
;
1531 static val_t once_value_1
; /* Once value */
1532 static val_t once_value_2
; /* Once value */
1533 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1534 fra
.me
.file
= LOCATE_syntax_base
;
1536 fra
.me
.meth
= LOCATE_syntax_base___AutoVariable___kind
;
1537 fra
.me
.has_broke
= 0;
1538 fra
.me
.REG_size
= 1;
1539 fra
.me
.REG
[0] = NIT_NULL
;
1541 /* ./syntax//syntax_base.nit:266 */
1542 if (!once_value_1
) {
1543 if (!once_value_2
) {
1544 fra
.me
.REG
[0] = BOX_NativeString("automatic variable");
1545 REGB0
= TAG_Int(18);
1546 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1547 once_value_2
= fra
.me
.REG
[0];
1548 register_static_object(&once_value_2
);
1549 } else fra
.me
.REG
[0] = once_value_2
;
1550 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1551 once_value_1
= fra
.me
.REG
[0];
1552 register_static_object(&once_value_1
);
1553 } else fra
.me
.REG
[0] = once_value_1
;
1554 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1557 stack_frame_head
= fra
.me
.prev
;
1558 return fra
.me
.REG
[0];
1560 void syntax_base___AutoVariable___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
1561 int itpos12
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_AutoVariable
].i
;
1562 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1564 if (init_table
[itpos12
]) return;
1565 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1566 fra
.me
.file
= LOCATE_syntax_base
;
1568 fra
.me
.meth
= LOCATE_syntax_base___AutoVariable___init
;
1569 fra
.me
.has_broke
= 0;
1570 fra
.me
.REG_size
= 3;
1571 fra
.me
.REG
[0] = NIT_NULL
;
1572 fra
.me
.REG
[1] = NIT_NULL
;
1573 fra
.me
.REG
[2] = NIT_NULL
;
1577 /* ./syntax//syntax_base.nit:267 */
1578 CALL_syntax_base___Variable___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
1579 stack_frame_head
= fra
.me
.prev
;
1580 init_table
[itpos12
] = 1;
1583 val_t
syntax_base___ClosureVariable___kind(val_t p0
){
1584 struct {struct stack_frame_t me
;} fra
;
1587 static val_t once_value_1
; /* Once value */
1588 static val_t once_value_2
; /* Once value */
1589 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1590 fra
.me
.file
= LOCATE_syntax_base
;
1592 fra
.me
.meth
= LOCATE_syntax_base___ClosureVariable___kind
;
1593 fra
.me
.has_broke
= 0;
1594 fra
.me
.REG_size
= 1;
1595 fra
.me
.REG
[0] = NIT_NULL
;
1597 /* ./syntax//syntax_base.nit:274 */
1598 if (!once_value_1
) {
1599 if (!once_value_2
) {
1600 fra
.me
.REG
[0] = BOX_NativeString("closure");
1602 fra
.me
.REG
[0] = NEW_String_string___String___with_native(fra
.me
.REG
[0], REGB0
);
1603 once_value_2
= fra
.me
.REG
[0];
1604 register_static_object(&once_value_2
);
1605 } else fra
.me
.REG
[0] = once_value_2
;
1606 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1607 once_value_1
= fra
.me
.REG
[0];
1608 register_static_object(&once_value_1
);
1609 } else fra
.me
.REG
[0] = once_value_1
;
1610 fra
.me
.REG
[0] = fra
.me
.REG
[0];
1613 stack_frame_head
= fra
.me
.prev
;
1614 return fra
.me
.REG
[0];
1616 val_t
syntax_base___ClosureVariable___closure(val_t p0
){
1617 struct {struct stack_frame_t me
;} fra
;
1620 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1621 fra
.me
.file
= LOCATE_syntax_base
;
1623 fra
.me
.meth
= LOCATE_syntax_base___ClosureVariable___closure
;
1624 fra
.me
.has_broke
= 0;
1625 fra
.me
.REG_size
= 1;
1626 fra
.me
.REG
[0] = NIT_NULL
;
1628 /* ./syntax//syntax_base.nit:276 */
1629 REGB0
= TAG_Bool(ATTR_syntax_base___ClosureVariable____closure(fra
.me
.REG
[0])!=NIT_NULL
);
1630 if (UNTAG_Bool(REGB0
)) {
1632 nit_abort("Uninitialized attribute %s", "_closure", LOCATE_syntax_base
, 276);
1634 fra
.me
.REG
[0] = ATTR_syntax_base___ClosureVariable____closure(fra
.me
.REG
[0]);
1635 stack_frame_head
= fra
.me
.prev
;
1636 return fra
.me
.REG
[0];
1638 void syntax_base___ClosureVariable___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
){
1639 int itpos13
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_ClosureVariable
].i
;
1640 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
1642 if (init_table
[itpos13
]) return;
1643 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1644 fra
.me
.file
= LOCATE_syntax_base
;
1646 fra
.me
.meth
= LOCATE_syntax_base___ClosureVariable___init
;
1647 fra
.me
.has_broke
= 0;
1648 fra
.me
.REG_size
= 5;
1649 fra
.me
.REG
[0] = NIT_NULL
;
1650 fra
.me
.REG
[1] = NIT_NULL
;
1651 fra
.me
.REG
[2] = NIT_NULL
;
1652 fra
.me
.REG
[3] = NIT_NULL
;
1653 fra
.me
.REG
[4] = NIT_NULL
;
1658 /* ./syntax//syntax_base.nit:279 */
1659 fra
.me
.REG
[4] = fra
.me
.REG
[0];
1660 /* ./syntax//syntax_base.nit:281 */
1661 CALL_syntax_base___Variable___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
1662 /* ./syntax//syntax_base.nit:282 */
1663 ATTR_syntax_base___ClosureVariable____closure(fra
.me
.REG
[4]) = fra
.me
.REG
[3];
1664 stack_frame_head
= fra
.me
.prev
;
1665 init_table
[itpos13
] = 1;
1668 val_t
syntax_base___AbsSyntaxVisitor___get_type_by_name(val_t p0
, val_t p1
){
1669 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
1672 static val_t once_value_1
; /* Once value */
1673 static val_t once_value_2
; /* Once value */
1674 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1675 fra
.me
.file
= LOCATE_syntax_base
;
1677 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___get_type_by_name
;
1678 fra
.me
.has_broke
= 0;
1679 fra
.me
.REG_size
= 6;
1680 fra
.me
.REG
[0] = NIT_NULL
;
1681 fra
.me
.REG
[1] = NIT_NULL
;
1682 fra
.me
.REG
[2] = NIT_NULL
;
1683 fra
.me
.REG
[3] = NIT_NULL
;
1684 fra
.me
.REG
[4] = NIT_NULL
;
1685 fra
.me
.REG
[5] = NIT_NULL
;
1688 /* ./syntax//syntax_base.nit:293 */
1689 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0])!=NIT_NULL
);
1690 if (UNTAG_Bool(REGB0
)) {
1692 nit_abort("Uninitialized attribute %s", "_mmmodule", LOCATE_syntax_base
, 293);
1694 fra
.me
.REG
[2] = ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0]);
1695 REGB0
= CALL_abstractmetamodel___MMModule___has_global_class_named(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
1696 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1697 if (UNTAG_Bool(REGB0
)) {
1698 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0])!=NIT_NULL
);
1699 if (UNTAG_Bool(REGB0
)) {
1701 nit_abort("Uninitialized attribute %s", "_tc", LOCATE_syntax_base
, 293);
1703 fra
.me
.REG
[2] = ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0]);
1704 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0])!=NIT_NULL
);
1705 if (UNTAG_Bool(REGB0
)) {
1707 nit_abort("Uninitialized attribute %s", "_mmmodule", LOCATE_syntax_base
, 293);
1709 fra
.me
.REG
[3] = ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0]);
1710 fra
.me
.REG
[3] = CALL_abstractmetamodel___MMModule___location(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1712 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB0
);
1713 if (!once_value_1
) {
1714 fra
.me
.REG
[5] = BOX_NativeString("Missing necessary class: \"");
1715 REGB0
= TAG_Int(26);
1716 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1717 once_value_1
= fra
.me
.REG
[5];
1718 register_static_object(&once_value_1
);
1719 } else fra
.me
.REG
[5] = once_value_1
;
1720 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1721 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1722 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1723 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1724 if (!once_value_2
) {
1725 fra
.me
.REG
[5] = BOX_NativeString("\"");
1727 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
1728 once_value_2
= fra
.me
.REG
[5];
1729 register_static_object(&once_value_2
);
1730 } else fra
.me
.REG
[5] = once_value_2
;
1731 fra
.me
.REG
[5] = fra
.me
.REG
[5];
1732 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
1733 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1734 CALL_mmloader___ToolContext___fatal_error(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[4]);
1736 /* ./syntax//syntax_base.nit:294 */
1737 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0])!=NIT_NULL
);
1738 if (UNTAG_Bool(REGB0
)) {
1740 nit_abort("Uninitialized attribute %s", "_mmmodule", LOCATE_syntax_base
, 294);
1742 fra
.me
.REG
[0] = ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0]);
1743 fra
.me
.REG
[1] = CALL_abstractmetamodel___MMModule___class_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1744 /* ./syntax//syntax_base.nit:295 */
1745 fra
.me
.REG
[1] = CALL_static_type___MMLocalClass___get_type(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1748 stack_frame_head
= fra
.me
.prev
;
1749 return fra
.me
.REG
[1];
1751 val_t
syntax_base___AbsSyntaxVisitor___get_instantiated_type_by_name(val_t p0
, val_t p1
, val_t p2
){
1752 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
1755 static val_t once_value_1
; /* Once value */
1756 static val_t once_value_2
; /* Once value */
1757 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1758 fra
.me
.file
= LOCATE_syntax_base
;
1760 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___get_instantiated_type_by_name
;
1761 fra
.me
.has_broke
= 0;
1762 fra
.me
.REG_size
= 7;
1763 fra
.me
.REG
[0] = NIT_NULL
;
1764 fra
.me
.REG
[1] = NIT_NULL
;
1765 fra
.me
.REG
[2] = NIT_NULL
;
1766 fra
.me
.REG
[3] = NIT_NULL
;
1767 fra
.me
.REG
[4] = NIT_NULL
;
1768 fra
.me
.REG
[5] = NIT_NULL
;
1769 fra
.me
.REG
[6] = NIT_NULL
;
1773 /* ./syntax//syntax_base.nit:300 */
1774 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0])!=NIT_NULL
);
1775 if (UNTAG_Bool(REGB0
)) {
1777 nit_abort("Uninitialized attribute %s", "_mmmodule", LOCATE_syntax_base
, 300);
1779 fra
.me
.REG
[3] = ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0]);
1780 REGB0
= CALL_abstractmetamodel___MMModule___has_global_class_named(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
1781 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1782 if (UNTAG_Bool(REGB0
)) {
1783 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0])!=NIT_NULL
);
1784 if (UNTAG_Bool(REGB0
)) {
1786 nit_abort("Uninitialized attribute %s", "_tc", LOCATE_syntax_base
, 300);
1788 fra
.me
.REG
[3] = ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0]);
1789 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0])!=NIT_NULL
);
1790 if (UNTAG_Bool(REGB0
)) {
1792 nit_abort("Uninitialized attribute %s", "_mmmodule", LOCATE_syntax_base
, 300);
1794 fra
.me
.REG
[4] = ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0]);
1795 fra
.me
.REG
[4] = CALL_abstractmetamodel___MMModule___location(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1797 fra
.me
.REG
[5] = NEW_Array_array___Array___with_capacity(REGB0
);
1798 if (!once_value_1
) {
1799 fra
.me
.REG
[6] = BOX_NativeString("Missing necessary class: \"");
1800 REGB0
= TAG_Int(26);
1801 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
1802 once_value_1
= fra
.me
.REG
[6];
1803 register_static_object(&once_value_1
);
1804 } else fra
.me
.REG
[6] = once_value_1
;
1805 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1806 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1807 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1808 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1809 if (!once_value_2
) {
1810 fra
.me
.REG
[6] = BOX_NativeString("\"");
1812 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
1813 once_value_2
= fra
.me
.REG
[6];
1814 register_static_object(&once_value_2
);
1815 } else fra
.me
.REG
[6] = once_value_2
;
1816 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1817 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1818 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1819 CALL_mmloader___ToolContext___fatal_error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4], fra
.me
.REG
[5]);
1821 /* ./syntax//syntax_base.nit:301 */
1822 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0])!=NIT_NULL
);
1823 if (UNTAG_Bool(REGB0
)) {
1825 nit_abort("Uninitialized attribute %s", "_mmmodule", LOCATE_syntax_base
, 301);
1827 fra
.me
.REG
[0] = ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0]);
1828 fra
.me
.REG
[1] = CALL_abstractmetamodel___MMModule___class_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1829 /* ./syntax//syntax_base.nit:302 */
1830 fra
.me
.REG
[2] = CALL_genericity___MMLocalClass___get_instantiate_type(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
1833 stack_frame_head
= fra
.me
.prev
;
1834 return fra
.me
.REG
[2];
1836 val_t
syntax_base___AbsSyntaxVisitor___type_object(val_t p0
){
1837 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1840 static val_t once_value_1
; /* Once value */
1841 static val_t once_value_2
; /* Once value */
1842 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1843 fra
.me
.file
= LOCATE_syntax_base
;
1845 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_object
;
1846 fra
.me
.has_broke
= 0;
1847 fra
.me
.REG_size
= 2;
1848 fra
.me
.REG
[0] = NIT_NULL
;
1849 fra
.me
.REG
[1] = NIT_NULL
;
1851 /* ./syntax//syntax_base.nit:308 */
1852 if (!once_value_1
) {
1853 if (!once_value_2
) {
1854 fra
.me
.REG
[1] = BOX_NativeString("Object");
1856 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
1857 once_value_2
= fra
.me
.REG
[1];
1858 register_static_object(&once_value_2
);
1859 } else fra
.me
.REG
[1] = once_value_2
;
1860 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1861 fra
.me
.REG
[1] = CALL_symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1862 once_value_1
= fra
.me
.REG
[1];
1863 register_static_object(&once_value_1
);
1864 } else fra
.me
.REG
[1] = once_value_1
;
1865 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1866 fra
.me
.REG
[1] = CALL_syntax_base___AbsSyntaxVisitor___get_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1869 stack_frame_head
= fra
.me
.prev
;
1870 return fra
.me
.REG
[1];
1872 val_t
syntax_base___AbsSyntaxVisitor___type_bool(val_t p0
){
1873 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1876 static val_t once_value_1
; /* Once value */
1877 static val_t once_value_2
; /* Once value */
1878 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1879 fra
.me
.file
= LOCATE_syntax_base
;
1881 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_bool
;
1882 fra
.me
.has_broke
= 0;
1883 fra
.me
.REG_size
= 2;
1884 fra
.me
.REG
[0] = NIT_NULL
;
1885 fra
.me
.REG
[1] = NIT_NULL
;
1887 /* ./syntax//syntax_base.nit:314 */
1888 if (!once_value_1
) {
1889 if (!once_value_2
) {
1890 fra
.me
.REG
[1] = BOX_NativeString("Bool");
1892 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
1893 once_value_2
= fra
.me
.REG
[1];
1894 register_static_object(&once_value_2
);
1895 } else fra
.me
.REG
[1] = once_value_2
;
1896 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1897 fra
.me
.REG
[1] = CALL_symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1898 once_value_1
= fra
.me
.REG
[1];
1899 register_static_object(&once_value_1
);
1900 } else fra
.me
.REG
[1] = once_value_1
;
1901 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1902 fra
.me
.REG
[1] = CALL_syntax_base___AbsSyntaxVisitor___get_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1905 stack_frame_head
= fra
.me
.prev
;
1906 return fra
.me
.REG
[1];
1908 val_t
syntax_base___AbsSyntaxVisitor___type_int(val_t p0
){
1909 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1912 static val_t once_value_1
; /* Once value */
1913 static val_t once_value_2
; /* Once value */
1914 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1915 fra
.me
.file
= LOCATE_syntax_base
;
1917 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_int
;
1918 fra
.me
.has_broke
= 0;
1919 fra
.me
.REG_size
= 2;
1920 fra
.me
.REG
[0] = NIT_NULL
;
1921 fra
.me
.REG
[1] = NIT_NULL
;
1923 /* ./syntax//syntax_base.nit:320 */
1924 if (!once_value_1
) {
1925 if (!once_value_2
) {
1926 fra
.me
.REG
[1] = BOX_NativeString("Int");
1928 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
1929 once_value_2
= fra
.me
.REG
[1];
1930 register_static_object(&once_value_2
);
1931 } else fra
.me
.REG
[1] = once_value_2
;
1932 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1933 fra
.me
.REG
[1] = CALL_symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1934 once_value_1
= fra
.me
.REG
[1];
1935 register_static_object(&once_value_1
);
1936 } else fra
.me
.REG
[1] = once_value_1
;
1937 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1938 fra
.me
.REG
[1] = CALL_syntax_base___AbsSyntaxVisitor___get_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1941 stack_frame_head
= fra
.me
.prev
;
1942 return fra
.me
.REG
[1];
1944 val_t
syntax_base___AbsSyntaxVisitor___type_float(val_t p0
){
1945 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1948 static val_t once_value_1
; /* Once value */
1949 static val_t once_value_2
; /* Once value */
1950 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1951 fra
.me
.file
= LOCATE_syntax_base
;
1953 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_float
;
1954 fra
.me
.has_broke
= 0;
1955 fra
.me
.REG_size
= 2;
1956 fra
.me
.REG
[0] = NIT_NULL
;
1957 fra
.me
.REG
[1] = NIT_NULL
;
1959 /* ./syntax//syntax_base.nit:326 */
1960 if (!once_value_1
) {
1961 if (!once_value_2
) {
1962 fra
.me
.REG
[1] = BOX_NativeString("Float");
1964 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
1965 once_value_2
= fra
.me
.REG
[1];
1966 register_static_object(&once_value_2
);
1967 } else fra
.me
.REG
[1] = once_value_2
;
1968 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1969 fra
.me
.REG
[1] = CALL_symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1970 once_value_1
= fra
.me
.REG
[1];
1971 register_static_object(&once_value_1
);
1972 } else fra
.me
.REG
[1] = once_value_1
;
1973 fra
.me
.REG
[1] = fra
.me
.REG
[1];
1974 fra
.me
.REG
[1] = CALL_syntax_base___AbsSyntaxVisitor___get_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
1977 stack_frame_head
= fra
.me
.prev
;
1978 return fra
.me
.REG
[1];
1980 val_t
syntax_base___AbsSyntaxVisitor___type_char(val_t p0
){
1981 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1984 static val_t once_value_1
; /* Once value */
1985 static val_t once_value_2
; /* Once value */
1986 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1987 fra
.me
.file
= LOCATE_syntax_base
;
1989 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_char
;
1990 fra
.me
.has_broke
= 0;
1991 fra
.me
.REG_size
= 2;
1992 fra
.me
.REG
[0] = NIT_NULL
;
1993 fra
.me
.REG
[1] = NIT_NULL
;
1995 /* ./syntax//syntax_base.nit:332 */
1996 if (!once_value_1
) {
1997 if (!once_value_2
) {
1998 fra
.me
.REG
[1] = BOX_NativeString("Char");
2000 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
2001 once_value_2
= fra
.me
.REG
[1];
2002 register_static_object(&once_value_2
);
2003 } else fra
.me
.REG
[1] = once_value_2
;
2004 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2005 fra
.me
.REG
[1] = CALL_symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2006 once_value_1
= fra
.me
.REG
[1];
2007 register_static_object(&once_value_1
);
2008 } else fra
.me
.REG
[1] = once_value_1
;
2009 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2010 fra
.me
.REG
[1] = CALL_syntax_base___AbsSyntaxVisitor___get_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2013 stack_frame_head
= fra
.me
.prev
;
2014 return fra
.me
.REG
[1];
2016 val_t
syntax_base___AbsSyntaxVisitor___type_string(val_t p0
){
2017 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2020 static val_t once_value_1
; /* Once value */
2021 static val_t once_value_2
; /* Once value */
2022 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2023 fra
.me
.file
= LOCATE_syntax_base
;
2025 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_string
;
2026 fra
.me
.has_broke
= 0;
2027 fra
.me
.REG_size
= 2;
2028 fra
.me
.REG
[0] = NIT_NULL
;
2029 fra
.me
.REG
[1] = NIT_NULL
;
2031 /* ./syntax//syntax_base.nit:338 */
2032 if (!once_value_1
) {
2033 if (!once_value_2
) {
2034 fra
.me
.REG
[1] = BOX_NativeString("String");
2036 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
2037 once_value_2
= fra
.me
.REG
[1];
2038 register_static_object(&once_value_2
);
2039 } else fra
.me
.REG
[1] = once_value_2
;
2040 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2041 fra
.me
.REG
[1] = CALL_symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2042 once_value_1
= fra
.me
.REG
[1];
2043 register_static_object(&once_value_1
);
2044 } else fra
.me
.REG
[1] = once_value_1
;
2045 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2046 fra
.me
.REG
[1] = CALL_syntax_base___AbsSyntaxVisitor___get_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2049 stack_frame_head
= fra
.me
.prev
;
2050 return fra
.me
.REG
[1];
2052 val_t
syntax_base___AbsSyntaxVisitor___type_collection(val_t p0
){
2053 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2056 static val_t once_value_1
; /* Once value */
2057 static val_t once_value_2
; /* Once value */
2058 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2059 fra
.me
.file
= LOCATE_syntax_base
;
2061 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_collection
;
2062 fra
.me
.has_broke
= 0;
2063 fra
.me
.REG_size
= 4;
2064 fra
.me
.REG
[0] = NIT_NULL
;
2065 fra
.me
.REG
[1] = NIT_NULL
;
2066 fra
.me
.REG
[2] = NIT_NULL
;
2067 fra
.me
.REG
[3] = NIT_NULL
;
2069 /* ./syntax//syntax_base.nit:344 */
2070 if (!once_value_1
) {
2071 if (!once_value_2
) {
2072 fra
.me
.REG
[1] = BOX_NativeString("Collection");
2073 REGB0
= TAG_Int(10);
2074 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
2075 once_value_2
= fra
.me
.REG
[1];
2076 register_static_object(&once_value_2
);
2077 } else fra
.me
.REG
[1] = once_value_2
;
2078 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2079 fra
.me
.REG
[1] = CALL_symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2080 once_value_1
= fra
.me
.REG
[1];
2081 register_static_object(&once_value_1
);
2082 } else fra
.me
.REG
[1] = once_value_1
;
2083 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2085 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB0
);
2086 fra
.me
.REG
[3] = CALL_syntax_base___AbsSyntaxVisitor___type_object(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2087 fra
.me
.REG
[3] = CALL_static_type___MMType___as_nullable(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2088 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2089 fra
.me
.REG
[2] = CALL_syntax_base___AbsSyntaxVisitor___get_instantiated_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
2092 stack_frame_head
= fra
.me
.prev
;
2093 return fra
.me
.REG
[2];
2095 val_t
syntax_base___AbsSyntaxVisitor___type_nativestring(val_t p0
){
2096 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2099 static val_t once_value_1
; /* Once value */
2100 static val_t once_value_2
; /* Once value */
2101 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2102 fra
.me
.file
= LOCATE_syntax_base
;
2104 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_nativestring
;
2105 fra
.me
.has_broke
= 0;
2106 fra
.me
.REG_size
= 2;
2107 fra
.me
.REG
[0] = NIT_NULL
;
2108 fra
.me
.REG
[1] = NIT_NULL
;
2110 /* ./syntax//syntax_base.nit:350 */
2111 if (!once_value_1
) {
2112 if (!once_value_2
) {
2113 fra
.me
.REG
[1] = BOX_NativeString("NativeString");
2114 REGB0
= TAG_Int(12);
2115 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
2116 once_value_2
= fra
.me
.REG
[1];
2117 register_static_object(&once_value_2
);
2118 } else fra
.me
.REG
[1] = once_value_2
;
2119 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2120 fra
.me
.REG
[1] = CALL_symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2121 once_value_1
= fra
.me
.REG
[1];
2122 register_static_object(&once_value_1
);
2123 } else fra
.me
.REG
[1] = once_value_1
;
2124 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2125 fra
.me
.REG
[1] = CALL_syntax_base___AbsSyntaxVisitor___get_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2128 stack_frame_head
= fra
.me
.prev
;
2129 return fra
.me
.REG
[1];
2131 val_t
syntax_base___AbsSyntaxVisitor___type_array(val_t p0
, val_t p1
){
2132 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2135 static val_t once_value_1
; /* Once value */
2136 static val_t once_value_2
; /* Once value */
2137 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2138 fra
.me
.file
= LOCATE_syntax_base
;
2140 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_array
;
2141 fra
.me
.has_broke
= 0;
2142 fra
.me
.REG_size
= 4;
2143 fra
.me
.REG
[0] = NIT_NULL
;
2144 fra
.me
.REG
[1] = NIT_NULL
;
2145 fra
.me
.REG
[2] = NIT_NULL
;
2146 fra
.me
.REG
[3] = NIT_NULL
;
2149 /* ./syntax//syntax_base.nit:356 */
2150 if (!once_value_1
) {
2151 if (!once_value_2
) {
2152 fra
.me
.REG
[2] = BOX_NativeString("Array");
2154 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
2155 once_value_2
= fra
.me
.REG
[2];
2156 register_static_object(&once_value_2
);
2157 } else fra
.me
.REG
[2] = once_value_2
;
2158 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2159 fra
.me
.REG
[2] = CALL_symbol___String___to_symbol(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2160 once_value_1
= fra
.me
.REG
[2];
2161 register_static_object(&once_value_1
);
2162 } else fra
.me
.REG
[2] = once_value_1
;
2163 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2165 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB0
);
2166 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
2167 fra
.me
.REG
[3] = CALL_syntax_base___AbsSyntaxVisitor___get_instantiated_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2], fra
.me
.REG
[3]);
2170 stack_frame_head
= fra
.me
.prev
;
2171 return fra
.me
.REG
[3];
2173 val_t
syntax_base___AbsSyntaxVisitor___type_discrete(val_t p0
){
2174 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2177 static val_t once_value_1
; /* Once value */
2178 static val_t once_value_2
; /* Once value */
2179 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2180 fra
.me
.file
= LOCATE_syntax_base
;
2182 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_discrete
;
2183 fra
.me
.has_broke
= 0;
2184 fra
.me
.REG_size
= 2;
2185 fra
.me
.REG
[0] = NIT_NULL
;
2186 fra
.me
.REG
[1] = NIT_NULL
;
2188 /* ./syntax//syntax_base.nit:362 */
2189 if (!once_value_1
) {
2190 if (!once_value_2
) {
2191 fra
.me
.REG
[1] = BOX_NativeString("Discrete");
2193 fra
.me
.REG
[1] = NEW_String_string___String___with_native(fra
.me
.REG
[1], REGB0
);
2194 once_value_2
= fra
.me
.REG
[1];
2195 register_static_object(&once_value_2
);
2196 } else fra
.me
.REG
[1] = once_value_2
;
2197 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2198 fra
.me
.REG
[1] = CALL_symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2199 once_value_1
= fra
.me
.REG
[1];
2200 register_static_object(&once_value_1
);
2201 } else fra
.me
.REG
[1] = once_value_1
;
2202 fra
.me
.REG
[1] = fra
.me
.REG
[1];
2203 fra
.me
.REG
[1] = CALL_syntax_base___AbsSyntaxVisitor___get_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2206 stack_frame_head
= fra
.me
.prev
;
2207 return fra
.me
.REG
[1];
2209 val_t
syntax_base___AbsSyntaxVisitor___type_range(val_t p0
, val_t p1
){
2210 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2213 static val_t once_value_1
; /* Once value */
2214 static val_t once_value_2
; /* Once value */
2215 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2216 fra
.me
.file
= LOCATE_syntax_base
;
2218 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_range
;
2219 fra
.me
.has_broke
= 0;
2220 fra
.me
.REG_size
= 4;
2221 fra
.me
.REG
[0] = NIT_NULL
;
2222 fra
.me
.REG
[1] = NIT_NULL
;
2223 fra
.me
.REG
[2] = NIT_NULL
;
2224 fra
.me
.REG
[3] = NIT_NULL
;
2227 /* ./syntax//syntax_base.nit:368 */
2228 if (!once_value_1
) {
2229 if (!once_value_2
) {
2230 fra
.me
.REG
[2] = BOX_NativeString("Range");
2232 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
2233 once_value_2
= fra
.me
.REG
[2];
2234 register_static_object(&once_value_2
);
2235 } else fra
.me
.REG
[2] = once_value_2
;
2236 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2237 fra
.me
.REG
[2] = CALL_symbol___String___to_symbol(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2238 once_value_1
= fra
.me
.REG
[2];
2239 register_static_object(&once_value_1
);
2240 } else fra
.me
.REG
[2] = once_value_1
;
2241 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2243 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB0
);
2244 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
2245 fra
.me
.REG
[3] = CALL_syntax_base___AbsSyntaxVisitor___get_instantiated_type_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2], fra
.me
.REG
[3]);
2248 stack_frame_head
= fra
.me
.prev
;
2249 return fra
.me
.REG
[3];
2251 val_t
syntax_base___AbsSyntaxVisitor___type_none(val_t p0
){
2252 struct {struct stack_frame_t me
;} fra
;
2255 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2256 fra
.me
.file
= LOCATE_syntax_base
;
2258 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___type_none
;
2259 fra
.me
.has_broke
= 0;
2260 fra
.me
.REG_size
= 1;
2261 fra
.me
.REG
[0] = NIT_NULL
;
2263 /* ./syntax//syntax_base.nit:374 */
2264 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0])!=NIT_NULL
);
2265 if (UNTAG_Bool(REGB0
)) {
2267 nit_abort("Uninitialized attribute %s", "_mmmodule", LOCATE_syntax_base
, 374);
2269 fra
.me
.REG
[0] = ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0]);
2270 fra
.me
.REG
[0] = CALL_static_type___MMModule___type_none(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2273 stack_frame_head
= fra
.me
.prev
;
2274 return fra
.me
.REG
[0];
2276 val_t
syntax_base___AbsSyntaxVisitor___get_method(val_t p0
, val_t p1
, val_t p2
){
2277 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
2280 static val_t once_value_1
; /* Once value */
2281 static val_t once_value_2
; /* Once value */
2282 static val_t once_value_3
; /* Once value */
2283 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2284 fra
.me
.file
= LOCATE_syntax_base
;
2286 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___get_method
;
2287 fra
.me
.has_broke
= 0;
2288 fra
.me
.REG_size
= 6;
2289 fra
.me
.REG
[0] = NIT_NULL
;
2290 fra
.me
.REG
[1] = NIT_NULL
;
2291 fra
.me
.REG
[2] = NIT_NULL
;
2292 fra
.me
.REG
[3] = NIT_NULL
;
2293 fra
.me
.REG
[4] = NIT_NULL
;
2294 fra
.me
.REG
[5] = NIT_NULL
;
2298 /* ./syntax//syntax_base.nit:379 */
2299 fra
.me
.REG
[3] = CALL_static_type___MMType___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2300 REGB0
= CALL_abstractmetamodel___MMLocalClass___has_global_property_by_name(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
2301 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2302 if (UNTAG_Bool(REGB0
)) {
2303 /* ./syntax//syntax_base.nit:380 */
2304 fra
.me
.REG
[3] = CALL_parser_prod___Visitor___current_node(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2306 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB0
);
2307 if (!once_value_1
) {
2308 fra
.me
.REG
[5] = BOX_NativeString("Fatal Error: ");
2309 REGB0
= TAG_Int(13);
2310 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
2311 once_value_1
= fra
.me
.REG
[5];
2312 register_static_object(&once_value_1
);
2313 } else fra
.me
.REG
[5] = once_value_1
;
2314 fra
.me
.REG
[5] = fra
.me
.REG
[5];
2315 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2316 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2317 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2318 if (!once_value_2
) {
2319 fra
.me
.REG
[5] = BOX_NativeString(" must have a property named ");
2320 REGB0
= TAG_Int(28);
2321 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
2322 once_value_2
= fra
.me
.REG
[5];
2323 register_static_object(&once_value_2
);
2324 } else fra
.me
.REG
[5] = once_value_2
;
2325 fra
.me
.REG
[5] = fra
.me
.REG
[5];
2326 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2327 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2328 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2329 if (!once_value_3
) {
2330 fra
.me
.REG
[5] = BOX_NativeString(".");
2332 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB0
);
2333 once_value_3
= fra
.me
.REG
[5];
2334 register_static_object(&once_value_3
);
2335 } else fra
.me
.REG
[5] = once_value_3
;
2336 fra
.me
.REG
[5] = fra
.me
.REG
[5];
2337 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2338 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
2339 CALL_syntax_base___AbsSyntaxVisitor___fatal_error(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], fra
.me
.REG
[4]);
2341 /* ./syntax//syntax_base.nit:382 */
2342 fra
.me
.REG
[1] = CALL_static_type___MMType___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2343 fra
.me
.REG
[2] = CALL_abstractmetamodel___MMLocalClass___select_method(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
2346 stack_frame_head
= fra
.me
.prev
;
2347 return fra
.me
.REG
[2];
2349 val_t
syntax_base___AbsSyntaxVisitor___mmmodule(val_t p0
){
2350 struct {struct stack_frame_t me
;} fra
;
2353 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2354 fra
.me
.file
= LOCATE_syntax_base
;
2356 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___mmmodule
;
2357 fra
.me
.has_broke
= 0;
2358 fra
.me
.REG_size
= 1;
2359 fra
.me
.REG
[0] = NIT_NULL
;
2361 /* ./syntax//syntax_base.nit:385 */
2362 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0])!=NIT_NULL
);
2363 if (UNTAG_Bool(REGB0
)) {
2365 nit_abort("Uninitialized attribute %s", "_mmmodule", LOCATE_syntax_base
, 385);
2367 fra
.me
.REG
[0] = ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[0]);
2368 stack_frame_head
= fra
.me
.prev
;
2369 return fra
.me
.REG
[0];
2371 val_t
syntax_base___AbsSyntaxVisitor___local_class(val_t p0
){
2372 struct {struct stack_frame_t me
;} fra
;
2375 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2376 fra
.me
.file
= LOCATE_syntax_base
;
2378 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___local_class
;
2379 fra
.me
.has_broke
= 0;
2380 fra
.me
.REG_size
= 1;
2381 fra
.me
.REG
[0] = NIT_NULL
;
2383 /* ./syntax//syntax_base.nit:389 */
2384 fra
.me
.REG
[0] = ATTR_syntax_base___AbsSyntaxVisitor____local_class(fra
.me
.REG
[0]);
2385 REGB0
= TAG_Bool(fra
.me
.REG
[0]!=NIT_NULL
);
2386 if (UNTAG_Bool(REGB0
)) {
2388 nit_abort("Cast failed", NULL
, LOCATE_syntax_base
, 389);
2392 stack_frame_head
= fra
.me
.prev
;
2393 return fra
.me
.REG
[0];
2395 void syntax_base___AbsSyntaxVisitor___local_class__eq(val_t p0
, val_t p1
){
2396 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2398 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2399 fra
.me
.file
= LOCATE_syntax_base
;
2401 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___local_class__eq
;
2402 fra
.me
.has_broke
= 0;
2403 fra
.me
.REG_size
= 2;
2404 fra
.me
.REG
[0] = NIT_NULL
;
2405 fra
.me
.REG
[1] = NIT_NULL
;
2408 /* ./syntax//syntax_base.nit:390 */
2409 ATTR_syntax_base___AbsSyntaxVisitor____local_class(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2410 stack_frame_head
= fra
.me
.prev
;
2413 val_t
syntax_base___AbsSyntaxVisitor___local_property(val_t p0
){
2414 struct {struct stack_frame_t me
;} fra
;
2417 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2418 fra
.me
.file
= LOCATE_syntax_base
;
2420 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___local_property
;
2421 fra
.me
.has_broke
= 0;
2422 fra
.me
.REG_size
= 1;
2423 fra
.me
.REG
[0] = NIT_NULL
;
2425 /* ./syntax//syntax_base.nit:393 */
2426 fra
.me
.REG
[0] = ATTR_syntax_base___AbsSyntaxVisitor____local_property(fra
.me
.REG
[0]);
2427 REGB0
= TAG_Bool(fra
.me
.REG
[0]!=NIT_NULL
);
2428 if (UNTAG_Bool(REGB0
)) {
2430 nit_abort("Cast failed", NULL
, LOCATE_syntax_base
, 393);
2434 stack_frame_head
= fra
.me
.prev
;
2435 return fra
.me
.REG
[0];
2437 void syntax_base___AbsSyntaxVisitor___local_property__eq(val_t p0
, val_t p1
){
2438 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2440 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2441 fra
.me
.file
= LOCATE_syntax_base
;
2443 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___local_property__eq
;
2444 fra
.me
.has_broke
= 0;
2445 fra
.me
.REG_size
= 2;
2446 fra
.me
.REG
[0] = NIT_NULL
;
2447 fra
.me
.REG
[1] = NIT_NULL
;
2450 /* ./syntax//syntax_base.nit:394 */
2451 ATTR_syntax_base___AbsSyntaxVisitor____local_property(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2452 stack_frame_head
= fra
.me
.prev
;
2455 val_t
syntax_base___AbsSyntaxVisitor___tc(val_t p0
){
2456 struct {struct stack_frame_t me
;} fra
;
2459 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2460 fra
.me
.file
= LOCATE_syntax_base
;
2462 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___tc
;
2463 fra
.me
.has_broke
= 0;
2464 fra
.me
.REG_size
= 1;
2465 fra
.me
.REG
[0] = NIT_NULL
;
2467 /* ./syntax//syntax_base.nit:396 */
2468 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0])!=NIT_NULL
);
2469 if (UNTAG_Bool(REGB0
)) {
2471 nit_abort("Uninitialized attribute %s", "_tc", LOCATE_syntax_base
, 396);
2473 fra
.me
.REG
[0] = ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0]);
2474 stack_frame_head
= fra
.me
.prev
;
2475 return fra
.me
.REG
[0];
2477 void syntax_base___AbsSyntaxVisitor___error(val_t p0
, val_t p1
, val_t p2
){
2478 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2482 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2483 fra
.me
.file
= LOCATE_syntax_base
;
2485 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___error
;
2486 fra
.me
.has_broke
= 0;
2487 fra
.me
.REG_size
= 4;
2488 fra
.me
.REG
[0] = NIT_NULL
;
2489 fra
.me
.REG
[1] = NIT_NULL
;
2490 fra
.me
.REG
[2] = NIT_NULL
;
2491 fra
.me
.REG
[3] = NIT_NULL
;
2495 /* ./syntax//syntax_base.nit:402 */
2496 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0])!=NIT_NULL
);
2497 if (UNTAG_Bool(REGB0
)) {
2499 nit_abort("Uninitialized attribute %s", "_tc", LOCATE_syntax_base
, 402);
2501 fra
.me
.REG
[0] = ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0]);
2502 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2503 if (UNTAG_Bool(REGB0
)) {
2505 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2506 if (UNTAG_Bool(REGB1
)) {
2507 REGB1
= TAG_Bool(false);
2510 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
2514 if (UNTAG_Bool(REGB0
)) {
2515 fra
.me
.REG
[3] = NIT_NULL
;
2517 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2518 if (UNTAG_Bool(REGB0
)) {
2519 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 402);
2521 fra
.me
.REG
[1] = CALL_parser_nodes___ANode___location(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2522 fra
.me
.REG
[3] = fra
.me
.REG
[1];
2524 CALL_mmloader___ToolContext___error(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], fra
.me
.REG
[2]);
2525 stack_frame_head
= fra
.me
.prev
;
2528 void syntax_base___AbsSyntaxVisitor___fatal_error(val_t p0
, val_t p1
, val_t p2
){
2529 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2533 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2534 fra
.me
.file
= LOCATE_syntax_base
;
2536 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___fatal_error
;
2537 fra
.me
.has_broke
= 0;
2538 fra
.me
.REG_size
= 4;
2539 fra
.me
.REG
[0] = NIT_NULL
;
2540 fra
.me
.REG
[1] = NIT_NULL
;
2541 fra
.me
.REG
[2] = NIT_NULL
;
2542 fra
.me
.REG
[3] = NIT_NULL
;
2546 /* ./syntax//syntax_base.nit:408 */
2547 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0])!=NIT_NULL
);
2548 if (UNTAG_Bool(REGB0
)) {
2550 nit_abort("Uninitialized attribute %s", "_tc", LOCATE_syntax_base
, 408);
2552 fra
.me
.REG
[0] = ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0]);
2553 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2554 if (UNTAG_Bool(REGB0
)) {
2556 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2557 if (UNTAG_Bool(REGB1
)) {
2558 REGB1
= TAG_Bool(false);
2561 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
2565 if (UNTAG_Bool(REGB0
)) {
2566 fra
.me
.REG
[3] = NIT_NULL
;
2568 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2569 if (UNTAG_Bool(REGB0
)) {
2570 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 408);
2572 fra
.me
.REG
[1] = CALL_parser_nodes___ANode___location(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2573 fra
.me
.REG
[3] = fra
.me
.REG
[1];
2575 CALL_mmloader___ToolContext___fatal_error(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], fra
.me
.REG
[2]);
2576 stack_frame_head
= fra
.me
.prev
;
2579 void syntax_base___AbsSyntaxVisitor___warning(val_t p0
, val_t p1
, val_t p2
){
2580 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2584 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2585 fra
.me
.file
= LOCATE_syntax_base
;
2587 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___warning
;
2588 fra
.me
.has_broke
= 0;
2589 fra
.me
.REG_size
= 4;
2590 fra
.me
.REG
[0] = NIT_NULL
;
2591 fra
.me
.REG
[1] = NIT_NULL
;
2592 fra
.me
.REG
[2] = NIT_NULL
;
2593 fra
.me
.REG
[3] = NIT_NULL
;
2597 /* ./syntax//syntax_base.nit:414 */
2598 REGB0
= TAG_Bool(ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0])!=NIT_NULL
);
2599 if (UNTAG_Bool(REGB0
)) {
2601 nit_abort("Uninitialized attribute %s", "_tc", LOCATE_syntax_base
, 414);
2603 fra
.me
.REG
[0] = ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[0]);
2604 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2605 if (UNTAG_Bool(REGB0
)) {
2607 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2608 if (UNTAG_Bool(REGB1
)) {
2609 REGB1
= TAG_Bool(false);
2612 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
2616 if (UNTAG_Bool(REGB0
)) {
2617 fra
.me
.REG
[3] = NIT_NULL
;
2619 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2620 if (UNTAG_Bool(REGB0
)) {
2621 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 414);
2623 fra
.me
.REG
[1] = CALL_parser_nodes___ANode___location(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2624 fra
.me
.REG
[3] = fra
.me
.REG
[1];
2626 CALL_mmloader___ToolContext___warning(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], fra
.me
.REG
[2]);
2627 stack_frame_head
= fra
.me
.prev
;
2630 val_t
syntax_base___AbsSyntaxVisitor___check_conform(val_t p0
, val_t p1
, val_t p2
, val_t p3
){
2631 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
2636 static val_t once_value_2
; /* Once value */
2637 static val_t once_value_3
; /* Once value */
2638 static val_t once_value_4
; /* Once value */
2639 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2640 fra
.me
.file
= LOCATE_syntax_base
;
2642 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___check_conform
;
2643 fra
.me
.has_broke
= 0;
2644 fra
.me
.REG_size
= 6;
2645 fra
.me
.REG
[0] = NIT_NULL
;
2646 fra
.me
.REG
[1] = NIT_NULL
;
2647 fra
.me
.REG
[2] = NIT_NULL
;
2648 fra
.me
.REG
[3] = NIT_NULL
;
2649 fra
.me
.REG
[4] = NIT_NULL
;
2650 fra
.me
.REG
[5] = NIT_NULL
;
2655 /* ./syntax//syntax_base.nit:420 */
2656 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
2657 if (UNTAG_Bool(REGB0
)) {
2659 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
2660 if (UNTAG_Bool(REGB1
)) {
2661 REGB1
= TAG_Bool(false);
2664 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
2668 if (UNTAG_Bool(REGB0
)) {
2669 REGB0
= TAG_Bool(true);
2671 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2672 if (UNTAG_Bool(REGB1
)) {
2674 REGB2
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2675 if (UNTAG_Bool(REGB2
)) {
2676 REGB2
= TAG_Bool(false);
2679 REGB2
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
2685 if (UNTAG_Bool(REGB0
)) {
2686 /* ./syntax//syntax_base.nit:421 */
2687 REGB0
= TAG_Bool(false);
2690 /* ./syntax//syntax_base.nit:423 */
2691 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2692 if (UNTAG_Bool(REGB1
)) {
2693 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 423);
2695 REGB1
= CALL_static_type___MMType_____l(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2696 if (UNTAG_Bool(REGB1
)) {
2697 /* ./syntax//syntax_base.nit:424 */
2698 REGB1
= TAG_Bool(true);
2702 /* ./syntax//syntax_base.nit:426 */
2704 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB1
);
2705 if (!once_value_2
) {
2706 fra
.me
.REG
[5] = BOX_NativeString("Type error: expected ");
2707 REGB1
= TAG_Int(21);
2708 fra
.me
.REG
[5] = NEW_String_string___String___with_native(fra
.me
.REG
[5], REGB1
);
2709 once_value_2
= fra
.me
.REG
[5];
2710 register_static_object(&once_value_2
);
2711 } else fra
.me
.REG
[5] = once_value_2
;
2712 fra
.me
.REG
[5] = fra
.me
.REG
[5];
2713 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
2714 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2715 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
2716 if (!once_value_3
) {
2717 fra
.me
.REG
[3] = BOX_NativeString(", got ");
2719 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB1
);
2720 once_value_3
= fra
.me
.REG
[3];
2721 register_static_object(&once_value_3
);
2722 } else fra
.me
.REG
[3] = once_value_3
;
2723 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2724 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
2725 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2726 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
2727 if (!once_value_4
) {
2728 fra
.me
.REG
[2] = BOX_NativeString("");
2730 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB1
);
2731 once_value_4
= fra
.me
.REG
[2];
2732 register_static_object(&once_value_4
);
2733 } else fra
.me
.REG
[2] = once_value_4
;
2734 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2735 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
2736 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
2737 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[4]);
2738 /* ./syntax//syntax_base.nit:427 */
2739 REGB1
= TAG_Bool(false);
2743 stack_frame_head
= fra
.me
.prev
;
2746 val_t
syntax_base___AbsSyntaxVisitor___check_expr(val_t p0
, val_t p1
){
2747 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2752 static val_t once_value_1
; /* Once value */
2753 static val_t once_value_2
; /* Once value */
2754 static val_t once_value_4
; /* Once value */
2755 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2756 fra
.me
.file
= LOCATE_syntax_base
;
2758 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___check_expr
;
2759 fra
.me
.has_broke
= 0;
2760 fra
.me
.REG_size
= 4;
2761 fra
.me
.REG
[0] = NIT_NULL
;
2762 fra
.me
.REG
[1] = NIT_NULL
;
2763 fra
.me
.REG
[2] = NIT_NULL
;
2764 fra
.me
.REG
[3] = NIT_NULL
;
2767 /* ./syntax//syntax_base.nit:435 */
2768 REGB0
= CALL_syntax_base___AExpr___is_typed(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2769 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2770 if (UNTAG_Bool(REGB0
)) {
2771 /* ./syntax//syntax_base.nit:436 */
2772 fra
.me
.REG
[2] = CALL_syntax_base___AbsSyntaxVisitor___tc(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2773 REGB0
= CALL_mmloader___ToolContext___error_count(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2775 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
2776 if (UNTAG_Bool(REGB2
)) {
2778 /* ./../lib/standard//kernel.nit:207 */
2779 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
2780 /* ./syntax//syntax_base.nit:436 */
2783 if (UNTAG_Bool(REGB2
)) {
2784 /* ./syntax//syntax_base.nit:437 */
2786 fra
.me
.REG
[2] = NEW_Array_array___Array___with_capacity(REGB2
);
2787 if (!once_value_1
) {
2788 fra
.me
.REG
[3] = BOX_NativeString("");
2790 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB2
);
2791 once_value_1
= fra
.me
.REG
[3];
2792 register_static_object(&once_value_1
);
2793 } else fra
.me
.REG
[3] = once_value_1
;
2794 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2795 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2796 fra
.me
.REG
[3] = CALL_parser_nodes___ANode___location(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2797 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2798 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2799 if (!once_value_2
) {
2800 fra
.me
.REG
[3] = BOX_NativeString(" not typed but not error");
2801 REGB2
= TAG_Int(24);
2802 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB2
);
2803 once_value_2
= fra
.me
.REG
[3];
2804 register_static_object(&once_value_2
);
2805 } else fra
.me
.REG
[3] = once_value_2
;
2806 fra
.me
.REG
[3] = fra
.me
.REG
[3];
2807 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2808 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2809 CALL_file___Object___print(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
2810 /* ./syntax//syntax_base.nit:438 */
2811 nit_abort("Aborted", NULL
, LOCATE_syntax_base
, 438);
2813 /* ./syntax//syntax_base.nit:442 */
2814 REGB2
= TAG_Bool(false);
2817 /* ./syntax//syntax_base.nit:443 */
2818 REGB1
= CALL_syntax_base___AExpr___is_statement(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2819 if (UNTAG_Bool(REGB1
)) {
2820 /* ./syntax//syntax_base.nit:444 */
2821 if (!once_value_4
) {
2822 fra
.me
.REG
[2] = BOX_NativeString("Type error: expected expression.");
2823 REGB1
= TAG_Int(32);
2824 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB1
);
2825 once_value_4
= fra
.me
.REG
[2];
2826 register_static_object(&once_value_4
);
2827 } else fra
.me
.REG
[2] = once_value_4
;
2828 fra
.me
.REG
[2] = fra
.me
.REG
[2];
2829 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
2830 /* ./syntax//syntax_base.nit:445 */
2831 REGB1
= TAG_Bool(false);
2836 /* ./syntax//syntax_base.nit:447 */
2837 REGB1
= TAG_Bool(true);
2841 stack_frame_head
= fra
.me
.prev
;
2844 val_t
syntax_base___AbsSyntaxVisitor___check_conform_expr(val_t p0
, val_t p1
, val_t p2
){
2845 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2849 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2850 fra
.me
.file
= LOCATE_syntax_base
;
2852 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___check_conform_expr
;
2853 fra
.me
.has_broke
= 0;
2854 fra
.me
.REG_size
= 4;
2855 fra
.me
.REG
[0] = NIT_NULL
;
2856 fra
.me
.REG
[1] = NIT_NULL
;
2857 fra
.me
.REG
[2] = NIT_NULL
;
2858 fra
.me
.REG
[3] = NIT_NULL
;
2862 /* ./syntax//syntax_base.nit:453 */
2863 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2864 if (UNTAG_Bool(REGB0
)) {
2866 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
2867 if (UNTAG_Bool(REGB1
)) {
2868 REGB1
= TAG_Bool(false);
2871 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
2875 if (UNTAG_Bool(REGB0
)) {
2876 REGB0
= TAG_Bool(false);
2879 /* ./syntax//syntax_base.nit:454 */
2880 REGB1
= CALL_syntax_base___AbsSyntaxVisitor___check_expr(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2881 if (UNTAG_Bool(REGB1
)) {
2882 fra
.me
.REG
[3] = CALL_syntax_base___AExpr___stype(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2883 REGB1
= CALL_syntax_base___AbsSyntaxVisitor___check_conform(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[3], fra
.me
.REG
[2]);
2887 REGB1
= TAG_Bool(false);
2892 stack_frame_head
= fra
.me
.prev
;
2895 val_t
syntax_base___AbsSyntaxVisitor___check_conform_multiexpr(val_t p0
, val_t p1
, val_t p2
){
2896 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
2900 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2901 fra
.me
.file
= LOCATE_syntax_base
;
2903 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___check_conform_multiexpr
;
2904 fra
.me
.has_broke
= 0;
2905 fra
.me
.REG_size
= 5;
2906 fra
.me
.REG
[0] = NIT_NULL
;
2907 fra
.me
.REG
[1] = NIT_NULL
;
2908 fra
.me
.REG
[2] = NIT_NULL
;
2909 fra
.me
.REG
[3] = NIT_NULL
;
2910 fra
.me
.REG
[4] = NIT_NULL
;
2914 /* ./syntax//syntax_base.nit:469 */
2915 fra
.me
.REG
[3] = NIT_NULL
;
2916 CALL_abstract_collection___Collection___iterate(fra
.me
.REG
[2])(fra
.me
.REG
[2], (&(fra
.me
)), ((fun_t
)OC_syntax_base___AbsSyntaxVisitor___check_conform_multiexpr_1
));
2917 switch ((&(fra
.me
))->has_broke
) {
2919 case 1: (&(fra
.me
))->has_broke
= 0; goto label3
;
2921 /* ./syntax//syntax_base.nit:483 */
2922 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2923 if (UNTAG_Bool(REGB0
)) {
2925 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2926 if (UNTAG_Bool(REGB1
)) {
2927 REGB1
= TAG_Bool(false);
2930 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
2934 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2935 if (UNTAG_Bool(REGB0
)) {
2937 nit_abort("Assert failed", NULL
, LOCATE_syntax_base
, 483);
2939 CALL_abstract_collection___Collection___iterate(fra
.me
.REG
[2])(fra
.me
.REG
[2], (&(fra
.me
)), ((fun_t
)OC_syntax_base___AbsSyntaxVisitor___check_conform_multiexpr_4
));
2940 switch ((&(fra
.me
))->has_broke
) {
2942 case 1: (&(fra
.me
))->has_broke
= 0; goto label3
;
2944 /* ./syntax//syntax_base.nit:494 */
2945 fra
.me
.REG
[4] = fra
.me
.REG
[1];
2948 stack_frame_head
= fra
.me
.prev
;
2949 return fra
.me
.REG
[4];
2951 void OC_syntax_base___AbsSyntaxVisitor___check_conform_multiexpr_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
2952 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2958 /* ./syntax//syntax_base.nit:470 */
2959 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2960 fra
.me
.file
= LOCATE_syntax_base
;
2962 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___check_conform_multiexpr
;
2963 fra
.me
.has_broke
= 0;
2964 fra
.me
.REG_size
= 3;
2965 fra
.me
.REG
[0] = NIT_NULL
;
2966 fra
.me
.REG
[1] = NIT_NULL
;
2967 fra
.me
.REG
[2] = NIT_NULL
;
2968 fra
.me
.closure_ctx
= closctx_param
;
2969 fra
.me
.closure_funs
= CREG
;
2971 CREG
[0] = clos_fun0
;
2972 /* ./syntax//syntax_base.nit:471 */
2973 REGB0
= CALL_syntax_base___AbsSyntaxVisitor___check_expr(closctx
->REG
[0])(closctx
->REG
[0], fra
.me
.REG
[0]);
2974 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2975 if (UNTAG_Bool(REGB0
)) {
2976 closctx
->REG
[4] = NIT_NULL
;
2977 closctx
->has_broke
= 1;
2980 /* ./syntax//syntax_base.nit:472 */
2981 fra
.me
.REG
[1] = CALL_syntax_base___AExpr___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2982 /* ./syntax//syntax_base.nit:473 */
2983 REGB0
= TAG_Bool(closctx
->REG
[1]==NIT_NULL
);
2984 if (UNTAG_Bool(REGB0
)) {
2986 REGB1
= TAG_Bool(closctx
->REG
[1]==NIT_NULL
);
2987 if (UNTAG_Bool(REGB1
)) {
2988 REGB1
= TAG_Bool(false);
2991 REGB1
= CALL_kernel___Object_____eqeq(closctx
->REG
[1])(closctx
->REG
[1], NIT_NULL
);
2995 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2996 if (UNTAG_Bool(REGB0
)) {
2997 REGB0
= TAG_Bool(closctx
->REG
[1]==NIT_NULL
);
2998 if (UNTAG_Bool(REGB0
)) {
2999 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 473);
3001 REGB0
= CALL_static_type___MMType___is_nullable(closctx
->REG
[1])(closctx
->REG
[1]);
3002 REGB1
= CALL_static_type___MMType___is_nullable(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3003 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
3004 if (UNTAG_Bool(REGB2
)) {
3006 /* ./../lib/standard//kernel.nit:175 */
3007 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
3008 /* ./syntax//syntax_base.nit:473 */
3011 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
3013 REGB1
= TAG_Bool(false);
3016 if (UNTAG_Bool(REGB2
)) {
3017 /* ./syntax//syntax_base.nit:475 */
3018 REGB2
= TAG_Bool(closctx
->REG
[1]==NIT_NULL
);
3019 if (UNTAG_Bool(REGB2
)) {
3020 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 475);
3022 fra
.me
.REG
[2] = CALL_static_type___MMType___as_nullable(closctx
->REG
[1])(closctx
->REG
[1]);
3023 closctx
->REG
[1] = fra
.me
.REG
[2];
3024 /* ./syntax//syntax_base.nit:476 */
3025 fra
.me
.REG
[2] = CALL_static_type___MMType___as_nullable(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3026 fra
.me
.REG
[1] = fra
.me
.REG
[2];
3028 /* ./syntax//syntax_base.nit:478 */
3029 REGB2
= TAG_Bool(closctx
->REG
[1]==NIT_NULL
);
3030 if (UNTAG_Bool(REGB2
)) {
3032 REGB1
= TAG_Bool(closctx
->REG
[1]==NIT_NULL
);
3033 if (UNTAG_Bool(REGB1
)) {
3034 REGB1
= TAG_Bool(false);
3037 REGB1
= CALL_kernel___Object_____eqeq(closctx
->REG
[1])(closctx
->REG
[1], NIT_NULL
);
3041 if (UNTAG_Bool(REGB2
)) {
3042 REGB2
= TAG_Bool(true);
3044 REGB1
= TAG_Bool(closctx
->REG
[1]==NIT_NULL
);
3045 if (UNTAG_Bool(REGB1
)) {
3046 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 478);
3048 REGB1
= CALL_static_type___MMType_____l(closctx
->REG
[1])(closctx
->REG
[1], fra
.me
.REG
[1]);
3051 if (UNTAG_Bool(REGB2
)) {
3052 /* ./syntax//syntax_base.nit:479 */
3053 closctx
->REG
[1] = fra
.me
.REG
[1];
3054 /* ./syntax//syntax_base.nit:480 */
3055 closctx
->REG
[3] = fra
.me
.REG
[0];
3058 stack_frame_head
= fra
.me
.prev
;
3061 void OC_syntax_base___AbsSyntaxVisitor___check_conform_multiexpr_4(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
3062 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3067 static val_t once_value_5
; /* Once value */
3068 static val_t once_value_6
; /* Once value */
3069 static val_t once_value_7
; /* Once value */
3070 static val_t once_value_8
; /* Once value */
3071 static val_t once_value_9
; /* Once value */
3072 static val_t once_value_10
; /* Once value */
3073 static val_t once_value_11
; /* Once value */
3074 /* ./syntax//syntax_base.nit:484 */
3075 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3076 fra
.me
.file
= LOCATE_syntax_base
;
3078 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___check_conform_multiexpr
;
3079 fra
.me
.has_broke
= 0;
3080 fra
.me
.REG_size
= 4;
3081 fra
.me
.REG
[0] = NIT_NULL
;
3082 fra
.me
.REG
[1] = NIT_NULL
;
3083 fra
.me
.REG
[2] = NIT_NULL
;
3084 fra
.me
.REG
[3] = NIT_NULL
;
3085 fra
.me
.closure_ctx
= closctx_param
;
3086 fra
.me
.closure_funs
= CREG
;
3088 CREG
[0] = clos_fun0
;
3089 /* ./syntax//syntax_base.nit:485 */
3090 fra
.me
.REG
[1] = CALL_syntax_base___AExpr___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3091 REGB0
= CALL_static_type___MMType_____l(fra
.me
.REG
[1])(fra
.me
.REG
[1], closctx
->REG
[1]);
3092 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
3093 if (UNTAG_Bool(REGB0
)) {
3094 /* ./syntax//syntax_base.nit:486 */
3095 REGB0
= TAG_Bool(closctx
->REG
[3]==NIT_NULL
);
3096 if (UNTAG_Bool(REGB0
)) {
3098 REGB1
= TAG_Bool(closctx
->REG
[3]==NIT_NULL
);
3099 if (UNTAG_Bool(REGB1
)) {
3100 REGB1
= TAG_Bool(false);
3103 REGB1
= CALL_kernel___Object_____eqeq(closctx
->REG
[3])(closctx
->REG
[3], NIT_NULL
);
3107 if (UNTAG_Bool(REGB0
)) {
3108 /* ./syntax//syntax_base.nit:487 */
3110 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
3111 if (!once_value_5
) {
3112 fra
.me
.REG
[2] = BOX_NativeString("Type error: no most general type. Got ");
3113 REGB0
= TAG_Int(38);
3114 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
3115 once_value_5
= fra
.me
.REG
[2];
3116 register_static_object(&once_value_5
);
3117 } else fra
.me
.REG
[2] = once_value_5
;
3118 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3119 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3120 fra
.me
.REG
[2] = CALL_syntax_base___AExpr___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3121 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3122 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3123 if (!once_value_6
) {
3124 fra
.me
.REG
[2] = BOX_NativeString(" and ");
3126 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
3127 once_value_6
= fra
.me
.REG
[2];
3128 register_static_object(&once_value_6
);
3129 } else fra
.me
.REG
[2] = once_value_6
;
3130 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3131 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3132 fra
.me
.REG
[2] = CALL_string___Object___to_s(closctx
->REG
[1])(closctx
->REG
[1]);
3133 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3134 if (!once_value_7
) {
3135 fra
.me
.REG
[2] = BOX_NativeString(".");
3137 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
3138 once_value_7
= fra
.me
.REG
[2];
3139 register_static_object(&once_value_7
);
3140 } else fra
.me
.REG
[2] = once_value_7
;
3141 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3142 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3143 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3144 CALL_syntax_base___AbsSyntaxVisitor___error(closctx
->REG
[0])(closctx
->REG
[0], fra
.me
.REG
[0], fra
.me
.REG
[1]);
3146 /* ./syntax//syntax_base.nit:489 */
3148 fra
.me
.REG
[1] = NEW_Array_array___Array___with_capacity(REGB0
);
3149 if (!once_value_8
) {
3150 fra
.me
.REG
[2] = BOX_NativeString("Type error: no most general type. Got ");
3151 REGB0
= TAG_Int(38);
3152 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
3153 once_value_8
= fra
.me
.REG
[2];
3154 register_static_object(&once_value_8
);
3155 } else fra
.me
.REG
[2] = once_value_8
;
3156 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3157 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3158 fra
.me
.REG
[2] = CALL_syntax_base___AExpr___stype(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3159 fra
.me
.REG
[2] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3160 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3161 if (!once_value_9
) {
3162 fra
.me
.REG
[2] = BOX_NativeString(" and ");
3164 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
3165 once_value_9
= fra
.me
.REG
[2];
3166 register_static_object(&once_value_9
);
3167 } else fra
.me
.REG
[2] = once_value_9
;
3168 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3169 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3170 fra
.me
.REG
[2] = CALL_string___Object___to_s(closctx
->REG
[1])(closctx
->REG
[1]);
3171 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3172 if (!once_value_10
) {
3173 fra
.me
.REG
[2] = BOX_NativeString(" at ");
3175 fra
.me
.REG
[2] = NEW_String_string___String___with_native(fra
.me
.REG
[2], REGB0
);
3176 once_value_10
= fra
.me
.REG
[2];
3177 register_static_object(&once_value_10
);
3178 } else fra
.me
.REG
[2] = once_value_10
;
3179 fra
.me
.REG
[2] = fra
.me
.REG
[2];
3180 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
3181 REGB0
= TAG_Bool(closctx
->REG
[3]==NIT_NULL
);
3182 if (UNTAG_Bool(REGB0
)) {
3183 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 489);
3185 fra
.me
.REG
[2] = CALL_parser_nodes___ANode___location(closctx
->REG
[3])(closctx
->REG
[3]);
3186 fra
.me
.REG
[3] = CALL_parser_nodes___ANode___location(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3187 fra
.me
.REG
[3] = CALL_location___Location___relative_to(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3188 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
3189 if (!once_value_11
) {
3190 fra
.me
.REG
[3] = BOX_NativeString(".");
3192 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
3193 once_value_11
= fra
.me
.REG
[3];
3194 register_static_object(&once_value_11
);
3195 } else fra
.me
.REG
[3] = once_value_11
;
3196 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3197 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
3198 fra
.me
.REG
[1] = CALL_string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3199 CALL_syntax_base___AbsSyntaxVisitor___error(closctx
->REG
[0])(closctx
->REG
[0], fra
.me
.REG
[0], fra
.me
.REG
[1]);
3201 /* ./syntax//syntax_base.nit:491 */
3202 closctx
->REG
[4] = NIT_NULL
;
3203 closctx
->has_broke
= 1;
3207 stack_frame_head
= fra
.me
.prev
;
3210 void syntax_base___AbsSyntaxVisitor___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
3211 int itpos14
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_AbsSyntaxVisitor
].i
;
3212 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3214 if (init_table
[itpos14
]) return;
3215 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3216 fra
.me
.file
= LOCATE_syntax_base
;
3218 fra
.me
.meth
= LOCATE_syntax_base___AbsSyntaxVisitor___init
;
3219 fra
.me
.has_broke
= 0;
3220 fra
.me
.REG_size
= 4;
3221 fra
.me
.REG
[0] = NIT_NULL
;
3222 fra
.me
.REG
[1] = NIT_NULL
;
3223 fra
.me
.REG
[2] = NIT_NULL
;
3224 fra
.me
.REG
[3] = NIT_NULL
;
3228 /* ./syntax//syntax_base.nit:497 */
3229 fra
.me
.REG
[3] = fra
.me
.REG
[0];
3230 CALL_parser_prod___Visitor___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
3231 /* ./syntax//syntax_base.nit:499 */
3232 ATTR_syntax_base___AbsSyntaxVisitor____tc(fra
.me
.REG
[3]) = fra
.me
.REG
[1];
3233 /* ./syntax//syntax_base.nit:500 */
3234 ATTR_syntax_base___AbsSyntaxVisitor____mmmodule(fra
.me
.REG
[3]) = fra
.me
.REG
[2];
3235 stack_frame_head
= fra
.me
.prev
;
3236 init_table
[itpos14
] = 1;
3239 void syntax_base___ANode___accept_abs_syntax_visitor(val_t p0
, val_t p1
){
3240 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3242 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3243 fra
.me
.file
= LOCATE_syntax_base
;
3245 fra
.me
.meth
= LOCATE_syntax_base___ANode___accept_abs_syntax_visitor
;
3246 fra
.me
.has_broke
= 0;
3247 fra
.me
.REG_size
= 2;
3248 fra
.me
.REG
[0] = NIT_NULL
;
3249 fra
.me
.REG
[1] = NIT_NULL
;
3252 /* ./syntax//syntax_base.nit:507 */
3253 CALL_parser_prod___ANode___visit_all(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3254 stack_frame_head
= fra
.me
.prev
;
3257 val_t
syntax_base___Token___to_symbol(val_t p0
){
3258 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
3262 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3263 fra
.me
.file
= LOCATE_syntax_base
;
3265 fra
.me
.meth
= LOCATE_syntax_base___Token___to_symbol
;
3266 fra
.me
.has_broke
= 0;
3267 fra
.me
.REG_size
= 3;
3268 fra
.me
.REG
[0] = NIT_NULL
;
3269 fra
.me
.REG
[1] = NIT_NULL
;
3270 fra
.me
.REG
[2] = NIT_NULL
;
3272 /* ./syntax//syntax_base.nit:517 */
3273 fra
.me
.REG
[1] = ATTR_syntax_base___Token____symbol_cache(fra
.me
.REG
[0]);
3274 /* ./syntax//syntax_base.nit:518 */
3275 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
3276 if (UNTAG_Bool(REGB0
)) {
3278 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
3279 if (UNTAG_Bool(REGB1
)) {
3280 REGB1
= TAG_Bool(false);
3283 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
3287 if (UNTAG_Bool(REGB0
)) {
3288 /* ./syntax//syntax_base.nit:519 */
3289 fra
.me
.REG
[2] = CALL_lexer___Token___text(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3290 fra
.me
.REG
[2] = CALL_symbol___String___to_symbol(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3291 fra
.me
.REG
[1] = fra
.me
.REG
[2];
3292 /* ./syntax//syntax_base.nit:520 */
3293 ATTR_syntax_base___Token____symbol_cache(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3295 /* ./syntax//syntax_base.nit:522 */
3298 stack_frame_head
= fra
.me
.prev
;
3299 return fra
.me
.REG
[1];
3301 val_t
syntax_base___AClassdef___local_class(val_t p0
){
3302 struct {struct stack_frame_t me
;} fra
;
3304 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3305 fra
.me
.file
= LOCATE_syntax_base
;
3307 fra
.me
.meth
= LOCATE_syntax_base___AClassdef___local_class
;
3308 fra
.me
.has_broke
= 0;
3309 fra
.me
.REG_size
= 0;
3310 /* ./syntax//syntax_base.nit:527 */
3311 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 527);
3312 stack_frame_head
= fra
.me
.prev
;
3315 val_t
syntax_base___AClassdef___next_node(val_t p0
){
3316 struct {struct stack_frame_t me
;} fra
;
3318 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3319 fra
.me
.file
= LOCATE_syntax_base
;
3321 fra
.me
.meth
= LOCATE_syntax_base___AClassdef___next_node
;
3322 fra
.me
.has_broke
= 0;
3323 fra
.me
.REG_size
= 1;
3324 fra
.me
.REG
[0] = NIT_NULL
;
3326 /* ./syntax//syntax_base.nit:530 */
3327 fra
.me
.REG
[0] = ATTR_syntax_base___AClassdef____next_node(fra
.me
.REG
[0]);
3328 stack_frame_head
= fra
.me
.prev
;
3329 return fra
.me
.REG
[0];
3331 void syntax_base___AClassdef___next_node__eq(val_t p0
, val_t p1
){
3332 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3334 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3335 fra
.me
.file
= LOCATE_syntax_base
;
3337 fra
.me
.meth
= LOCATE_syntax_base___AClassdef___next_node__eq
;
3338 fra
.me
.has_broke
= 0;
3339 fra
.me
.REG_size
= 2;
3340 fra
.me
.REG
[0] = NIT_NULL
;
3341 fra
.me
.REG
[1] = NIT_NULL
;
3344 /* ./syntax//syntax_base.nit:530 */
3345 ATTR_syntax_base___AClassdef____next_node(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
3346 stack_frame_head
= fra
.me
.prev
;
3349 val_t
syntax_base___APropdef___self_var(val_t p0
){
3350 struct {struct stack_frame_t me
;} fra
;
3352 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3353 fra
.me
.file
= LOCATE_syntax_base
;
3355 fra
.me
.meth
= LOCATE_syntax_base___APropdef___self_var
;
3356 fra
.me
.has_broke
= 0;
3357 fra
.me
.REG_size
= 0;
3358 /* ./syntax//syntax_base.nit:535 */
3359 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 535);
3360 stack_frame_head
= fra
.me
.prev
;
3363 val_t
syntax_base___AAttrPropdef___prop(val_t p0
){
3364 struct {struct stack_frame_t me
;} fra
;
3366 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3367 fra
.me
.file
= LOCATE_syntax_base
;
3369 fra
.me
.meth
= LOCATE_syntax_base___AAttrPropdef___prop
;
3370 fra
.me
.has_broke
= 0;
3371 fra
.me
.REG_size
= 0;
3372 /* ./syntax//syntax_base.nit:540 */
3373 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 540);
3374 stack_frame_head
= fra
.me
.prev
;
3377 val_t
syntax_base___AAttrPropdef___readmethod(val_t p0
){
3378 struct {struct stack_frame_t me
;} fra
;
3380 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3381 fra
.me
.file
= LOCATE_syntax_base
;
3383 fra
.me
.meth
= LOCATE_syntax_base___AAttrPropdef___readmethod
;
3384 fra
.me
.has_broke
= 0;
3385 fra
.me
.REG_size
= 0;
3386 /* ./syntax//syntax_base.nit:543 */
3387 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 543);
3388 stack_frame_head
= fra
.me
.prev
;
3391 val_t
syntax_base___AAttrPropdef___writemethod(val_t p0
){
3392 struct {struct stack_frame_t me
;} fra
;
3394 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3395 fra
.me
.file
= LOCATE_syntax_base
;
3397 fra
.me
.meth
= LOCATE_syntax_base___AAttrPropdef___writemethod
;
3398 fra
.me
.has_broke
= 0;
3399 fra
.me
.REG_size
= 0;
3400 /* ./syntax//syntax_base.nit:546 */
3401 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 546);
3402 stack_frame_head
= fra
.me
.prev
;
3405 val_t
syntax_base___AConcreteInitPropdef___super_init_calls(val_t p0
){
3406 struct {struct stack_frame_t me
;} fra
;
3409 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3410 fra
.me
.file
= LOCATE_syntax_base
;
3412 fra
.me
.meth
= LOCATE_syntax_base___AConcreteInitPropdef___super_init_calls
;
3413 fra
.me
.has_broke
= 0;
3414 fra
.me
.REG_size
= 1;
3415 fra
.me
.REG
[0] = NIT_NULL
;
3417 /* ./syntax//syntax_base.nit:551 */
3418 REGB0
= TAG_Bool(ATTR_syntax_base___AConcreteInitPropdef____super_init_calls(fra
.me
.REG
[0])!=NIT_NULL
);
3419 if (UNTAG_Bool(REGB0
)) {
3421 nit_abort("Uninitialized attribute %s", "_super_init_calls", LOCATE_syntax_base
, 551);
3423 fra
.me
.REG
[0] = ATTR_syntax_base___AConcreteInitPropdef____super_init_calls(fra
.me
.REG
[0]);
3424 stack_frame_head
= fra
.me
.prev
;
3425 return fra
.me
.REG
[0];
3427 val_t
syntax_base___AConcreteInitPropdef___explicit_super_init_calls(val_t p0
){
3428 struct {struct stack_frame_t me
;} fra
;
3431 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3432 fra
.me
.file
= LOCATE_syntax_base
;
3434 fra
.me
.meth
= LOCATE_syntax_base___AConcreteInitPropdef___explicit_super_init_calls
;
3435 fra
.me
.has_broke
= 0;
3436 fra
.me
.REG_size
= 1;
3437 fra
.me
.REG
[0] = NIT_NULL
;
3439 /* ./syntax//syntax_base.nit:552 */
3440 REGB0
= TAG_Bool(ATTR_syntax_base___AConcreteInitPropdef____explicit_super_init_calls(fra
.me
.REG
[0])!=NIT_NULL
);
3441 if (UNTAG_Bool(REGB0
)) {
3443 nit_abort("Uninitialized attribute %s", "_explicit_super_init_calls", LOCATE_syntax_base
, 552);
3445 fra
.me
.REG
[0] = ATTR_syntax_base___AConcreteInitPropdef____explicit_super_init_calls(fra
.me
.REG
[0]);
3446 stack_frame_head
= fra
.me
.prev
;
3447 return fra
.me
.REG
[0];
3449 val_t
syntax_base___AMethPropdef___method(val_t p0
){
3450 struct {struct stack_frame_t me
;} fra
;
3452 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3453 fra
.me
.file
= LOCATE_syntax_base
;
3455 fra
.me
.meth
= LOCATE_syntax_base___AMethPropdef___method
;
3456 fra
.me
.has_broke
= 0;
3457 fra
.me
.REG_size
= 0;
3458 /* ./syntax//syntax_base.nit:556 */
3459 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 556);
3460 stack_frame_head
= fra
.me
.prev
;
3463 val_t
syntax_base___ATypePropdef___prop(val_t p0
){
3464 struct {struct stack_frame_t me
;} fra
;
3466 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3467 fra
.me
.file
= LOCATE_syntax_base
;
3469 fra
.me
.meth
= LOCATE_syntax_base___ATypePropdef___prop
;
3470 fra
.me
.has_broke
= 0;
3471 fra
.me
.REG_size
= 0;
3472 /* ./syntax//syntax_base.nit:561 */
3473 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 561);
3474 stack_frame_head
= fra
.me
.prev
;
3477 val_t
syntax_base___AParam___position(val_t p0
){
3478 struct {struct stack_frame_t me
;} fra
;
3480 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3481 fra
.me
.file
= LOCATE_syntax_base
;
3483 fra
.me
.meth
= LOCATE_syntax_base___AParam___position
;
3484 fra
.me
.has_broke
= 0;
3485 fra
.me
.REG_size
= 0;
3486 /* ./syntax//syntax_base.nit:566 */
3487 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 566);
3488 stack_frame_head
= fra
.me
.prev
;
3491 val_t
syntax_base___AParam___variable(val_t p0
){
3492 struct {struct stack_frame_t me
;} fra
;
3494 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3495 fra
.me
.file
= LOCATE_syntax_base
;
3497 fra
.me
.meth
= LOCATE_syntax_base___AParam___variable
;
3498 fra
.me
.has_broke
= 0;
3499 fra
.me
.REG_size
= 0;
3500 /* ./syntax//syntax_base.nit:569 */
3501 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 569);
3502 stack_frame_head
= fra
.me
.prev
;
3505 val_t
syntax_base___AClosureDecl___position(val_t p0
){
3506 struct {struct stack_frame_t me
;} fra
;
3508 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3509 fra
.me
.file
= LOCATE_syntax_base
;
3511 fra
.me
.meth
= LOCATE_syntax_base___AClosureDecl___position
;
3512 fra
.me
.has_broke
= 0;
3513 fra
.me
.REG_size
= 0;
3514 /* ./syntax//syntax_base.nit:574 */
3515 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 574);
3516 stack_frame_head
= fra
.me
.prev
;
3519 val_t
syntax_base___AClosureDecl___variable(val_t p0
){
3520 struct {struct stack_frame_t me
;} fra
;
3522 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3523 fra
.me
.file
= LOCATE_syntax_base
;
3525 fra
.me
.meth
= LOCATE_syntax_base___AClosureDecl___variable
;
3526 fra
.me
.has_broke
= 0;
3527 fra
.me
.REG_size
= 0;
3528 /* ./syntax//syntax_base.nit:577 */
3529 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 577);
3530 stack_frame_head
= fra
.me
.prev
;
3533 val_t
syntax_base___AType___is_typed(val_t p0
){
3534 struct {struct stack_frame_t me
;} fra
;
3536 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3537 fra
.me
.file
= LOCATE_syntax_base
;
3539 fra
.me
.meth
= LOCATE_syntax_base___AType___is_typed
;
3540 fra
.me
.has_broke
= 0;
3541 fra
.me
.REG_size
= 0;
3542 /* ./syntax//syntax_base.nit:582 */
3543 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 582);
3544 stack_frame_head
= fra
.me
.prev
;
3547 val_t
syntax_base___AType___stype(val_t p0
){
3548 struct {struct stack_frame_t me
;} fra
;
3550 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3551 fra
.me
.file
= LOCATE_syntax_base
;
3553 fra
.me
.meth
= LOCATE_syntax_base___AType___stype
;
3554 fra
.me
.has_broke
= 0;
3555 fra
.me
.REG_size
= 0;
3556 /* ./syntax//syntax_base.nit:587 */
3557 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 587);
3558 stack_frame_head
= fra
.me
.prev
;
3561 val_t
syntax_base___AType___get_local_class(val_t p0
, val_t p1
){
3562 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
3566 static val_t once_value_1
; /* Once value */
3567 static val_t once_value_2
; /* Once value */
3568 static val_t once_value_4
; /* Once value */
3569 static val_t once_value_5
; /* Once value */
3570 static val_t once_value_6
; /* Once value */
3571 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3572 fra
.me
.file
= LOCATE_syntax_base
;
3574 fra
.me
.meth
= LOCATE_syntax_base___AType___get_local_class
;
3575 fra
.me
.has_broke
= 0;
3576 fra
.me
.REG_size
= 8;
3577 fra
.me
.REG
[0] = NIT_NULL
;
3578 fra
.me
.REG
[1] = NIT_NULL
;
3579 fra
.me
.REG
[2] = NIT_NULL
;
3580 fra
.me
.REG
[3] = NIT_NULL
;
3581 fra
.me
.REG
[4] = NIT_NULL
;
3582 fra
.me
.REG
[5] = NIT_NULL
;
3583 fra
.me
.REG
[6] = NIT_NULL
;
3584 fra
.me
.REG
[7] = NIT_NULL
;
3587 /* ./syntax//syntax_base.nit:598 */
3588 fra
.me
.REG
[2] = CALL_parser_nodes___AType___n_id(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3589 fra
.me
.REG
[2] = CALL_syntax_base___Token___to_symbol(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3590 /* ./syntax//syntax_base.nit:599 */
3591 fra
.me
.REG
[3] = CALL_syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3592 /* ./syntax//syntax_base.nit:600 */
3593 fra
.me
.REG
[4] = CALL_syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3594 /* ./syntax//syntax_base.nit:602 */
3595 fra
.me
.REG
[5] = CALL_syntax_base___MMSrcLocalClass___formal_dict(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3596 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[2]);
3597 if (UNTAG_Bool(REGB0
)) {
3598 REGB0
= TAG_Bool(true);
3600 REGB1
= CALL_abstractmetamodel___MMLocalClass___has_global_property_by_name(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
3603 if (UNTAG_Bool(REGB0
)) {
3604 /* ./syntax//syntax_base.nit:603 */
3605 fra
.me
.REG
[4] = CALL_parser_nodes___AType___n_id(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3607 fra
.me
.REG
[5] = NEW_Array_array___Array___with_capacity(REGB0
);
3608 if (!once_value_1
) {
3609 fra
.me
.REG
[6] = BOX_NativeString("Type error: ");
3610 REGB0
= TAG_Int(12);
3611 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
3612 once_value_1
= fra
.me
.REG
[6];
3613 register_static_object(&once_value_1
);
3614 } else fra
.me
.REG
[6] = once_value_1
;
3615 fra
.me
.REG
[6] = fra
.me
.REG
[6];
3616 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
3617 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3618 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
3619 if (!once_value_2
) {
3620 fra
.me
.REG
[6] = BOX_NativeString(" is a formal type");
3621 REGB0
= TAG_Int(17);
3622 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
3623 once_value_2
= fra
.me
.REG
[6];
3624 register_static_object(&once_value_2
);
3625 } else fra
.me
.REG
[6] = once_value_2
;
3626 fra
.me
.REG
[6] = fra
.me
.REG
[6];
3627 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
3628 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3629 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4], fra
.me
.REG
[5]);
3630 /* ./syntax//syntax_base.nit:604 */
3631 REGB0
= TAG_Bool(true);
3632 ATTR_syntax_base___AType____stype_cached(fra
.me
.REG
[0]) = REGB0
;
3633 /* ./syntax//syntax_base.nit:605 */
3634 fra
.me
.REG
[5] = NIT_NULL
;
3637 /* ./syntax//syntax_base.nit:608 */
3638 REGB0
= CALL_abstractmetamodel___MMModule___has_global_class_named(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
3639 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
3640 if (UNTAG_Bool(REGB0
)) {
3641 /* ./syntax//syntax_base.nit:609 */
3642 fra
.me
.REG
[4] = CALL_parser_nodes___AType___n_id(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3644 fra
.me
.REG
[6] = NEW_Array_array___Array___with_capacity(REGB0
);
3645 if (!once_value_4
) {
3646 fra
.me
.REG
[7] = BOX_NativeString("Type error: class ");
3647 REGB0
= TAG_Int(18);
3648 fra
.me
.REG
[7] = NEW_String_string___String___with_native(fra
.me
.REG
[7], REGB0
);
3649 once_value_4
= fra
.me
.REG
[7];
3650 register_static_object(&once_value_4
);
3651 } else fra
.me
.REG
[7] = once_value_4
;
3652 fra
.me
.REG
[7] = fra
.me
.REG
[7];
3653 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3654 fra
.me
.REG
[7] = CALL_string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3655 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3656 if (!once_value_5
) {
3657 fra
.me
.REG
[7] = BOX_NativeString(" not found in module ");
3658 REGB0
= TAG_Int(21);
3659 fra
.me
.REG
[7] = NEW_String_string___String___with_native(fra
.me
.REG
[7], REGB0
);
3660 once_value_5
= fra
.me
.REG
[7];
3661 register_static_object(&once_value_5
);
3662 } else fra
.me
.REG
[7] = once_value_5
;
3663 fra
.me
.REG
[7] = fra
.me
.REG
[7];
3664 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3665 fra
.me
.REG
[7] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3666 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3667 if (!once_value_6
) {
3668 fra
.me
.REG
[7] = BOX_NativeString(".");
3670 fra
.me
.REG
[7] = NEW_String_string___String___with_native(fra
.me
.REG
[7], REGB0
);
3671 once_value_6
= fra
.me
.REG
[7];
3672 register_static_object(&once_value_6
);
3673 } else fra
.me
.REG
[7] = once_value_6
;
3674 fra
.me
.REG
[7] = fra
.me
.REG
[7];
3675 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3676 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3677 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4], fra
.me
.REG
[6]);
3678 /* ./syntax//syntax_base.nit:610 */
3679 REGB0
= TAG_Bool(true);
3680 ATTR_syntax_base___AType____stype_cached(fra
.me
.REG
[0]) = REGB0
;
3681 /* ./syntax//syntax_base.nit:611 */
3682 fra
.me
.REG
[5] = NIT_NULL
;
3685 /* ./syntax//syntax_base.nit:614 */
3686 fra
.me
.REG
[2] = CALL_abstractmetamodel___MMModule___class_by_name(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
3687 /* ./syntax//syntax_base.nit:615 */
3688 fra
.me
.REG
[6] = CALL_abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3689 CALL_syntax_base___MMGlobalClass___check_visibility(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[3]);
3690 /* ./syntax//syntax_base.nit:616 */
3691 fra
.me
.REG
[5] = fra
.me
.REG
[2];
3694 stack_frame_head
= fra
.me
.prev
;
3695 return fra
.me
.REG
[5];
3697 val_t
syntax_base___AType___get_unchecked_stype(val_t p0
, val_t p1
){
3698 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
3704 static val_t once_value_2
; /* Once value */
3705 static val_t once_value_3
; /* Once value */
3706 static val_t once_value_4
; /* Once value */
3707 static val_t once_value_5
; /* Once value */
3708 static val_t once_value_6
; /* Once value */
3709 static val_t once_value_7
; /* Once value */
3710 static val_t once_value_8
; /* Once value */
3711 static val_t once_value_9
; /* Once value */
3712 static val_t once_value_10
; /* Once value */
3713 static val_t once_value_11
; /* Once value */
3714 static val_t once_value_12
; /* Once value */
3715 static val_t once_value_13
; /* Once value */
3716 static val_t once_value_14
; /* Once value */
3717 static val_t once_value_15
; /* Once value */
3718 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3719 fra
.me
.file
= LOCATE_syntax_base
;
3721 fra
.me
.meth
= LOCATE_syntax_base___AType___get_unchecked_stype
;
3722 fra
.me
.has_broke
= 0;
3723 fra
.me
.REG_size
= 8;
3724 fra
.me
.REG
[0] = NIT_NULL
;
3725 fra
.me
.REG
[1] = NIT_NULL
;
3726 fra
.me
.REG
[2] = NIT_NULL
;
3727 fra
.me
.REG
[3] = NIT_NULL
;
3728 fra
.me
.REG
[4] = NIT_NULL
;
3729 fra
.me
.REG
[5] = NIT_NULL
;
3730 fra
.me
.REG
[6] = NIT_NULL
;
3731 fra
.me
.REG
[7] = NIT_NULL
;
3734 /* ./syntax//syntax_base.nit:625 */
3735 REGB0
= TAG_Bool(ATTR_syntax_base___AType____stype_cached(fra
.me
.REG
[0])!=NIT_NULL
);
3736 if (UNTAG_Bool(REGB0
)) {
3738 nit_abort("Uninitialized attribute %s", "_stype_cached", LOCATE_syntax_base
, 625);
3740 REGB0
= ATTR_syntax_base___AType____stype_cached(fra
.me
.REG
[0]);
3741 if (UNTAG_Bool(REGB0
)) {
3742 fra
.me
.REG
[2] = ATTR_syntax_base___AType____stype_cache(fra
.me
.REG
[0]);
3745 /* ./syntax//syntax_base.nit:626 */
3746 REGB0
= TAG_Bool(true);
3747 ATTR_syntax_base___AType____stype_cached(fra
.me
.REG
[0]) = REGB0
;
3748 /* ./syntax//syntax_base.nit:628 */
3749 fra
.me
.REG
[3] = CALL_parser_nodes___AType___n_id(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3750 fra
.me
.REG
[3] = CALL_syntax_base___Token___to_symbol(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3751 /* ./syntax//syntax_base.nit:629 */
3752 fra
.me
.REG
[4] = CALL_syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3753 /* ./syntax//syntax_base.nit:630 */
3754 fra
.me
.REG
[4] = CALL_syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3755 /* ./syntax//syntax_base.nit:633 */
3756 fra
.me
.REG
[5] = CALL_syntax_base___MMSrcLocalClass___formal_dict(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3757 REGB0
= CALL_abstract_collection___MapRead___has_key(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
3758 if (UNTAG_Bool(REGB0
)) {
3759 /* ./syntax//syntax_base.nit:634 */
3760 fra
.me
.REG
[5] = CALL_parser_nodes___AType___n_types(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3761 REGB0
= CALL_abstract_collection___Collection___length(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3763 /* ./../lib/standard//kernel.nit:214 */
3764 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
3765 /* ./syntax//syntax_base.nit:634 */
3766 if (UNTAG_Bool(REGB1
)) {
3767 /* ./syntax//syntax_base.nit:635 */
3769 fra
.me
.REG
[5] = NEW_Array_array___Array___with_capacity(REGB1
);
3770 if (!once_value_2
) {
3771 fra
.me
.REG
[6] = BOX_NativeString("Type error: formal type ");
3772 REGB1
= TAG_Int(24);
3773 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB1
);
3774 once_value_2
= fra
.me
.REG
[6];
3775 register_static_object(&once_value_2
);
3776 } else fra
.me
.REG
[6] = once_value_2
;
3777 fra
.me
.REG
[6] = fra
.me
.REG
[6];
3778 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
3779 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3780 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
3781 if (!once_value_3
) {
3782 fra
.me
.REG
[6] = BOX_NativeString(" cannot have formal parameters.");
3783 REGB1
= TAG_Int(31);
3784 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB1
);
3785 once_value_3
= fra
.me
.REG
[6];
3786 register_static_object(&once_value_3
);
3787 } else fra
.me
.REG
[6] = once_value_3
;
3788 fra
.me
.REG
[6] = fra
.me
.REG
[6];
3789 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
3790 fra
.me
.REG
[5] = CALL_string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3791 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[5]);
3792 /* ./syntax//syntax_base.nit:636 */
3793 fra
.me
.REG
[2] = NIT_NULL
;
3796 /* ./syntax//syntax_base.nit:638 */
3797 fra
.me
.REG
[5] = CALL_syntax_base___MMSrcLocalClass___formal_dict(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3798 fra
.me
.REG
[5] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
3799 /* ./syntax//syntax_base.nit:639 */
3800 fra
.me
.REG
[6] = CALL_parser_nodes___AType___n_kwnullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3801 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
3802 if (UNTAG_Bool(REGB1
)) {
3804 REGB0
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
3805 if (UNTAG_Bool(REGB0
)) {
3806 REGB0
= TAG_Bool(false);
3809 REGB0
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
3813 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
3814 if (UNTAG_Bool(REGB1
)) {
3815 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
3816 if (UNTAG_Bool(REGB1
)) {
3817 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 639);
3819 fra
.me
.REG
[6] = CALL_static_type___MMType___as_nullable(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3820 fra
.me
.REG
[5] = fra
.me
.REG
[6];
3822 /* ./syntax//syntax_base.nit:640 */
3823 ATTR_syntax_base___AType____stype_cache(fra
.me
.REG
[0]) = fra
.me
.REG
[5];
3824 /* ./syntax//syntax_base.nit:641 */
3825 fra
.me
.REG
[2] = fra
.me
.REG
[5];
3828 /* ./syntax//syntax_base.nit:644 */
3829 REGB1
= CALL_abstractmetamodel___MMLocalClass___has_global_property_by_name(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
3830 if (UNTAG_Bool(REGB1
)) {
3831 /* ./syntax//syntax_base.nit:645 */
3832 fra
.me
.REG
[6] = CALL_parser_nodes___AType___n_types(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3833 REGB1
= CALL_abstract_collection___Collection___length(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3835 /* ./../lib/standard//kernel.nit:214 */
3836 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB0
));
3837 /* ./syntax//syntax_base.nit:645 */
3838 if (UNTAG_Bool(REGB0
)) {
3839 /* ./syntax//syntax_base.nit:646 */
3841 fra
.me
.REG
[6] = NEW_Array_array___Array___with_capacity(REGB0
);
3842 if (!once_value_4
) {
3843 fra
.me
.REG
[7] = BOX_NativeString("Type error: formal type ");
3844 REGB0
= TAG_Int(24);
3845 fra
.me
.REG
[7] = NEW_String_string___String___with_native(fra
.me
.REG
[7], REGB0
);
3846 once_value_4
= fra
.me
.REG
[7];
3847 register_static_object(&once_value_4
);
3848 } else fra
.me
.REG
[7] = once_value_4
;
3849 fra
.me
.REG
[7] = fra
.me
.REG
[7];
3850 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3851 fra
.me
.REG
[7] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3852 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3853 if (!once_value_5
) {
3854 fra
.me
.REG
[7] = BOX_NativeString(" cannot have formal parameters.");
3855 REGB0
= TAG_Int(31);
3856 fra
.me
.REG
[7] = NEW_String_string___String___with_native(fra
.me
.REG
[7], REGB0
);
3857 once_value_5
= fra
.me
.REG
[7];
3858 register_static_object(&once_value_5
);
3859 } else fra
.me
.REG
[7] = once_value_5
;
3860 fra
.me
.REG
[7] = fra
.me
.REG
[7];
3861 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3862 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3863 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[6]);
3864 /* ./syntax//syntax_base.nit:647 */
3865 fra
.me
.REG
[2] = NIT_NULL
;
3868 /* ./syntax//syntax_base.nit:649 */
3869 fra
.me
.REG
[6] = CALL_static_type___MMLocalClass___get_type(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3870 fra
.me
.REG
[6] = CALL_static_type___MMType___local_class(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3871 fra
.me
.REG
[6] = CALL_virtualtype___MMLocalClass___select_virtual_type(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
3872 fra
.me
.REG
[4] = CALL_static_type___MMLocalClass___get_type(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3873 fra
.me
.REG
[4] = CALL_virtualtype___MMTypeProperty___stype_for(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[4]);
3874 fra
.me
.REG
[5] = fra
.me
.REG
[4];
3875 /* ./syntax//syntax_base.nit:650 */
3876 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
3877 if (UNTAG_Bool(REGB0
)) {
3879 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
3880 if (UNTAG_Bool(REGB1
)) {
3881 REGB1
= TAG_Bool(false);
3884 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
3888 if (UNTAG_Bool(REGB0
)) {
3889 /* ./syntax//syntax_base.nit:651 */
3891 fra
.me
.REG
[4] = NEW_Array_array___Array___with_capacity(REGB0
);
3892 if (!once_value_6
) {
3893 fra
.me
.REG
[6] = BOX_NativeString("Type error: circular definition in formal type ");
3894 REGB0
= TAG_Int(47);
3895 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB0
);
3896 once_value_6
= fra
.me
.REG
[6];
3897 register_static_object(&once_value_6
);
3898 } else fra
.me
.REG
[6] = once_value_6
;
3899 fra
.me
.REG
[6] = fra
.me
.REG
[6];
3900 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[6]);
3901 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3902 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
3903 if (!once_value_7
) {
3904 fra
.me
.REG
[3] = BOX_NativeString(".");
3906 fra
.me
.REG
[3] = NEW_String_string___String___with_native(fra
.me
.REG
[3], REGB0
);
3907 once_value_7
= fra
.me
.REG
[3];
3908 register_static_object(&once_value_7
);
3909 } else fra
.me
.REG
[3] = once_value_7
;
3910 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3911 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
3912 fra
.me
.REG
[4] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3913 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[4]);
3914 /* ./syntax//syntax_base.nit:652 */
3915 fra
.me
.REG
[2] = NIT_NULL
;
3918 /* ./syntax//syntax_base.nit:654 */
3919 fra
.me
.REG
[4] = CALL_parser_nodes___AType___n_kwnullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3920 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
3921 if (UNTAG_Bool(REGB0
)) {
3923 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
3924 if (UNTAG_Bool(REGB1
)) {
3925 REGB1
= TAG_Bool(false);
3928 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
3932 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
3933 if (UNTAG_Bool(REGB0
)) {
3934 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
3935 if (UNTAG_Bool(REGB0
)) {
3936 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 654);
3938 fra
.me
.REG
[4] = CALL_static_type___MMType___as_nullable(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3939 fra
.me
.REG
[5] = fra
.me
.REG
[4];
3941 /* ./syntax//syntax_base.nit:655 */
3942 ATTR_syntax_base___AType____stype_cache(fra
.me
.REG
[0]) = fra
.me
.REG
[5];
3943 /* ./syntax//syntax_base.nit:656 */
3944 fra
.me
.REG
[2] = fra
.me
.REG
[5];
3947 /* ./syntax//syntax_base.nit:659 */
3948 fra
.me
.REG
[4] = CALL_syntax_base___AType___get_local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3949 /* ./syntax//syntax_base.nit:660 */
3950 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
3951 if (UNTAG_Bool(REGB0
)) {
3953 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
3954 if (UNTAG_Bool(REGB1
)) {
3955 REGB1
= TAG_Bool(false);
3958 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
3962 if (UNTAG_Bool(REGB0
)) {
3963 fra
.me
.REG
[2] = NIT_NULL
;
3966 /* ./syntax//syntax_base.nit:662 */
3967 fra
.me
.REG
[3] = CALL_parser_nodes___AType___n_types(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3968 REGB0
= CALL_abstract_collection___Collection___length(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3969 /* ./syntax//syntax_base.nit:663 */
3970 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
3971 if (UNTAG_Bool(REGB1
)) {
3972 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 663);
3974 REGB1
= CALL_abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3975 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB0
));
3976 if (UNTAG_Bool(REGB2
)) {
3978 /* ./../lib/standard//kernel.nit:207 */
3979 REGB1
= TAG_Bool((REGB1
)==(REGB0
));
3980 /* ./syntax//syntax_base.nit:663 */
3983 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
3984 if (UNTAG_Bool(REGB2
)) {
3985 /* ./syntax//syntax_base.nit:664 */
3987 REGB1
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB2
));
3988 if (UNTAG_Bool(REGB1
)) {
3990 /* ./../lib/standard//kernel.nit:207 */
3991 REGB2
= TAG_Bool((REGB0
)==(REGB2
));
3992 /* ./syntax//syntax_base.nit:664 */
3995 if (UNTAG_Bool(REGB1
)) {
3996 /* ./syntax//syntax_base.nit:665 */
3998 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB1
);
3999 if (!once_value_8
) {
4000 fra
.me
.REG
[6] = BOX_NativeString("Type error: '");
4001 REGB1
= TAG_Int(13);
4002 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB1
);
4003 once_value_8
= fra
.me
.REG
[6];
4004 register_static_object(&once_value_8
);
4005 } else fra
.me
.REG
[6] = once_value_8
;
4006 fra
.me
.REG
[6] = fra
.me
.REG
[6];
4007 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4008 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4009 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4010 if (!once_value_9
) {
4011 fra
.me
.REG
[6] = BOX_NativeString("' is a generic class.");
4012 REGB1
= TAG_Int(21);
4013 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB1
);
4014 once_value_9
= fra
.me
.REG
[6];
4015 register_static_object(&once_value_9
);
4016 } else fra
.me
.REG
[6] = once_value_9
;
4017 fra
.me
.REG
[6] = fra
.me
.REG
[6];
4018 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4019 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4020 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[3]);
4022 /* ./syntax//syntax_base.nit:666 */
4023 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4024 if (UNTAG_Bool(REGB1
)) {
4025 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 666);
4027 REGB1
= CALL_abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4029 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB2
));
4030 if (UNTAG_Bool(REGB3
)) {
4032 /* ./../lib/standard//kernel.nit:207 */
4033 REGB2
= TAG_Bool((REGB1
)==(REGB2
));
4034 /* ./syntax//syntax_base.nit:666 */
4037 if (UNTAG_Bool(REGB3
)) {
4038 /* ./syntax//syntax_base.nit:667 */
4040 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB3
);
4041 if (!once_value_10
) {
4042 fra
.me
.REG
[6] = BOX_NativeString("Type error: '");
4043 REGB3
= TAG_Int(13);
4044 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB3
);
4045 once_value_10
= fra
.me
.REG
[6];
4046 register_static_object(&once_value_10
);
4047 } else fra
.me
.REG
[6] = once_value_10
;
4048 fra
.me
.REG
[6] = fra
.me
.REG
[6];
4049 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4050 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4051 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4052 if (!once_value_11
) {
4053 fra
.me
.REG
[6] = BOX_NativeString("' is not a generic class.");
4054 REGB3
= TAG_Int(25);
4055 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB3
);
4056 once_value_11
= fra
.me
.REG
[6];
4057 register_static_object(&once_value_11
);
4058 } else fra
.me
.REG
[6] = once_value_11
;
4059 fra
.me
.REG
[6] = fra
.me
.REG
[6];
4060 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4061 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4062 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[3]);
4064 /* ./syntax//syntax_base.nit:669 */
4066 fra
.me
.REG
[3] = NEW_Array_array___Array___with_capacity(REGB3
);
4067 if (!once_value_12
) {
4068 fra
.me
.REG
[6] = BOX_NativeString("Type error: '");
4069 REGB3
= TAG_Int(13);
4070 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB3
);
4071 once_value_12
= fra
.me
.REG
[6];
4072 register_static_object(&once_value_12
);
4073 } else fra
.me
.REG
[6] = once_value_12
;
4074 fra
.me
.REG
[6] = fra
.me
.REG
[6];
4075 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4076 fra
.me
.REG
[6] = CALL_string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4077 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4078 if (!once_value_13
) {
4079 fra
.me
.REG
[6] = BOX_NativeString("' has ");
4081 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB3
);
4082 once_value_13
= fra
.me
.REG
[6];
4083 register_static_object(&once_value_13
);
4084 } else fra
.me
.REG
[6] = once_value_13
;
4085 fra
.me
.REG
[6] = fra
.me
.REG
[6];
4086 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4087 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4088 if (UNTAG_Bool(REGB3
)) {
4089 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 669);
4091 REGB3
= CALL_abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4092 fra
.me
.REG
[6] = CALL_string___Object___to_s(REGB3
)(REGB3
);
4093 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4094 if (!once_value_14
) {
4095 fra
.me
.REG
[6] = BOX_NativeString(" parameters (");
4096 REGB3
= TAG_Int(13);
4097 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB3
);
4098 once_value_14
= fra
.me
.REG
[6];
4099 register_static_object(&once_value_14
);
4100 } else fra
.me
.REG
[6] = once_value_14
;
4101 fra
.me
.REG
[6] = fra
.me
.REG
[6];
4102 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4103 fra
.me
.REG
[6] = CALL_string___Object___to_s(REGB0
)(REGB0
);
4104 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4105 if (!once_value_15
) {
4106 fra
.me
.REG
[6] = BOX_NativeString(" are provided).");
4107 REGB3
= TAG_Int(15);
4108 fra
.me
.REG
[6] = NEW_String_string___String___with_native(fra
.me
.REG
[6], REGB3
);
4109 once_value_15
= fra
.me
.REG
[6];
4110 register_static_object(&once_value_15
);
4111 } else fra
.me
.REG
[6] = once_value_15
;
4112 fra
.me
.REG
[6] = fra
.me
.REG
[6];
4113 CALL_abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
4114 fra
.me
.REG
[3] = CALL_string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4115 CALL_syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[3]);
4118 /* ./syntax//syntax_base.nit:671 */
4119 fra
.me
.REG
[2] = NIT_NULL
;
4122 /* ./syntax//syntax_base.nit:674 */
4124 /* ./../lib/standard//kernel.nit:214 */
4125 REGB3
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB3
));
4126 /* ./syntax//syntax_base.nit:674 */
4127 if (UNTAG_Bool(REGB3
)) {
4128 /* ./syntax//syntax_base.nit:675 */
4129 fra
.me
.REG
[3] = NEW_Array_array___Array___init();
4130 /* ./syntax//syntax_base.nit:676 */
4131 fra
.me
.REG
[6] = CALL_parser_nodes___AType___n_types(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4132 CALL_abstract_collection___Collection___iterate(fra
.me
.REG
[6])(fra
.me
.REG
[6], (&(fra
.me
)), ((fun_t
)OC_syntax_base___AType___get_unchecked_stype_16
));
4133 switch ((&(fra
.me
))->has_broke
) {
4135 case 1: (&(fra
.me
))->has_broke
= 0; goto label1
;
4137 /* ./syntax//syntax_base.nit:681 */
4138 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4139 if (UNTAG_Bool(REGB3
)) {
4140 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 681);
4142 fra
.me
.REG
[3] = CALL_genericity___MMLocalClass___get_instantiate_type(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
4143 fra
.me
.REG
[5] = fra
.me
.REG
[3];
4145 /* ./syntax//syntax_base.nit:683 */
4146 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4147 if (UNTAG_Bool(REGB3
)) {
4148 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 683);
4150 fra
.me
.REG
[4] = CALL_static_type___MMLocalClass___get_type(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4151 fra
.me
.REG
[5] = fra
.me
.REG
[4];
4153 /* ./syntax//syntax_base.nit:685 */
4154 fra
.me
.REG
[4] = CALL_parser_nodes___AType___n_kwnullable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4155 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4156 if (UNTAG_Bool(REGB3
)) {
4158 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4159 if (UNTAG_Bool(REGB0
)) {
4160 REGB0
= TAG_Bool(false);
4163 REGB0
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
4167 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
4168 if (UNTAG_Bool(REGB3
)) {
4169 REGB3
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
4170 if (UNTAG_Bool(REGB3
)) {
4171 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 685);
4173 fra
.me
.REG
[4] = CALL_static_type___MMType___as_nullable(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
4174 fra
.me
.REG
[5] = fra
.me
.REG
[4];
4176 /* ./syntax//syntax_base.nit:686 */
4177 ATTR_syntax_base___AType____stype_cache(fra
.me
.REG
[0]) = fra
.me
.REG
[5];
4178 /* ./syntax//syntax_base.nit:687 */
4179 fra
.me
.REG
[2] = fra
.me
.REG
[5];
4182 stack_frame_head
= fra
.me
.prev
;
4183 return fra
.me
.REG
[2];
4185 void OC_syntax_base___AType___get_unchecked_stype_16(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
4186 struct {struct stack_frame_t me
;} fra
;
4191 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4192 fra
.me
.file
= LOCATE_syntax_base
;
4194 fra
.me
.meth
= LOCATE_syntax_base___AType___get_unchecked_stype
;
4195 fra
.me
.has_broke
= 0;
4196 fra
.me
.REG_size
= 1;
4197 fra
.me
.REG
[0] = NIT_NULL
;
4198 fra
.me
.closure_ctx
= closctx_param
;
4199 fra
.me
.closure_funs
= CREG
;
4201 CREG
[0] = clos_fun0
;
4202 /* ./syntax//syntax_base.nit:677 */
4203 fra
.me
.REG
[0] = CALL_syntax_base___AType___get_unchecked_stype(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
4204 /* ./syntax//syntax_base.nit:678 */
4205 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4206 if (UNTAG_Bool(REGB0
)) {
4208 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4209 if (UNTAG_Bool(REGB1
)) {
4210 REGB1
= TAG_Bool(false);
4213 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
4217 if (UNTAG_Bool(REGB0
)) {
4218 closctx
->REG
[2] = NIT_NULL
;
4219 closctx
->has_broke
= 1;
4222 /* ./syntax//syntax_base.nit:679 */
4223 CALL_abstract_collection___SimpleCollection___add(closctx
->REG
[3])(closctx
->REG
[3], fra
.me
.REG
[0]);
4225 stack_frame_head
= fra
.me
.prev
;
4228 val_t
syntax_base___AType___get_stype(val_t p0
, val_t p1
){
4229 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
4233 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4234 fra
.me
.file
= LOCATE_syntax_base
;
4236 fra
.me
.meth
= LOCATE_syntax_base___AType___get_stype
;
4237 fra
.me
.has_broke
= 0;
4238 fra
.me
.REG_size
= 4;
4239 fra
.me
.REG
[0] = NIT_NULL
;
4240 fra
.me
.REG
[1] = NIT_NULL
;
4241 fra
.me
.REG
[2] = NIT_NULL
;
4242 fra
.me
.REG
[3] = NIT_NULL
;
4245 /* ./syntax//syntax_base.nit:694 */
4246 fra
.me
.REG
[2] = CALL_syntax_base___AType___get_unchecked_stype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4247 /* ./syntax//syntax_base.nit:695 */
4248 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4249 if (UNTAG_Bool(REGB0
)) {
4251 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4252 if (UNTAG_Bool(REGB1
)) {
4253 REGB1
= TAG_Bool(false);
4256 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
4260 if (UNTAG_Bool(REGB0
)) {
4261 fra
.me
.REG
[3] = NIT_NULL
;
4264 /* ./syntax//syntax_base.nit:696 */
4265 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4266 if (UNTAG_Bool(REGB0
)) {
4267 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 696);
4269 REGB0
= CALL_static_type___MMType___is_valid(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4270 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
4271 if (UNTAG_Bool(REGB0
)) {
4272 fra
.me
.REG
[3] = NIT_NULL
;
4275 /* ./syntax//syntax_base.nit:697 */
4276 CALL_syntax_base___AType___check_conform(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4277 /* ./syntax//syntax_base.nit:698 */
4278 fra
.me
.REG
[3] = fra
.me
.REG
[2];
4281 stack_frame_head
= fra
.me
.prev
;
4282 return fra
.me
.REG
[3];
4284 void syntax_base___AType___check_conform(val_t p0
, val_t p1
){
4285 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
4290 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4291 fra
.me
.file
= LOCATE_syntax_base
;
4293 fra
.me
.meth
= LOCATE_syntax_base___AType___check_conform
;
4294 fra
.me
.has_broke
= 0;
4295 fra
.me
.REG_size
= 8;
4296 fra
.me
.REG
[0] = NIT_NULL
;
4297 fra
.me
.REG
[1] = NIT_NULL
;
4298 fra
.me
.REG
[2] = NIT_NULL
;
4299 fra
.me
.REG
[3] = NIT_NULL
;
4300 fra
.me
.REG
[4] = NIT_NULL
;
4301 fra
.me
.REG
[5] = NIT_NULL
;
4302 fra
.me
.REG
[6] = NIT_NULL
;
4303 fra
.me
.REG
[7] = NIT_NULL
;
4306 /* ./syntax//syntax_base.nit:706 */
4307 fra
.me
.REG
[2] = CALL_syntax_base___AType___get_unchecked_stype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4308 /* ./syntax//syntax_base.nit:707 */
4309 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4310 if (UNTAG_Bool(REGB0
)) {
4312 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4313 if (UNTAG_Bool(REGB1
)) {
4314 REGB1
= TAG_Bool(false);
4317 REGB1
= CALL_kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
4321 if (UNTAG_Bool(REGB0
)) {
4324 /* ./syntax//syntax_base.nit:708 */
4325 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
4326 if (UNTAG_Bool(REGB0
)) {
4327 nit_abort("Reciever is null", NULL
, LOCATE_syntax_base
, 708);
4329 fra
.me
.REG
[3] = CALL_static_type___MMType___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4330 /* ./syntax//syntax_base.nit:709 */
4331 fra
.me
.REG
[4] = CALL_parser_nodes___AType___n_types(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4332 REGB0
= CALL_abstract_collection___Collection___length(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4333 /* ./syntax//syntax_base.nit:710 */
4335 /* ./../lib/standard//kernel.nit:214 */
4336 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
4337 /* ./syntax//syntax_base.nit:710 */
4338 if (UNTAG_Bool(REGB1
)) {
4339 /* ./syntax//syntax_base.nit:711 */
4341 /* ./../lib/standard//kernel.nit:332 */
4343 /* ./../lib/standard//kernel.nit:212 */
4344 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
4345 /* ./../lib/standard//kernel.nit:332 */
4346 if (UNTAG_Bool(REGB2
)) {
4347 /* ./syntax//syntax_base.nit:711 */
4349 /* ./syntax//syntax_base.nit:712 */
4350 fra
.me
.REG
[4] = CALL_parser_nodes___AType___n_types(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4351 fra
.me
.REG
[4] = CALL_abstract_collection___MapRead_____bra(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB2
);
4352 /* ./syntax//syntax_base.nit:713 */
4353 fra
.me
.REG
[5] = CALL_syntax_base___AType___get_stype(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[1]);
4354 /* ./syntax//syntax_base.nit:714 */
4355 fra
.me
.REG
[6] = CALL_genericity___MMLocalClass___get_formal(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB2
);
4356 /* ./syntax//syntax_base.nit:715 */
4357 REGB2
= CALL_static_type___MMType___is_valid(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
4358 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
4359 if (UNTAG_Bool(REGB2
)) {
4362 /* ./syntax//syntax_base.nit:716 */
4363 fra
.me
.REG
[6] = CALL_type_formal___MMTypeFormal___bound(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
4364 /* ./syntax//syntax_base.nit:717 */
4365 fra
.me
.REG
[7] = CALL_static_type___MMType___adapt_to(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
4366 fra
.me
.REG
[6] = fra
.me
.REG
[7];
4367 /* ./syntax//syntax_base.nit:718 */
4368 CALL_syntax_base___AbsSyntaxVisitor___check_conform(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4], fra
.me
.REG
[5], fra
.me
.REG
[6]);
4369 /* ./../lib/standard//kernel.nit:334 */
4371 /* ./../lib/standard//kernel.nit:215 */
4372 REGB2
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB2
));
4373 /* ./../lib/standard//kernel.nit:334 */
4376 /* ./../lib/standard//kernel.nit:332 */
4383 stack_frame_head
= fra
.me
.prev
;
4386 val_t
syntax_base___AExpr___is_typed(val_t p0
){
4387 struct {struct stack_frame_t me
;} fra
;
4389 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4390 fra
.me
.file
= LOCATE_syntax_base
;
4392 fra
.me
.meth
= LOCATE_syntax_base___AExpr___is_typed
;
4393 fra
.me
.has_broke
= 0;
4394 fra
.me
.REG_size
= 0;
4395 /* ./syntax//syntax_base.nit:725 */
4396 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 725);
4397 stack_frame_head
= fra
.me
.prev
;
4400 val_t
syntax_base___AExpr___is_statement(val_t p0
){
4401 struct {struct stack_frame_t me
;} fra
;
4403 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4404 fra
.me
.file
= LOCATE_syntax_base
;
4406 fra
.me
.meth
= LOCATE_syntax_base___AExpr___is_statement
;
4407 fra
.me
.has_broke
= 0;
4408 fra
.me
.REG_size
= 0;
4409 /* ./syntax//syntax_base.nit:730 */
4410 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 730);
4411 stack_frame_head
= fra
.me
.prev
;
4414 val_t
syntax_base___AExpr___stype(val_t p0
){
4415 struct {struct stack_frame_t me
;} fra
;
4417 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4418 fra
.me
.file
= LOCATE_syntax_base
;
4420 fra
.me
.meth
= LOCATE_syntax_base___AExpr___stype
;
4421 fra
.me
.has_broke
= 0;
4422 fra
.me
.REG_size
= 0;
4423 /* ./syntax//syntax_base.nit:734 */
4424 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 734);
4425 stack_frame_head
= fra
.me
.prev
;
4428 val_t
syntax_base___AAbsAbsSendExpr___prop_signature(val_t p0
){
4429 struct {struct stack_frame_t me
;} fra
;
4431 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4432 fra
.me
.file
= LOCATE_syntax_base
;
4434 fra
.me
.meth
= LOCATE_syntax_base___AAbsAbsSendExpr___prop_signature
;
4435 fra
.me
.has_broke
= 0;
4436 fra
.me
.REG_size
= 0;
4437 /* ./syntax//syntax_base.nit:741 */
4438 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 741);
4439 stack_frame_head
= fra
.me
.prev
;
4442 val_t
syntax_base___AAbsAbsSendExpr___raw_arguments(val_t p0
){
4443 struct {struct stack_frame_t me
;} fra
;
4445 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4446 fra
.me
.file
= LOCATE_syntax_base
;
4448 fra
.me
.meth
= LOCATE_syntax_base___AAbsAbsSendExpr___raw_arguments
;
4449 fra
.me
.has_broke
= 0;
4450 fra
.me
.REG_size
= 0;
4451 /* ./syntax//syntax_base.nit:744 */
4452 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 744);
4453 stack_frame_head
= fra
.me
.prev
;
4456 val_t
syntax_base___AAbsSendExpr___prop(val_t p0
){
4457 struct {struct stack_frame_t me
;} fra
;
4459 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4460 fra
.me
.file
= LOCATE_syntax_base
;
4462 fra
.me
.meth
= LOCATE_syntax_base___AAbsSendExpr___prop
;
4463 fra
.me
.has_broke
= 0;
4464 fra
.me
.REG_size
= 0;
4465 /* ./syntax//syntax_base.nit:750 */
4466 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 750);
4467 stack_frame_head
= fra
.me
.prev
;
4470 val_t
syntax_base___AAbsSendExpr___return_type(val_t p0
){
4471 struct {struct stack_frame_t me
;} fra
;
4473 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4474 fra
.me
.file
= LOCATE_syntax_base
;
4476 fra
.me
.meth
= LOCATE_syntax_base___AAbsSendExpr___return_type
;
4477 fra
.me
.has_broke
= 0;
4478 fra
.me
.REG_size
= 0;
4479 /* ./syntax//syntax_base.nit:753 */
4480 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 753);
4481 stack_frame_head
= fra
.me
.prev
;
4484 val_t
syntax_base___ASuperExpr___init_in_superclass(val_t p0
){
4485 struct {struct stack_frame_t me
;} fra
;
4487 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4488 fra
.me
.file
= LOCATE_syntax_base
;
4490 fra
.me
.meth
= LOCATE_syntax_base___ASuperExpr___init_in_superclass
;
4491 fra
.me
.has_broke
= 0;
4492 fra
.me
.REG_size
= 0;
4493 /* ./syntax//syntax_base.nit:763 */
4494 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 763);
4495 stack_frame_head
= fra
.me
.prev
;
4498 val_t
syntax_base___ASendExpr___closure_defs(val_t p0
){
4499 struct {struct stack_frame_t me
;} fra
;
4501 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4502 fra
.me
.file
= LOCATE_syntax_base
;
4504 fra
.me
.meth
= LOCATE_syntax_base___ASendExpr___closure_defs
;
4505 fra
.me
.has_broke
= 0;
4506 fra
.me
.REG_size
= 0;
4507 /* ./syntax//syntax_base.nit:772 */
4508 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 772);
4509 stack_frame_head
= fra
.me
.prev
;
4512 val_t
syntax_base___AReassignFormExpr___assign_method(val_t p0
){
4513 struct {struct stack_frame_t me
;} fra
;
4515 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4516 fra
.me
.file
= LOCATE_syntax_base
;
4518 fra
.me
.meth
= LOCATE_syntax_base___AReassignFormExpr___assign_method
;
4519 fra
.me
.has_broke
= 0;
4520 fra
.me
.REG_size
= 0;
4521 /* ./syntax//syntax_base.nit:777 */
4522 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 777);
4523 stack_frame_head
= fra
.me
.prev
;
4526 val_t
syntax_base___ASendReassignExpr___read_prop(val_t p0
){
4527 struct {struct stack_frame_t me
;} fra
;
4529 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4530 fra
.me
.file
= LOCATE_syntax_base
;
4532 fra
.me
.meth
= LOCATE_syntax_base___ASendReassignExpr___read_prop
;
4533 fra
.me
.has_broke
= 0;
4534 fra
.me
.REG_size
= 0;
4535 /* ./syntax//syntax_base.nit:784 */
4536 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 784);
4537 stack_frame_head
= fra
.me
.prev
;
4540 val_t
syntax_base___AAttrFormExpr___prop(val_t p0
){
4541 struct {struct stack_frame_t me
;} fra
;
4543 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4544 fra
.me
.file
= LOCATE_syntax_base
;
4546 fra
.me
.meth
= LOCATE_syntax_base___AAttrFormExpr___prop
;
4547 fra
.me
.has_broke
= 0;
4548 fra
.me
.REG_size
= 0;
4549 /* ./syntax//syntax_base.nit:798 */
4550 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 798);
4551 stack_frame_head
= fra
.me
.prev
;
4554 val_t
syntax_base___AAttrFormExpr___attr_type(val_t p0
){
4555 struct {struct stack_frame_t me
;} fra
;
4557 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4558 fra
.me
.file
= LOCATE_syntax_base
;
4560 fra
.me
.meth
= LOCATE_syntax_base___AAttrFormExpr___attr_type
;
4561 fra
.me
.has_broke
= 0;
4562 fra
.me
.REG_size
= 0;
4563 /* ./syntax//syntax_base.nit:801 */
4564 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 801);
4565 stack_frame_head
= fra
.me
.prev
;
4568 val_t
syntax_base___ASuperstringExpr___atype(val_t p0
){
4569 struct {struct stack_frame_t me
;} fra
;
4571 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4572 fra
.me
.file
= LOCATE_syntax_base
;
4574 fra
.me
.meth
= LOCATE_syntax_base___ASuperstringExpr___atype
;
4575 fra
.me
.has_broke
= 0;
4576 fra
.me
.REG_size
= 0;
4577 /* ./syntax//syntax_base.nit:806 */
4578 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 806);
4579 stack_frame_head
= fra
.me
.prev
;
4582 val_t
syntax_base___AVardeclExpr___variable(val_t p0
){
4583 struct {struct stack_frame_t me
;} fra
;
4585 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4586 fra
.me
.file
= LOCATE_syntax_base
;
4588 fra
.me
.meth
= LOCATE_syntax_base___AVardeclExpr___variable
;
4589 fra
.me
.has_broke
= 0;
4590 fra
.me
.REG_size
= 0;
4591 /* ./syntax//syntax_base.nit:810 */
4592 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 810);
4593 stack_frame_head
= fra
.me
.prev
;
4596 val_t
syntax_base___AForExpr___variable(val_t p0
){
4597 struct {struct stack_frame_t me
;} fra
;
4599 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4600 fra
.me
.file
= LOCATE_syntax_base
;
4602 fra
.me
.meth
= LOCATE_syntax_base___AForExpr___variable
;
4603 fra
.me
.has_broke
= 0;
4604 fra
.me
.REG_size
= 0;
4605 /* ./syntax//syntax_base.nit:816 */
4606 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 816);
4607 stack_frame_head
= fra
.me
.prev
;
4610 val_t
syntax_base___ASelfExpr___variable(val_t p0
){
4611 struct {struct stack_frame_t me
;} fra
;
4613 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4614 fra
.me
.file
= LOCATE_syntax_base
;
4616 fra
.me
.meth
= LOCATE_syntax_base___ASelfExpr___variable
;
4617 fra
.me
.has_broke
= 0;
4618 fra
.me
.REG_size
= 0;
4619 /* ./syntax//syntax_base.nit:821 */
4620 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 821);
4621 stack_frame_head
= fra
.me
.prev
;
4624 val_t
syntax_base___AVarFormExpr___variable(val_t p0
){
4625 struct {struct stack_frame_t me
;} fra
;
4627 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4628 fra
.me
.file
= LOCATE_syntax_base
;
4630 fra
.me
.meth
= LOCATE_syntax_base___AVarFormExpr___variable
;
4631 fra
.me
.has_broke
= 0;
4632 fra
.me
.REG_size
= 0;
4633 /* ./syntax//syntax_base.nit:826 */
4634 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 826);
4635 stack_frame_head
= fra
.me
.prev
;
4638 val_t
syntax_base___AClosureCallExpr___variable(val_t p0
){
4639 struct {struct stack_frame_t me
;} fra
;
4641 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4642 fra
.me
.file
= LOCATE_syntax_base
;
4644 fra
.me
.meth
= LOCATE_syntax_base___AClosureCallExpr___variable
;
4645 fra
.me
.has_broke
= 0;
4646 fra
.me
.REG_size
= 0;
4647 /* ./syntax//syntax_base.nit:832 */
4648 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 832);
4649 stack_frame_head
= fra
.me
.prev
;
4652 val_t
syntax_base___AClosureDef___closure(val_t p0
){
4653 struct {struct stack_frame_t me
;} fra
;
4655 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4656 fra
.me
.file
= LOCATE_syntax_base
;
4658 fra
.me
.meth
= LOCATE_syntax_base___AClosureDef___closure
;
4659 fra
.me
.has_broke
= 0;
4660 fra
.me
.REG_size
= 0;
4661 /* ./syntax//syntax_base.nit:837 */
4662 nit_abort("Deferred method called", NULL
, LOCATE_syntax_base
, 837);
4663 stack_frame_head
= fra
.me
.prev
;
4666 val_t
syntax_base___AClosureDef___variables(val_t p0
){
4667 struct {struct stack_frame_t me
;} fra
;
4669 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4670 fra
.me
.file
= LOCATE_syntax_base
;
4672 fra
.me
.meth
= LOCATE_syntax_base___AClosureDef___variables
;
4673 fra
.me
.has_broke
= 0;
4674 fra
.me
.REG_size
= 1;
4675 fra
.me
.REG
[0] = NIT_NULL
;
4677 /* ./syntax//syntax_base.nit:840 */
4678 fra
.me
.REG
[0] = ATTR_syntax_base___AClosureDef____variables(fra
.me
.REG
[0]);
4679 stack_frame_head
= fra
.me
.prev
;
4680 return fra
.me
.REG
[0];
4682 void syntax_base___AClosureDef___variables__eq(val_t p0
, val_t p1
){
4683 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
4685 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4686 fra
.me
.file
= LOCATE_syntax_base
;
4688 fra
.me
.meth
= LOCATE_syntax_base___AClosureDef___variables__eq
;
4689 fra
.me
.has_broke
= 0;
4690 fra
.me
.REG_size
= 2;
4691 fra
.me
.REG
[0] = NIT_NULL
;
4692 fra
.me
.REG
[1] = NIT_NULL
;
4695 /* ./syntax//syntax_base.nit:840 */
4696 ATTR_syntax_base___AClosureDef____variables(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
4697 stack_frame_head
= fra
.me
.prev
;