1 /* This C file is generated by NIT to compile module syntax___mmbuilder. */
2 #include "syntax___mmbuilder._sep.h"
3 void syntax___mmbuilder___ToolContext___handle_property_conflict(val_t p0
, val_t p1
, val_t p2
){
4 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
9 static val_t once_value_2
; /* Once value */
10 static val_t once_value_3
; /* Once value */
11 static val_t once_value_4
; /* Once value */
12 static val_t once_value_5
; /* Once value */
13 static val_t once_value_6
; /* Once value */
14 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
15 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
17 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ToolContext___handle_property_conflict
;
20 fra
.me
.REG
[0] = NIT_NULL
;
21 fra
.me
.REG
[1] = NIT_NULL
;
22 fra
.me
.REG
[2] = NIT_NULL
;
23 fra
.me
.REG
[3] = NIT_NULL
;
24 fra
.me
.REG
[4] = NIT_NULL
;
25 fra
.me
.REG
[5] = NIT_NULL
;
26 fra
.me
.REG
[6] = NIT_NULL
;
27 fra
.me
.REG
[7] = NIT_NULL
;
31 /* ./syntax//mmbuilder.nit:27 */
32 fra
.me
.REG
[3] = NIT_NULL
;
33 /* ./syntax//mmbuilder.nit:28 */
34 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[1], COLOR_syntax___syntax_base___MMSrcLocalClass
, ID_syntax___syntax_base___MMSrcLocalClass
)) /*cast MMSrcLocalClass*/;
35 if (UNTAG_Bool(REGB0
)) {
36 /* ./syntax//mmbuilder.nit:29 */
37 fra
.me
.REG
[4] = CALL_syntax___syntax_base___MMSrcLocalClass___node(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
38 /* ./syntax//mmbuilder.nit:30 */
39 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
40 if (UNTAG_Bool(REGB0
)) {
42 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
43 if (UNTAG_Bool(REGB1
)) {
44 REGB1
= TAG_Bool(false);
47 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
51 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
52 if (UNTAG_Bool(REGB0
)) {
53 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
54 if (UNTAG_Bool(REGB0
)) {
55 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 30);
57 CALL_parser___parser_nodes___ANode___location(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
60 /* ./syntax//mmbuilder.nit:33 */
61 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___init();
62 /* ./../lib/standard//collection//array.nit:229 */
63 fra
.me
.REG
[5] = fra
.me
.REG
[2];
64 /* ./../lib/standard//collection//array.nit:232 */
66 /* ./../lib/standard//collection//array.nit:233 */
67 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
68 if (UNTAG_Bool(REGB1
)) {
70 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
72 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
73 /* ./../lib/standard//collection//array.nit:234 */
74 fra
.me
.REG
[6] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[5]);
75 /* ./../lib/standard//collection//array.nit:235 */
77 /* ./../lib/standard//collection//array.nit:23 */
78 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
79 if (UNTAG_Bool(REGB1
)) {
81 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
83 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
84 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
85 if (UNTAG_Bool(REGB2
)) {
87 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
89 /* ./../lib/standard//kernel.nit:215 */
90 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
91 /* ./../lib/standard//collection//array.nit:235 */
92 if (UNTAG_Bool(REGB1
)) {
93 /* ./../lib/standard//collection//array.nit:236 */
94 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
95 if (UNTAG_Bool(REGB1
)) {
96 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
98 /* ./../lib/standard//collection//array.nit:652 */
99 fra
.me
.REG
[7] = ((Nit_NativeArray
)fra
.me
.REG
[6])->val
[UNTAG_Int(REGB0
)];
100 /* ./syntax//mmbuilder.nit:35 */
101 fra
.me
.REG
[7] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
102 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[7]);
103 /* ./../lib/standard//collection//array.nit:237 */
105 /* ./../lib/standard//kernel.nit:218 */
106 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
107 /* ./../lib/standard//collection//array.nit:237 */
110 /* ./../lib/standard//collection//array.nit:235 */
115 /* ./syntax//mmbuilder.nit:37 */
117 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
119 fra
.me
.REG
[5] = BOX_NativeString("Property inheritance conflict in class ");
121 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
122 once_value_2
= fra
.me
.REG
[5];
123 register_static_object(&once_value_2
);
124 } else fra
.me
.REG
[5] = once_value_2
;
125 fra
.me
.REG
[5] = fra
.me
.REG
[5];
126 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
127 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
128 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[1]);
130 fra
.me
.REG
[1] = BOX_NativeString(" for `");
132 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
133 once_value_3
= fra
.me
.REG
[1];
134 register_static_object(&once_value_3
);
135 } else fra
.me
.REG
[1] = once_value_3
;
136 fra
.me
.REG
[1] = fra
.me
.REG
[1];
137 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[1]);
138 fra
.me
.REG
[2] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
139 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
140 if (UNTAG_Bool(REGB0
)) {
141 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 37);
143 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalProperty___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
144 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
145 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
147 fra
.me
.REG
[2] = BOX_NativeString("': conflicting properties are defined in ");
149 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
150 once_value_4
= fra
.me
.REG
[2];
151 register_static_object(&once_value_4
);
152 } else fra
.me
.REG
[2] = once_value_4
;
153 fra
.me
.REG
[2] = fra
.me
.REG
[2];
154 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
156 fra
.me
.REG
[2] = BOX_NativeString(", ");
158 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
159 once_value_5
= fra
.me
.REG
[2];
160 register_static_object(&once_value_5
);
161 } else fra
.me
.REG
[2] = once_value_5
;
162 fra
.me
.REG
[2] = fra
.me
.REG
[2];
163 fra
.me
.REG
[2] = CALL_standard___string___Collection___join(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
164 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
166 fra
.me
.REG
[2] = BOX_NativeString("");
168 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
169 once_value_6
= fra
.me
.REG
[2];
170 register_static_object(&once_value_6
);
171 } else fra
.me
.REG
[2] = once_value_6
;
172 fra
.me
.REG
[2] = fra
.me
.REG
[2];
173 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[2]);
174 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
175 CALL_mmloader___ToolContext___fatal_error(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3], fra
.me
.REG
[6]);
176 stack_frame_head
= fra
.me
.prev
;
179 val_t
syntax___mmbuilder___CSHSorter___compare(val_t p0
, val_t p1
, val_t p2
){
180 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
184 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
185 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
187 fra
.me
.meth
= LOCATE_syntax___mmbuilder___CSHSorter___compare
;
188 fra
.me
.has_broke
= 0;
190 fra
.me
.REG
[0] = NIT_NULL
;
191 fra
.me
.REG
[1] = NIT_NULL
;
192 fra
.me
.REG
[2] = NIT_NULL
;
196 /* ./syntax//mmbuilder.nit:46 */
197 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMLocalClass___cshe(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
198 REGB0
= CALL_metamodel___partial_order___PartialOrderElement___rank(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
199 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalClass___cshe(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
200 REGB1
= CALL_metamodel___partial_order___PartialOrderElement___rank(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
201 REGB1
= CALL_standard___kernel___Comparable_____leqg(REGB0
)(REGB0
, REGB1
);
204 stack_frame_head
= fra
.me
.prev
;
207 void syntax___mmbuilder___CSHSorter___init(val_t p0
, int* init_table
){
208 int itpos0
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_syntax___mmbuilder___CSHSorter
].i
;
209 struct {struct stack_frame_t me
;} fra
;
211 if (init_table
[itpos0
]) return;
212 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
213 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
215 fra
.me
.meth
= LOCATE_syntax___mmbuilder___CSHSorter___init
;
216 fra
.me
.has_broke
= 0;
218 fra
.me
.REG
[0] = NIT_NULL
;
220 /* ./syntax//mmbuilder.nit:49 */
221 CALL_standard___collection___sorter___AbstractSorter___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
222 stack_frame_head
= fra
.me
.prev
;
223 init_table
[itpos0
] = 1;
226 void syntax___mmbuilder___MMSrcModule___do_mmbuilder(val_t p0
, val_t p1
){
227 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
232 static val_t once_value_3
; /* Once value */
233 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
234 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
236 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcModule___do_mmbuilder
;
237 fra
.me
.has_broke
= 0;
239 fra
.me
.REG
[0] = NIT_NULL
;
240 fra
.me
.REG
[1] = NIT_NULL
;
241 fra
.me
.REG
[2] = NIT_NULL
;
242 fra
.me
.REG
[3] = NIT_NULL
;
243 fra
.me
.REG
[4] = NIT_NULL
;
244 fra
.me
.REG
[5] = NIT_NULL
;
245 fra
.me
.REG
[6] = NIT_NULL
;
246 fra
.me
.REG
[7] = NIT_NULL
;
249 /* ./syntax//mmbuilder.nit:58 */
250 CALL_metamodel___inheritance___MMModule___import_global_classes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
251 /* ./syntax//mmbuilder.nit:61 */
252 fra
.me
.REG
[2] = NEW_ClassBuilderVisitor_syntax___mmbuilder___ClassBuilderVisitor___init(fra
.me
.REG
[1], fra
.me
.REG
[0]);
253 /* ./syntax//mmbuilder.nit:62 */
254 fra
.me
.REG
[3] = CALL_syntax___syntax_base___MMSrcModule___node(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
255 CALL_parser___parser_prod___Visitor___enter_visit(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
256 /* ./syntax//mmbuilder.nit:63 */
257 CALL_mmloader___ToolContext___check_errors(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
258 /* ./syntax//mmbuilder.nit:65 */
259 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMModule___mhe(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
260 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
261 if (UNTAG_Bool(REGB0
)) {
262 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 65);
264 fra
.me
.REG
[3] = CALL_metamodel___partial_order___PartialOrderElement___direct_greaters(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
265 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
266 if (UNTAG_Bool(REGB0
)) {
267 /* ./syntax//mmbuilder.nit:66 */
268 CALL_syntax___mmbuilder___MMSrcModule___process_default_classes(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
270 /* ./syntax//mmbuilder.nit:70 */
271 CALL_metamodel___inheritance___MMModule___import_local_classes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
272 /* ./syntax//mmbuilder.nit:73 */
273 fra
.me
.REG
[3] = NEW_ClassSpecializationBuilderVisitor_syntax___mmbuilder___ClassSpecializationBuilderVisitor___init(fra
.me
.REG
[1], fra
.me
.REG
[0]);
274 /* ./syntax//mmbuilder.nit:74 */
275 fra
.me
.REG
[2] = CALL_syntax___syntax_base___MMSrcModule___node(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
276 CALL_parser___parser_prod___Visitor___enter_visit(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
277 /* ./syntax//mmbuilder.nit:75 */
278 CALL_mmloader___ToolContext___check_errors(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
279 /* ./syntax//mmbuilder.nit:78 */
280 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMModule___local_classes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
281 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[2])(fra
.me
.REG
[2], (&(fra
.me
)), ((fun_t
)OC_syntax___mmbuilder___MMSrcModule___do_mmbuilder_1
));
282 /* ./syntax//mmbuilder.nit:84 */
283 CALL_mmloader___ToolContext___check_errors(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
284 /* ./syntax//mmbuilder.nit:89 */
285 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMModule___class_specialization_hierarchy(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
286 fra
.me
.REG
[2] = CALL_standard___collection___array___Collection___to_a(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
287 /* ./syntax//mmbuilder.nit:92 */
289 fra
.me
.REG
[3] = NEW_CSHSorter_syntax___mmbuilder___CSHSorter___init();
290 once_value_3
= fra
.me
.REG
[3];
291 register_static_object(&once_value_3
);
292 } else fra
.me
.REG
[3] = once_value_3
;
293 fra
.me
.REG
[3] = fra
.me
.REG
[3];
294 /* ./syntax//mmbuilder.nit:93 */
295 CALL_standard___collection___sorter___AbstractSorter___sort(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
296 /* ./syntax//mmbuilder.nit:96 */
297 fra
.me
.REG
[3] = NEW_ClassAncestorBuilder_syntax___mmbuilder___ClassAncestorBuilder___init(fra
.me
.REG
[1], fra
.me
.REG
[0]);
298 /* ./../lib/standard//collection//array.nit:229 */
299 fra
.me
.REG
[4] = fra
.me
.REG
[2];
300 /* ./../lib/standard//collection//array.nit:232 */
302 /* ./../lib/standard//collection//array.nit:233 */
303 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
304 if (UNTAG_Bool(REGB1
)) {
306 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
308 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
309 /* ./../lib/standard//collection//array.nit:234 */
310 fra
.me
.REG
[5] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[4]);
311 /* ./../lib/standard//collection//array.nit:235 */
313 /* ./../lib/standard//collection//array.nit:23 */
314 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
315 if (UNTAG_Bool(REGB1
)) {
317 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
319 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
320 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
321 if (UNTAG_Bool(REGB2
)) {
323 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
325 /* ./../lib/standard//kernel.nit:215 */
326 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
327 /* ./../lib/standard//collection//array.nit:235 */
328 if (UNTAG_Bool(REGB1
)) {
329 /* ./../lib/standard//collection//array.nit:236 */
330 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
331 if (UNTAG_Bool(REGB1
)) {
332 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
334 /* ./../lib/standard//collection//array.nit:652 */
335 fra
.me
.REG
[6] = ((Nit_NativeArray
)fra
.me
.REG
[5])->val
[UNTAG_Int(REGB0
)];
336 /* ./syntax//mmbuilder.nit:98 */
337 CALL_syntax___mmbuilder___MMLocalClass___accept_class_visitor(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
338 /* ./syntax//mmbuilder.nit:99 */
339 CALL_mmloader___ToolContext___check_errors(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
340 /* ./syntax//mmbuilder.nit:100 */
341 CALL_metamodel___inheritance___MMLocalClass___compute_ancestors(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
342 /* ./../lib/standard//collection//array.nit:237 */
344 /* ./../lib/standard//kernel.nit:218 */
345 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
346 /* ./../lib/standard//collection//array.nit:237 */
349 /* ./../lib/standard//collection//array.nit:235 */
354 /* ./syntax//mmbuilder.nit:104 */
355 fra
.me
.REG
[3] = NEW_ClassVerifierVisitor_syntax___mmbuilder___ClassVerifierVisitor___init(fra
.me
.REG
[1], fra
.me
.REG
[0]);
356 /* ./../lib/standard//collection//array.nit:229 */
357 fra
.me
.REG
[5] = fra
.me
.REG
[2];
358 /* ./../lib/standard//collection//array.nit:232 */
360 /* ./../lib/standard//collection//array.nit:233 */
361 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
362 if (UNTAG_Bool(REGB1
)) {
364 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
366 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
367 /* ./../lib/standard//collection//array.nit:234 */
368 fra
.me
.REG
[4] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[5]);
369 /* ./../lib/standard//collection//array.nit:235 */
371 /* ./../lib/standard//collection//array.nit:23 */
372 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
373 if (UNTAG_Bool(REGB1
)) {
375 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
377 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
378 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
379 if (UNTAG_Bool(REGB2
)) {
381 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
383 /* ./../lib/standard//kernel.nit:215 */
384 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
385 /* ./../lib/standard//collection//array.nit:235 */
386 if (UNTAG_Bool(REGB1
)) {
387 /* ./../lib/standard//collection//array.nit:236 */
388 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
389 if (UNTAG_Bool(REGB1
)) {
390 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
392 /* ./../lib/standard//collection//array.nit:652 */
393 fra
.me
.REG
[6] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB0
)];
394 /* ./syntax//mmbuilder.nit:106 */
395 CALL_syntax___mmbuilder___MMLocalClass___accept_class_visitor(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
396 /* ./../lib/standard//collection//array.nit:237 */
398 /* ./../lib/standard//kernel.nit:218 */
399 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
400 /* ./../lib/standard//collection//array.nit:237 */
403 /* ./../lib/standard//collection//array.nit:235 */
408 /* ./syntax//mmbuilder.nit:108 */
409 CALL_mmloader___ToolContext___check_errors(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
410 /* ./syntax//mmbuilder.nit:111 */
411 fra
.me
.REG
[3] = NEW_PropertyBuilderVisitor_syntax___mmbuilder___PropertyBuilderVisitor___init(fra
.me
.REG
[1], fra
.me
.REG
[0]);
412 /* ./../lib/standard//collection//array.nit:229 */
413 fra
.me
.REG
[4] = fra
.me
.REG
[2];
414 /* ./../lib/standard//collection//array.nit:232 */
416 /* ./../lib/standard//collection//array.nit:233 */
417 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
418 if (UNTAG_Bool(REGB1
)) {
420 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
422 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
423 /* ./../lib/standard//collection//array.nit:234 */
424 fra
.me
.REG
[5] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[4]);
425 /* ./../lib/standard//collection//array.nit:235 */
427 /* ./../lib/standard//collection//array.nit:23 */
428 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
429 if (UNTAG_Bool(REGB1
)) {
431 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
433 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
434 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
435 if (UNTAG_Bool(REGB2
)) {
437 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
439 /* ./../lib/standard//kernel.nit:215 */
440 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
441 /* ./../lib/standard//collection//array.nit:235 */
442 if (UNTAG_Bool(REGB1
)) {
443 /* ./../lib/standard//collection//array.nit:236 */
444 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
445 if (UNTAG_Bool(REGB1
)) {
446 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
448 /* ./../lib/standard//collection//array.nit:652 */
449 fra
.me
.REG
[6] = ((Nit_NativeArray
)fra
.me
.REG
[5])->val
[UNTAG_Int(REGB0
)];
450 /* ./syntax//mmbuilder.nit:114 */
451 CALL_syntax___mmbuilder___MMLocalClass___accept_class_visitor(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
452 /* ./syntax//mmbuilder.nit:117 */
453 REGB1
= TAG_Bool(VAL_ISA(fra
.me
.REG
[6], COLOR_syntax___syntax_base___MMSrcLocalClass
, ID_syntax___syntax_base___MMSrcLocalClass
)) /*cast MMSrcLocalClass*/;
454 if (UNTAG_Bool(REGB1
)) {
455 fra
.me
.REG
[7] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
456 fra
.me
.REG
[7] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
457 REGB1
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[7],fra
.me
.REG
[6]));
458 if (UNTAG_Bool(REGB1
)) {
460 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[6]);
464 REGB2
= TAG_Bool(false);
467 if (UNTAG_Bool(REGB1
)) {
468 fra
.me
.REG
[7] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
469 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
470 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
472 REGB2
= TAG_Bool(false);
475 if (UNTAG_Bool(REGB1
)) {
476 fra
.me
.REG
[7] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
477 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
478 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
480 REGB2
= TAG_Bool(false);
483 if (UNTAG_Bool(REGB1
)) {
484 /* ./syntax//mmbuilder.nit:118 */
485 CALL_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3]);
487 /* ./../lib/standard//collection//array.nit:237 */
489 /* ./../lib/standard//kernel.nit:218 */
490 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
491 /* ./../lib/standard//collection//array.nit:237 */
494 /* ./../lib/standard//collection//array.nit:235 */
499 /* ./syntax//mmbuilder.nit:123 */
500 CALL_mmloader___ToolContext___check_errors(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
501 /* ./syntax//mmbuilder.nit:126 */
502 fra
.me
.REG
[0] = NEW_PropertyVerifierVisitor_syntax___mmbuilder___PropertyVerifierVisitor___init(fra
.me
.REG
[1], fra
.me
.REG
[0]);
503 /* ./../lib/standard//collection//array.nit:232 */
505 /* ./../lib/standard//collection//array.nit:233 */
506 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
507 if (UNTAG_Bool(REGB1
)) {
509 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
511 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
512 /* ./../lib/standard//collection//array.nit:234 */
513 fra
.me
.REG
[3] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[2]);
514 /* ./../lib/standard//collection//array.nit:235 */
516 /* ./../lib/standard//collection//array.nit:23 */
517 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2])!=NIT_NULL
);
518 if (UNTAG_Bool(REGB1
)) {
520 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
522 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[2]);
523 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
524 if (UNTAG_Bool(REGB2
)) {
526 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
528 /* ./../lib/standard//kernel.nit:215 */
529 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
530 /* ./../lib/standard//collection//array.nit:235 */
531 if (UNTAG_Bool(REGB1
)) {
532 /* ./../lib/standard//collection//array.nit:236 */
533 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
534 if (UNTAG_Bool(REGB1
)) {
535 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
537 /* ./../lib/standard//collection//array.nit:652 */
538 fra
.me
.REG
[5] = ((Nit_NativeArray
)fra
.me
.REG
[3])->val
[UNTAG_Int(REGB0
)];
539 /* ./syntax//mmbuilder.nit:128 */
540 CALL_syntax___mmbuilder___MMLocalClass___accept_properties_visitor(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[0]);
541 /* ./../lib/standard//collection//array.nit:237 */
543 /* ./../lib/standard//kernel.nit:218 */
544 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
545 /* ./../lib/standard//collection//array.nit:237 */
548 /* ./../lib/standard//collection//array.nit:235 */
553 /* ./syntax//mmbuilder.nit:131 */
554 CALL_mmloader___ToolContext___check_errors(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
555 stack_frame_head
= fra
.me
.prev
;
558 void OC_syntax___mmbuilder___MMSrcModule___do_mmbuilder_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
559 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
565 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
566 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
568 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcModule___do_mmbuilder
;
569 fra
.me
.has_broke
= 0;
571 fra
.me
.REG
[0] = NIT_NULL
;
572 fra
.me
.REG
[1] = NIT_NULL
;
573 fra
.me
.closure_ctx
= closctx_param
;
574 fra
.me
.closure_funs
= CREG
;
577 /* ./syntax//mmbuilder.nit:79 */
578 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
579 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
580 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMLocalClass___mmmodule(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
581 REGB0
= CALL_metamodel___abstractmetamodel___MMModule___visibility_for(closctx
->REG
[0])(closctx
->REG
[0], fra
.me
.REG
[1]);
582 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
583 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___visibility_level(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
584 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
585 if (UNTAG_Bool(REGB2
)) {
587 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
589 /* ./../lib/standard//kernel.nit:215 */
590 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
591 /* ./syntax//mmbuilder.nit:79 */
592 if (UNTAG_Bool(REGB1
)) {
593 /* ./syntax//mmbuilder.nit:80 */
596 /* ./syntax//mmbuilder.nit:82 */
597 CALL_metamodel___inheritance___MMLocalClass___compute_super_classes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
599 stack_frame_head
= fra
.me
.prev
;
602 void syntax___mmbuilder___MMSrcModule___process_default_classes(val_t p0
, val_t p1
){
603 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
606 static val_t once_value_1
; /* Once value */
607 static val_t once_value_2
; /* Once value */
608 static val_t once_value_3
; /* Once value */
609 static val_t once_value_4
; /* Once value */
610 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
611 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
613 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcModule___process_default_classes
;
614 fra
.me
.has_broke
= 0;
616 fra
.me
.REG
[0] = NIT_NULL
;
617 fra
.me
.REG
[1] = NIT_NULL
;
618 fra
.me
.REG
[2] = NIT_NULL
;
619 fra
.me
.REG
[3] = NIT_NULL
;
622 /* ./syntax//mmbuilder.nit:137 */
625 fra
.me
.REG
[1] = BOX_NativeString("Object");
627 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
628 once_value_2
= fra
.me
.REG
[1];
629 register_static_object(&once_value_2
);
630 } else fra
.me
.REG
[1] = once_value_2
;
631 fra
.me
.REG
[1] = fra
.me
.REG
[1];
632 fra
.me
.REG
[1] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
633 once_value_1
= fra
.me
.REG
[1];
634 register_static_object(&once_value_1
);
635 } else fra
.me
.REG
[1] = once_value_1
;
636 fra
.me
.REG
[1] = fra
.me
.REG
[1];
637 /* ./syntax//mmbuilder.nit:138 */
638 REGB0
= CALL_metamodel___abstractmetamodel___MMModule___has_global_class_named(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
639 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
640 if (UNTAG_Bool(REGB0
)) {
641 /* ./syntax//mmbuilder.nit:139 */
643 fra
.me
.REG
[2] = NEW_MMSrcLocalClass_syntax___syntax_base___MMSrcLocalClass___init(fra
.me
.REG
[0], fra
.me
.REG
[1], NIT_NULL
, REGB0
);
644 /* ./syntax//mmbuilder.nit:140 */
645 CALL_metamodel___abstractmetamodel___MMLocalClass___new_global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
646 /* ./syntax//mmbuilder.nit:141 */
647 fra
.me
.REG
[3] = CALL_syntax___syntax_base___MMSrcModule___src_local_classes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
648 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1], fra
.me
.REG
[2]);
650 /* ./syntax//mmbuilder.nit:143 */
653 fra
.me
.REG
[2] = BOX_NativeString("Bool");
655 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB0
);
656 once_value_4
= fra
.me
.REG
[2];
657 register_static_object(&once_value_4
);
658 } else fra
.me
.REG
[2] = once_value_4
;
659 fra
.me
.REG
[2] = fra
.me
.REG
[2];
660 fra
.me
.REG
[2] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
661 once_value_3
= fra
.me
.REG
[2];
662 register_static_object(&once_value_3
);
663 } else fra
.me
.REG
[2] = once_value_3
;
664 fra
.me
.REG
[2] = fra
.me
.REG
[2];
665 fra
.me
.REG
[1] = fra
.me
.REG
[2];
666 /* ./syntax//mmbuilder.nit:144 */
667 REGB0
= CALL_metamodel___abstractmetamodel___MMModule___has_global_class_named(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
668 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
669 if (UNTAG_Bool(REGB0
)) {
670 /* ./syntax//mmbuilder.nit:145 */
672 fra
.me
.REG
[2] = NEW_MMSrcLocalClass_syntax___syntax_base___MMSrcLocalClass___init(fra
.me
.REG
[0], fra
.me
.REG
[1], NIT_NULL
, REGB0
);
673 /* ./syntax//mmbuilder.nit:146 */
674 CALL_metamodel___abstractmetamodel___MMLocalClass___new_global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
675 /* ./syntax//mmbuilder.nit:147 */
676 fra
.me
.REG
[0] = CALL_syntax___syntax_base___MMSrcModule___src_local_classes(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
677 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
679 stack_frame_head
= fra
.me
.prev
;
682 void syntax___mmbuilder___MMLocalClass___accept_class_visitor(val_t p0
, val_t p1
){
683 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
685 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
686 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
688 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMLocalClass___accept_class_visitor
;
689 fra
.me
.has_broke
= 0;
691 fra
.me
.REG
[0] = NIT_NULL
;
692 fra
.me
.REG
[1] = NIT_NULL
;
695 stack_frame_head
= fra
.me
.prev
;
698 void syntax___mmbuilder___MMLocalClass___accept_properties_visitor(val_t p0
, val_t p1
){
699 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
701 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
702 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
704 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMLocalClass___accept_properties_visitor
;
705 fra
.me
.has_broke
= 0;
707 fra
.me
.REG
[0] = NIT_NULL
;
708 fra
.me
.REG
[1] = NIT_NULL
;
711 stack_frame_head
= fra
.me
.prev
;
714 void syntax___mmbuilder___MMSrcLocalClass___accept_class_visitor(val_t p0
, val_t p1
){
715 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
719 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
720 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
722 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcLocalClass___accept_class_visitor
;
723 fra
.me
.has_broke
= 0;
725 fra
.me
.REG
[0] = NIT_NULL
;
726 fra
.me
.REG
[1] = NIT_NULL
;
727 fra
.me
.REG
[2] = NIT_NULL
;
730 /* ./syntax//mmbuilder.nit:167 */
731 fra
.me
.REG
[0] = CALL_syntax___syntax_base___MMSrcLocalClass___node(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
732 /* ./syntax//mmbuilder.nit:168 */
734 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
735 if (UNTAG_Bool(REGB0
)) {
737 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
738 if (UNTAG_Bool(REGB1
)) {
739 REGB1
= TAG_Bool(false);
742 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
746 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
747 if (UNTAG_Bool(REGB0
)) {
748 /* ./syntax//mmbuilder.nit:169 */
749 CALL_parser___parser_prod___Visitor___enter_visit(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
750 /* ./syntax//mmbuilder.nit:170 */
751 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
752 if (UNTAG_Bool(REGB0
)) {
753 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 170);
755 fra
.me
.REG
[2] = CALL_syntax___syntax_base___AClassdef___next_node(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
756 fra
.me
.REG
[0] = fra
.me
.REG
[2];
758 /* ./syntax//mmbuilder.nit:168 */
763 stack_frame_head
= fra
.me
.prev
;
766 void syntax___mmbuilder___MMSrcLocalClass___accept_properties_visitor(val_t p0
, val_t p1
){
767 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
771 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
772 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
774 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcLocalClass___accept_properties_visitor
;
775 fra
.me
.has_broke
= 0;
777 fra
.me
.REG
[0] = NIT_NULL
;
778 fra
.me
.REG
[1] = NIT_NULL
;
779 fra
.me
.REG
[2] = NIT_NULL
;
780 fra
.me
.REG
[3] = NIT_NULL
;
783 /* ./syntax//mmbuilder.nit:177 */
784 fra
.me
.REG
[2] = CALL_syntax___syntax_base___MMSrcLocalClass___node(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
785 /* ./syntax//mmbuilder.nit:178 */
787 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
788 if (UNTAG_Bool(REGB0
)) {
790 REGB1
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
791 if (UNTAG_Bool(REGB1
)) {
792 REGB1
= TAG_Bool(false);
795 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], NIT_NULL
);
799 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
800 if (UNTAG_Bool(REGB0
)) {
801 /* ./syntax//mmbuilder.nit:179 */
802 CALL_parser___parser_prod___Visitor___enter_visit(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2]);
803 /* ./syntax//mmbuilder.nit:180 */
804 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
805 if (UNTAG_Bool(REGB0
)) {
806 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 180);
808 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AClassdef___next_node(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
809 fra
.me
.REG
[2] = fra
.me
.REG
[3];
811 /* ./syntax//mmbuilder.nit:178 */
816 /* ./syntax//mmbuilder.nit:183 */
817 fra
.me
.REG
[0] = CALL_syntax___syntax_base___MMSrcLocalClass___src_local_properties(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
818 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[0])(fra
.me
.REG
[0], (&(fra
.me
)), ((fun_t
)OC_syntax___mmbuilder___MMSrcLocalClass___accept_properties_visitor_2
));
819 stack_frame_head
= fra
.me
.prev
;
822 void OC_syntax___mmbuilder___MMSrcLocalClass___accept_properties_visitor_2(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
823 struct {struct stack_frame_t me
;} fra
;
826 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
827 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
829 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcLocalClass___accept_properties_visitor
;
830 fra
.me
.has_broke
= 0;
832 fra
.me
.REG
[0] = NIT_NULL
;
833 fra
.me
.closure_ctx
= closctx_param
;
834 fra
.me
.closure_funs
= CREG
;
837 /* ./syntax//mmbuilder.nit:184 */
838 CALL_syntax___mmbuilder___MMLocalProperty___accept_property_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1]);
839 stack_frame_head
= fra
.me
.prev
;
842 void syntax___mmbuilder___MMSrcLocalClass___process_default_constructors(val_t p0
, val_t p1
){
843 struct {struct stack_frame_t me
; val_t MORE_REG
[10];} fra
;
848 static val_t once_value_7
; /* Once value */
849 static val_t once_value_8
; /* Once value */
850 static val_t once_value_13
; /* Once value */
851 static val_t once_value_14
; /* Once value */
852 static val_t once_value_15
; /* Once value */
853 static val_t once_value_16
; /* Once value */
854 static val_t once_value_17
; /* Once value */
855 static val_t once_value_18
; /* Once value */
856 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
857 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
859 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors
;
860 fra
.me
.has_broke
= 0;
861 fra
.me
.REG_size
= 11;
862 fra
.me
.REG
[0] = NIT_NULL
;
863 fra
.me
.REG
[1] = NIT_NULL
;
864 fra
.me
.REG
[2] = NIT_NULL
;
865 fra
.me
.REG
[3] = NIT_NULL
;
866 fra
.me
.REG
[4] = NIT_NULL
;
867 fra
.me
.REG
[5] = NIT_NULL
;
868 fra
.me
.REG
[6] = NIT_NULL
;
869 fra
.me
.REG
[7] = NIT_NULL
;
870 fra
.me
.REG
[8] = NIT_NULL
;
871 fra
.me
.REG
[9] = NIT_NULL
;
872 fra
.me
.REG
[10] = NIT_NULL
;
875 /* ./syntax//mmbuilder.nit:188 */
876 fra
.me
.REG
[2] = fra
.me
.REG
[0];
877 /* ./syntax//mmbuilder.nit:192 */
878 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___global_properties(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
879 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[3])(fra
.me
.REG
[3], (&(fra
.me
)), ((fun_t
)OC_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors_1
));
880 switch ((&(fra
.me
))->has_broke
) {
882 case 1: (&(fra
.me
))->has_broke
= 0; goto label3
;
884 /* ./syntax//mmbuilder.nit:200 */
885 fra
.me
.REG
[3] = NEW_ArraySet_standard___collection___array___ArraySet___init();
886 /* ./syntax//mmbuilder.nit:201 */
887 fra
.me
.REG
[4] = NEW_ArraySet_standard___collection___array___ArraySet___init();
888 /* ./syntax//mmbuilder.nit:202 */
889 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMLocalClass___che(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
890 fra
.me
.REG
[5] = CALL_metamodel___partial_order___PartialOrderElement___direct_greaters(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
891 /* ./../lib/standard//collection//array.nit:232 */
893 /* ./../lib/standard//collection//array.nit:233 */
894 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
895 if (UNTAG_Bool(REGB1
)) {
897 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
899 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
900 /* ./../lib/standard//collection//array.nit:234 */
901 fra
.me
.REG
[6] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[5]);
902 /* ./../lib/standard//collection//array.nit:235 */
904 /* ./../lib/standard//collection//array.nit:23 */
905 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
906 if (UNTAG_Bool(REGB1
)) {
908 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
910 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
911 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
912 if (UNTAG_Bool(REGB2
)) {
914 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
916 /* ./../lib/standard//kernel.nit:215 */
917 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
918 /* ./../lib/standard//collection//array.nit:235 */
919 if (UNTAG_Bool(REGB1
)) {
920 /* ./../lib/standard//collection//array.nit:236 */
921 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
922 if (UNTAG_Bool(REGB1
)) {
923 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
925 /* ./../lib/standard//collection//array.nit:652 */
926 fra
.me
.REG
[7] = ((Nit_NativeArray
)fra
.me
.REG
[6])->val
[UNTAG_Int(REGB0
)];
927 /* ./syntax//mmbuilder.nit:203 */
928 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
929 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
930 if (UNTAG_Bool(REGB1
)) {
931 REGB1
= TAG_Bool(true);
933 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
934 REGB2
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
937 if (UNTAG_Bool(REGB1
)) {
940 /* ./syntax//mmbuilder.nit:204 */
941 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___global_properties(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
942 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[8])(fra
.me
.REG
[8], (&(fra
.me
)), ((fun_t
)OC_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors_5
));
943 /* ./syntax//mmbuilder.nit:208 */
946 fra
.me
.REG
[8] = BOX_NativeString("init");
948 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
949 once_value_8
= fra
.me
.REG
[8];
950 register_static_object(&once_value_8
);
951 } else fra
.me
.REG
[8] = once_value_8
;
952 fra
.me
.REG
[8] = fra
.me
.REG
[8];
953 fra
.me
.REG
[8] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
954 once_value_7
= fra
.me
.REG
[8];
955 register_static_object(&once_value_7
);
956 } else fra
.me
.REG
[8] = once_value_7
;
957 fra
.me
.REG
[8] = fra
.me
.REG
[8];
958 /* ./syntax//mmbuilder.nit:209 */
959 REGB1
= CALL_metamodel___abstractmetamodel___MMLocalClass___has_global_property_by_name(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
960 if (UNTAG_Bool(REGB1
)) {
961 /* ./syntax//mmbuilder.nit:210 */
962 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___get_property_by_name(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
963 /* ./syntax//mmbuilder.nit:211 */
964 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass_____bra(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[8]);
965 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[8]);
968 /* ./../lib/standard//collection//array.nit:237 */
970 /* ./../lib/standard//kernel.nit:218 */
971 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
972 /* ./../lib/standard//collection//array.nit:237 */
975 /* ./../lib/standard//collection//array.nit:235 */
980 /* ./syntax//mmbuilder.nit:216 */
981 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___init();
982 /* ./syntax//mmbuilder.nit:217 */
983 fra
.me
.REG
[5] = CALL_syntax___syntax_base___MMSrcLocalClass___src_local_properties(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
984 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[5])(fra
.me
.REG
[5], (&(fra
.me
)), ((fun_t
)OC_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors_10
));
985 /* ./syntax//mmbuilder.nit:224 */
986 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
987 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
988 if (UNTAG_Bool(REGB0
)) {
989 /* ./syntax//mmbuilder.nit:227 */
990 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___init();
991 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[4])(fra
.me
.REG
[4], (&(fra
.me
)), ((fun_t
)OC_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors_11
));
992 /* ./syntax//mmbuilder.nit:235 */
993 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___che(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
994 fra
.me
.REG
[8] = CALL_metamodel___partial_order___PartialOrderElement___order(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
995 fra
.me
.REG
[8] = CALL_metamodel___partial_order___PartialOrder___select_smallests(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[5]);
996 fra
.me
.REG
[5] = fra
.me
.REG
[8];
997 /* ./syntax//mmbuilder.nit:238 */
998 fra
.me
.REG
[8] = NIT_NULL
;
999 /* ./../lib/standard//collection//array.nit:23 */
1000 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
1001 if (UNTAG_Bool(REGB0
)) {
1003 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
1005 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
1006 /* ./syntax//mmbuilder.nit:240 */
1008 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1009 if (UNTAG_Bool(REGB2
)) {
1011 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1013 /* ./../lib/standard//kernel.nit:217 */
1014 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>UNTAG_Int(REGB1
));
1015 /* ./syntax//mmbuilder.nit:240 */
1016 if (UNTAG_Bool(REGB1
)) {
1017 /* ./syntax//mmbuilder.nit:241 */
1018 fra
.me
.REG
[7] = CALL_syntax___syntax_base___MMSrcLocalClass___node(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1020 fra
.me
.REG
[9] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
1021 if (!once_value_13
) {
1022 fra
.me
.REG
[10] = BOX_NativeString("Error: Explicit constructor required in ");
1023 REGB1
= TAG_Int(40);
1024 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB1
);
1025 once_value_13
= fra
.me
.REG
[10];
1026 register_static_object(&once_value_13
);
1027 } else fra
.me
.REG
[10] = once_value_13
;
1028 fra
.me
.REG
[10] = fra
.me
.REG
[10];
1029 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
1030 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1031 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
1032 if (!once_value_14
) {
1033 fra
.me
.REG
[10] = BOX_NativeString(" since multiple inheritance of constructor is forbiden. Conflicting classes are ");
1034 REGB1
= TAG_Int(80);
1035 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB1
);
1036 once_value_14
= fra
.me
.REG
[10];
1037 register_static_object(&once_value_14
);
1038 } else fra
.me
.REG
[10] = once_value_14
;
1039 fra
.me
.REG
[10] = fra
.me
.REG
[10];
1040 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
1041 if (!once_value_15
) {
1042 fra
.me
.REG
[10] = BOX_NativeString(", ");
1044 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB1
);
1045 once_value_15
= fra
.me
.REG
[10];
1046 register_static_object(&once_value_15
);
1047 } else fra
.me
.REG
[10] = once_value_15
;
1048 fra
.me
.REG
[10] = fra
.me
.REG
[10];
1049 fra
.me
.REG
[10] = CALL_standard___string___Collection___join(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[10]);
1050 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
1051 if (!once_value_16
) {
1052 fra
.me
.REG
[10] = BOX_NativeString(". Costructors are ");
1053 REGB1
= TAG_Int(18);
1054 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB1
);
1055 once_value_16
= fra
.me
.REG
[10];
1056 register_static_object(&once_value_16
);
1057 } else fra
.me
.REG
[10] = once_value_16
;
1058 fra
.me
.REG
[10] = fra
.me
.REG
[10];
1059 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
1060 if (!once_value_17
) {
1061 fra
.me
.REG
[10] = BOX_NativeString(", ");
1063 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB1
);
1064 once_value_17
= fra
.me
.REG
[10];
1065 register_static_object(&once_value_17
);
1066 } else fra
.me
.REG
[10] = once_value_17
;
1067 fra
.me
.REG
[10] = fra
.me
.REG
[10];
1068 fra
.me
.REG
[10] = CALL_standard___string___Collection___join(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[10]);
1069 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
1070 if (!once_value_18
) {
1071 fra
.me
.REG
[10] = BOX_NativeString(".");
1073 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB1
);
1074 once_value_18
= fra
.me
.REG
[10];
1075 register_static_object(&once_value_18
);
1076 } else fra
.me
.REG
[10] = once_value_18
;
1077 fra
.me
.REG
[10] = fra
.me
.REG
[10];
1078 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
1079 fra
.me
.REG
[9] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
1080 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[7], fra
.me
.REG
[9]);
1081 /* ./syntax//mmbuilder.nit:242 */
1084 /* ./../lib/standard//collection//array.nit:23 */
1085 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
1086 if (UNTAG_Bool(REGB1
)) {
1088 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
1090 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
1091 /* ./syntax//mmbuilder.nit:243 */
1093 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB0
));
1094 if (UNTAG_Bool(REGB2
)) {
1096 /* ./../lib/standard//kernel.nit:210 */
1097 REGB0
= TAG_Bool((REGB1
)==(REGB0
));
1098 /* ./syntax//mmbuilder.nit:243 */
1101 if (UNTAG_Bool(REGB2
)) {
1102 /* ./syntax//mmbuilder.nit:244 */
1103 fra
.me
.REG
[5] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1104 fra
.me
.REG
[8] = fra
.me
.REG
[5];
1107 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[4])(fra
.me
.REG
[4], (&(fra
.me
)), ((fun_t
)OC_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors_19
));
1108 /* ./syntax//mmbuilder.nit:253 */
1109 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1110 REGB2
= TAG_Bool(fra
.me
.REG
[8]!=NIT_NULL
);
1111 if (UNTAG_Bool(REGB2
)) {
1113 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 253);
1115 REGB2
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
1116 if (UNTAG_Bool(REGB2
)) {
1117 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 253);
1119 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
1120 CALL_metamodel___abstractmetamodel___MMGlobalClass___mixin_of__eq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[8]);
1122 /* ./syntax//mmbuilder.nit:258 */
1123 fra
.me
.REG
[3] = CALL_standard___collection___array___Collection___to_a(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1124 fra
.me
.REG
[3] = NEW_MMImplicitInit_syntax___syntax_base___MMImplicitInit___init(fra
.me
.REG
[2], fra
.me
.REG
[6], fra
.me
.REG
[3]);
1125 /* ./syntax//mmbuilder.nit:259 */
1126 CALL_syntax___mmbuilder___MMSrcLocalClass___add_src_local_property(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1], fra
.me
.REG
[3]);
1129 stack_frame_head
= fra
.me
.prev
;
1132 void OC_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1133 struct {struct stack_frame_t me
;} fra
;
1138 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1139 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1141 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors
;
1142 fra
.me
.has_broke
= 0;
1143 fra
.me
.REG_size
= 1;
1144 fra
.me
.REG
[0] = NIT_NULL
;
1145 fra
.me
.closure_ctx
= closctx_param
;
1146 fra
.me
.closure_funs
= CREG
;
1148 CREG
[0] = clos_fun0
;
1149 /* ./syntax//mmbuilder.nit:193 */
1150 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1151 if (UNTAG_Bool(REGB0
)) {
1152 /* ./syntax//mmbuilder.nit:195 */
1153 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMGlobalProperty___intro(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1154 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1155 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[0],closctx
->REG
[2]));
1156 if (UNTAG_Bool(REGB0
)) {
1158 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[2]);
1161 if (UNTAG_Bool(REGB0
)) {
1162 closctx
->has_broke
= 1;
1167 stack_frame_head
= fra
.me
.prev
;
1170 void OC_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors_5(struct stack_frame_t
*closctx
, val_t p0
){
1171 struct {struct stack_frame_t me
;} fra
;
1174 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1175 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1177 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors
;
1178 fra
.me
.has_broke
= 0;
1179 fra
.me
.REG_size
= 1;
1180 fra
.me
.REG
[0] = NIT_NULL
;
1182 /* ./syntax//mmbuilder.nit:205 */
1183 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1184 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1185 if (UNTAG_Bool(REGB0
)) {
1188 /* ./syntax//mmbuilder.nit:206 */
1189 CALL_standard___collection___abstract_collection___SimpleCollection___add(closctx
->REG
[4])(closctx
->REG
[4], fra
.me
.REG
[0]);
1191 stack_frame_head
= fra
.me
.prev
;
1194 void OC_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors_10(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1195 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1200 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1201 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1203 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors
;
1204 fra
.me
.has_broke
= 0;
1205 fra
.me
.REG_size
= 2;
1206 fra
.me
.REG
[0] = NIT_NULL
;
1207 fra
.me
.REG
[1] = NIT_NULL
;
1208 fra
.me
.closure_ctx
= closctx_param
;
1209 fra
.me
.closure_funs
= CREG
;
1211 CREG
[0] = clos_fun0
;
1212 /* ./syntax//mmbuilder.nit:218 */
1213 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_syntax___syntax_base___MMSrcAttribute
, ID_syntax___syntax_base___MMSrcAttribute
)) /*cast MMSrcAttribute*/;
1214 if (UNTAG_Bool(REGB0
)) {
1215 /* ./syntax//mmbuilder.nit:219 */
1216 fra
.me
.REG
[1] = CALL_syntax___syntax_base___MMLocalProperty___node(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1217 /* ./syntax//mmbuilder.nit:220 */
1218 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1219 if (UNTAG_Bool(REGB0
)) {
1220 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 220);
1222 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AAttrPropdef___n_expr(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1223 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1224 if (UNTAG_Bool(REGB0
)) {
1226 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
1227 if (UNTAG_Bool(REGB1
)) {
1228 REGB1
= TAG_Bool(false);
1231 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
1235 if (UNTAG_Bool(REGB0
)) {
1236 CALL_standard___collection___abstract_collection___SimpleCollection___add(closctx
->REG
[6])(closctx
->REG
[6], fra
.me
.REG
[0]);
1239 stack_frame_head
= fra
.me
.prev
;
1242 void OC_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors_11(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1243 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1247 /* ./syntax//mmbuilder.nit:228 */
1248 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1249 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1251 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors
;
1252 fra
.me
.has_broke
= 0;
1253 fra
.me
.REG_size
= 2;
1254 fra
.me
.REG
[0] = NIT_NULL
;
1255 fra
.me
.REG
[1] = NIT_NULL
;
1256 fra
.me
.closure_ctx
= closctx_param
;
1257 fra
.me
.closure_funs
= CREG
;
1259 CREG
[0] = clos_fun0
;
1260 /* ./syntax//mmbuilder.nit:229 */
1261 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMGlobalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1262 /* ./syntax//mmbuilder.nit:230 */
1263 REGB0
= CALL_standard___collection___abstract_collection___Collection___has(closctx
->REG
[5])(closctx
->REG
[5], fra
.me
.REG
[0]);
1264 if (UNTAG_Bool(REGB0
)) {
1267 /* ./syntax//mmbuilder.nit:231 */
1268 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1269 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_mixin(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
1270 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1271 if (UNTAG_Bool(REGB0
)) {
1272 /* ./syntax//mmbuilder.nit:232 */
1273 CALL_standard___collection___abstract_collection___SimpleCollection___add(closctx
->REG
[5])(closctx
->REG
[5], fra
.me
.REG
[0]);
1276 stack_frame_head
= fra
.me
.prev
;
1279 void OC_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors_19(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
1280 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1286 /* ./syntax//mmbuilder.nit:247 */
1287 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1288 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1290 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcLocalClass___process_default_constructors
;
1291 fra
.me
.has_broke
= 0;
1292 fra
.me
.REG_size
= 2;
1293 fra
.me
.REG
[0] = NIT_NULL
;
1294 fra
.me
.REG
[1] = NIT_NULL
;
1295 fra
.me
.closure_ctx
= closctx_param
;
1296 fra
.me
.closure_funs
= CREG
;
1298 CREG
[0] = clos_fun0
;
1299 /* ./syntax//mmbuilder.nit:249 */
1300 REGB0
= TAG_Bool(closctx
->REG
[8]==NIT_NULL
);
1301 if (UNTAG_Bool(REGB0
)) {
1303 REGB1
= TAG_Bool(closctx
->REG
[8]==NIT_NULL
);
1304 if (UNTAG_Bool(REGB1
)) {
1305 REGB1
= TAG_Bool(false);
1308 REGB1
= CALL_standard___kernel___Object_____eqeq(closctx
->REG
[8])(closctx
->REG
[8], NIT_NULL
);
1312 if (UNTAG_Bool(REGB0
)) {
1313 REGB0
= TAG_Bool(true);
1315 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMGlobalProperty___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1316 REGB1
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[1],closctx
->REG
[8]));
1317 if (UNTAG_Bool(REGB1
)) {
1319 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], closctx
->REG
[8]);
1324 if (UNTAG_Bool(REGB0
)) {
1325 /* ./syntax//mmbuilder.nit:250 */
1326 CALL_metamodel___inheritance___MMLocalClass___make_visible_an_inherited_global_property(closctx
->REG
[2])(closctx
->REG
[2], fra
.me
.REG
[0]);
1328 stack_frame_head
= fra
.me
.prev
;
1331 void syntax___mmbuilder___MMSrcLocalClass___add_src_local_property(val_t p0
, val_t p1
, val_t p2
){
1332 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
1335 static val_t once_value_1
; /* Once value */
1336 static val_t once_value_2
; /* Once value */
1337 static val_t once_value_3
; /* Once value */
1338 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1339 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1341 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcLocalClass___add_src_local_property
;
1342 fra
.me
.has_broke
= 0;
1343 fra
.me
.REG_size
= 7;
1344 fra
.me
.REG
[0] = NIT_NULL
;
1345 fra
.me
.REG
[1] = NIT_NULL
;
1346 fra
.me
.REG
[2] = NIT_NULL
;
1347 fra
.me
.REG
[3] = NIT_NULL
;
1348 fra
.me
.REG
[4] = NIT_NULL
;
1349 fra
.me
.REG
[5] = NIT_NULL
;
1350 fra
.me
.REG
[6] = NIT_NULL
;
1354 /* ./syntax//mmbuilder.nit:268 */
1355 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1356 /* ./syntax//mmbuilder.nit:270 */
1357 fra
.me
.REG
[4] = CALL_syntax___syntax_base___MMSrcLocalClass___src_local_properties(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1358 REGB0
= CALL_standard___collection___abstract_collection___MapRead___has_key(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
1359 if (UNTAG_Bool(REGB0
)) {
1360 /* ./syntax//mmbuilder.nit:271 */
1361 fra
.me
.REG
[4] = CALL_syntax___syntax_base___MMLocalProperty___node(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1363 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
1364 if (!once_value_1
) {
1365 fra
.me
.REG
[6] = BOX_NativeString("Error: A property ");
1366 REGB0
= TAG_Int(18);
1367 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
1368 once_value_1
= fra
.me
.REG
[6];
1369 register_static_object(&once_value_1
);
1370 } else fra
.me
.REG
[6] = once_value_1
;
1371 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1372 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1373 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1374 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1375 if (!once_value_2
) {
1376 fra
.me
.REG
[6] = BOX_NativeString(" is already defined in class ");
1377 REGB0
= TAG_Int(29);
1378 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
1379 once_value_2
= fra
.me
.REG
[6];
1380 register_static_object(&once_value_2
);
1381 } else fra
.me
.REG
[6] = once_value_2
;
1382 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1383 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1384 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1385 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1386 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1387 if (!once_value_3
) {
1388 fra
.me
.REG
[6] = BOX_NativeString(".");
1390 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
1391 once_value_3
= fra
.me
.REG
[6];
1392 register_static_object(&once_value_3
);
1393 } else fra
.me
.REG
[6] = once_value_3
;
1394 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1395 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
1396 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
1397 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4], fra
.me
.REG
[5]);
1398 /* ./syntax//mmbuilder.nit:272 */
1401 /* ./syntax//mmbuilder.nit:274 */
1402 fra
.me
.REG
[5] = CALL_syntax___syntax_base___MMSrcLocalClass___src_local_properties(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1403 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3], fra
.me
.REG
[2]);
1404 /* ./syntax//mmbuilder.nit:277 */
1405 REGB0
= CALL_metamodel___abstractmetamodel___MMLocalClass___has_global_property_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
1406 if (UNTAG_Bool(REGB0
)) {
1407 /* ./syntax//mmbuilder.nit:278 */
1408 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___get_property_by_name(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
1409 /* ./syntax//mmbuilder.nit:279 */
1410 CALL_metamodel___inheritance___MMLocalProperty___inherit_global(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
1412 /* ./syntax//mmbuilder.nit:282 */
1413 REGB0
= CALL_metamodel___abstractmetamodel___MMLocalProperty___is_global_set(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1414 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1415 if (UNTAG_Bool(REGB0
)) {
1416 /* ./syntax//mmbuilder.nit:283 */
1417 CALL_metamodel___abstractmetamodel___MMLocalProperty___new_global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1418 /* ./syntax//mmbuilder.nit:284 */
1419 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1420 REGB0
= CALL_syntax___syntax_base___MMLocalProperty___is_init(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1421 CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
1424 stack_frame_head
= fra
.me
.prev
;
1427 void syntax___mmbuilder___MMLocalProperty___accept_property_visitor(val_t p0
, val_t p1
){
1428 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1430 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1431 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1433 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMLocalProperty___accept_property_visitor
;
1434 fra
.me
.has_broke
= 0;
1435 fra
.me
.REG_size
= 2;
1436 fra
.me
.REG
[0] = NIT_NULL
;
1437 fra
.me
.REG
[1] = NIT_NULL
;
1440 stack_frame_head
= fra
.me
.prev
;
1443 val_t
syntax___mmbuilder___MMImplicitInit___super_init(val_t p0
){
1444 struct {struct stack_frame_t me
;} fra
;
1446 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1447 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1449 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMImplicitInit___super_init
;
1450 fra
.me
.has_broke
= 0;
1451 fra
.me
.REG_size
= 1;
1452 fra
.me
.REG
[0] = NIT_NULL
;
1454 /* ./syntax//mmbuilder.nit:296 */
1455 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___MMImplicitInit____super_init(fra
.me
.REG
[0]);
1456 stack_frame_head
= fra
.me
.prev
;
1457 return fra
.me
.REG
[0];
1459 void syntax___mmbuilder___MMImplicitInit___accept_property_visitor(val_t p0
, val_t p1
){
1460 struct {struct stack_frame_t me
; val_t MORE_REG
[8];} fra
;
1467 static val_t once_value_1
; /* Once value */
1468 static val_t once_value_2
; /* Once value */
1469 static val_t once_value_3
; /* Once value */
1470 static val_t once_value_4
; /* Once value */
1471 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1472 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1474 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMImplicitInit___accept_property_visitor
;
1475 fra
.me
.has_broke
= 0;
1476 fra
.me
.REG_size
= 9;
1477 fra
.me
.REG
[0] = NIT_NULL
;
1478 fra
.me
.REG
[1] = NIT_NULL
;
1479 fra
.me
.REG
[2] = NIT_NULL
;
1480 fra
.me
.REG
[3] = NIT_NULL
;
1481 fra
.me
.REG
[4] = NIT_NULL
;
1482 fra
.me
.REG
[5] = NIT_NULL
;
1483 fra
.me
.REG
[6] = NIT_NULL
;
1484 fra
.me
.REG
[7] = NIT_NULL
;
1485 fra
.me
.REG
[8] = NIT_NULL
;
1488 /* ./syntax//mmbuilder.nit:297 */
1489 fra
.me
.REG
[2] = fra
.me
.REG
[0];
1490 /* ./syntax//mmbuilder.nit:299 */
1491 fra
.me
.REG
[3] = NIT_NULL
;
1492 /* ./syntax//mmbuilder.nit:300 */
1493 fra
.me
.REG
[4] = CALL_syntax___syntax_base___MMImplicitInit___super_inits(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1494 /* ./../lib/standard//collection//array.nit:232 */
1496 /* ./../lib/standard//collection//array.nit:233 */
1497 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
1498 if (UNTAG_Bool(REGB1
)) {
1500 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
1502 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
1503 /* ./../lib/standard//collection//array.nit:234 */
1504 fra
.me
.REG
[5] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[4]);
1505 /* ./../lib/standard//collection//array.nit:235 */
1507 /* ./../lib/standard//collection//array.nit:23 */
1508 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
1509 if (UNTAG_Bool(REGB1
)) {
1511 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
1513 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
1514 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1515 if (UNTAG_Bool(REGB2
)) {
1517 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1519 /* ./../lib/standard//kernel.nit:215 */
1520 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
1521 /* ./../lib/standard//collection//array.nit:235 */
1522 if (UNTAG_Bool(REGB1
)) {
1523 /* ./../lib/standard//collection//array.nit:236 */
1524 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1525 if (UNTAG_Bool(REGB1
)) {
1526 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
1528 /* ./../lib/standard//collection//array.nit:652 */
1529 fra
.me
.REG
[6] = ((Nit_NativeArray
)fra
.me
.REG
[5])->val
[UNTAG_Int(REGB0
)];
1530 /* ./syntax//mmbuilder.nit:301 */
1531 fra
.me
.REG
[7] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1532 REGB1
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
1533 if (UNTAG_Bool(REGB1
)) {
1534 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 301);
1536 REGB1
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
1538 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1539 if (UNTAG_Bool(REGB3
)) {
1541 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1543 /* ./../lib/standard//kernel.nit:217 */
1544 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB2
));
1545 /* ./syntax//mmbuilder.nit:301 */
1546 if (UNTAG_Bool(REGB2
)) {
1547 /* ./syntax//mmbuilder.nit:302 */
1548 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1549 if (UNTAG_Bool(REGB2
)) {
1551 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1552 if (UNTAG_Bool(REGB1
)) {
1553 REGB1
= TAG_Bool(false);
1556 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
1560 if (UNTAG_Bool(REGB2
)) {
1561 /* ./syntax//mmbuilder.nit:303 */
1562 fra
.me
.REG
[3] = fra
.me
.REG
[6];
1564 /* ./syntax//mmbuilder.nit:305 */
1566 fra
.me
.REG
[7] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2
);
1567 if (!once_value_1
) {
1568 fra
.me
.REG
[8] = BOX_NativeString("Error: explicit constructor needed in ");
1569 REGB2
= TAG_Int(38);
1570 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB2
);
1571 once_value_1
= fra
.me
.REG
[8];
1572 register_static_object(&once_value_1
);
1573 } else fra
.me
.REG
[8] = once_value_1
;
1574 fra
.me
.REG
[8] = fra
.me
.REG
[8];
1575 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
1576 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1577 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
1578 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
1579 if (!once_value_2
) {
1580 fra
.me
.REG
[8] = BOX_NativeString(" since both super-constructor ");
1581 REGB2
= TAG_Int(30);
1582 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB2
);
1583 once_value_2
= fra
.me
.REG
[8];
1584 register_static_object(&once_value_2
);
1585 } else fra
.me
.REG
[8] = once_value_2
;
1586 fra
.me
.REG
[8] = fra
.me
.REG
[8];
1587 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
1588 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1589 if (UNTAG_Bool(REGB2
)) {
1590 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 305);
1592 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1593 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
1594 if (!once_value_3
) {
1595 fra
.me
.REG
[8] = BOX_NativeString(" and ");
1597 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB2
);
1598 once_value_3
= fra
.me
.REG
[8];
1599 register_static_object(&once_value_3
);
1600 } else fra
.me
.REG
[8] = once_value_3
;
1601 fra
.me
.REG
[8] = fra
.me
.REG
[8];
1602 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
1603 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMLocalProperty___full_name(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1604 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[6]);
1605 if (!once_value_4
) {
1606 fra
.me
.REG
[6] = BOX_NativeString(" have paramters");
1607 REGB2
= TAG_Int(15);
1608 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB2
);
1609 once_value_4
= fra
.me
.REG
[6];
1610 register_static_object(&once_value_4
);
1611 } else fra
.me
.REG
[6] = once_value_4
;
1612 fra
.me
.REG
[6] = fra
.me
.REG
[6];
1613 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[6]);
1614 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
1615 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
, fra
.me
.REG
[7]);
1616 /* ./syntax//mmbuilder.nit:306 */
1620 /* ./../lib/standard//collection//array.nit:237 */
1622 /* ./../lib/standard//kernel.nit:218 */
1623 REGB2
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB2
));
1624 /* ./../lib/standard//collection//array.nit:237 */
1627 /* ./../lib/standard//collection//array.nit:235 */
1632 /* ./syntax//mmbuilder.nit:310 */
1633 ATTR_syntax___mmbuilder___MMImplicitInit____super_init(fra
.me
.REG
[2]) = fra
.me
.REG
[3];
1634 /* ./syntax//mmbuilder.nit:312 */
1635 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___init();
1636 /* ./syntax//mmbuilder.nit:313 */
1637 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1638 if (UNTAG_Bool(REGB0
)) {
1640 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1641 if (UNTAG_Bool(REGB2
)) {
1642 REGB2
= TAG_Bool(false);
1645 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
1649 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
1650 if (UNTAG_Bool(REGB0
)) {
1651 /* ./syntax//mmbuilder.nit:314 */
1652 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1653 if (UNTAG_Bool(REGB0
)) {
1654 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 314);
1656 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1657 /* ./syntax//mmbuilder.nit:315 */
1659 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1660 if (UNTAG_Bool(REGB2
)) {
1661 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 315);
1663 REGB2
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1664 /* ./../lib/standard//kernel.nit:335 */
1666 REGB1
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1667 if (UNTAG_Bool(REGB1
)) {
1669 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1671 /* ./../lib/standard//kernel.nit:215 */
1672 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
1673 /* ./../lib/standard//kernel.nit:335 */
1674 if (UNTAG_Bool(REGB1
)) {
1675 /* ./syntax//mmbuilder.nit:315 */
1677 /* ./syntax//mmbuilder.nit:316 */
1678 REGB3
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
1679 if (UNTAG_Bool(REGB3
)) {
1680 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 316);
1682 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMSignature___params(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
1683 /* ./../lib/standard//collection//array.nit:243 */
1685 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1686 if (UNTAG_Bool(REGB4
)) {
1688 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1690 /* ./../lib/standard//kernel.nit:216 */
1691 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB3
));
1692 /* ./../lib/standard//collection//array.nit:243 */
1693 if (UNTAG_Bool(REGB3
)) {
1694 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
1695 if (UNTAG_Bool(REGB3
)) {
1697 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 243);
1699 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
1700 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
1701 if (UNTAG_Bool(REGB4
)) {
1703 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1705 /* ./../lib/standard//kernel.nit:215 */
1706 REGB3
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB3
));
1708 /* ./../lib/standard//collection//array.nit:243 */
1709 REGB4
= TAG_Bool(false);
1712 if (UNTAG_Bool(REGB3
)) {
1714 nit_abort("Assert %s failed", "'index'", LOCATE_standard___collection___array
, 243);
1716 /* ./../lib/standard//collection//array.nit:244 */
1717 fra
.me
.REG
[5] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[5]);
1718 REGB3
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1719 if (UNTAG_Bool(REGB3
)) {
1720 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 244);
1722 /* ./../lib/standard//collection//array.nit:652 */
1723 fra
.me
.REG
[5] = ((Nit_NativeArray
)fra
.me
.REG
[5])->val
[UNTAG_Int(REGB1
)];
1724 /* ./../lib/standard//collection//array.nit:244 */
1727 /* ./syntax//mmbuilder.nit:316 */
1728 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[5]);
1729 /* ./../lib/standard//kernel.nit:337 */
1731 /* ./../lib/standard//kernel.nit:218 */
1732 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1733 /* ./../lib/standard//kernel.nit:337 */
1736 /* ./../lib/standard//kernel.nit:335 */
1742 /* ./syntax//mmbuilder.nit:319 */
1743 fra
.me
.REG
[3] = CALL_syntax___syntax_base___MMImplicitInit___unassigned_attributes(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1744 /* ./../lib/standard//collection//array.nit:232 */
1746 /* ./../lib/standard//collection//array.nit:233 */
1747 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
1748 if (UNTAG_Bool(REGB2
)) {
1750 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
1752 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
1753 /* ./../lib/standard//collection//array.nit:234 */
1754 fra
.me
.REG
[5] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[3]);
1755 /* ./../lib/standard//collection//array.nit:235 */
1757 /* ./../lib/standard//collection//array.nit:23 */
1758 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
1759 if (UNTAG_Bool(REGB2
)) {
1761 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
1763 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
1764 REGB1
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
1765 if (UNTAG_Bool(REGB1
)) {
1767 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
1769 /* ./../lib/standard//kernel.nit:215 */
1770 REGB2
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB2
));
1771 /* ./../lib/standard//collection//array.nit:235 */
1772 if (UNTAG_Bool(REGB2
)) {
1773 /* ./../lib/standard//collection//array.nit:236 */
1774 REGB2
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
1775 if (UNTAG_Bool(REGB2
)) {
1776 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
1778 /* ./../lib/standard//collection//array.nit:652 */
1779 fra
.me
.REG
[4] = ((Nit_NativeArray
)fra
.me
.REG
[5])->val
[UNTAG_Int(REGB0
)];
1780 /* ./syntax//mmbuilder.nit:320 */
1781 fra
.me
.REG
[7] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1782 /* ./syntax//mmbuilder.nit:321 */
1783 REGB2
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
1784 if (UNTAG_Bool(REGB2
)) {
1786 REGB1
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
1787 if (UNTAG_Bool(REGB1
)) {
1788 REGB1
= TAG_Bool(false);
1791 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[7])(fra
.me
.REG
[7], NIT_NULL
);
1795 if (UNTAG_Bool(REGB2
)) {
1798 /* ./syntax//mmbuilder.nit:322 */
1799 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMLocalProperty___name(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1800 /* ./syntax//mmbuilder.nit:323 */
1801 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1802 fra
.me
.REG
[8] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
1803 REGB2
= TAG_Char('_');
1804 REGB1
= TAG_Bool(IS_EQUAL_ON(REGB2
,fra
.me
.REG
[8]));
1805 if (UNTAG_Bool(REGB1
)) {
1807 REGB3
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
1808 if (UNTAG_Bool(REGB3
)) {
1809 REGB3
= TAG_Bool(false);
1812 /* ./../lib/standard//kernel.nit:350 */
1813 REGB2
= TAG_Bool((fra
.me
.REG
[8])==(REGB2
));
1814 /* ./syntax//mmbuilder.nit:323 */
1818 if (UNTAG_Bool(REGB1
)) {
1819 REGB1
= TAG_Bool(true);
1821 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
1822 fra
.me
.REG
[8] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
1823 REGB2
= TAG_Char('@');
1824 REGB3
= TAG_Bool(IS_EQUAL_ON(REGB2
,fra
.me
.REG
[8]));
1825 if (UNTAG_Bool(REGB3
)) {
1827 REGB4
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
1828 if (UNTAG_Bool(REGB4
)) {
1829 REGB4
= TAG_Bool(false);
1832 /* ./../lib/standard//kernel.nit:350 */
1833 REGB2
= TAG_Bool((fra
.me
.REG
[8])==(REGB2
));
1834 /* ./syntax//mmbuilder.nit:323 */
1840 if (UNTAG_Bool(REGB1
)) {
1841 /* ./syntax//mmbuilder.nit:324 */
1842 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1844 fra
.me
.REG
[4] = CALL_standard___string___AbstractString___substring_from(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB1
);
1845 fra
.me
.REG
[4] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
1846 fra
.me
.REG
[6] = fra
.me
.REG
[4];
1848 /* ./syntax//mmbuilder.nit:326 */
1849 REGB1
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
1850 if (UNTAG_Bool(REGB1
)) {
1851 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 326);
1853 fra
.me
.REG
[7] = CALL_metamodel___static_type___MMSignature___return_type(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
1854 REGB1
= TAG_Bool((fra
.me
.REG
[7]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[7], COLOR_metamodel___static_type___MMType
, ID_metamodel___static_type___MMType
)) /*cast MMType*/;
1855 if (UNTAG_Bool(REGB1
)) {
1857 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 326);
1859 fra
.me
.REG
[6] = NEW_MMParam_metamodel___static_type___MMParam___init(fra
.me
.REG
[7], fra
.me
.REG
[6]);
1860 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
1861 /* ./../lib/standard//collection//array.nit:237 */
1863 /* ./../lib/standard//kernel.nit:218 */
1864 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
1865 /* ./../lib/standard//collection//array.nit:237 */
1868 /* ./../lib/standard//collection//array.nit:235 */
1873 /* ./syntax//mmbuilder.nit:328 */
1874 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
1875 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
1876 fra
.me
.REG
[0] = NEW_MMSignature_metamodel___static_type___MMSignature___init(fra
.me
.REG
[1], NIT_NULL
, fra
.me
.REG
[0]);
1877 CALL_metamodel___static_type___MMLocalProperty___signature__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
1879 stack_frame_head
= fra
.me
.prev
;
1882 val_t
syntax___mmbuilder___MMSrcAncestor___local_class(val_t p0
){
1883 struct {struct stack_frame_t me
;} fra
;
1886 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1887 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1889 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcAncestor___local_class
;
1890 fra
.me
.has_broke
= 0;
1891 fra
.me
.REG_size
= 1;
1892 fra
.me
.REG
[0] = NIT_NULL
;
1894 /* ./syntax//mmbuilder.nit:336 */
1895 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___MMSrcAncestor____local_class(fra
.me
.REG
[0])!=NIT_NULL
);
1896 if (UNTAG_Bool(REGB0
)) {
1898 nit_abort("Uninitialized attribute %s", "_local_class", LOCATE_syntax___mmbuilder
, 336);
1900 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___MMSrcAncestor____local_class(fra
.me
.REG
[0]);
1901 stack_frame_head
= fra
.me
.prev
;
1902 return fra
.me
.REG
[0];
1904 void syntax___mmbuilder___MMSrcAncestor___init(val_t p0
, val_t p1
, int* init_table
){
1905 int itpos1
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_syntax___mmbuilder___MMSrcAncestor
].i
;
1906 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
1908 if (init_table
[itpos1
]) return;
1909 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1910 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1912 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MMSrcAncestor___init
;
1913 fra
.me
.has_broke
= 0;
1914 fra
.me
.REG_size
= 3;
1915 fra
.me
.REG
[0] = NIT_NULL
;
1916 fra
.me
.REG
[1] = NIT_NULL
;
1917 fra
.me
.REG
[2] = NIT_NULL
;
1920 /* ./syntax//mmbuilder.nit:338 */
1921 fra
.me
.REG
[2] = fra
.me
.REG
[0];
1922 CALL_metamodel___static_type___MMAncestor___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], init_table
);
1923 /* ./syntax//mmbuilder.nit:340 */
1924 ATTR_syntax___mmbuilder___MMSrcAncestor____local_class(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
1925 stack_frame_head
= fra
.me
.prev
;
1926 init_table
[itpos1
] = 1;
1929 val_t
syntax___mmbuilder___ClassBuilderVisitor___local_class_arity(val_t p0
){
1930 struct {struct stack_frame_t me
;} fra
;
1933 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1934 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1936 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassBuilderVisitor___local_class_arity
;
1937 fra
.me
.has_broke
= 0;
1938 fra
.me
.REG_size
= 1;
1939 fra
.me
.REG
[0] = NIT_NULL
;
1941 /* ./syntax//mmbuilder.nit:351 */
1942 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___ClassBuilderVisitor____local_class_arity(fra
.me
.REG
[0])!=NIT_NULL
);
1943 if (UNTAG_Bool(REGB0
)) {
1945 nit_abort("Uninitialized attribute %s", "_local_class_arity", LOCATE_syntax___mmbuilder
, 351);
1947 REGB0
= ATTR_syntax___mmbuilder___ClassBuilderVisitor____local_class_arity(fra
.me
.REG
[0]);
1948 stack_frame_head
= fra
.me
.prev
;
1951 void syntax___mmbuilder___ClassBuilderVisitor___local_class_arity__eq(val_t p0
, val_t p1
){
1952 struct {struct stack_frame_t me
;} fra
;
1955 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1956 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1958 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassBuilderVisitor___local_class_arity__eq
;
1959 fra
.me
.has_broke
= 0;
1960 fra
.me
.REG_size
= 1;
1961 fra
.me
.REG
[0] = NIT_NULL
;
1964 /* ./syntax//mmbuilder.nit:351 */
1965 ATTR_syntax___mmbuilder___ClassBuilderVisitor____local_class_arity(fra
.me
.REG
[0]) = REGB0
;
1966 stack_frame_head
= fra
.me
.prev
;
1969 val_t
syntax___mmbuilder___ClassBuilderVisitor___formals(val_t p0
){
1970 struct {struct stack_frame_t me
;} fra
;
1972 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1973 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1975 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassBuilderVisitor___formals
;
1976 fra
.me
.has_broke
= 0;
1977 fra
.me
.REG_size
= 1;
1978 fra
.me
.REG
[0] = NIT_NULL
;
1980 /* ./syntax//mmbuilder.nit:354 */
1981 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___ClassBuilderVisitor____formals(fra
.me
.REG
[0]);
1982 stack_frame_head
= fra
.me
.prev
;
1983 return fra
.me
.REG
[0];
1985 void syntax___mmbuilder___ClassBuilderVisitor___formals__eq(val_t p0
, val_t p1
){
1986 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
1988 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
1989 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
1991 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassBuilderVisitor___formals__eq
;
1992 fra
.me
.has_broke
= 0;
1993 fra
.me
.REG_size
= 2;
1994 fra
.me
.REG
[0] = NIT_NULL
;
1995 fra
.me
.REG
[1] = NIT_NULL
;
1998 /* ./syntax//mmbuilder.nit:354 */
1999 ATTR_syntax___mmbuilder___ClassBuilderVisitor____formals(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2000 stack_frame_head
= fra
.me
.prev
;
2003 void syntax___mmbuilder___ClassBuilderVisitor___visit(val_t p0
, val_t p1
){
2004 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2007 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2008 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2010 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassBuilderVisitor___visit
;
2011 fra
.me
.has_broke
= 0;
2012 fra
.me
.REG_size
= 2;
2013 fra
.me
.REG
[0] = NIT_NULL
;
2014 fra
.me
.REG
[1] = NIT_NULL
;
2017 /* ./syntax//mmbuilder.nit:357 */
2018 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2019 if (UNTAG_Bool(REGB0
)) {
2020 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 357);
2022 CALL_syntax___mmbuilder___ANode___accept_class_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2023 stack_frame_head
= fra
.me
.prev
;
2026 void syntax___mmbuilder___ClassBuilderVisitor___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
2027 int itpos2
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_syntax___mmbuilder___ClassBuilderVisitor
].i
;
2028 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2030 if (init_table
[itpos2
]) return;
2031 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2032 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2034 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassBuilderVisitor___init
;
2035 fra
.me
.has_broke
= 0;
2036 fra
.me
.REG_size
= 3;
2037 fra
.me
.REG
[0] = NIT_NULL
;
2038 fra
.me
.REG
[1] = NIT_NULL
;
2039 fra
.me
.REG
[2] = NIT_NULL
;
2043 /* ./syntax//mmbuilder.nit:358 */
2044 CALL_syntax___syntax_base___AbsSyntaxVisitor___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
2045 stack_frame_head
= fra
.me
.prev
;
2046 init_table
[itpos2
] = 1;
2049 void syntax___mmbuilder___ClassSpecializationBuilderVisitor___visit(val_t p0
, val_t p1
){
2050 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2053 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2054 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2056 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassSpecializationBuilderVisitor___visit
;
2057 fra
.me
.has_broke
= 0;
2058 fra
.me
.REG_size
= 2;
2059 fra
.me
.REG
[0] = NIT_NULL
;
2060 fra
.me
.REG
[1] = NIT_NULL
;
2063 /* ./syntax//mmbuilder.nit:365 */
2064 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2065 if (UNTAG_Bool(REGB0
)) {
2066 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 365);
2068 CALL_syntax___mmbuilder___ANode___accept_class_specialization_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2069 stack_frame_head
= fra
.me
.prev
;
2072 void syntax___mmbuilder___ClassSpecializationBuilderVisitor___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
2073 int itpos3
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_syntax___mmbuilder___ClassSpecializationBuilderVisitor
].i
;
2074 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2076 if (init_table
[itpos3
]) return;
2077 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2078 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2080 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassSpecializationBuilderVisitor___init
;
2081 fra
.me
.has_broke
= 0;
2082 fra
.me
.REG_size
= 3;
2083 fra
.me
.REG
[0] = NIT_NULL
;
2084 fra
.me
.REG
[1] = NIT_NULL
;
2085 fra
.me
.REG
[2] = NIT_NULL
;
2089 /* ./syntax//mmbuilder.nit:366 */
2090 CALL_syntax___syntax_base___AbsSyntaxVisitor___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
2091 stack_frame_head
= fra
.me
.prev
;
2092 init_table
[itpos3
] = 1;
2095 void syntax___mmbuilder___ClassAncestorBuilder___visit(val_t p0
, val_t p1
){
2096 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2099 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2100 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2102 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassAncestorBuilder___visit
;
2103 fra
.me
.has_broke
= 0;
2104 fra
.me
.REG_size
= 2;
2105 fra
.me
.REG
[0] = NIT_NULL
;
2106 fra
.me
.REG
[1] = NIT_NULL
;
2109 /* ./syntax//mmbuilder.nit:373 */
2110 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2111 if (UNTAG_Bool(REGB0
)) {
2112 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 373);
2114 CALL_syntax___mmbuilder___ANode___accept_class_ancestor_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2115 stack_frame_head
= fra
.me
.prev
;
2118 void syntax___mmbuilder___ClassAncestorBuilder___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
2119 int itpos4
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_syntax___mmbuilder___ClassAncestorBuilder
].i
;
2120 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2122 if (init_table
[itpos4
]) return;
2123 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2124 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2126 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassAncestorBuilder___init
;
2127 fra
.me
.has_broke
= 0;
2128 fra
.me
.REG_size
= 3;
2129 fra
.me
.REG
[0] = NIT_NULL
;
2130 fra
.me
.REG
[1] = NIT_NULL
;
2131 fra
.me
.REG
[2] = NIT_NULL
;
2135 /* ./syntax//mmbuilder.nit:374 */
2136 CALL_syntax___syntax_base___AbsSyntaxVisitor___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
2137 stack_frame_head
= fra
.me
.prev
;
2138 init_table
[itpos4
] = 1;
2141 void syntax___mmbuilder___ClassVerifierVisitor___visit(val_t p0
, val_t p1
){
2142 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2145 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2146 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2148 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassVerifierVisitor___visit
;
2149 fra
.me
.has_broke
= 0;
2150 fra
.me
.REG_size
= 2;
2151 fra
.me
.REG
[0] = NIT_NULL
;
2152 fra
.me
.REG
[1] = NIT_NULL
;
2155 /* ./syntax//mmbuilder.nit:381 */
2156 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2157 if (UNTAG_Bool(REGB0
)) {
2158 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 381);
2160 CALL_syntax___mmbuilder___ANode___accept_class_verifier(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2161 stack_frame_head
= fra
.me
.prev
;
2164 void syntax___mmbuilder___ClassVerifierVisitor___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
2165 int itpos5
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_syntax___mmbuilder___ClassVerifierVisitor
].i
;
2166 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2168 if (init_table
[itpos5
]) return;
2169 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2170 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2172 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ClassVerifierVisitor___init
;
2173 fra
.me
.has_broke
= 0;
2174 fra
.me
.REG_size
= 3;
2175 fra
.me
.REG
[0] = NIT_NULL
;
2176 fra
.me
.REG
[1] = NIT_NULL
;
2177 fra
.me
.REG
[2] = NIT_NULL
;
2181 /* ./syntax//mmbuilder.nit:382 */
2182 CALL_syntax___syntax_base___AbsSyntaxVisitor___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
2183 stack_frame_head
= fra
.me
.prev
;
2184 init_table
[itpos5
] = 1;
2187 void syntax___mmbuilder___PropertyBuilderVisitor___visit(val_t p0
, val_t p1
){
2188 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2191 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2192 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2194 fra
.me
.meth
= LOCATE_syntax___mmbuilder___PropertyBuilderVisitor___visit
;
2195 fra
.me
.has_broke
= 0;
2196 fra
.me
.REG_size
= 2;
2197 fra
.me
.REG
[0] = NIT_NULL
;
2198 fra
.me
.REG
[1] = NIT_NULL
;
2201 /* ./syntax//mmbuilder.nit:392 */
2202 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2203 if (UNTAG_Bool(REGB0
)) {
2204 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 392);
2206 CALL_syntax___mmbuilder___ANode___accept_property_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2207 stack_frame_head
= fra
.me
.prev
;
2210 void syntax___mmbuilder___PropertyBuilderVisitor___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
2211 int itpos6
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_syntax___mmbuilder___PropertyBuilderVisitor
].i
;
2212 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
2214 if (init_table
[itpos6
]) return;
2215 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2216 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2218 fra
.me
.meth
= LOCATE_syntax___mmbuilder___PropertyBuilderVisitor___init
;
2219 fra
.me
.has_broke
= 0;
2220 fra
.me
.REG_size
= 3;
2221 fra
.me
.REG
[0] = NIT_NULL
;
2222 fra
.me
.REG
[1] = NIT_NULL
;
2223 fra
.me
.REG
[2] = NIT_NULL
;
2227 /* ./syntax//mmbuilder.nit:393 */
2228 CALL_syntax___syntax_base___AbsSyntaxVisitor___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
2229 stack_frame_head
= fra
.me
.prev
;
2230 init_table
[itpos6
] = 1;
2233 val_t
syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(val_t p0
){
2234 struct {struct stack_frame_t me
;} fra
;
2237 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2238 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2240 fra
.me
.meth
= LOCATE_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder
;
2241 fra
.me
.has_broke
= 0;
2242 fra
.me
.REG_size
= 1;
2243 fra
.me
.REG
[0] = NIT_NULL
;
2245 /* ./syntax//mmbuilder.nit:401 */
2246 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___PropertyVerifierVisitor____signature_builder(fra
.me
.REG
[0])!=NIT_NULL
);
2247 if (UNTAG_Bool(REGB0
)) {
2249 nit_abort("Uninitialized attribute %s", "_signature_builder", LOCATE_syntax___mmbuilder
, 401);
2251 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___PropertyVerifierVisitor____signature_builder(fra
.me
.REG
[0]);
2252 stack_frame_head
= fra
.me
.prev
;
2253 return fra
.me
.REG
[0];
2255 void syntax___mmbuilder___PropertyVerifierVisitor___signature_builder__eq(val_t p0
, val_t p1
){
2256 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2258 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2259 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2261 fra
.me
.meth
= LOCATE_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder__eq
;
2262 fra
.me
.has_broke
= 0;
2263 fra
.me
.REG_size
= 2;
2264 fra
.me
.REG
[0] = NIT_NULL
;
2265 fra
.me
.REG
[1] = NIT_NULL
;
2268 /* ./syntax//mmbuilder.nit:401 */
2269 ATTR_syntax___mmbuilder___PropertyVerifierVisitor____signature_builder(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2270 stack_frame_head
= fra
.me
.prev
;
2273 void syntax___mmbuilder___PropertyVerifierVisitor___visit(val_t p0
, val_t p1
){
2274 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2277 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2278 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2280 fra
.me
.meth
= LOCATE_syntax___mmbuilder___PropertyVerifierVisitor___visit
;
2281 fra
.me
.has_broke
= 0;
2282 fra
.me
.REG_size
= 2;
2283 fra
.me
.REG
[0] = NIT_NULL
;
2284 fra
.me
.REG
[1] = NIT_NULL
;
2287 /* ./syntax//mmbuilder.nit:404 */
2288 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2289 if (UNTAG_Bool(REGB0
)) {
2290 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 404);
2292 CALL_syntax___mmbuilder___ANode___accept_property_verifier(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
2293 stack_frame_head
= fra
.me
.prev
;
2296 void syntax___mmbuilder___PropertyVerifierVisitor___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
){
2297 int itpos7
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_syntax___mmbuilder___PropertyVerifierVisitor
].i
;
2298 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
2300 if (init_table
[itpos7
]) return;
2301 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2302 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2304 fra
.me
.meth
= LOCATE_syntax___mmbuilder___PropertyVerifierVisitor___init
;
2305 fra
.me
.has_broke
= 0;
2306 fra
.me
.REG_size
= 4;
2307 fra
.me
.REG
[0] = NIT_NULL
;
2308 fra
.me
.REG
[1] = NIT_NULL
;
2309 fra
.me
.REG
[2] = NIT_NULL
;
2310 fra
.me
.REG
[3] = NIT_NULL
;
2314 /* ./syntax//mmbuilder.nit:406 */
2315 fra
.me
.REG
[3] = fra
.me
.REG
[0];
2316 /* ./syntax//mmbuilder.nit:408 */
2317 CALL_syntax___syntax_base___AbsSyntaxVisitor___init(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], init_table
);
2318 /* ./syntax//mmbuilder.nit:409 */
2319 fra
.me
.REG
[2] = NEW_SignatureBuilder_syntax___mmbuilder___SignatureBuilder___init();
2320 ATTR_syntax___mmbuilder___PropertyVerifierVisitor____signature_builder(fra
.me
.REG
[3]) = fra
.me
.REG
[2];
2321 stack_frame_head
= fra
.me
.prev
;
2322 init_table
[itpos7
] = 1;
2325 val_t
syntax___mmbuilder___SignatureBuilder___params(val_t p0
){
2326 struct {struct stack_frame_t me
;} fra
;
2329 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2330 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2332 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___params
;
2333 fra
.me
.has_broke
= 0;
2334 fra
.me
.REG_size
= 1;
2335 fra
.me
.REG
[0] = NIT_NULL
;
2337 /* ./syntax//mmbuilder.nit:415 */
2338 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___SignatureBuilder____params(fra
.me
.REG
[0])!=NIT_NULL
);
2339 if (UNTAG_Bool(REGB0
)) {
2341 nit_abort("Uninitialized attribute %s", "_params", LOCATE_syntax___mmbuilder
, 415);
2343 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___SignatureBuilder____params(fra
.me
.REG
[0]);
2344 stack_frame_head
= fra
.me
.prev
;
2345 return fra
.me
.REG
[0];
2347 void syntax___mmbuilder___SignatureBuilder___params__eq(val_t p0
, val_t p1
){
2348 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2350 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2351 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2353 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___params__eq
;
2354 fra
.me
.has_broke
= 0;
2355 fra
.me
.REG_size
= 2;
2356 fra
.me
.REG
[0] = NIT_NULL
;
2357 fra
.me
.REG
[1] = NIT_NULL
;
2360 /* ./syntax//mmbuilder.nit:415 */
2361 ATTR_syntax___mmbuilder___SignatureBuilder____params(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2362 stack_frame_head
= fra
.me
.prev
;
2365 val_t
syntax___mmbuilder___SignatureBuilder___untyped_params(val_t p0
){
2366 struct {struct stack_frame_t me
;} fra
;
2369 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2370 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2372 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___untyped_params
;
2373 fra
.me
.has_broke
= 0;
2374 fra
.me
.REG_size
= 1;
2375 fra
.me
.REG
[0] = NIT_NULL
;
2377 /* ./syntax//mmbuilder.nit:418 */
2378 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___SignatureBuilder____untyped_params(fra
.me
.REG
[0])!=NIT_NULL
);
2379 if (UNTAG_Bool(REGB0
)) {
2381 nit_abort("Uninitialized attribute %s", "_untyped_params", LOCATE_syntax___mmbuilder
, 418);
2383 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___SignatureBuilder____untyped_params(fra
.me
.REG
[0]);
2384 stack_frame_head
= fra
.me
.prev
;
2385 return fra
.me
.REG
[0];
2387 void syntax___mmbuilder___SignatureBuilder___untyped_params__eq(val_t p0
, val_t p1
){
2388 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2390 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2391 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2393 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___untyped_params__eq
;
2394 fra
.me
.has_broke
= 0;
2395 fra
.me
.REG_size
= 2;
2396 fra
.me
.REG
[0] = NIT_NULL
;
2397 fra
.me
.REG
[1] = NIT_NULL
;
2400 /* ./syntax//mmbuilder.nit:418 */
2401 ATTR_syntax___mmbuilder___SignatureBuilder____untyped_params(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2402 stack_frame_head
= fra
.me
.prev
;
2405 val_t
syntax___mmbuilder___SignatureBuilder___vararg_rank(val_t p0
){
2406 struct {struct stack_frame_t me
;} fra
;
2409 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2410 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2412 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___vararg_rank
;
2413 fra
.me
.has_broke
= 0;
2414 fra
.me
.REG_size
= 1;
2415 fra
.me
.REG
[0] = NIT_NULL
;
2417 /* ./syntax//mmbuilder.nit:421 */
2418 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___SignatureBuilder____vararg_rank(fra
.me
.REG
[0])!=NIT_NULL
);
2419 if (UNTAG_Bool(REGB0
)) {
2421 nit_abort("Uninitialized attribute %s", "_vararg_rank", LOCATE_syntax___mmbuilder
, 421);
2423 REGB0
= ATTR_syntax___mmbuilder___SignatureBuilder____vararg_rank(fra
.me
.REG
[0]);
2424 stack_frame_head
= fra
.me
.prev
;
2427 void syntax___mmbuilder___SignatureBuilder___vararg_rank__eq(val_t p0
, val_t p1
){
2428 struct {struct stack_frame_t me
;} fra
;
2431 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2432 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2434 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___vararg_rank__eq
;
2435 fra
.me
.has_broke
= 0;
2436 fra
.me
.REG_size
= 1;
2437 fra
.me
.REG
[0] = NIT_NULL
;
2440 /* ./syntax//mmbuilder.nit:421 */
2441 ATTR_syntax___mmbuilder___SignatureBuilder____vararg_rank(fra
.me
.REG
[0]) = REGB0
;
2442 stack_frame_head
= fra
.me
.prev
;
2445 val_t
syntax___mmbuilder___SignatureBuilder___closure_decls(val_t p0
){
2446 struct {struct stack_frame_t me
;} fra
;
2449 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2450 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2452 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___closure_decls
;
2453 fra
.me
.has_broke
= 0;
2454 fra
.me
.REG_size
= 1;
2455 fra
.me
.REG
[0] = NIT_NULL
;
2457 /* ./syntax//mmbuilder.nit:424 */
2458 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___SignatureBuilder____closure_decls(fra
.me
.REG
[0])!=NIT_NULL
);
2459 if (UNTAG_Bool(REGB0
)) {
2461 nit_abort("Uninitialized attribute %s", "_closure_decls", LOCATE_syntax___mmbuilder
, 424);
2463 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___SignatureBuilder____closure_decls(fra
.me
.REG
[0]);
2464 stack_frame_head
= fra
.me
.prev
;
2465 return fra
.me
.REG
[0];
2467 void syntax___mmbuilder___SignatureBuilder___closure_decls__eq(val_t p0
, val_t p1
){
2468 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2470 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2471 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2473 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___closure_decls__eq
;
2474 fra
.me
.has_broke
= 0;
2475 fra
.me
.REG_size
= 2;
2476 fra
.me
.REG
[0] = NIT_NULL
;
2477 fra
.me
.REG
[1] = NIT_NULL
;
2480 /* ./syntax//mmbuilder.nit:424 */
2481 ATTR_syntax___mmbuilder___SignatureBuilder____closure_decls(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2482 stack_frame_head
= fra
.me
.prev
;
2485 val_t
syntax___mmbuilder___SignatureBuilder___has_error_occured(val_t p0
){
2486 struct {struct stack_frame_t me
;} fra
;
2489 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2490 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2492 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___has_error_occured
;
2493 fra
.me
.has_broke
= 0;
2494 fra
.me
.REG_size
= 1;
2495 fra
.me
.REG
[0] = NIT_NULL
;
2497 /* ./syntax//mmbuilder.nit:427 */
2498 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___SignatureBuilder____has_error_occured(fra
.me
.REG
[0])!=NIT_NULL
);
2499 if (UNTAG_Bool(REGB0
)) {
2501 nit_abort("Uninitialized attribute %s", "_has_error_occured", LOCATE_syntax___mmbuilder
, 427);
2503 REGB0
= ATTR_syntax___mmbuilder___SignatureBuilder____has_error_occured(fra
.me
.REG
[0]);
2504 stack_frame_head
= fra
.me
.prev
;
2507 void syntax___mmbuilder___SignatureBuilder___has_error_occured__eq(val_t p0
, val_t p1
){
2508 struct {struct stack_frame_t me
;} fra
;
2511 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2512 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2514 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___has_error_occured__eq
;
2515 fra
.me
.has_broke
= 0;
2516 fra
.me
.REG_size
= 1;
2517 fra
.me
.REG
[0] = NIT_NULL
;
2520 /* ./syntax//mmbuilder.nit:427 */
2521 ATTR_syntax___mmbuilder___SignatureBuilder____has_error_occured(fra
.me
.REG
[0]) = REGB0
;
2522 stack_frame_head
= fra
.me
.prev
;
2525 val_t
syntax___mmbuilder___SignatureBuilder___signature(val_t p0
){
2526 struct {struct stack_frame_t me
;} fra
;
2528 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2529 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2531 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___signature
;
2532 fra
.me
.has_broke
= 0;
2533 fra
.me
.REG_size
= 1;
2534 fra
.me
.REG
[0] = NIT_NULL
;
2536 /* ./syntax//mmbuilder.nit:430 */
2537 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___SignatureBuilder____signature(fra
.me
.REG
[0]);
2538 stack_frame_head
= fra
.me
.prev
;
2539 return fra
.me
.REG
[0];
2541 void syntax___mmbuilder___SignatureBuilder___signature__eq(val_t p0
, val_t p1
){
2542 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2544 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2545 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2547 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___signature__eq
;
2548 fra
.me
.has_broke
= 0;
2549 fra
.me
.REG_size
= 2;
2550 fra
.me
.REG
[0] = NIT_NULL
;
2551 fra
.me
.REG
[1] = NIT_NULL
;
2554 /* ./syntax//mmbuilder.nit:430 */
2555 ATTR_syntax___mmbuilder___SignatureBuilder____signature(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
2556 stack_frame_head
= fra
.me
.prev
;
2559 void syntax___mmbuilder___SignatureBuilder___init(val_t p0
, int* init_table
){
2560 int itpos8
= VAL2OBJ(p0
)->vft
[INIT_TABLE_POS_syntax___mmbuilder___SignatureBuilder
].i
;
2561 struct {struct stack_frame_t me
;} fra
;
2563 if (init_table
[itpos8
]) return;
2564 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2565 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2567 fra
.me
.meth
= LOCATE_syntax___mmbuilder___SignatureBuilder___init
;
2568 fra
.me
.has_broke
= 0;
2569 fra
.me
.REG_size
= 0;
2570 stack_frame_head
= fra
.me
.prev
;
2571 init_table
[itpos8
] = 1;
2574 void syntax___mmbuilder___ANode___accept_class_builder(val_t p0
, val_t p1
){
2575 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2577 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2578 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2580 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ANode___accept_class_builder
;
2581 fra
.me
.has_broke
= 0;
2582 fra
.me
.REG_size
= 2;
2583 fra
.me
.REG
[0] = NIT_NULL
;
2584 fra
.me
.REG
[1] = NIT_NULL
;
2587 /* ./syntax//mmbuilder.nit:437 */
2588 CALL_syntax___syntax_base___ANode___accept_abs_syntax_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2589 stack_frame_head
= fra
.me
.prev
;
2592 void syntax___mmbuilder___ANode___accept_class_specialization_builder(val_t p0
, val_t p1
){
2593 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2595 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2596 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2598 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ANode___accept_class_specialization_builder
;
2599 fra
.me
.has_broke
= 0;
2600 fra
.me
.REG_size
= 2;
2601 fra
.me
.REG
[0] = NIT_NULL
;
2602 fra
.me
.REG
[1] = NIT_NULL
;
2605 /* ./syntax//mmbuilder.nit:438 */
2606 CALL_syntax___syntax_base___ANode___accept_abs_syntax_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2607 stack_frame_head
= fra
.me
.prev
;
2610 void syntax___mmbuilder___ANode___accept_class_ancestor_builder(val_t p0
, val_t p1
){
2611 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2613 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2614 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2616 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ANode___accept_class_ancestor_builder
;
2617 fra
.me
.has_broke
= 0;
2618 fra
.me
.REG_size
= 2;
2619 fra
.me
.REG
[0] = NIT_NULL
;
2620 fra
.me
.REG
[1] = NIT_NULL
;
2623 /* ./syntax//mmbuilder.nit:439 */
2624 CALL_syntax___syntax_base___ANode___accept_abs_syntax_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2625 stack_frame_head
= fra
.me
.prev
;
2628 void syntax___mmbuilder___ANode___accept_class_verifier(val_t p0
, val_t p1
){
2629 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2631 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2632 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2634 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ANode___accept_class_verifier
;
2635 fra
.me
.has_broke
= 0;
2636 fra
.me
.REG_size
= 2;
2637 fra
.me
.REG
[0] = NIT_NULL
;
2638 fra
.me
.REG
[1] = NIT_NULL
;
2641 /* ./syntax//mmbuilder.nit:440 */
2642 CALL_syntax___syntax_base___ANode___accept_abs_syntax_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2643 stack_frame_head
= fra
.me
.prev
;
2646 void syntax___mmbuilder___ANode___accept_property_builder(val_t p0
, val_t p1
){
2647 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2649 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2650 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2652 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ANode___accept_property_builder
;
2653 fra
.me
.has_broke
= 0;
2654 fra
.me
.REG_size
= 2;
2655 fra
.me
.REG
[0] = NIT_NULL
;
2656 fra
.me
.REG
[1] = NIT_NULL
;
2659 /* ./syntax//mmbuilder.nit:441 */
2660 CALL_syntax___syntax_base___ANode___accept_abs_syntax_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2661 stack_frame_head
= fra
.me
.prev
;
2664 void syntax___mmbuilder___ANode___accept_property_verifier(val_t p0
, val_t p1
){
2665 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2667 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2668 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2670 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ANode___accept_property_verifier
;
2671 fra
.me
.has_broke
= 0;
2672 fra
.me
.REG_size
= 2;
2673 fra
.me
.REG
[0] = NIT_NULL
;
2674 fra
.me
.REG
[1] = NIT_NULL
;
2677 /* ./syntax//mmbuilder.nit:442 */
2678 CALL_syntax___syntax_base___ANode___accept_abs_syntax_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
2679 stack_frame_head
= fra
.me
.prev
;
2682 void syntax___mmbuilder___AModule___import_super_modules(val_t p0
, val_t p1
, val_t p2
){
2683 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
2687 static val_t once_value_2
; /* Once value */
2688 static val_t once_value_3
; /* Once value */
2689 static val_t once_value_4
; /* Once value */
2690 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2691 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2693 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AModule___import_super_modules
;
2694 fra
.me
.has_broke
= 0;
2695 fra
.me
.REG_size
= 5;
2696 fra
.me
.REG
[0] = NIT_NULL
;
2697 fra
.me
.REG
[1] = NIT_NULL
;
2698 fra
.me
.REG
[2] = NIT_NULL
;
2699 fra
.me
.REG
[3] = NIT_NULL
;
2700 fra
.me
.REG
[4] = NIT_NULL
;
2704 /* ./syntax//mmbuilder.nit:450 */
2705 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___init();
2706 /* ./syntax//mmbuilder.nit:451 */
2707 fra
.me
.REG
[4] = NIT_NULL
;
2708 /* ./syntax//mmbuilder.nit:452 */
2709 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AModule___n_imports(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2710 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[0])(fra
.me
.REG
[0], (&(fra
.me
)), ((fun_t
)OC_syntax___mmbuilder___AModule___import_super_modules_1
));
2711 /* ./syntax//mmbuilder.nit:462 */
2712 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
2713 if (UNTAG_Bool(REGB0
)) {
2715 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
2716 if (UNTAG_Bool(REGB1
)) {
2717 REGB1
= TAG_Bool(false);
2720 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
2724 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2725 if (UNTAG_Bool(REGB0
)) {
2726 /* ./syntax//mmbuilder.nit:463 */
2727 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2728 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2729 if (UNTAG_Bool(REGB0
)) {
2730 /* ./syntax//mmbuilder.nit:464 */
2731 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
2732 if (UNTAG_Bool(REGB0
)) {
2733 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 464);
2735 fra
.me
.REG
[4] = CALL_parser___parser_nodes___ANode___location(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
2736 if (!once_value_2
) {
2737 fra
.me
.REG
[0] = BOX_NativeString("Error: Top modules cannot import other modules.");
2738 REGB0
= TAG_Int(47);
2739 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
2740 once_value_2
= fra
.me
.REG
[0];
2741 register_static_object(&once_value_2
);
2742 } else fra
.me
.REG
[0] = once_value_2
;
2743 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2744 CALL_mmloader___ToolContext___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4], fra
.me
.REG
[0]);
2747 /* ./syntax//mmbuilder.nit:466 */
2748 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2749 if (UNTAG_Bool(REGB0
)) {
2750 /* ./syntax//mmbuilder.nit:467 */
2751 if (!once_value_3
) {
2752 if (!once_value_4
) {
2753 fra
.me
.REG
[0] = BOX_NativeString("standard");
2755 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
2756 once_value_4
= fra
.me
.REG
[0];
2757 register_static_object(&once_value_4
);
2758 } else fra
.me
.REG
[0] = once_value_4
;
2759 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2760 fra
.me
.REG
[0] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2761 once_value_3
= fra
.me
.REG
[0];
2762 register_static_object(&once_value_3
);
2763 } else fra
.me
.REG
[0] = once_value_3
;
2764 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2765 /* ./syntax//mmbuilder.nit:468 */
2766 fra
.me
.REG
[0] = CALL_mmloader___ToolContext___get_module(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[2]);
2767 /* ./syntax//mmbuilder.nit:469 */
2768 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
2769 /* ./syntax//mmbuilder.nit:470 */
2771 CALL_metamodel___abstractmetamodel___MMModule___add_super_module(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0], REGB0
);
2774 /* ./syntax//mmbuilder.nit:473 */
2775 CALL_metamodel___abstractmetamodel___MMContext___add_module(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[2], fra
.me
.REG
[3]);
2776 stack_frame_head
= fra
.me
.prev
;
2779 void OC_syntax___mmbuilder___AModule___import_super_modules_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
2780 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
2785 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2786 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2788 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AModule___import_super_modules
;
2789 fra
.me
.has_broke
= 0;
2790 fra
.me
.REG_size
= 2;
2791 fra
.me
.REG
[0] = NIT_NULL
;
2792 fra
.me
.REG
[1] = NIT_NULL
;
2793 fra
.me
.closure_ctx
= closctx_param
;
2794 fra
.me
.closure_funs
= CREG
;
2796 CREG
[0] = clos_fun0
;
2797 /* ./syntax//mmbuilder.nit:453 */
2798 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___AImport___module_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2799 /* ./syntax//mmbuilder.nit:454 */
2800 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2801 if (UNTAG_Bool(REGB0
)) {
2803 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
2804 if (UNTAG_Bool(REGB1
)) {
2805 REGB1
= TAG_Bool(false);
2808 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
2812 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2813 if (UNTAG_Bool(REGB0
)) {
2814 /* ./syntax//mmbuilder.nit:455 */
2815 fra
.me
.REG
[1] = CALL_mmloader___ToolContext___get_module(closctx
->REG
[1])(closctx
->REG
[1], fra
.me
.REG
[1], closctx
->REG
[2]);
2816 /* ./syntax//mmbuilder.nit:456 */
2817 CALL_standard___collection___abstract_collection___SimpleCollection___add(closctx
->REG
[3])(closctx
->REG
[3], fra
.me
.REG
[1]);
2818 /* ./syntax//mmbuilder.nit:457 */
2819 REGB0
= CALL_syntax___mmbuilder___AImport___visibility_level(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2820 CALL_metamodel___abstractmetamodel___MMModule___add_super_module(closctx
->REG
[2])(closctx
->REG
[2], fra
.me
.REG
[1], REGB0
);
2822 /* ./syntax//mmbuilder.nit:459 */
2823 closctx
->REG
[4] = fra
.me
.REG
[0];
2825 stack_frame_head
= fra
.me
.prev
;
2828 void syntax___mmbuilder___AModuledecl___accept_class_builder(val_t p0
, val_t p1
){
2829 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
2833 static val_t once_value_1
; /* Once value */
2834 static val_t once_value_2
; /* Once value */
2835 static val_t once_value_3
; /* Once value */
2836 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2837 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2839 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AModuledecl___accept_class_builder
;
2840 fra
.me
.has_broke
= 0;
2841 fra
.me
.REG_size
= 5;
2842 fra
.me
.REG
[0] = NIT_NULL
;
2843 fra
.me
.REG
[1] = NIT_NULL
;
2844 fra
.me
.REG
[2] = NIT_NULL
;
2845 fra
.me
.REG
[3] = NIT_NULL
;
2846 fra
.me
.REG
[4] = NIT_NULL
;
2849 /* ./syntax//mmbuilder.nit:480 */
2850 fra
.me
.REG
[2] = CALL_parser___parser_nodes___AModuledecl___n_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2851 fra
.me
.REG
[2] = CALL_parser___parser_nodes___AModuleName___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2852 fra
.me
.REG
[2] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2853 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2854 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMModule___name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2855 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[2],fra
.me
.REG
[3]));
2856 if (UNTAG_Bool(REGB0
)) {
2858 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
2861 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
2862 if (UNTAG_Bool(REGB0
)) {
2863 /* ./syntax//mmbuilder.nit:481 */
2864 fra
.me
.REG
[3] = CALL_parser___parser_nodes___AModuledecl___n_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2865 fra
.me
.REG
[3] = CALL_parser___parser_nodes___AModuleName___n_id(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
2867 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
2868 if (!once_value_1
) {
2869 fra
.me
.REG
[4] = BOX_NativeString("Error: Module name mismatch between ");
2870 REGB0
= TAG_Int(36);
2871 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
2872 once_value_1
= fra
.me
.REG
[4];
2873 register_static_object(&once_value_1
);
2874 } else fra
.me
.REG
[4] = once_value_1
;
2875 fra
.me
.REG
[4] = fra
.me
.REG
[4];
2876 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
2877 fra
.me
.REG
[4] = CALL_syntax___syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
2878 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMModule___name(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
2879 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
2880 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
2881 if (!once_value_2
) {
2882 fra
.me
.REG
[4] = BOX_NativeString(" and ");
2884 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
2885 once_value_2
= fra
.me
.REG
[4];
2886 register_static_object(&once_value_2
);
2887 } else fra
.me
.REG
[4] = once_value_2
;
2888 fra
.me
.REG
[4] = fra
.me
.REG
[4];
2889 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
2890 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AModuledecl___n_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2891 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AModuleName___n_id(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2892 fra
.me
.REG
[0] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2893 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2894 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2895 if (!once_value_3
) {
2896 fra
.me
.REG
[0] = BOX_NativeString("");
2898 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
2899 once_value_3
= fra
.me
.REG
[0];
2900 register_static_object(&once_value_3
);
2901 } else fra
.me
.REG
[0] = once_value_3
;
2902 fra
.me
.REG
[0] = fra
.me
.REG
[0];
2903 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
2904 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
2905 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3], fra
.me
.REG
[2]);
2907 stack_frame_head
= fra
.me
.prev
;
2910 val_t
syntax___mmbuilder___AImport___module_name(val_t p0
){
2911 struct {struct stack_frame_t me
;} fra
;
2913 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2914 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2916 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AImport___module_name
;
2917 fra
.me
.has_broke
= 0;
2918 fra
.me
.REG_size
= 0;
2919 /* ./syntax//mmbuilder.nit:487 */
2920 nit_abort("Deferred method called", NULL
, LOCATE_syntax___mmbuilder
, 487);
2921 stack_frame_head
= fra
.me
.prev
;
2924 val_t
syntax___mmbuilder___AImport___visibility_level(val_t p0
){
2925 struct {struct stack_frame_t me
;} fra
;
2927 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2928 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2930 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AImport___visibility_level
;
2931 fra
.me
.has_broke
= 0;
2932 fra
.me
.REG_size
= 0;
2933 /* ./syntax//mmbuilder.nit:490 */
2934 nit_abort("Deferred method called", NULL
, LOCATE_syntax___mmbuilder
, 490);
2935 stack_frame_head
= fra
.me
.prev
;
2938 val_t
syntax___mmbuilder___AStdImport___module_name(val_t p0
){
2939 struct {struct stack_frame_t me
;} fra
;
2941 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2942 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2944 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AStdImport___module_name
;
2945 fra
.me
.has_broke
= 0;
2946 fra
.me
.REG_size
= 1;
2947 fra
.me
.REG
[0] = NIT_NULL
;
2949 /* ./syntax//mmbuilder.nit:496 */
2950 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AStdImport___n_name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2951 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AModuleName___n_id(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2952 fra
.me
.REG
[0] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2955 stack_frame_head
= fra
.me
.prev
;
2956 return fra
.me
.REG
[0];
2958 val_t
syntax___mmbuilder___AStdImport___visibility_level(val_t p0
){
2959 struct {struct stack_frame_t me
;} fra
;
2962 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2963 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2965 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AStdImport___visibility_level
;
2966 fra
.me
.has_broke
= 0;
2967 fra
.me
.REG_size
= 1;
2968 fra
.me
.REG
[0] = NIT_NULL
;
2970 /* ./syntax//mmbuilder.nit:500 */
2971 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AStdImport___n_visibility(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2972 REGB0
= CALL_syntax___mmbuilder___AVisibility___level(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
2975 stack_frame_head
= fra
.me
.prev
;
2978 val_t
syntax___mmbuilder___ANoImport___module_name(val_t p0
){
2979 struct {struct stack_frame_t me
;} fra
;
2981 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
2982 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
2984 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ANoImport___module_name
;
2985 fra
.me
.has_broke
= 0;
2986 fra
.me
.REG_size
= 1;
2987 fra
.me
.REG
[0] = NIT_NULL
;
2989 /* ./syntax//mmbuilder.nit:506 */
2990 fra
.me
.REG
[0] = NIT_NULL
;
2993 stack_frame_head
= fra
.me
.prev
;
2994 return fra
.me
.REG
[0];
2996 val_t
syntax___mmbuilder___AVisibility___level(val_t p0
){
2997 struct {struct stack_frame_t me
;} fra
;
2999 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3000 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3002 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AVisibility___level
;
3003 fra
.me
.has_broke
= 0;
3004 fra
.me
.REG_size
= 0;
3005 /* ./syntax//mmbuilder.nit:511 */
3006 nit_abort("Deferred method called", NULL
, LOCATE_syntax___mmbuilder
, 511);
3007 stack_frame_head
= fra
.me
.prev
;
3010 val_t
syntax___mmbuilder___APublicVisibility___level(val_t p0
){
3011 struct {struct stack_frame_t me
;} fra
;
3014 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3015 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3017 fra
.me
.meth
= LOCATE_syntax___mmbuilder___APublicVisibility___level
;
3018 fra
.me
.has_broke
= 0;
3019 fra
.me
.REG_size
= 1;
3020 fra
.me
.REG
[0] = NIT_NULL
;
3022 /* ./syntax//mmbuilder.nit:515 */
3026 stack_frame_head
= fra
.me
.prev
;
3029 val_t
syntax___mmbuilder___AProtectedVisibility___level(val_t p0
){
3030 struct {struct stack_frame_t me
;} fra
;
3033 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3034 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3036 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AProtectedVisibility___level
;
3037 fra
.me
.has_broke
= 0;
3038 fra
.me
.REG_size
= 1;
3039 fra
.me
.REG
[0] = NIT_NULL
;
3041 /* ./syntax//mmbuilder.nit:518 */
3045 stack_frame_head
= fra
.me
.prev
;
3048 val_t
syntax___mmbuilder___APrivateVisibility___level(val_t p0
){
3049 struct {struct stack_frame_t me
;} fra
;
3052 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3053 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3055 fra
.me
.meth
= LOCATE_syntax___mmbuilder___APrivateVisibility___level
;
3056 fra
.me
.has_broke
= 0;
3057 fra
.me
.REG_size
= 1;
3058 fra
.me
.REG
[0] = NIT_NULL
;
3060 /* ./syntax//mmbuilder.nit:521 */
3064 stack_frame_head
= fra
.me
.prev
;
3067 val_t
syntax___mmbuilder___AIntrudeVisibility___level(val_t p0
){
3068 struct {struct stack_frame_t me
;} fra
;
3071 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3072 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3074 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AIntrudeVisibility___level
;
3075 fra
.me
.has_broke
= 0;
3076 fra
.me
.REG_size
= 1;
3077 fra
.me
.REG
[0] = NIT_NULL
;
3079 /* ./syntax//mmbuilder.nit:524 */
3083 stack_frame_head
= fra
.me
.prev
;
3086 val_t
syntax___mmbuilder___AClassdef___local_class(val_t p0
){
3087 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
3090 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3091 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3093 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClassdef___local_class
;
3094 fra
.me
.has_broke
= 0;
3095 fra
.me
.REG_size
= 2;
3096 fra
.me
.REG
[0] = NIT_NULL
;
3097 fra
.me
.REG
[1] = NIT_NULL
;
3099 /* ./syntax//mmbuilder.nit:529 */
3100 fra
.me
.REG
[1] = fra
.me
.REG
[0];
3101 fra
.me
.REG
[1] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[1]);
3102 REGB0
= TAG_Bool(fra
.me
.REG
[1]!=NIT_NULL
);
3103 if (UNTAG_Bool(REGB0
)) {
3105 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 529);
3109 stack_frame_head
= fra
.me
.prev
;
3110 return fra
.me
.REG
[1];
3112 val_t
syntax___mmbuilder___AClassdef___name(val_t p0
){
3113 struct {struct stack_frame_t me
;} fra
;
3115 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3116 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3118 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClassdef___name
;
3119 fra
.me
.has_broke
= 0;
3120 fra
.me
.REG_size
= 0;
3121 /* ./syntax//mmbuilder.nit:532 */
3122 nit_abort("Deferred method called", NULL
, LOCATE_syntax___mmbuilder
, 532);
3123 stack_frame_head
= fra
.me
.prev
;
3126 val_t
syntax___mmbuilder___AClassdef___arity(val_t p0
){
3127 struct {struct stack_frame_t me
;} fra
;
3130 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3131 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3133 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClassdef___arity
;
3134 fra
.me
.has_broke
= 0;
3135 fra
.me
.REG_size
= 1;
3136 fra
.me
.REG
[0] = NIT_NULL
;
3138 /* ./syntax//mmbuilder.nit:536 */
3142 stack_frame_head
= fra
.me
.prev
;
3145 val_t
syntax___mmbuilder___AClassdef___visibility_level(val_t p0
){
3146 struct {struct stack_frame_t me
;} fra
;
3149 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3150 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3152 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClassdef___visibility_level
;
3153 fra
.me
.has_broke
= 0;
3154 fra
.me
.REG_size
= 1;
3155 fra
.me
.REG
[0] = NIT_NULL
;
3157 /* ./syntax//mmbuilder.nit:539 */
3161 stack_frame_head
= fra
.me
.prev
;
3164 void syntax___mmbuilder___AClassdef___accept_class_builder(val_t p0
, val_t p1
){
3165 struct {struct stack_frame_t me
; val_t MORE_REG
[8];} fra
;
3169 static val_t once_value_1
; /* Once value */
3170 static val_t once_value_2
; /* Once value */
3171 static val_t once_value_3
; /* Once value */
3172 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3173 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3175 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClassdef___accept_class_builder
;
3176 fra
.me
.has_broke
= 0;
3177 fra
.me
.REG_size
= 9;
3178 fra
.me
.REG
[0] = NIT_NULL
;
3179 fra
.me
.REG
[1] = NIT_NULL
;
3180 fra
.me
.REG
[2] = NIT_NULL
;
3181 fra
.me
.REG
[3] = NIT_NULL
;
3182 fra
.me
.REG
[4] = NIT_NULL
;
3183 fra
.me
.REG
[5] = NIT_NULL
;
3184 fra
.me
.REG
[6] = NIT_NULL
;
3185 fra
.me
.REG
[7] = NIT_NULL
;
3186 fra
.me
.REG
[8] = NIT_NULL
;
3189 /* ./syntax//mmbuilder.nit:541 */
3190 fra
.me
.REG
[2] = fra
.me
.REG
[0];
3191 fra
.me
.REG
[3] = fra
.me
.REG
[1];
3192 /* ./syntax//mmbuilder.nit:544 */
3193 fra
.me
.REG
[4] = CALL_syntax___syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3194 /* ./syntax//mmbuilder.nit:545 */
3195 fra
.me
.REG
[5] = CALL_syntax___syntax_base___MMSrcModule___src_local_classes(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3196 /* ./syntax//mmbuilder.nit:546 */
3197 fra
.me
.REG
[6] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3198 REGB0
= CALL_standard___collection___abstract_collection___MapRead___has_key(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
3199 if (UNTAG_Bool(REGB0
)) {
3200 /* ./syntax//mmbuilder.nit:547 */
3201 fra
.me
.REG
[6] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3202 fra
.me
.REG
[6] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
3203 /* ./syntax//mmbuilder.nit:548 */
3204 ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[2]) = fra
.me
.REG
[6];
3205 /* ./syntax//mmbuilder.nit:549 */
3206 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[2], COLOR_parser___parser_nodes___AStdClassdef
, ID_parser___parser_nodes___AStdClassdef
)) /*cast AStdClassdef*/;
3207 if (UNTAG_Bool(REGB0
)) {
3208 /* ./syntax//mmbuilder.nit:551 */
3210 fra
.me
.REG
[7] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3211 if (!once_value_1
) {
3212 fra
.me
.REG
[8] = BOX_NativeString("Error: A class ");
3213 REGB0
= TAG_Int(15);
3214 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB0
);
3215 once_value_1
= fra
.me
.REG
[8];
3216 register_static_object(&once_value_1
);
3217 } else fra
.me
.REG
[8] = once_value_1
;
3218 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3219 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3220 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3221 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
3222 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3223 if (!once_value_2
) {
3224 fra
.me
.REG
[8] = BOX_NativeString(" is already defined at line ");
3225 REGB0
= TAG_Int(28);
3226 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB0
);
3227 once_value_2
= fra
.me
.REG
[8];
3228 register_static_object(&once_value_2
);
3229 } else fra
.me
.REG
[8] = once_value_2
;
3230 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3231 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3232 fra
.me
.REG
[8] = CALL_syntax___syntax_base___MMSrcLocalClass___node(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3233 REGB0
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
3234 if (UNTAG_Bool(REGB0
)) {
3235 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 551);
3237 fra
.me
.REG
[8] = CALL_parser___parser_nodes___ANode___location(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
3238 REGB0
= CALL_location___Location___line_start(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
3239 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
3240 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3241 if (!once_value_3
) {
3242 fra
.me
.REG
[8] = BOX_NativeString(".");
3244 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB0
);
3245 once_value_3
= fra
.me
.REG
[8];
3246 register_static_object(&once_value_3
);
3247 } else fra
.me
.REG
[8] = once_value_3
;
3248 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3249 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3250 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
3251 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[7]);
3252 /* ./syntax//mmbuilder.nit:552 */
3255 /* ./syntax//mmbuilder.nit:555 */
3256 fra
.me
.REG
[7] = CALL_syntax___syntax_base___MMSrcLocalClass___node(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3257 /* ./syntax//mmbuilder.nit:556 */
3259 REGB0
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
3260 if (UNTAG_Bool(REGB0
)) {
3261 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 556);
3263 fra
.me
.REG
[8] = CALL_syntax___syntax_base___AClassdef___next_node(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
3264 REGB0
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
3265 if (UNTAG_Bool(REGB0
)) {
3267 REGB1
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
3268 if (UNTAG_Bool(REGB1
)) {
3269 REGB1
= TAG_Bool(false);
3272 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[8])(fra
.me
.REG
[8], NIT_NULL
);
3276 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
3277 if (UNTAG_Bool(REGB0
)) {
3278 REGB0
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
3279 if (UNTAG_Bool(REGB0
)) {
3280 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 556);
3282 fra
.me
.REG
[8] = CALL_syntax___syntax_base___AClassdef___next_node(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
3283 fra
.me
.REG
[7] = fra
.me
.REG
[8];
3289 /* ./syntax//mmbuilder.nit:557 */
3290 REGB0
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
3291 if (UNTAG_Bool(REGB0
)) {
3292 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 557);
3294 CALL_syntax___syntax_base___AClassdef___next_node__eq(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[2]);
3296 /* ./syntax//mmbuilder.nit:559 */
3297 fra
.me
.REG
[7] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3298 REGB0
= CALL_syntax___mmbuilder___AClassdef___arity(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3299 fra
.me
.REG
[7] = NEW_MMSrcLocalClass_syntax___syntax_base___MMSrcLocalClass___init(fra
.me
.REG
[4], fra
.me
.REG
[7], fra
.me
.REG
[2], REGB0
);
3300 fra
.me
.REG
[6] = fra
.me
.REG
[7];
3301 /* ./syntax//mmbuilder.nit:560 */
3302 ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[2]) = fra
.me
.REG
[6];
3303 /* ./syntax//mmbuilder.nit:561 */
3304 fra
.me
.REG
[7] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3305 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[7], fra
.me
.REG
[6]);
3306 /* ./syntax//mmbuilder.nit:562 */
3307 fra
.me
.REG
[7] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3308 REGB0
= CALL_metamodel___abstractmetamodel___MMModule___has_global_class_named(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[7]);
3309 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
3310 if (UNTAG_Bool(REGB0
)) {
3311 /* ./syntax//mmbuilder.nit:563 */
3312 CALL_syntax___mmbuilder___AClassdef___build_class_introduction(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3314 /* ./syntax//mmbuilder.nit:565 */
3315 fra
.me
.REG
[7] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3316 fra
.me
.REG
[7] = CALL_metamodel___abstractmetamodel___MMModule___global_class_named(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[7]);
3317 /* ./syntax//mmbuilder.nit:566 */
3318 CALL_syntax___mmbuilder___AClassdef___build_class_refinement(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[7]);
3321 /* ./syntax//mmbuilder.nit:570 */
3323 CALL_syntax___mmbuilder___ClassBuilderVisitor___local_class_arity__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB0
);
3324 /* ./syntax//mmbuilder.nit:571 */
3325 fra
.me
.REG
[6] = CALL_syntax___syntax_base___MMSrcLocalClass___formal_dict(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3326 CALL_syntax___mmbuilder___ClassBuilderVisitor___formals__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[6]);
3327 /* ./syntax//mmbuilder.nit:574 */
3328 CALL_SUPER_syntax___mmbuilder___AClassdef___accept_class_builder(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3329 /* ./syntax//mmbuilder.nit:577 */
3330 CALL_syntax___mmbuilder___ClassBuilderVisitor___formals__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
3332 stack_frame_head
= fra
.me
.prev
;
3335 void syntax___mmbuilder___AClassdef___build_class_introduction(val_t p0
, val_t p1
){
3336 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
3340 static val_t once_value_1
; /* Once value */
3341 static val_t once_value_2
; /* Once value */
3342 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3343 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3345 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClassdef___build_class_introduction
;
3346 fra
.me
.has_broke
= 0;
3347 fra
.me
.REG_size
= 5;
3348 fra
.me
.REG
[0] = NIT_NULL
;
3349 fra
.me
.REG
[1] = NIT_NULL
;
3350 fra
.me
.REG
[2] = NIT_NULL
;
3351 fra
.me
.REG
[3] = NIT_NULL
;
3352 fra
.me
.REG
[4] = NIT_NULL
;
3355 /* ./syntax//mmbuilder.nit:582 */
3356 fra
.me
.REG
[2] = CALL_syntax___syntax_base___AClassdef___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3357 CALL_metamodel___abstractmetamodel___MMLocalClass___new_global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3358 /* ./syntax//mmbuilder.nit:583 */
3359 fra
.me
.REG
[2] = CALL_syntax___syntax_base___AClassdef___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3360 fra
.me
.REG
[2] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3361 /* ./syntax//mmbuilder.nit:585 */
3362 REGB0
= CALL_syntax___mmbuilder___AClassdef___visibility_level(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3363 CALL_metamodel___abstractmetamodel___MMGlobalClass___visibility_level__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
3364 /* ./syntax//mmbuilder.nit:586 */
3365 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_parser___parser_nodes___AStdClassdef
, ID_parser___parser_nodes___AStdClassdef
)) /*cast AStdClassdef*/;
3366 if (UNTAG_Bool(REGB0
)) {
3367 /* ./syntax//mmbuilder.nit:587 */
3368 fra
.me
.REG
[3] = CALL_parser___parser_nodes___AStdClassdef___n_kwredef(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3369 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3370 if (UNTAG_Bool(REGB0
)) {
3372 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3373 if (UNTAG_Bool(REGB1
)) {
3374 REGB1
= TAG_Bool(false);
3377 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
3381 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
3382 if (UNTAG_Bool(REGB0
)) {
3383 /* ./syntax//mmbuilder.nit:588 */
3385 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3386 if (!once_value_1
) {
3387 fra
.me
.REG
[4] = BOX_NativeString("Redef error: No class ");
3388 REGB0
= TAG_Int(22);
3389 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
3390 once_value_1
= fra
.me
.REG
[4];
3391 register_static_object(&once_value_1
);
3392 } else fra
.me
.REG
[4] = once_value_1
;
3393 fra
.me
.REG
[4] = fra
.me
.REG
[4];
3394 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3395 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3396 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3397 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3398 if (!once_value_2
) {
3399 fra
.me
.REG
[4] = BOX_NativeString(" is imported. Remove the redef keyword to define a new class.");
3400 REGB0
= TAG_Int(61);
3401 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
3402 once_value_2
= fra
.me
.REG
[4];
3403 register_static_object(&once_value_2
);
3404 } else fra
.me
.REG
[4] = once_value_2
;
3405 fra
.me
.REG
[4] = fra
.me
.REG
[4];
3406 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3407 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3408 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[3]);
3409 /* ./syntax//mmbuilder.nit:589 */
3412 /* ./syntax//mmbuilder.nit:591 */
3413 fra
.me
.REG
[3] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3414 REGB0
= CALL_syntax___mmbuilder___AClasskind___is_interface(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3415 CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
3416 /* ./syntax//mmbuilder.nit:592 */
3417 fra
.me
.REG
[3] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3418 REGB0
= CALL_syntax___mmbuilder___AClasskind___is_abstract(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3419 CALL_metamodel___abstractmetamodel___MMGlobalClass___is_abstract__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
3420 /* ./syntax//mmbuilder.nit:593 */
3421 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3422 REGB0
= CALL_syntax___mmbuilder___AClasskind___is_enum(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3423 CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
3426 stack_frame_head
= fra
.me
.prev
;
3429 void syntax___mmbuilder___AClassdef___build_class_refinement(val_t p0
, val_t p1
, val_t p2
){
3430 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
3435 static val_t once_value_1
; /* Once value */
3436 static val_t once_value_2
; /* Once value */
3437 static val_t once_value_4
; /* Once value */
3438 static val_t once_value_5
; /* Once value */
3439 static val_t once_value_6
; /* Once value */
3440 static val_t once_value_7
; /* Once value */
3441 static val_t once_value_8
; /* Once value */
3442 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3443 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3445 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClassdef___build_class_refinement
;
3446 fra
.me
.has_broke
= 0;
3447 fra
.me
.REG_size
= 5;
3448 fra
.me
.REG
[0] = NIT_NULL
;
3449 fra
.me
.REG
[1] = NIT_NULL
;
3450 fra
.me
.REG
[2] = NIT_NULL
;
3451 fra
.me
.REG
[3] = NIT_NULL
;
3452 fra
.me
.REG
[4] = NIT_NULL
;
3456 /* ./syntax//mmbuilder.nit:599 */
3457 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AClassdef___local_class(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3458 CALL_metamodel___abstractmetamodel___MMLocalClass___set_global(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
3459 /* ./syntax//mmbuilder.nit:601 */
3460 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3461 CALL_syntax___syntax_base___MMGlobalClass___check_visibility(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[3]);
3462 /* ./syntax//mmbuilder.nit:602 */
3463 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_parser___parser_nodes___AStdClassdef
, ID_parser___parser_nodes___AStdClassdef
)) /*cast AStdClassdef*/;
3464 if (UNTAG_Bool(REGB0
)) {
3465 fra
.me
.REG
[3] = CALL_parser___parser_nodes___AStdClassdef___n_kwredef(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3466 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3467 if (UNTAG_Bool(REGB0
)) {
3469 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3470 if (UNTAG_Bool(REGB1
)) {
3471 REGB1
= TAG_Bool(false);
3474 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
3479 REGB1
= TAG_Bool(false);
3482 if (UNTAG_Bool(REGB0
)) {
3483 /* ./syntax//mmbuilder.nit:603 */
3485 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
3486 if (!once_value_1
) {
3487 fra
.me
.REG
[4] = BOX_NativeString("Redef error: ");
3488 REGB0
= TAG_Int(13);
3489 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
3490 once_value_1
= fra
.me
.REG
[4];
3491 register_static_object(&once_value_1
);
3492 } else fra
.me
.REG
[4] = once_value_1
;
3493 fra
.me
.REG
[4] = fra
.me
.REG
[4];
3494 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3495 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3496 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3497 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3498 if (!once_value_2
) {
3499 fra
.me
.REG
[4] = BOX_NativeString(" is an imported class. Add the redef keyword to refine it.");
3500 REGB0
= TAG_Int(58);
3501 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
3502 once_value_2
= fra
.me
.REG
[4];
3503 register_static_object(&once_value_2
);
3504 } else fra
.me
.REG
[4] = once_value_2
;
3505 fra
.me
.REG
[4] = fra
.me
.REG
[4];
3506 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3507 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3508 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[3]);
3509 /* ./syntax//mmbuilder.nit:604 */
3512 /* ./syntax//mmbuilder.nit:607 */
3513 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3514 REGB0
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3515 fra
.me
.REG
[3] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[0]);
3516 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
3517 if (UNTAG_Bool(REGB1
)) {
3518 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 607);
3520 REGB1
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3521 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
3522 if (UNTAG_Bool(REGB2
)) {
3524 /* ./../lib/standard//kernel.nit:210 */
3525 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
3526 /* ./syntax//mmbuilder.nit:607 */
3529 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
3530 if (UNTAG_Bool(REGB2
)) {
3531 /* ./syntax//mmbuilder.nit:608 */
3533 fra
.me
.REG
[3] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2
);
3534 if (!once_value_4
) {
3535 fra
.me
.REG
[4] = BOX_NativeString("Redef error: Formal parameter arity missmatch; got ");
3536 REGB2
= TAG_Int(51);
3537 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB2
);
3538 once_value_4
= fra
.me
.REG
[4];
3539 register_static_object(&once_value_4
);
3540 } else fra
.me
.REG
[4] = once_value_4
;
3541 fra
.me
.REG
[4] = fra
.me
.REG
[4];
3542 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3543 fra
.me
.REG
[4] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[0]);
3544 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
3545 if (UNTAG_Bool(REGB2
)) {
3546 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 608);
3548 REGB2
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3549 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB2
)(REGB2
);
3550 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3551 if (!once_value_5
) {
3552 fra
.me
.REG
[4] = BOX_NativeString(", expected ");
3553 REGB2
= TAG_Int(11);
3554 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB2
);
3555 once_value_5
= fra
.me
.REG
[4];
3556 register_static_object(&once_value_5
);
3557 } else fra
.me
.REG
[4] = once_value_5
;
3558 fra
.me
.REG
[4] = fra
.me
.REG
[4];
3559 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3560 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3561 REGB2
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
3562 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB2
)(REGB2
);
3563 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3564 if (!once_value_6
) {
3565 fra
.me
.REG
[4] = BOX_NativeString(".");
3567 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB2
);
3568 once_value_6
= fra
.me
.REG
[4];
3569 register_static_object(&once_value_6
);
3570 } else fra
.me
.REG
[4] = once_value_6
;
3571 fra
.me
.REG
[4] = fra
.me
.REG
[4];
3572 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
3573 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3574 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[3]);
3576 /* ./syntax//mmbuilder.nit:611 */
3577 REGB2
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_parser___parser_nodes___AStdClassdef
, ID_parser___parser_nodes___AStdClassdef
)) /*cast AStdClassdef*/;
3578 if (UNTAG_Bool(REGB2
)) {
3579 REGB2
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3580 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
3581 if (UNTAG_Bool(REGB2
)) {
3582 fra
.me
.REG
[3] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3583 REGB2
= CALL_syntax___mmbuilder___AClasskind___is_interface(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3585 REGB1
= TAG_Bool(false);
3588 if (UNTAG_Bool(REGB2
)) {
3589 REGB2
= TAG_Bool(true);
3591 /* ./syntax//mmbuilder.nit:612 */
3592 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_abstract(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3593 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
3594 /* ./syntax//mmbuilder.nit:611 */
3597 if (UNTAG_Bool(REGB2
)) {
3598 /* ./syntax//mmbuilder.nit:612 */
3599 fra
.me
.REG
[3] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3600 REGB2
= CALL_syntax___mmbuilder___AClasskind___is_abstract(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3602 /* ./syntax//mmbuilder.nit:611 */
3603 REGB1
= TAG_Bool(false);
3606 if (UNTAG_Bool(REGB2
)) {
3607 REGB2
= TAG_Bool(true);
3609 /* ./syntax//mmbuilder.nit:613 */
3610 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3611 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
3612 /* ./syntax//mmbuilder.nit:611 */
3615 if (UNTAG_Bool(REGB2
)) {
3616 /* ./syntax//mmbuilder.nit:613 */
3617 fra
.me
.REG
[2] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3618 REGB2
= CALL_syntax___mmbuilder___AClasskind___is_enum(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3620 /* ./syntax//mmbuilder.nit:611 */
3621 REGB1
= TAG_Bool(false);
3625 REGB1
= TAG_Bool(false);
3628 if (UNTAG_Bool(REGB2
)) {
3629 /* ./syntax//mmbuilder.nit:615 */
3631 fra
.me
.REG
[2] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2
);
3632 if (!once_value_7
) {
3633 fra
.me
.REG
[3] = BOX_NativeString("Redef error: cannot change kind of class ");
3634 REGB2
= TAG_Int(41);
3635 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB2
);
3636 once_value_7
= fra
.me
.REG
[3];
3637 register_static_object(&once_value_7
);
3638 } else fra
.me
.REG
[3] = once_value_7
;
3639 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3640 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3641 fra
.me
.REG
[3] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3642 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
3643 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3644 if (!once_value_8
) {
3645 fra
.me
.REG
[3] = BOX_NativeString(".");
3647 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB2
);
3648 once_value_8
= fra
.me
.REG
[3];
3649 register_static_object(&once_value_8
);
3650 } else fra
.me
.REG
[3] = once_value_8
;
3651 fra
.me
.REG
[3] = fra
.me
.REG
[3];
3652 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
3653 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3654 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[2]);
3657 stack_frame_head
= fra
.me
.prev
;
3660 void syntax___mmbuilder___AClassdef___accept_class_verifier(val_t p0
, val_t p1
){
3661 struct {struct stack_frame_t me
; val_t MORE_REG
[8];} fra
;
3666 static val_t once_value_1
; /* Once value */
3667 static val_t once_value_2
; /* Once value */
3668 static val_t once_value_3
; /* Once value */
3669 static val_t once_value_4
; /* Once value */
3670 static val_t once_value_5
; /* Once value */
3671 static val_t once_value_6
; /* Once value */
3672 static val_t once_value_7
; /* Once value */
3673 static val_t once_value_8
; /* Once value */
3674 static val_t once_value_9
; /* Once value */
3675 static val_t once_value_10
; /* Once value */
3676 static val_t once_value_11
; /* Once value */
3677 static val_t once_value_12
; /* Once value */
3678 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3679 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3681 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClassdef___accept_class_verifier
;
3682 fra
.me
.has_broke
= 0;
3683 fra
.me
.REG_size
= 9;
3684 fra
.me
.REG
[0] = NIT_NULL
;
3685 fra
.me
.REG
[1] = NIT_NULL
;
3686 fra
.me
.REG
[2] = NIT_NULL
;
3687 fra
.me
.REG
[3] = NIT_NULL
;
3688 fra
.me
.REG
[4] = NIT_NULL
;
3689 fra
.me
.REG
[5] = NIT_NULL
;
3690 fra
.me
.REG
[6] = NIT_NULL
;
3691 fra
.me
.REG
[7] = NIT_NULL
;
3692 fra
.me
.REG
[8] = NIT_NULL
;
3695 /* ./syntax//mmbuilder.nit:619 */
3696 fra
.me
.REG
[2] = fra
.me
.REG
[0];
3697 fra
.me
.REG
[3] = fra
.me
.REG
[1];
3698 /* ./syntax//mmbuilder.nit:621 */
3699 CALL_SUPER_syntax___mmbuilder___AClassdef___accept_class_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3700 /* ./syntax//mmbuilder.nit:622 */
3701 fra
.me
.REG
[1] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[2]);
3702 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
3703 if (UNTAG_Bool(REGB0
)) {
3704 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 622);
3706 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3707 /* ./syntax//mmbuilder.nit:623 */
3708 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[2]);
3709 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
3710 if (UNTAG_Bool(REGB0
)) {
3711 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 623);
3713 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMLocalClass___cshe(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3714 fra
.me
.REG
[0] = CALL_metamodel___partial_order___PartialOrderElement___direct_greaters(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
3715 /* ./../lib/standard//collection//array.nit:232 */
3717 /* ./../lib/standard//collection//array.nit:233 */
3718 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3719 if (UNTAG_Bool(REGB1
)) {
3721 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
3723 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3724 /* ./../lib/standard//collection//array.nit:234 */
3725 fra
.me
.REG
[4] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[0]);
3726 /* ./../lib/standard//collection//array.nit:235 */
3728 /* ./../lib/standard//collection//array.nit:23 */
3729 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0])!=NIT_NULL
);
3730 if (UNTAG_Bool(REGB1
)) {
3732 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
3734 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[0]);
3735 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
3736 if (UNTAG_Bool(REGB2
)) {
3738 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
3740 /* ./../lib/standard//kernel.nit:215 */
3741 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
3742 /* ./../lib/standard//collection//array.nit:235 */
3743 if (UNTAG_Bool(REGB1
)) {
3744 /* ./../lib/standard//collection//array.nit:236 */
3745 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
3746 if (UNTAG_Bool(REGB1
)) {
3747 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
3749 /* ./../lib/standard//collection//array.nit:652 */
3750 fra
.me
.REG
[5] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB0
)];
3751 /* ./syntax//mmbuilder.nit:624 */
3752 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3753 /* ./syntax//mmbuilder.nit:625 */
3754 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3755 if (UNTAG_Bool(REGB1
)) {
3756 /* ./syntax//mmbuilder.nit:626 */
3757 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3758 if (UNTAG_Bool(REGB1
)) {
3759 /* ./syntax//mmbuilder.nit:627 */
3761 fra
.me
.REG
[7] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
3762 if (!once_value_1
) {
3763 fra
.me
.REG
[8] = BOX_NativeString("Special error: Interface ");
3764 REGB1
= TAG_Int(25);
3765 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
3766 once_value_1
= fra
.me
.REG
[8];
3767 register_static_object(&once_value_1
);
3768 } else fra
.me
.REG
[8] = once_value_1
;
3769 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3770 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3771 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3772 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
3773 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3774 if (!once_value_2
) {
3775 fra
.me
.REG
[8] = BOX_NativeString(" try to specialise enum class ");
3776 REGB1
= TAG_Int(30);
3777 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
3778 once_value_2
= fra
.me
.REG
[8];
3779 register_static_object(&once_value_2
);
3780 } else fra
.me
.REG
[8] = once_value_2
;
3781 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3782 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3783 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3784 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
3785 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3786 if (!once_value_3
) {
3787 fra
.me
.REG
[8] = BOX_NativeString(".");
3789 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
3790 once_value_3
= fra
.me
.REG
[8];
3791 register_static_object(&once_value_3
);
3792 } else fra
.me
.REG
[8] = once_value_3
;
3793 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3794 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3795 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
3796 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[7]);
3798 /* ./syntax//mmbuilder.nit:628 */
3799 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3800 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
3801 if (UNTAG_Bool(REGB1
)) {
3802 /* ./syntax//mmbuilder.nit:629 */
3804 fra
.me
.REG
[7] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
3805 if (!once_value_4
) {
3806 fra
.me
.REG
[8] = BOX_NativeString("Special error: Interface ");
3807 REGB1
= TAG_Int(25);
3808 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
3809 once_value_4
= fra
.me
.REG
[8];
3810 register_static_object(&once_value_4
);
3811 } else fra
.me
.REG
[8] = once_value_4
;
3812 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3813 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3814 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3815 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
3816 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3817 if (!once_value_5
) {
3818 fra
.me
.REG
[8] = BOX_NativeString(" try to specialise class ");
3819 REGB1
= TAG_Int(25);
3820 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
3821 once_value_5
= fra
.me
.REG
[8];
3822 register_static_object(&once_value_5
);
3823 } else fra
.me
.REG
[8] = once_value_5
;
3824 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3825 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3826 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3827 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
3828 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3829 if (!once_value_6
) {
3830 fra
.me
.REG
[8] = BOX_NativeString(".");
3832 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
3833 once_value_6
= fra
.me
.REG
[8];
3834 register_static_object(&once_value_6
);
3835 } else fra
.me
.REG
[8] = once_value_6
;
3836 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3837 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3838 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
3839 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[7]);
3843 /* ./syntax//mmbuilder.nit:631 */
3844 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
3845 if (UNTAG_Bool(REGB1
)) {
3846 /* ./syntax//mmbuilder.nit:632 */
3847 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3848 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
3849 if (UNTAG_Bool(REGB1
)) {
3850 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3851 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
3853 REGB2
= TAG_Bool(false);
3856 if (UNTAG_Bool(REGB1
)) {
3857 /* ./syntax//mmbuilder.nit:633 */
3859 fra
.me
.REG
[7] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
3860 if (!once_value_7
) {
3861 fra
.me
.REG
[8] = BOX_NativeString("Special error: Enum class ");
3862 REGB1
= TAG_Int(26);
3863 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
3864 once_value_7
= fra
.me
.REG
[8];
3865 register_static_object(&once_value_7
);
3866 } else fra
.me
.REG
[8] = once_value_7
;
3867 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3868 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3869 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3870 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
3871 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3872 if (!once_value_8
) {
3873 fra
.me
.REG
[8] = BOX_NativeString(" try to specialise class ");
3874 REGB1
= TAG_Int(25);
3875 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
3876 once_value_8
= fra
.me
.REG
[8];
3877 register_static_object(&once_value_8
);
3878 } else fra
.me
.REG
[8] = once_value_8
;
3879 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3880 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3881 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3882 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
3883 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3884 if (!once_value_9
) {
3885 fra
.me
.REG
[8] = BOX_NativeString(".");
3887 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
3888 once_value_9
= fra
.me
.REG
[8];
3889 register_static_object(&once_value_9
);
3890 } else fra
.me
.REG
[8] = once_value_9
;
3891 fra
.me
.REG
[8] = fra
.me
.REG
[8];
3892 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
3893 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
3894 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[7]);
3897 /* ./syntax//mmbuilder.nit:636 */
3898 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3899 if (UNTAG_Bool(REGB1
)) {
3900 /* ./syntax//mmbuilder.nit:637 */
3902 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
3903 if (!once_value_10
) {
3904 fra
.me
.REG
[7] = BOX_NativeString("Special error: Class ");
3905 REGB1
= TAG_Int(21);
3906 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB1
);
3907 once_value_10
= fra
.me
.REG
[7];
3908 register_static_object(&once_value_10
);
3909 } else fra
.me
.REG
[7] = once_value_10
;
3910 fra
.me
.REG
[7] = fra
.me
.REG
[7];
3911 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3912 fra
.me
.REG
[7] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
3913 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
3914 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3915 if (!once_value_11
) {
3916 fra
.me
.REG
[7] = BOX_NativeString(" try to specialise enum class ");
3917 REGB1
= TAG_Int(30);
3918 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB1
);
3919 once_value_11
= fra
.me
.REG
[7];
3920 register_static_object(&once_value_11
);
3921 } else fra
.me
.REG
[7] = once_value_11
;
3922 fra
.me
.REG
[7] = fra
.me
.REG
[7];
3923 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
3924 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3925 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
3926 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
3927 if (!once_value_12
) {
3928 fra
.me
.REG
[5] = BOX_NativeString(".");
3930 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB1
);
3931 once_value_12
= fra
.me
.REG
[5];
3932 register_static_object(&once_value_12
);
3933 } else fra
.me
.REG
[5] = once_value_12
;
3934 fra
.me
.REG
[5] = fra
.me
.REG
[5];
3935 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
3936 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
3937 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[6]);
3941 /* ./../lib/standard//collection//array.nit:237 */
3943 /* ./../lib/standard//kernel.nit:218 */
3944 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
3945 /* ./../lib/standard//collection//array.nit:237 */
3948 /* ./../lib/standard//collection//array.nit:235 */
3953 stack_frame_head
= fra
.me
.prev
;
3956 void syntax___mmbuilder___AClassdef___accept_abs_syntax_visitor(val_t p0
, val_t p1
){
3957 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
3959 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3960 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3962 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClassdef___accept_abs_syntax_visitor
;
3963 fra
.me
.has_broke
= 0;
3964 fra
.me
.REG_size
= 4;
3965 fra
.me
.REG
[0] = NIT_NULL
;
3966 fra
.me
.REG
[1] = NIT_NULL
;
3967 fra
.me
.REG
[2] = NIT_NULL
;
3968 fra
.me
.REG
[3] = NIT_NULL
;
3971 /* ./syntax//mmbuilder.nit:644 */
3972 fra
.me
.REG
[2] = fra
.me
.REG
[0];
3973 fra
.me
.REG
[3] = fra
.me
.REG
[1];
3974 /* ./syntax//mmbuilder.nit:646 */
3975 fra
.me
.REG
[2] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[2]);
3976 CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
3977 /* ./syntax//mmbuilder.nit:647 */
3978 CALL_SUPER_syntax___mmbuilder___AClassdef___accept_abs_syntax_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
3979 /* ./syntax//mmbuilder.nit:648 */
3980 CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
3981 stack_frame_head
= fra
.me
.prev
;
3984 val_t
syntax___mmbuilder___AClasskind___is_interface(val_t p0
){
3985 struct {struct stack_frame_t me
;} fra
;
3988 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
3989 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
3991 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClasskind___is_interface
;
3992 fra
.me
.has_broke
= 0;
3993 fra
.me
.REG_size
= 1;
3994 fra
.me
.REG
[0] = NIT_NULL
;
3996 /* ./syntax//mmbuilder.nit:653 */
3997 REGB0
= TAG_Bool(false);
4000 stack_frame_head
= fra
.me
.prev
;
4003 val_t
syntax___mmbuilder___AClasskind___is_enum(val_t p0
){
4004 struct {struct stack_frame_t me
;} fra
;
4007 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4008 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4010 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClasskind___is_enum
;
4011 fra
.me
.has_broke
= 0;
4012 fra
.me
.REG_size
= 1;
4013 fra
.me
.REG
[0] = NIT_NULL
;
4015 /* ./syntax//mmbuilder.nit:654 */
4016 REGB0
= TAG_Bool(false);
4019 stack_frame_head
= fra
.me
.prev
;
4022 val_t
syntax___mmbuilder___AClasskind___is_abstract(val_t p0
){
4023 struct {struct stack_frame_t me
;} fra
;
4026 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4027 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4029 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClasskind___is_abstract
;
4030 fra
.me
.has_broke
= 0;
4031 fra
.me
.REG_size
= 1;
4032 fra
.me
.REG
[0] = NIT_NULL
;
4034 /* ./syntax//mmbuilder.nit:655 */
4035 REGB0
= TAG_Bool(false);
4038 stack_frame_head
= fra
.me
.prev
;
4041 val_t
syntax___mmbuilder___AInterfaceClasskind___is_interface(val_t p0
){
4042 struct {struct stack_frame_t me
;} fra
;
4045 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4046 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4048 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AInterfaceClasskind___is_interface
;
4049 fra
.me
.has_broke
= 0;
4050 fra
.me
.REG_size
= 1;
4051 fra
.me
.REG
[0] = NIT_NULL
;
4053 /* ./syntax//mmbuilder.nit:659 */
4054 REGB0
= TAG_Bool(true);
4057 stack_frame_head
= fra
.me
.prev
;
4060 val_t
syntax___mmbuilder___AEnumClasskind___is_enum(val_t p0
){
4061 struct {struct stack_frame_t me
;} fra
;
4064 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4065 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4067 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AEnumClasskind___is_enum
;
4068 fra
.me
.has_broke
= 0;
4069 fra
.me
.REG_size
= 1;
4070 fra
.me
.REG
[0] = NIT_NULL
;
4072 /* ./syntax//mmbuilder.nit:662 */
4073 REGB0
= TAG_Bool(true);
4076 stack_frame_head
= fra
.me
.prev
;
4079 val_t
syntax___mmbuilder___AAbstractClasskind___is_abstract(val_t p0
){
4080 struct {struct stack_frame_t me
;} fra
;
4083 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4084 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4086 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AAbstractClasskind___is_abstract
;
4087 fra
.me
.has_broke
= 0;
4088 fra
.me
.REG_size
= 1;
4089 fra
.me
.REG
[0] = NIT_NULL
;
4091 /* ./syntax//mmbuilder.nit:665 */
4092 REGB0
= TAG_Bool(true);
4095 stack_frame_head
= fra
.me
.prev
;
4098 val_t
syntax___mmbuilder___AStdClassdef___name(val_t p0
){
4099 struct {struct stack_frame_t me
;} fra
;
4102 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4103 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4105 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AStdClassdef___name
;
4106 fra
.me
.has_broke
= 0;
4107 fra
.me
.REG_size
= 1;
4108 fra
.me
.REG
[0] = NIT_NULL
;
4110 /* ./syntax//mmbuilder.nit:671 */
4111 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AStdClassdef___n_id(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4112 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4113 if (UNTAG_Bool(REGB0
)) {
4114 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 671);
4116 fra
.me
.REG
[0] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4119 stack_frame_head
= fra
.me
.prev
;
4120 return fra
.me
.REG
[0];
4122 val_t
syntax___mmbuilder___AStdClassdef___arity(val_t p0
){
4123 struct {struct stack_frame_t me
;} fra
;
4126 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4127 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4129 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AStdClassdef___arity
;
4130 fra
.me
.has_broke
= 0;
4131 fra
.me
.REG_size
= 1;
4132 fra
.me
.REG
[0] = NIT_NULL
;
4134 /* ./syntax//mmbuilder.nit:675 */
4135 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AStdClassdef___n_formaldefs(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4136 REGB0
= CALL_standard___collection___abstract_collection___Collection___length(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4139 stack_frame_head
= fra
.me
.prev
;
4142 void syntax___mmbuilder___AStdClassdef___accept_class_verifier(val_t p0
, val_t p1
){
4143 struct {struct stack_frame_t me
; val_t MORE_REG
[8];} fra
;
4148 static val_t once_value_1
; /* Once value */
4149 static val_t once_value_2
; /* Once value */
4150 static val_t once_value_3
; /* Once value */
4151 static val_t once_value_4
; /* Once value */
4152 static val_t once_value_5
; /* Once value */
4153 static val_t once_value_6
; /* Once value */
4154 static val_t once_value_7
; /* Once value */
4155 static val_t once_value_8
; /* Once value */
4156 static val_t once_value_9
; /* Once value */
4157 static val_t once_value_10
; /* Once value */
4158 static val_t once_value_11
; /* Once value */
4159 static val_t once_value_12
; /* Once value */
4160 static val_t once_value_13
; /* Once value */
4161 static val_t once_value_14
; /* Once value */
4162 static val_t once_value_17
; /* Once value */
4163 static val_t once_value_18
; /* Once value */
4164 static val_t once_value_19
; /* Once value */
4165 static val_t once_value_20
; /* Once value */
4166 static val_t once_value_21
; /* Once value */
4167 static val_t once_value_22
; /* Once value */
4168 static val_t once_value_23
; /* Once value */
4169 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4170 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4172 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AStdClassdef___accept_class_verifier
;
4173 fra
.me
.has_broke
= 0;
4174 fra
.me
.REG_size
= 9;
4175 fra
.me
.REG
[0] = NIT_NULL
;
4176 fra
.me
.REG
[1] = NIT_NULL
;
4177 fra
.me
.REG
[2] = NIT_NULL
;
4178 fra
.me
.REG
[3] = NIT_NULL
;
4179 fra
.me
.REG
[4] = NIT_NULL
;
4180 fra
.me
.REG
[5] = NIT_NULL
;
4181 fra
.me
.REG
[6] = NIT_NULL
;
4182 fra
.me
.REG
[7] = NIT_NULL
;
4183 fra
.me
.REG
[8] = NIT_NULL
;
4186 /* ./syntax//mmbuilder.nit:677 */
4187 fra
.me
.REG
[2] = fra
.me
.REG
[0];
4188 fra
.me
.REG
[3] = fra
.me
.REG
[1];
4189 /* ./syntax//mmbuilder.nit:679 */
4190 CALL_SUPER_syntax___mmbuilder___AStdClassdef___accept_class_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4191 /* ./syntax//mmbuilder.nit:680 */
4192 fra
.me
.REG
[1] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[2]);
4193 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
4194 if (UNTAG_Bool(REGB0
)) {
4195 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 680);
4197 fra
.me
.REG
[1] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4198 /* ./syntax//mmbuilder.nit:681 */
4199 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4200 fra
.me
.REG
[4] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[2]);
4201 REGB0
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[0],fra
.me
.REG
[4]));
4202 if (UNTAG_Bool(REGB0
)) {
4204 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
4207 if (UNTAG_Bool(REGB0
)) {
4208 /* ./syntax//mmbuilder.nit:683 */
4209 REGB0
= CALL_syntax___mmbuilder___AClassdef___visibility_level(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4210 CALL_metamodel___abstractmetamodel___MMGlobalClass___visibility_level__eq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
4211 /* ./syntax//mmbuilder.nit:684 */
4212 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4213 REGB0
= CALL_syntax___mmbuilder___AClasskind___is_interface(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4214 CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface__eq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
4215 /* ./syntax//mmbuilder.nit:685 */
4216 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4217 REGB0
= CALL_syntax___mmbuilder___AClasskind___is_abstract(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4218 CALL_metamodel___abstractmetamodel___MMGlobalClass___is_abstract__eq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
4219 /* ./syntax//mmbuilder.nit:686 */
4220 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4221 REGB0
= CALL_syntax___mmbuilder___AClasskind___is_enum(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4222 CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum__eq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
4223 /* ./syntax//mmbuilder.nit:687 */
4224 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AStdClassdef___n_kwredef(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4225 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4226 if (UNTAG_Bool(REGB0
)) {
4228 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4229 if (UNTAG_Bool(REGB1
)) {
4230 REGB1
= TAG_Bool(false);
4233 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
4237 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
4238 if (UNTAG_Bool(REGB0
)) {
4239 /* ./syntax//mmbuilder.nit:688 */
4241 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
4242 if (!once_value_1
) {
4243 fra
.me
.REG
[0] = BOX_NativeString("Redef error: No class ");
4244 REGB0
= TAG_Int(22);
4245 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
4246 once_value_1
= fra
.me
.REG
[0];
4247 register_static_object(&once_value_1
);
4248 } else fra
.me
.REG
[0] = once_value_1
;
4249 fra
.me
.REG
[0] = fra
.me
.REG
[0];
4250 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[0]);
4251 fra
.me
.REG
[0] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4252 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4253 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[0]);
4254 if (!once_value_2
) {
4255 fra
.me
.REG
[0] = BOX_NativeString(" is imported. Remove the redef keyword to define a new class.");
4256 REGB0
= TAG_Int(61);
4257 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
4258 once_value_2
= fra
.me
.REG
[0];
4259 register_static_object(&once_value_2
);
4260 } else fra
.me
.REG
[0] = once_value_2
;
4261 fra
.me
.REG
[0] = fra
.me
.REG
[0];
4262 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[0]);
4263 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4264 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[4]);
4266 /* ./syntax//mmbuilder.nit:691 */
4267 fra
.me
.REG
[4] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[2]);
4268 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4269 if (UNTAG_Bool(REGB0
)) {
4270 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 691);
4272 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMLocalClass___cshe(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4273 fra
.me
.REG
[4] = CALL_metamodel___partial_order___PartialOrderElement___direct_greaters(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4274 /* ./../lib/standard//collection//array.nit:232 */
4276 /* ./../lib/standard//collection//array.nit:233 */
4277 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
4278 if (UNTAG_Bool(REGB1
)) {
4280 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
4282 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
4283 /* ./../lib/standard//collection//array.nit:234 */
4284 fra
.me
.REG
[0] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[4]);
4285 /* ./../lib/standard//collection//array.nit:235 */
4287 /* ./../lib/standard//collection//array.nit:23 */
4288 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
4289 if (UNTAG_Bool(REGB1
)) {
4291 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
4293 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
4294 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
4295 if (UNTAG_Bool(REGB2
)) {
4297 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
4299 /* ./../lib/standard//kernel.nit:215 */
4300 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
4301 /* ./../lib/standard//collection//array.nit:235 */
4302 if (UNTAG_Bool(REGB1
)) {
4303 /* ./../lib/standard//collection//array.nit:236 */
4304 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4305 if (UNTAG_Bool(REGB1
)) {
4306 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
4308 /* ./../lib/standard//collection//array.nit:652 */
4309 fra
.me
.REG
[5] = ((Nit_NativeArray
)fra
.me
.REG
[0])->val
[UNTAG_Int(REGB0
)];
4310 /* ./syntax//mmbuilder.nit:692 */
4311 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
4312 /* ./syntax//mmbuilder.nit:693 */
4313 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4314 if (UNTAG_Bool(REGB1
)) {
4315 /* ./syntax//mmbuilder.nit:694 */
4316 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
4317 if (UNTAG_Bool(REGB1
)) {
4318 /* ./syntax//mmbuilder.nit:695 */
4320 fra
.me
.REG
[7] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
4321 if (!once_value_3
) {
4322 fra
.me
.REG
[8] = BOX_NativeString("Special error: Interface ");
4323 REGB1
= TAG_Int(25);
4324 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
4325 once_value_3
= fra
.me
.REG
[8];
4326 register_static_object(&once_value_3
);
4327 } else fra
.me
.REG
[8] = once_value_3
;
4328 fra
.me
.REG
[8] = fra
.me
.REG
[8];
4329 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4330 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4331 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
4332 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4333 if (!once_value_4
) {
4334 fra
.me
.REG
[8] = BOX_NativeString(" try to specialise enum class ");
4335 REGB1
= TAG_Int(30);
4336 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
4337 once_value_4
= fra
.me
.REG
[8];
4338 register_static_object(&once_value_4
);
4339 } else fra
.me
.REG
[8] = once_value_4
;
4340 fra
.me
.REG
[8] = fra
.me
.REG
[8];
4341 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4342 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
4343 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
4344 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4345 if (!once_value_5
) {
4346 fra
.me
.REG
[8] = BOX_NativeString(".");
4348 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
4349 once_value_5
= fra
.me
.REG
[8];
4350 register_static_object(&once_value_5
);
4351 } else fra
.me
.REG
[8] = once_value_5
;
4352 fra
.me
.REG
[8] = fra
.me
.REG
[8];
4353 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4354 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
4355 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[7]);
4357 /* ./syntax//mmbuilder.nit:696 */
4358 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
4359 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
4360 if (UNTAG_Bool(REGB1
)) {
4361 /* ./syntax//mmbuilder.nit:697 */
4363 fra
.me
.REG
[7] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
4364 if (!once_value_6
) {
4365 fra
.me
.REG
[8] = BOX_NativeString("Special error: Interface ");
4366 REGB1
= TAG_Int(25);
4367 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
4368 once_value_6
= fra
.me
.REG
[8];
4369 register_static_object(&once_value_6
);
4370 } else fra
.me
.REG
[8] = once_value_6
;
4371 fra
.me
.REG
[8] = fra
.me
.REG
[8];
4372 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4373 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4374 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
4375 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4376 if (!once_value_7
) {
4377 fra
.me
.REG
[8] = BOX_NativeString(" try to specialise class ");
4378 REGB1
= TAG_Int(25);
4379 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
4380 once_value_7
= fra
.me
.REG
[8];
4381 register_static_object(&once_value_7
);
4382 } else fra
.me
.REG
[8] = once_value_7
;
4383 fra
.me
.REG
[8] = fra
.me
.REG
[8];
4384 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4385 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
4386 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
4387 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4388 if (!once_value_8
) {
4389 fra
.me
.REG
[8] = BOX_NativeString(".");
4391 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
4392 once_value_8
= fra
.me
.REG
[8];
4393 register_static_object(&once_value_8
);
4394 } else fra
.me
.REG
[8] = once_value_8
;
4395 fra
.me
.REG
[8] = fra
.me
.REG
[8];
4396 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4397 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
4398 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[7]);
4402 /* ./syntax//mmbuilder.nit:699 */
4403 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4404 if (UNTAG_Bool(REGB1
)) {
4405 /* ./syntax//mmbuilder.nit:700 */
4406 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
4407 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
4408 if (UNTAG_Bool(REGB1
)) {
4409 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
4410 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
4412 REGB2
= TAG_Bool(false);
4415 if (UNTAG_Bool(REGB1
)) {
4416 /* ./syntax//mmbuilder.nit:701 */
4418 fra
.me
.REG
[7] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
4419 if (!once_value_9
) {
4420 fra
.me
.REG
[8] = BOX_NativeString("Special error: Enum class ");
4421 REGB1
= TAG_Int(26);
4422 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
4423 once_value_9
= fra
.me
.REG
[8];
4424 register_static_object(&once_value_9
);
4425 } else fra
.me
.REG
[8] = once_value_9
;
4426 fra
.me
.REG
[8] = fra
.me
.REG
[8];
4427 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4428 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4429 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
4430 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4431 if (!once_value_10
) {
4432 fra
.me
.REG
[8] = BOX_NativeString(" try to specialise class ");
4433 REGB1
= TAG_Int(25);
4434 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
4435 once_value_10
= fra
.me
.REG
[8];
4436 register_static_object(&once_value_10
);
4437 } else fra
.me
.REG
[8] = once_value_10
;
4438 fra
.me
.REG
[8] = fra
.me
.REG
[8];
4439 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4440 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
4441 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
4442 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4443 if (!once_value_11
) {
4444 fra
.me
.REG
[8] = BOX_NativeString(".");
4446 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB1
);
4447 once_value_11
= fra
.me
.REG
[8];
4448 register_static_object(&once_value_11
);
4449 } else fra
.me
.REG
[8] = once_value_11
;
4450 fra
.me
.REG
[8] = fra
.me
.REG
[8];
4451 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
4452 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
4453 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[7]);
4456 /* ./syntax//mmbuilder.nit:704 */
4457 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
4458 if (UNTAG_Bool(REGB1
)) {
4459 /* ./syntax//mmbuilder.nit:705 */
4461 fra
.me
.REG
[6] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
4462 if (!once_value_12
) {
4463 fra
.me
.REG
[7] = BOX_NativeString("Special error: Class ");
4464 REGB1
= TAG_Int(21);
4465 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB1
);
4466 once_value_12
= fra
.me
.REG
[7];
4467 register_static_object(&once_value_12
);
4468 } else fra
.me
.REG
[7] = once_value_12
;
4469 fra
.me
.REG
[7] = fra
.me
.REG
[7];
4470 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
4471 fra
.me
.REG
[7] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4472 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
4473 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
4474 if (!once_value_13
) {
4475 fra
.me
.REG
[7] = BOX_NativeString(" try to specialise enum class ");
4476 REGB1
= TAG_Int(30);
4477 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB1
);
4478 once_value_13
= fra
.me
.REG
[7];
4479 register_static_object(&once_value_13
);
4480 } else fra
.me
.REG
[7] = once_value_13
;
4481 fra
.me
.REG
[7] = fra
.me
.REG
[7];
4482 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[7]);
4483 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
4484 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
4485 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
4486 if (!once_value_14
) {
4487 fra
.me
.REG
[5] = BOX_NativeString(".");
4489 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB1
);
4490 once_value_14
= fra
.me
.REG
[5];
4491 register_static_object(&once_value_14
);
4492 } else fra
.me
.REG
[5] = once_value_14
;
4493 fra
.me
.REG
[5] = fra
.me
.REG
[5];
4494 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[5]);
4495 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
4496 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[6]);
4500 /* ./../lib/standard//collection//array.nit:237 */
4502 /* ./../lib/standard//kernel.nit:218 */
4503 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
4504 /* ./../lib/standard//collection//array.nit:237 */
4507 /* ./../lib/standard//collection//array.nit:235 */
4512 /* ./syntax//mmbuilder.nit:710 */
4515 /* ./syntax//mmbuilder.nit:715 */
4516 fra
.me
.REG
[0] = CALL_syntax___syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4517 CALL_syntax___syntax_base___MMGlobalClass___check_visibility(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[0]);
4518 /* ./syntax//mmbuilder.nit:716 */
4519 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AStdClassdef___n_kwredef(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4520 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4521 if (UNTAG_Bool(REGB0
)) {
4523 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4524 if (UNTAG_Bool(REGB1
)) {
4525 REGB1
= TAG_Bool(false);
4528 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
4532 if (UNTAG_Bool(REGB0
)) {
4533 /* ./syntax//mmbuilder.nit:717 */
4535 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
4536 if (!once_value_17
) {
4537 fra
.me
.REG
[4] = BOX_NativeString("Redef error: ");
4538 REGB0
= TAG_Int(13);
4539 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
4540 once_value_17
= fra
.me
.REG
[4];
4541 register_static_object(&once_value_17
);
4542 } else fra
.me
.REG
[4] = once_value_17
;
4543 fra
.me
.REG
[4] = fra
.me
.REG
[4];
4544 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
4545 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4546 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4547 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
4548 if (!once_value_18
) {
4549 fra
.me
.REG
[4] = BOX_NativeString(" is an imported class. Add the redef keyword to refine it.");
4550 REGB0
= TAG_Int(58);
4551 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
4552 once_value_18
= fra
.me
.REG
[4];
4553 register_static_object(&once_value_18
);
4554 } else fra
.me
.REG
[4] = once_value_18
;
4555 fra
.me
.REG
[4] = fra
.me
.REG
[4];
4556 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
4557 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4558 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[0]);
4559 /* ./syntax//mmbuilder.nit:718 */
4562 /* ./syntax//mmbuilder.nit:721 */
4563 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4564 REGB0
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4565 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[2]);
4566 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4567 if (UNTAG_Bool(REGB1
)) {
4568 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 721);
4570 REGB1
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4571 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
4572 if (UNTAG_Bool(REGB2
)) {
4574 /* ./../lib/standard//kernel.nit:210 */
4575 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
4576 /* ./syntax//mmbuilder.nit:721 */
4579 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
4580 if (UNTAG_Bool(REGB2
)) {
4581 /* ./syntax//mmbuilder.nit:722 */
4583 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2
);
4584 if (!once_value_19
) {
4585 fra
.me
.REG
[4] = BOX_NativeString("Redef error: Formal parameter arity mismatch; got ");
4586 REGB2
= TAG_Int(50);
4587 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB2
);
4588 once_value_19
= fra
.me
.REG
[4];
4589 register_static_object(&once_value_19
);
4590 } else fra
.me
.REG
[4] = once_value_19
;
4591 fra
.me
.REG
[4] = fra
.me
.REG
[4];
4592 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
4593 fra
.me
.REG
[4] = ATTR_syntax___mmbuilder___AClassdef____local_class(fra
.me
.REG
[2]);
4594 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4595 if (UNTAG_Bool(REGB2
)) {
4596 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 722);
4598 REGB2
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4599 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB2
)(REGB2
);
4600 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
4601 if (!once_value_20
) {
4602 fra
.me
.REG
[4] = BOX_NativeString(", expected ");
4603 REGB2
= TAG_Int(11);
4604 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB2
);
4605 once_value_20
= fra
.me
.REG
[4];
4606 register_static_object(&once_value_20
);
4607 } else fra
.me
.REG
[4] = once_value_20
;
4608 fra
.me
.REG
[4] = fra
.me
.REG
[4];
4609 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
4610 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4611 REGB2
= CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4612 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(REGB2
)(REGB2
);
4613 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
4614 if (!once_value_21
) {
4615 fra
.me
.REG
[4] = BOX_NativeString(".");
4617 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB2
);
4618 once_value_21
= fra
.me
.REG
[4];
4619 register_static_object(&once_value_21
);
4620 } else fra
.me
.REG
[4] = once_value_21
;
4621 fra
.me
.REG
[4] = fra
.me
.REG
[4];
4622 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
4623 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4624 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[0]);
4626 /* ./syntax//mmbuilder.nit:726 */
4627 REGB2
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4628 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
4629 if (UNTAG_Bool(REGB2
)) {
4630 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4631 REGB2
= CALL_syntax___mmbuilder___AClasskind___is_interface(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4633 REGB1
= TAG_Bool(false);
4636 if (UNTAG_Bool(REGB2
)) {
4637 REGB2
= TAG_Bool(true);
4639 /* ./syntax//mmbuilder.nit:727 */
4640 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_abstract(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4641 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
4642 /* ./syntax//mmbuilder.nit:726 */
4645 if (UNTAG_Bool(REGB2
)) {
4646 /* ./syntax//mmbuilder.nit:727 */
4647 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4648 REGB2
= CALL_syntax___mmbuilder___AClasskind___is_abstract(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4650 /* ./syntax//mmbuilder.nit:726 */
4651 REGB1
= TAG_Bool(false);
4654 if (UNTAG_Bool(REGB2
)) {
4655 REGB2
= TAG_Bool(true);
4657 /* ./syntax//mmbuilder.nit:728 */
4658 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4659 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
4660 /* ./syntax//mmbuilder.nit:726 */
4663 if (UNTAG_Bool(REGB2
)) {
4664 /* ./syntax//mmbuilder.nit:728 */
4665 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AStdClassdef___n_classkind(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4666 REGB2
= CALL_syntax___mmbuilder___AClasskind___is_enum(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4668 /* ./syntax//mmbuilder.nit:726 */
4669 REGB1
= TAG_Bool(false);
4672 /* ./syntax//mmbuilder.nit:725 */
4673 if (UNTAG_Bool(REGB2
)) {
4674 /* ./syntax//mmbuilder.nit:730 */
4676 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2
);
4677 if (!once_value_22
) {
4678 fra
.me
.REG
[0] = BOX_NativeString("Redef error: cannot change kind of class ");
4679 REGB2
= TAG_Int(41);
4680 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB2
);
4681 once_value_22
= fra
.me
.REG
[0];
4682 register_static_object(&once_value_22
);
4683 } else fra
.me
.REG
[0] = once_value_22
;
4684 fra
.me
.REG
[0] = fra
.me
.REG
[0];
4685 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
4686 fra
.me
.REG
[0] = CALL_syntax___mmbuilder___AClassdef___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4687 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4688 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
4689 if (!once_value_23
) {
4690 fra
.me
.REG
[0] = BOX_NativeString(".");
4692 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB2
);
4693 once_value_23
= fra
.me
.REG
[0];
4694 register_static_object(&once_value_23
);
4695 } else fra
.me
.REG
[0] = once_value_23
;
4696 fra
.me
.REG
[0] = fra
.me
.REG
[0];
4697 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
4698 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4699 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[1]);
4702 stack_frame_head
= fra
.me
.prev
;
4705 val_t
syntax___mmbuilder___AStdClassdef___visibility_level(val_t p0
){
4706 struct {struct stack_frame_t me
;} fra
;
4709 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4710 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4712 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AStdClassdef___visibility_level
;
4713 fra
.me
.has_broke
= 0;
4714 fra
.me
.REG_size
= 1;
4715 fra
.me
.REG
[0] = NIT_NULL
;
4717 /* ./syntax//mmbuilder.nit:736 */
4718 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AStdClassdef___n_visibility(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4719 REGB0
= CALL_syntax___mmbuilder___AVisibility___level(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4722 stack_frame_head
= fra
.me
.prev
;
4725 val_t
syntax___mmbuilder___AMainClassdef___name(val_t p0
){
4726 struct {struct stack_frame_t me
;} fra
;
4729 static val_t once_value_1
; /* Once value */
4730 static val_t once_value_2
; /* Once value */
4731 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4732 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4734 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AMainClassdef___name
;
4735 fra
.me
.has_broke
= 0;
4736 fra
.me
.REG_size
= 1;
4737 fra
.me
.REG
[0] = NIT_NULL
;
4739 /* ./syntax//mmbuilder.nit:743 */
4740 if (!once_value_1
) {
4741 if (!once_value_2
) {
4742 fra
.me
.REG
[0] = BOX_NativeString("Sys");
4744 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
4745 once_value_2
= fra
.me
.REG
[0];
4746 register_static_object(&once_value_2
);
4747 } else fra
.me
.REG
[0] = once_value_2
;
4748 fra
.me
.REG
[0] = fra
.me
.REG
[0];
4749 fra
.me
.REG
[0] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4750 once_value_1
= fra
.me
.REG
[0];
4751 register_static_object(&once_value_1
);
4752 } else fra
.me
.REG
[0] = once_value_1
;
4753 fra
.me
.REG
[0] = fra
.me
.REG
[0];
4756 stack_frame_head
= fra
.me
.prev
;
4757 return fra
.me
.REG
[0];
4759 val_t
syntax___mmbuilder___ATopClassdef___name(val_t p0
){
4760 struct {struct stack_frame_t me
;} fra
;
4763 static val_t once_value_1
; /* Once value */
4764 static val_t once_value_2
; /* Once value */
4765 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4766 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4768 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ATopClassdef___name
;
4769 fra
.me
.has_broke
= 0;
4770 fra
.me
.REG_size
= 1;
4771 fra
.me
.REG
[0] = NIT_NULL
;
4773 /* ./syntax//mmbuilder.nit:750 */
4774 if (!once_value_1
) {
4775 if (!once_value_2
) {
4776 fra
.me
.REG
[0] = BOX_NativeString("Object");
4778 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
4779 once_value_2
= fra
.me
.REG
[0];
4780 register_static_object(&once_value_2
);
4781 } else fra
.me
.REG
[0] = once_value_2
;
4782 fra
.me
.REG
[0] = fra
.me
.REG
[0];
4783 fra
.me
.REG
[0] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4784 once_value_1
= fra
.me
.REG
[0];
4785 register_static_object(&once_value_1
);
4786 } else fra
.me
.REG
[0] = once_value_1
;
4787 fra
.me
.REG
[0] = fra
.me
.REG
[0];
4790 stack_frame_head
= fra
.me
.prev
;
4791 return fra
.me
.REG
[0];
4793 void syntax___mmbuilder___AFormaldef___accept_class_builder(val_t p0
, val_t p1
){
4794 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
4798 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4799 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4801 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AFormaldef___accept_class_builder
;
4802 fra
.me
.has_broke
= 0;
4803 fra
.me
.REG_size
= 6;
4804 fra
.me
.REG
[0] = NIT_NULL
;
4805 fra
.me
.REG
[1] = NIT_NULL
;
4806 fra
.me
.REG
[2] = NIT_NULL
;
4807 fra
.me
.REG
[3] = NIT_NULL
;
4808 fra
.me
.REG
[4] = NIT_NULL
;
4809 fra
.me
.REG
[5] = NIT_NULL
;
4812 /* ./syntax//mmbuilder.nit:758 */
4813 fra
.me
.REG
[2] = fra
.me
.REG
[0];
4814 fra
.me
.REG
[3] = fra
.me
.REG
[1];
4815 /* ./syntax//mmbuilder.nit:760 */
4816 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AFormaldef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4817 fra
.me
.REG
[4] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
4818 /* ./syntax//mmbuilder.nit:761 */
4819 REGB0
= CALL_syntax___mmbuilder___ClassBuilderVisitor___local_class_arity(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4820 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4821 fra
.me
.REG
[5] = NEW_MMTypeFormalParameter_metamodel___genericity___MMTypeFormalParameter___init(fra
.me
.REG
[4], REGB0
, fra
.me
.REG
[5]);
4822 /* ./syntax//mmbuilder.nit:762 */
4823 ATTR_syntax___mmbuilder___AFormaldef____formal(fra
.me
.REG
[2]) = fra
.me
.REG
[5];
4824 /* ./syntax//mmbuilder.nit:763 */
4825 REGB0
= CALL_syntax___mmbuilder___ClassBuilderVisitor___local_class_arity(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4827 /* ./../lib/standard//kernel.nit:218 */
4828 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
4829 /* ./syntax//mmbuilder.nit:763 */
4830 CALL_syntax___mmbuilder___ClassBuilderVisitor___local_class_arity__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB1
);
4831 /* ./syntax//mmbuilder.nit:764 */
4832 fra
.me
.REG
[2] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4833 CALL_metamodel___genericity___MMLocalClass___register_formal(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[5]);
4834 /* ./syntax//mmbuilder.nit:765 */
4835 fra
.me
.REG
[3] = CALL_syntax___mmbuilder___ClassBuilderVisitor___formals(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4836 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
4837 if (UNTAG_Bool(REGB1
)) {
4838 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 765);
4840 CALL_standard___collection___abstract_collection___Map_____braeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4], fra
.me
.REG
[5]);
4841 /* ./syntax//mmbuilder.nit:766 */
4842 CALL_SUPER_syntax___mmbuilder___AFormaldef___accept_class_builder(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4843 stack_frame_head
= fra
.me
.prev
;
4846 void syntax___mmbuilder___AFormaldef___accept_class_verifier(val_t p0
, val_t p1
){
4847 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
4851 static val_t once_value_2
; /* Once value */
4852 static val_t once_value_3
; /* Once value */
4853 static val_t once_value_4
; /* Once value */
4854 static val_t once_value_5
; /* Once value */
4855 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
4856 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
4858 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AFormaldef___accept_class_verifier
;
4859 fra
.me
.has_broke
= 0;
4860 fra
.me
.REG_size
= 6;
4861 fra
.me
.REG
[0] = NIT_NULL
;
4862 fra
.me
.REG
[1] = NIT_NULL
;
4863 fra
.me
.REG
[2] = NIT_NULL
;
4864 fra
.me
.REG
[3] = NIT_NULL
;
4865 fra
.me
.REG
[4] = NIT_NULL
;
4866 fra
.me
.REG
[5] = NIT_NULL
;
4869 /* ./syntax//mmbuilder.nit:769 */
4870 fra
.me
.REG
[2] = fra
.me
.REG
[0];
4871 fra
.me
.REG
[3] = fra
.me
.REG
[1];
4872 /* ./syntax//mmbuilder.nit:771 */
4873 CALL_SUPER_syntax___mmbuilder___AFormaldef___accept_class_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
4874 /* ./syntax//mmbuilder.nit:772 */
4875 fra
.me
.REG
[1] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4876 /* ./syntax//mmbuilder.nit:773 */
4877 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
4878 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMGlobalClass___intro(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4879 /* ./syntax//mmbuilder.nit:774 */
4880 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[1],fra
.me
.REG
[0]));
4881 if (UNTAG_Bool(REGB0
)) {
4883 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
4886 if (UNTAG_Bool(REGB0
)) {
4887 /* ./syntax//mmbuilder.nit:775 */
4888 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AFormaldef___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4889 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4890 if (UNTAG_Bool(REGB0
)) {
4892 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4893 if (UNTAG_Bool(REGB1
)) {
4894 REGB1
= TAG_Bool(false);
4897 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
4901 if (UNTAG_Bool(REGB0
)) {
4902 /* ./syntax//mmbuilder.nit:776 */
4903 fra
.me
.REG
[4] = ATTR_syntax___mmbuilder___AFormaldef____formal(fra
.me
.REG
[2]);
4904 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4905 fra
.me
.REG
[5] = CALL_metamodel___inheritance___MMModule___type_any(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
4906 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMType___as_nullable(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
4907 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4908 if (UNTAG_Bool(REGB0
)) {
4909 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 776);
4911 CALL_metamodel___genericity___MMTypeFormalParameter___bound__eq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
4913 /* ./syntax//mmbuilder.nit:778 */
4914 fra
.me
.REG
[5] = CALL_parser___parser_nodes___AFormaldef___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4915 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
4916 if (UNTAG_Bool(REGB0
)) {
4917 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 778);
4919 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AType___get_stype(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3]);
4920 /* ./syntax//mmbuilder.nit:779 */
4921 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
4922 if (UNTAG_Bool(REGB0
)) {
4924 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
4925 if (UNTAG_Bool(REGB1
)) {
4926 REGB1
= TAG_Bool(false);
4929 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
4933 if (UNTAG_Bool(REGB0
)) {
4936 /* ./syntax//mmbuilder.nit:780 */
4937 fra
.me
.REG
[4] = ATTR_syntax___mmbuilder___AFormaldef____formal(fra
.me
.REG
[2]);
4938 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
4939 if (UNTAG_Bool(REGB0
)) {
4940 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 780);
4942 CALL_metamodel___genericity___MMTypeFormalParameter___bound__eq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
4945 /* ./syntax//mmbuilder.nit:783 */
4946 fra
.me
.REG
[5] = ATTR_syntax___mmbuilder___AFormaldef____formal(fra
.me
.REG
[2]);
4947 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
4948 if (UNTAG_Bool(REGB0
)) {
4949 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 783);
4951 REGB0
= CALL_metamodel___genericity___MMTypeFormalParameter___position(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
4952 fra
.me
.REG
[0] = CALL_metamodel___genericity___MMLocalClass___get_formal(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
4953 fra
.me
.REG
[0] = CALL_metamodel___type_formal___MMTypeFormal___bound(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
4954 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
4955 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMType___for_module(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[5]);
4956 /* ./syntax//mmbuilder.nit:784 */
4957 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AFormaldef___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4958 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4959 if (UNTAG_Bool(REGB0
)) {
4961 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4962 if (UNTAG_Bool(REGB1
)) {
4963 REGB1
= TAG_Bool(false);
4966 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
4970 if (UNTAG_Bool(REGB0
)) {
4971 /* ./syntax//mmbuilder.nit:785 */
4972 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___AFormaldef____formal(fra
.me
.REG
[2]);
4973 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4974 if (UNTAG_Bool(REGB0
)) {
4975 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 785);
4977 CALL_metamodel___genericity___MMTypeFormalParameter___bound__eq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[5]);
4979 /* ./syntax//mmbuilder.nit:787 */
4980 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AFormaldef___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
4981 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4982 if (UNTAG_Bool(REGB0
)) {
4983 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 787);
4985 fra
.me
.REG
[0] = CALL_syntax___syntax_base___AType___get_stype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
4986 /* ./syntax//mmbuilder.nit:788 */
4987 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4988 if (UNTAG_Bool(REGB0
)) {
4990 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
4991 if (UNTAG_Bool(REGB1
)) {
4992 REGB1
= TAG_Bool(false);
4995 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
4999 if (UNTAG_Bool(REGB0
)) {
5002 /* ./syntax//mmbuilder.nit:789 */
5003 fra
.me
.REG
[4] = ATTR_syntax___mmbuilder___AFormaldef____formal(fra
.me
.REG
[2]);
5004 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
5005 if (UNTAG_Bool(REGB0
)) {
5006 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 789);
5008 CALL_metamodel___genericity___MMTypeFormalParameter___bound__eq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[0]);
5009 /* ./syntax//mmbuilder.nit:790 */
5010 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___AFormaldef____formal(fra
.me
.REG
[2]);
5011 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
5012 if (UNTAG_Bool(REGB0
)) {
5013 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 790);
5015 fra
.me
.REG
[0] = CALL_metamodel___type_formal___MMTypeFormal___bound(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5016 REGB0
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[0],fra
.me
.REG
[5]));
5017 if (UNTAG_Bool(REGB0
)) {
5019 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[5]);
5022 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
5023 if (UNTAG_Bool(REGB0
)) {
5024 /* ./syntax//mmbuilder.nit:791 */
5026 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
5027 if (!once_value_2
) {
5028 fra
.me
.REG
[4] = BOX_NativeString("Redef error: Cannot change formal parameter type of class ");
5029 REGB0
= TAG_Int(58);
5030 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
5031 once_value_2
= fra
.me
.REG
[4];
5032 register_static_object(&once_value_2
);
5033 } else fra
.me
.REG
[4] = once_value_2
;
5034 fra
.me
.REG
[4] = fra
.me
.REG
[4];
5035 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
5036 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5037 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
5038 if (!once_value_3
) {
5039 fra
.me
.REG
[1] = BOX_NativeString("; got ");
5041 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
5042 once_value_3
= fra
.me
.REG
[1];
5043 register_static_object(&once_value_3
);
5044 } else fra
.me
.REG
[1] = once_value_3
;
5045 fra
.me
.REG
[1] = fra
.me
.REG
[1];
5046 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
5047 fra
.me
.REG
[1] = ATTR_syntax___mmbuilder___AFormaldef____formal(fra
.me
.REG
[2]);
5048 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
5049 if (UNTAG_Bool(REGB0
)) {
5050 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 791);
5052 fra
.me
.REG
[1] = CALL_metamodel___type_formal___MMTypeFormal___bound(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5053 fra
.me
.REG
[1] = CALL_standard___string___Object___to_s(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5054 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
5055 if (!once_value_4
) {
5056 fra
.me
.REG
[1] = BOX_NativeString(", expected ");
5057 REGB0
= TAG_Int(11);
5058 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
5059 once_value_4
= fra
.me
.REG
[1];
5060 register_static_object(&once_value_4
);
5061 } else fra
.me
.REG
[1] = once_value_4
;
5062 fra
.me
.REG
[1] = fra
.me
.REG
[1];
5063 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
5064 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5065 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[5]);
5066 if (!once_value_5
) {
5067 fra
.me
.REG
[5] = BOX_NativeString(".");
5069 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
5070 once_value_5
= fra
.me
.REG
[5];
5071 register_static_object(&once_value_5
);
5072 } else fra
.me
.REG
[5] = once_value_5
;
5073 fra
.me
.REG
[5] = fra
.me
.REG
[5];
5074 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[5]);
5075 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5076 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[0]);
5081 stack_frame_head
= fra
.me
.prev
;
5084 val_t
syntax___mmbuilder___ASuperclass___ancestor(val_t p0
){
5085 struct {struct stack_frame_t me
;} fra
;
5087 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5088 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
5090 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ASuperclass___ancestor
;
5091 fra
.me
.has_broke
= 0;
5092 fra
.me
.REG_size
= 1;
5093 fra
.me
.REG
[0] = NIT_NULL
;
5095 /* ./syntax//mmbuilder.nit:799 */
5096 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___ASuperclass____ancestor(fra
.me
.REG
[0]);
5097 stack_frame_head
= fra
.me
.prev
;
5098 return fra
.me
.REG
[0];
5100 void syntax___mmbuilder___ASuperclass___accept_class_specialization_builder(val_t p0
, val_t p1
){
5101 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
5105 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5106 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
5108 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ASuperclass___accept_class_specialization_builder
;
5109 fra
.me
.has_broke
= 0;
5110 fra
.me
.REG_size
= 4;
5111 fra
.me
.REG
[0] = NIT_NULL
;
5112 fra
.me
.REG
[1] = NIT_NULL
;
5113 fra
.me
.REG
[2] = NIT_NULL
;
5114 fra
.me
.REG
[3] = NIT_NULL
;
5117 /* ./syntax//mmbuilder.nit:801 */
5118 fra
.me
.REG
[2] = fra
.me
.REG
[0];
5119 fra
.me
.REG
[3] = fra
.me
.REG
[1];
5120 /* ./syntax//mmbuilder.nit:803 */
5121 CALL_SUPER_syntax___mmbuilder___ASuperclass___accept_class_specialization_builder(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
5122 /* ./syntax//mmbuilder.nit:804 */
5123 fra
.me
.REG
[1] = CALL_parser___parser_nodes___ASuperclass___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5124 fra
.me
.REG
[1] = CALL_syntax___syntax_base___AType___get_local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
5125 /* ./syntax//mmbuilder.nit:805 */
5126 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
5127 if (UNTAG_Bool(REGB0
)) {
5129 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
5130 if (UNTAG_Bool(REGB1
)) {
5131 REGB1
= TAG_Bool(false);
5134 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
5138 if (UNTAG_Bool(REGB0
)) {
5141 /* ./syntax//mmbuilder.nit:806 */
5142 fra
.me
.REG
[1] = NEW_MMSrcAncestor_syntax___mmbuilder___MMSrcAncestor___init(fra
.me
.REG
[1]);
5143 /* ./syntax//mmbuilder.nit:807 */
5144 ATTR_syntax___mmbuilder___ASuperclass____ancestor(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
5145 /* ./syntax//mmbuilder.nit:808 */
5146 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5147 CALL_metamodel___inheritance___MMLocalClass___add_direct_parent(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1]);
5149 stack_frame_head
= fra
.me
.prev
;
5152 void syntax___mmbuilder___ASuperclass___accept_class_ancestor_builder(val_t p0
, val_t p1
){
5153 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
5156 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5157 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
5159 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ASuperclass___accept_class_ancestor_builder
;
5160 fra
.me
.has_broke
= 0;
5161 fra
.me
.REG_size
= 4;
5162 fra
.me
.REG
[0] = NIT_NULL
;
5163 fra
.me
.REG
[1] = NIT_NULL
;
5164 fra
.me
.REG
[2] = NIT_NULL
;
5165 fra
.me
.REG
[3] = NIT_NULL
;
5168 /* ./syntax//mmbuilder.nit:811 */
5169 fra
.me
.REG
[2] = fra
.me
.REG
[0];
5170 fra
.me
.REG
[3] = fra
.me
.REG
[1];
5171 /* ./syntax//mmbuilder.nit:813 */
5172 CALL_SUPER_syntax___mmbuilder___ASuperclass___accept_class_ancestor_builder(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
5173 /* ./syntax//mmbuilder.nit:814 */
5174 fra
.me
.REG
[1] = ATTR_syntax___mmbuilder___ASuperclass____ancestor(fra
.me
.REG
[2]);
5175 fra
.me
.REG
[0] = CALL_parser___parser_nodes___ASuperclass___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5176 fra
.me
.REG
[0] = CALL_syntax___syntax_base___AType___get_unchecked_stype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
5177 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
5178 if (UNTAG_Bool(REGB0
)) {
5179 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 814);
5181 CALL_metamodel___static_type___MMAncestor___stype__eq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
5182 /* ./syntax//mmbuilder.nit:815 */
5183 fra
.me
.REG
[2] = ATTR_syntax___mmbuilder___ASuperclass____ancestor(fra
.me
.REG
[2]);
5184 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5185 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5186 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
5187 if (UNTAG_Bool(REGB0
)) {
5188 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 815);
5190 CALL_metamodel___static_type___MMAncestor___inheriter__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
5191 stack_frame_head
= fra
.me
.prev
;
5194 void syntax___mmbuilder___ASuperclass___accept_class_verifier(val_t p0
, val_t p1
){
5195 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
5197 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5198 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
5200 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ASuperclass___accept_class_verifier
;
5201 fra
.me
.has_broke
= 0;
5202 fra
.me
.REG_size
= 4;
5203 fra
.me
.REG
[0] = NIT_NULL
;
5204 fra
.me
.REG
[1] = NIT_NULL
;
5205 fra
.me
.REG
[2] = NIT_NULL
;
5206 fra
.me
.REG
[3] = NIT_NULL
;
5209 /* ./syntax//mmbuilder.nit:818 */
5210 fra
.me
.REG
[2] = fra
.me
.REG
[0];
5211 fra
.me
.REG
[3] = fra
.me
.REG
[1];
5212 /* ./syntax//mmbuilder.nit:820 */
5213 CALL_SUPER_syntax___mmbuilder___ASuperclass___accept_class_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
5214 /* ./syntax//mmbuilder.nit:821 */
5215 fra
.me
.REG
[2] = CALL_parser___parser_nodes___ASuperclass___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5216 CALL_syntax___syntax_base___AType___check_conform(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
5217 stack_frame_head
= fra
.me
.prev
;
5220 void syntax___mmbuilder___APropdef___process_and_check(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
){
5221 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
5227 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5228 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
5230 fra
.me
.meth
= LOCATE_syntax___mmbuilder___APropdef___process_and_check
;
5231 fra
.me
.has_broke
= 0;
5232 fra
.me
.REG_size
= 4;
5233 fra
.me
.REG
[0] = NIT_NULL
;
5234 fra
.me
.REG
[1] = NIT_NULL
;
5235 fra
.me
.REG
[2] = NIT_NULL
;
5236 fra
.me
.REG
[3] = NIT_NULL
;
5242 /* ./syntax//mmbuilder.nit:834 */
5243 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5244 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMGlobalProperty___intro(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5245 REGB2
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[3],fra
.me
.REG
[2]));
5246 if (UNTAG_Bool(REGB2
)) {
5248 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
5251 if (UNTAG_Bool(REGB2
)) {
5252 /* ./syntax//mmbuilder.nit:835 */
5253 CALL_syntax___mmbuilder___APropdef___do_and_check_intro(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], REGB0
, REGB1
);
5255 /* ./syntax//mmbuilder.nit:837 */
5256 CALL_syntax___mmbuilder___APropdef___do_and_check_redef(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], REGB0
, REGB1
);
5258 stack_frame_head
= fra
.me
.prev
;
5261 void syntax___mmbuilder___APropdef___do_and_check_intro(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
){
5262 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
5269 static val_t once_value_1
; /* Once value */
5270 static val_t once_value_2
; /* Once value */
5271 static val_t once_value_3
; /* Once value */
5272 static val_t once_value_4
; /* Once value */
5273 static val_t once_value_5
; /* Once value */
5274 static val_t once_value_6
; /* Once value */
5275 static val_t once_value_7
; /* Once value */
5276 static val_t once_value_8
; /* Once value */
5277 static val_t once_value_9
; /* Once value */
5278 static val_t once_value_10
; /* Once value */
5279 static val_t once_value_11
; /* Once value */
5280 static val_t once_value_12
; /* Once value */
5281 static val_t once_value_13
; /* Once value */
5282 static val_t once_value_14
; /* Once value */
5283 static val_t once_value_15
; /* Once value */
5284 static val_t once_value_16
; /* Once value */
5285 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5286 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
5288 fra
.me
.meth
= LOCATE_syntax___mmbuilder___APropdef___do_and_check_intro
;
5289 fra
.me
.has_broke
= 0;
5290 fra
.me
.REG_size
= 7;
5291 fra
.me
.REG
[0] = NIT_NULL
;
5292 fra
.me
.REG
[1] = NIT_NULL
;
5293 fra
.me
.REG
[2] = NIT_NULL
;
5294 fra
.me
.REG
[3] = NIT_NULL
;
5295 fra
.me
.REG
[4] = NIT_NULL
;
5296 fra
.me
.REG
[5] = NIT_NULL
;
5297 fra
.me
.REG
[6] = NIT_NULL
;
5303 /* ./syntax//mmbuilder.nit:844 */
5304 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5305 /* ./syntax//mmbuilder.nit:845 */
5306 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5307 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5308 /* ./syntax//mmbuilder.nit:846 */
5309 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5310 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5311 REGB2
= CALL_metamodel___abstractmetamodel___MMGlobalClass___visibility_level(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5313 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
5314 if (UNTAG_Bool(REGB4
)) {
5316 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5318 /* ./../lib/standard//kernel.nit:216 */
5319 REGB3
= TAG_Bool(UNTAG_Int(REGB2
)>=UNTAG_Int(REGB3
));
5320 /* ./syntax//mmbuilder.nit:846 */
5321 if (UNTAG_Bool(REGB3
)) {
5322 /* ./syntax//mmbuilder.nit:848 */
5326 /* ./syntax//mmbuilder.nit:850 */
5327 CALL_metamodel___abstractmetamodel___MMGlobalProperty___visibility_level__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], REGB1
);
5328 /* ./syntax//mmbuilder.nit:851 */
5329 if (UNTAG_Bool(REGB0
)) {
5330 /* ./syntax//mmbuilder.nit:852 */
5332 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
5333 if (!once_value_1
) {
5334 fra
.me
.REG
[6] = BOX_NativeString("Error: No property ");
5335 REGB0
= TAG_Int(19);
5336 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5337 once_value_1
= fra
.me
.REG
[6];
5338 register_static_object(&once_value_1
);
5339 } else fra
.me
.REG
[6] = once_value_1
;
5340 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5341 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5342 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5343 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
5344 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5345 if (!once_value_2
) {
5346 fra
.me
.REG
[6] = BOX_NativeString("::");
5348 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5349 once_value_2
= fra
.me
.REG
[6];
5350 register_static_object(&once_value_2
);
5351 } else fra
.me
.REG
[6] = once_value_2
;
5352 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5353 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5354 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5355 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5356 if (!once_value_3
) {
5357 fra
.me
.REG
[6] = BOX_NativeString(" is inherited. Remove the redef keyword to define a new property.");
5358 REGB0
= TAG_Int(65);
5359 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5360 once_value_3
= fra
.me
.REG
[6];
5361 register_static_object(&once_value_3
);
5362 } else fra
.me
.REG
[6] = once_value_3
;
5363 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5364 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5365 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5366 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[5]);
5368 /* ./syntax//mmbuilder.nit:854 */
5369 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_attribute(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5370 if (UNTAG_Bool(REGB0
)) {
5371 /* ./syntax//mmbuilder.nit:855 */
5372 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5373 if (UNTAG_Bool(REGB0
)) {
5374 /* ./syntax//mmbuilder.nit:856 */
5376 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
5377 if (!once_value_4
) {
5378 fra
.me
.REG
[6] = BOX_NativeString("Error: Attempt to define attribute ");
5379 REGB0
= TAG_Int(35);
5380 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5381 once_value_4
= fra
.me
.REG
[6];
5382 register_static_object(&once_value_4
);
5383 } else fra
.me
.REG
[6] = once_value_4
;
5384 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5385 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5386 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5387 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5388 if (!once_value_5
) {
5389 fra
.me
.REG
[6] = BOX_NativeString(" in the interface ");
5390 REGB0
= TAG_Int(18);
5391 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5392 once_value_5
= fra
.me
.REG
[6];
5393 register_static_object(&once_value_5
);
5394 } else fra
.me
.REG
[6] = once_value_5
;
5395 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5396 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5397 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5398 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
5399 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5400 if (!once_value_6
) {
5401 fra
.me
.REG
[6] = BOX_NativeString(".");
5403 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5404 once_value_6
= fra
.me
.REG
[6];
5405 register_static_object(&once_value_6
);
5406 } else fra
.me
.REG
[6] = once_value_6
;
5407 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5408 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5409 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5410 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[5]);
5412 /* ./syntax//mmbuilder.nit:857 */
5413 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5414 if (UNTAG_Bool(REGB0
)) {
5415 /* ./syntax//mmbuilder.nit:858 */
5417 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
5418 if (!once_value_7
) {
5419 fra
.me
.REG
[6] = BOX_NativeString("Error: Attempt to define attribute ");
5420 REGB0
= TAG_Int(35);
5421 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5422 once_value_7
= fra
.me
.REG
[6];
5423 register_static_object(&once_value_7
);
5424 } else fra
.me
.REG
[6] = once_value_7
;
5425 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5426 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5427 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5428 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5429 if (!once_value_8
) {
5430 fra
.me
.REG
[6] = BOX_NativeString(" in the enum class ");
5431 REGB0
= TAG_Int(19);
5432 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5433 once_value_8
= fra
.me
.REG
[6];
5434 register_static_object(&once_value_8
);
5435 } else fra
.me
.REG
[6] = once_value_8
;
5436 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5437 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5438 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5439 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
5440 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5441 if (!once_value_9
) {
5442 fra
.me
.REG
[6] = BOX_NativeString(".");
5444 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5445 once_value_9
= fra
.me
.REG
[6];
5446 register_static_object(&once_value_9
);
5447 } else fra
.me
.REG
[6] = once_value_9
;
5448 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5449 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5450 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5451 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[5]);
5455 /* ./syntax//mmbuilder.nit:860 */
5456 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5457 if (UNTAG_Bool(REGB0
)) {
5458 /* ./syntax//mmbuilder.nit:861 */
5459 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_interface(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5460 if (UNTAG_Bool(REGB0
)) {
5461 /* ./syntax//mmbuilder.nit:862 */
5463 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
5464 if (!once_value_10
) {
5465 fra
.me
.REG
[6] = BOX_NativeString("Error: Attempt to define a constructor ");
5466 REGB0
= TAG_Int(39);
5467 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5468 once_value_10
= fra
.me
.REG
[6];
5469 register_static_object(&once_value_10
);
5470 } else fra
.me
.REG
[6] = once_value_10
;
5471 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5472 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5473 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5474 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5475 if (!once_value_11
) {
5476 fra
.me
.REG
[6] = BOX_NativeString(" in the class ");
5477 REGB0
= TAG_Int(14);
5478 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5479 once_value_11
= fra
.me
.REG
[6];
5480 register_static_object(&once_value_11
);
5481 } else fra
.me
.REG
[6] = once_value_11
;
5482 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5483 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5484 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5485 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
5486 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5487 if (!once_value_12
) {
5488 fra
.me
.REG
[6] = BOX_NativeString(".");
5490 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB0
);
5491 once_value_12
= fra
.me
.REG
[6];
5492 register_static_object(&once_value_12
);
5493 } else fra
.me
.REG
[6] = once_value_12
;
5494 fra
.me
.REG
[6] = fra
.me
.REG
[6];
5495 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5496 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5497 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[5]);
5499 /* ./syntax//mmbuilder.nit:863 */
5500 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalClass___is_enum(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5501 if (UNTAG_Bool(REGB0
)) {
5502 /* ./syntax//mmbuilder.nit:864 */
5504 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
5505 if (!once_value_13
) {
5506 fra
.me
.REG
[5] = BOX_NativeString("Error: Attempt to define a constructor ");
5507 REGB0
= TAG_Int(39);
5508 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
5509 once_value_13
= fra
.me
.REG
[5];
5510 register_static_object(&once_value_13
);
5511 } else fra
.me
.REG
[5] = once_value_13
;
5512 fra
.me
.REG
[5] = fra
.me
.REG
[5];
5513 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
5514 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5515 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
5516 if (!once_value_14
) {
5517 fra
.me
.REG
[5] = BOX_NativeString(" in the enum ");
5518 REGB0
= TAG_Int(13);
5519 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
5520 once_value_14
= fra
.me
.REG
[5];
5521 register_static_object(&once_value_14
);
5522 } else fra
.me
.REG
[5] = once_value_14
;
5523 fra
.me
.REG
[5] = fra
.me
.REG
[5];
5524 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
5525 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5526 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5527 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
5528 if (!once_value_15
) {
5529 fra
.me
.REG
[5] = BOX_NativeString(".");
5531 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
5532 once_value_15
= fra
.me
.REG
[5];
5533 register_static_object(&once_value_15
);
5534 } else fra
.me
.REG
[5] = once_value_15
;
5535 fra
.me
.REG
[5] = fra
.me
.REG
[5];
5536 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
5537 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5538 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[4]);
5543 /* ./syntax//mmbuilder.nit:867 */
5544 fra
.me
.REG
[4] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5545 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
5546 if (UNTAG_Bool(REGB0
)) {
5548 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
5549 if (UNTAG_Bool(REGB1
)) {
5550 REGB1
= TAG_Bool(false);
5553 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
5557 if (UNTAG_Bool(REGB0
)) {
5558 /* ./syntax//mmbuilder.nit:868 */
5559 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5560 if (UNTAG_Bool(REGB0
)) {
5561 /* ./syntax//mmbuilder.nit:869 */
5562 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5563 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMLocalProperty___name(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5564 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMLocalClass___super_methods_named(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
5565 /* ./syntax//mmbuilder.nit:870 */
5566 CALL_syntax___mmbuilder___APropdef___inherit_signature(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2], fra
.me
.REG
[4]);
5568 /* ./syntax//mmbuilder.nit:872 */
5569 fra
.me
.REG
[4] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5570 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
5571 if (UNTAG_Bool(REGB0
)) {
5573 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
5574 if (UNTAG_Bool(REGB1
)) {
5575 REGB1
= TAG_Bool(false);
5578 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
5582 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
5583 if (UNTAG_Bool(REGB0
)) {
5584 REGB0
= TAG_Bool(true);
5586 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5587 REGB1
= CALL_syntax___mmbuilder___SignatureBuilder___has_error_occured(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5590 if (UNTAG_Bool(REGB0
)) {
5592 /* ./syntax//mmbuilder.nit:874 */
5593 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5594 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___SignatureBuilder___untyped_params(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5595 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5596 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
5597 if (UNTAG_Bool(REGB0
)) {
5598 /* ./syntax//mmbuilder.nit:875 */
5599 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5600 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___SignatureBuilder___untyped_params(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5601 fra
.me
.REG
[4] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5602 if (!once_value_16
) {
5603 fra
.me
.REG
[0] = BOX_NativeString("Error: Untyped parameter.");
5604 REGB0
= TAG_Int(25);
5605 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
5606 once_value_16
= fra
.me
.REG
[0];
5607 register_static_object(&once_value_16
);
5608 } else fra
.me
.REG
[0] = once_value_16
;
5609 fra
.me
.REG
[0] = fra
.me
.REG
[0];
5610 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4], fra
.me
.REG
[0]);
5612 /* ./syntax//mmbuilder.nit:877 */
5613 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___init();
5614 fra
.me
.REG
[4] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5615 fra
.me
.REG
[4] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
5616 fra
.me
.REG
[4] = NEW_MMSignature_metamodel___static_type___MMSignature___init(fra
.me
.REG
[0], NIT_NULL
, fra
.me
.REG
[4]);
5617 CALL_metamodel___static_type___MMLocalProperty___signature__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
5618 /* ./syntax//mmbuilder.nit:878 */
5619 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5620 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___SignatureBuilder___closure_decls(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5621 /* ./../lib/standard//collection//array.nit:232 */
5623 /* ./../lib/standard//collection//array.nit:233 */
5624 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
5625 if (UNTAG_Bool(REGB1
)) {
5627 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
5629 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
5630 /* ./../lib/standard//collection//array.nit:234 */
5631 fra
.me
.REG
[4] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
5632 /* ./../lib/standard//collection//array.nit:235 */
5634 /* ./../lib/standard//collection//array.nit:23 */
5635 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
5636 if (UNTAG_Bool(REGB1
)) {
5638 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
5640 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
5641 REGB3
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5642 if (UNTAG_Bool(REGB3
)) {
5644 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5646 /* ./../lib/standard//kernel.nit:215 */
5647 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
5648 /* ./../lib/standard//collection//array.nit:235 */
5649 if (UNTAG_Bool(REGB1
)) {
5650 /* ./../lib/standard//collection//array.nit:236 */
5651 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
5652 if (UNTAG_Bool(REGB1
)) {
5653 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
5655 /* ./../lib/standard//collection//array.nit:652 */
5656 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB0
)];
5657 /* ./syntax//mmbuilder.nit:879 */
5658 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5659 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
5660 if (UNTAG_Bool(REGB1
)) {
5661 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 879);
5663 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMSignature___closures(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
5664 fra
.me
.REG
[0] = CALL_syntax___syntax_base___AClosureDecl___variable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5665 fra
.me
.REG
[0] = CALL_syntax___syntax_base___ClosureVariable___closure(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
5666 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
5667 /* ./../lib/standard//collection//array.nit:237 */
5669 /* ./../lib/standard//kernel.nit:218 */
5670 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
5671 /* ./../lib/standard//collection//array.nit:237 */
5674 /* ./../lib/standard//collection//array.nit:235 */
5682 stack_frame_head
= fra
.me
.prev
;
5685 void syntax___mmbuilder___APropdef___inherit_signature(val_t p0
, val_t p1
, val_t p2
, val_t p3
){
5686 struct {struct stack_frame_t me
; val_t MORE_REG
[10];} fra
;
5693 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5694 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
5696 fra
.me
.meth
= LOCATE_syntax___mmbuilder___APropdef___inherit_signature
;
5697 fra
.me
.has_broke
= 0;
5698 fra
.me
.REG_size
= 11;
5699 fra
.me
.REG
[0] = NIT_NULL
;
5700 fra
.me
.REG
[1] = NIT_NULL
;
5701 fra
.me
.REG
[2] = NIT_NULL
;
5702 fra
.me
.REG
[3] = NIT_NULL
;
5703 fra
.me
.REG
[4] = NIT_NULL
;
5704 fra
.me
.REG
[5] = NIT_NULL
;
5705 fra
.me
.REG
[6] = NIT_NULL
;
5706 fra
.me
.REG
[7] = NIT_NULL
;
5707 fra
.me
.REG
[8] = NIT_NULL
;
5708 fra
.me
.REG
[9] = NIT_NULL
;
5709 fra
.me
.REG
[10] = NIT_NULL
;
5714 /* ./syntax//mmbuilder.nit:887 */
5715 fra
.me
.REG
[0] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5716 /* ./../lib/standard//collection//array.nit:232 */
5718 /* ./../lib/standard//collection//array.nit:233 */
5719 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
5720 if (UNTAG_Bool(REGB1
)) {
5722 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
5724 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
5725 /* ./../lib/standard//collection//array.nit:234 */
5726 fra
.me
.REG
[4] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[3]);
5727 /* ./../lib/standard//collection//array.nit:235 */
5729 /* ./../lib/standard//collection//array.nit:23 */
5730 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
5731 if (UNTAG_Bool(REGB1
)) {
5733 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
5735 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
5736 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
5737 if (UNTAG_Bool(REGB2
)) {
5739 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5741 /* ./../lib/standard//kernel.nit:215 */
5742 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
5743 /* ./../lib/standard//collection//array.nit:235 */
5744 if (UNTAG_Bool(REGB1
)) {
5745 /* ./../lib/standard//collection//array.nit:236 */
5746 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
5747 if (UNTAG_Bool(REGB1
)) {
5748 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
5750 /* ./../lib/standard//collection//array.nit:652 */
5751 fra
.me
.REG
[5] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB0
)];
5752 /* ./syntax//mmbuilder.nit:889 */
5753 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5754 fra
.me
.REG
[6] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5755 fra
.me
.REG
[6] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
5756 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
5757 if (UNTAG_Bool(REGB1
)) {
5758 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 889);
5760 fra
.me
.REG
[6] = CALL_metamodel___static_type___MMSignature___adaptation_to(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[6]);
5761 /* ./syntax//mmbuilder.nit:891 */
5762 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
5763 if (UNTAG_Bool(REGB1
)) {
5765 REGB2
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
5766 if (UNTAG_Bool(REGB2
)) {
5767 REGB2
= TAG_Bool(false);
5770 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
5774 if (UNTAG_Bool(REGB1
)) {
5775 /* ./syntax//mmbuilder.nit:892 */
5776 fra
.me
.REG
[5] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5777 fra
.me
.REG
[5] = CALL_syntax___mmbuilder___SignatureBuilder___params(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5778 /* ./../lib/standard//collection//array.nit:23 */
5779 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
5780 if (UNTAG_Bool(REGB1
)) {
5782 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
5784 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
5785 /* ./syntax//mmbuilder.nit:892 */
5786 REGB2
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
5787 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB2
));
5788 if (UNTAG_Bool(REGB3
)) {
5790 /* ./../lib/standard//kernel.nit:210 */
5791 REGB2
= TAG_Bool((REGB1
)==(REGB2
));
5792 /* ./syntax//mmbuilder.nit:892 */
5795 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
5796 if (UNTAG_Bool(REGB3
)) {
5797 /* ./syntax//mmbuilder.nit:893 */
5800 /* ./syntax//mmbuilder.nit:895 */
5801 fra
.me
.REG
[5] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
5802 fra
.me
.REG
[5] = CALL_syntax___mmbuilder___SignatureBuilder___params(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
5803 /* ./../lib/standard//collection//array.nit:232 */
5805 /* ./../lib/standard//collection//array.nit:233 */
5806 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
5807 if (UNTAG_Bool(REGB2
)) {
5809 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
5811 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
5812 /* ./../lib/standard//collection//array.nit:234 */
5813 fra
.me
.REG
[7] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[5]);
5814 /* ./../lib/standard//collection//array.nit:235 */
5816 /* ./../lib/standard//collection//array.nit:23 */
5817 REGB2
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
5818 if (UNTAG_Bool(REGB2
)) {
5820 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
5822 REGB2
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
5823 REGB1
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
5824 if (UNTAG_Bool(REGB1
)) {
5826 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
5828 /* ./../lib/standard//kernel.nit:215 */
5829 REGB2
= TAG_Bool(UNTAG_Int(REGB3
)<UNTAG_Int(REGB2
));
5830 /* ./../lib/standard//collection//array.nit:235 */
5831 if (UNTAG_Bool(REGB2
)) {
5832 /* ./../lib/standard//collection//array.nit:236 */
5833 REGB2
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
5834 if (UNTAG_Bool(REGB2
)) {
5835 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
5837 /* ./../lib/standard//collection//array.nit:652 */
5838 fra
.me
.REG
[8] = ((Nit_NativeArray
)fra
.me
.REG
[7])->val
[UNTAG_Int(REGB3
)];
5839 /* ./syntax//mmbuilder.nit:896 */
5840 REGB2
= CALL_syntax___syntax_base___AParam___position(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
5841 fra
.me
.REG
[9] = CALL_metamodel___static_type___MMSignature_____bra(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB2
);
5842 /* ./syntax//mmbuilder.nit:897 */
5843 CALL_syntax___mmbuilder___AParam___stype__eq(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[9]);
5844 /* ./syntax//mmbuilder.nit:898 */
5845 REGB2
= CALL_syntax___syntax_base___AParam___position(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
5846 REGB1
= CALL_metamodel___vararg___MMSignature___vararg_rank(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
5847 REGB4
= TAG_Bool(IS_EQUAL_OO(REGB2
,REGB1
));
5848 if (UNTAG_Bool(REGB4
)) {
5850 /* ./../lib/standard//kernel.nit:210 */
5851 REGB1
= TAG_Bool((REGB2
)==(REGB1
));
5852 /* ./syntax//mmbuilder.nit:898 */
5855 if (UNTAG_Bool(REGB4
)) {
5856 /* ./syntax//mmbuilder.nit:899 */
5857 fra
.me
.REG
[10] = CALL_syntax___syntax_base___AbsSyntaxVisitor___type_array(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[9]);
5858 fra
.me
.REG
[9] = fra
.me
.REG
[10];
5860 /* ./syntax//mmbuilder.nit:901 */
5861 fra
.me
.REG
[8] = CALL_syntax___syntax_base___AParam___variable(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
5862 CALL_syntax___syntax_base___Variable___stype__eq(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[9]);
5863 /* ./../lib/standard//collection//array.nit:237 */
5865 /* ./../lib/standard//kernel.nit:218 */
5866 REGB4
= TAG_Int(UNTAG_Int(REGB3
)+UNTAG_Int(REGB4
));
5867 /* ./../lib/standard//collection//array.nit:237 */
5870 /* ./../lib/standard//collection//array.nit:235 */
5875 /* ./syntax//mmbuilder.nit:904 */
5876 fra
.me
.REG
[0] = fra
.me
.REG
[6];
5877 /* ./syntax//mmbuilder.nit:905 */
5878 CALL_metamodel___static_type___MMLocalProperty___signature__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[0]);
5880 /* ./../lib/standard//collection//array.nit:237 */
5882 /* ./../lib/standard//kernel.nit:218 */
5883 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
5884 /* ./../lib/standard//collection//array.nit:237 */
5887 /* ./../lib/standard//collection//array.nit:235 */
5893 stack_frame_head
= fra
.me
.prev
;
5896 void syntax___mmbuilder___APropdef___do_and_check_redef(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
){
5897 struct {struct stack_frame_t me
; val_t MORE_REG
[13];} fra
;
5907 static val_t once_value_1
; /* Once value */
5908 static val_t once_value_2
; /* Once value */
5909 static val_t once_value_3
; /* Once value */
5910 static val_t once_value_5
; /* Once value */
5911 static val_t once_value_6
; /* Once value */
5912 static val_t once_value_7
; /* Once value */
5913 static val_t once_value_8
; /* Once value */
5914 static val_t once_value_9
; /* Once value */
5915 static val_t once_value_10
; /* Once value */
5916 static val_t once_value_12
; /* Once value */
5917 static val_t once_value_13
; /* Once value */
5918 static val_t once_value_14
; /* Once value */
5919 static val_t once_value_15
; /* Once value */
5920 static val_t once_value_16
; /* Once value */
5921 static val_t once_value_17
; /* Once value */
5922 static val_t once_value_18
; /* Once value */
5923 static val_t once_value_19
; /* Once value */
5924 static val_t once_value_20
; /* Once value */
5925 static val_t once_value_21
; /* Once value */
5926 static val_t once_value_22
; /* Once value */
5927 static val_t once_value_23
; /* Once value */
5928 static val_t once_value_25
; /* Once value */
5929 static val_t once_value_26
; /* Once value */
5930 static val_t once_value_27
; /* Once value */
5931 static val_t once_value_28
; /* Once value */
5932 static val_t once_value_29
; /* Once value */
5933 static val_t once_value_30
; /* Once value */
5934 static val_t once_value_31
; /* Once value */
5935 static val_t once_value_32
; /* Once value */
5936 static val_t once_value_33
; /* Once value */
5937 static val_t once_value_34
; /* Once value */
5938 static val_t once_value_36
; /* Once value */
5939 static val_t once_value_37
; /* Once value */
5940 static val_t once_value_38
; /* Once value */
5941 static val_t once_value_39
; /* Once value */
5942 static val_t once_value_40
; /* Once value */
5943 static val_t once_value_41
; /* Once value */
5944 static val_t once_value_42
; /* Once value */
5945 static val_t once_value_43
; /* Once value */
5946 static val_t once_value_44
; /* Once value */
5947 static val_t once_value_45
; /* Once value */
5948 static val_t once_value_46
; /* Once value */
5949 static val_t once_value_47
; /* Once value */
5950 static val_t once_value_48
; /* Once value */
5951 static val_t once_value_49
; /* Once value */
5952 static val_t once_value_50
; /* Once value */
5953 static val_t once_value_51
; /* Once value */
5954 static val_t once_value_52
; /* Once value */
5955 static val_t once_value_53
; /* Once value */
5956 static val_t once_value_54
; /* Once value */
5957 static val_t once_value_55
; /* Once value */
5958 static val_t once_value_56
; /* Once value */
5959 static val_t once_value_57
; /* Once value */
5960 static val_t once_value_58
; /* Once value */
5961 static val_t once_value_59
; /* Once value */
5962 static val_t once_value_60
; /* Once value */
5963 static val_t once_value_61
; /* Once value */
5964 static val_t once_value_62
; /* Once value */
5965 static val_t once_value_64
; /* Once value */
5966 static val_t once_value_65
; /* Once value */
5967 static val_t once_value_66
; /* Once value */
5968 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
5969 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
5971 fra
.me
.meth
= LOCATE_syntax___mmbuilder___APropdef___do_and_check_redef
;
5972 fra
.me
.has_broke
= 0;
5973 fra
.me
.REG_size
= 14;
5974 fra
.me
.REG
[0] = NIT_NULL
;
5975 fra
.me
.REG
[1] = NIT_NULL
;
5976 fra
.me
.REG
[2] = NIT_NULL
;
5977 fra
.me
.REG
[3] = NIT_NULL
;
5978 fra
.me
.REG
[4] = NIT_NULL
;
5979 fra
.me
.REG
[5] = NIT_NULL
;
5980 fra
.me
.REG
[6] = NIT_NULL
;
5981 fra
.me
.REG
[7] = NIT_NULL
;
5982 fra
.me
.REG
[8] = NIT_NULL
;
5983 fra
.me
.REG
[9] = NIT_NULL
;
5984 fra
.me
.REG
[10] = NIT_NULL
;
5985 fra
.me
.REG
[11] = NIT_NULL
;
5986 fra
.me
.REG
[12] = NIT_NULL
;
5987 fra
.me
.REG
[13] = NIT_NULL
;
5993 /* ./syntax//mmbuilder.nit:913 */
5994 REGB2
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_parser___parser_nodes___AConcreteInitPropdef
, ID_parser___parser_nodes___AConcreteInitPropdef
)) /*cast AConcreteInitPropdef*/;
5995 /* ./syntax//mmbuilder.nit:914 */
5996 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
5997 /* ./syntax//mmbuilder.nit:916 */
5998 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
5999 if (UNTAG_Bool(REGB0
)) {
6000 /* ./syntax//mmbuilder.nit:917 */
6002 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
6003 if (!once_value_1
) {
6004 fra
.me
.REG
[5] = BOX_NativeString("Redef error: ");
6005 REGB0
= TAG_Int(13);
6006 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
6007 once_value_1
= fra
.me
.REG
[5];
6008 register_static_object(&once_value_1
);
6009 } else fra
.me
.REG
[5] = once_value_1
;
6010 fra
.me
.REG
[5] = fra
.me
.REG
[5];
6011 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6012 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6013 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
6014 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6015 if (!once_value_2
) {
6016 fra
.me
.REG
[5] = BOX_NativeString("::");
6018 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
6019 once_value_2
= fra
.me
.REG
[5];
6020 register_static_object(&once_value_2
);
6021 } else fra
.me
.REG
[5] = once_value_2
;
6022 fra
.me
.REG
[5] = fra
.me
.REG
[5];
6023 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6024 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6025 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6026 if (!once_value_3
) {
6027 fra
.me
.REG
[5] = BOX_NativeString(" is an inherited property. To redefine it, add the redef keyword.");
6028 REGB0
= TAG_Int(65);
6029 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
6030 once_value_3
= fra
.me
.REG
[5];
6031 register_static_object(&once_value_3
);
6032 } else fra
.me
.REG
[5] = once_value_3
;
6033 fra
.me
.REG
[5] = fra
.me
.REG
[5];
6034 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6035 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
6036 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[4]);
6037 /* ./syntax//mmbuilder.nit:918 */
6040 /* ./syntax//mmbuilder.nit:920 */
6041 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
6042 if (UNTAG_Bool(REGB0
)) {
6043 REGB0
= TAG_Bool(!UNTAG_Bool(REGB2
));
6045 REGB3
= TAG_Bool(false);
6048 if (UNTAG_Bool(REGB0
)) {
6049 /* ./syntax//mmbuilder.nit:921 */
6051 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
6052 if (!once_value_5
) {
6053 fra
.me
.REG
[5] = BOX_NativeString("Redef error: A method ");
6054 REGB0
= TAG_Int(22);
6055 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
6056 once_value_5
= fra
.me
.REG
[5];
6057 register_static_object(&once_value_5
);
6058 } else fra
.me
.REG
[5] = once_value_5
;
6059 fra
.me
.REG
[5] = fra
.me
.REG
[5];
6060 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6061 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6062 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
6063 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6064 if (!once_value_6
) {
6065 fra
.me
.REG
[5] = BOX_NativeString("::");
6067 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
6068 once_value_6
= fra
.me
.REG
[5];
6069 register_static_object(&once_value_6
);
6070 } else fra
.me
.REG
[5] = once_value_6
;
6071 fra
.me
.REG
[5] = fra
.me
.REG
[5];
6072 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6073 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6074 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6075 if (!once_value_7
) {
6076 fra
.me
.REG
[5] = BOX_NativeString(" cannot redefine a constructor.");
6077 REGB0
= TAG_Int(31);
6078 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
6079 once_value_7
= fra
.me
.REG
[5];
6080 register_static_object(&once_value_7
);
6081 } else fra
.me
.REG
[5] = once_value_7
;
6082 fra
.me
.REG
[5] = fra
.me
.REG
[5];
6083 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6084 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
6085 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[4]);
6087 /* ./syntax//mmbuilder.nit:922 */
6088 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___is_init(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
6089 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
6090 if (UNTAG_Bool(REGB0
)) {
6092 REGB0
= TAG_Bool(false);
6095 if (UNTAG_Bool(REGB2
)) {
6096 /* ./syntax//mmbuilder.nit:923 */
6098 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2
);
6099 if (!once_value_8
) {
6100 fra
.me
.REG
[5] = BOX_NativeString("Redef error: A constructor ");
6101 REGB2
= TAG_Int(27);
6102 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB2
);
6103 once_value_8
= fra
.me
.REG
[5];
6104 register_static_object(&once_value_8
);
6105 } else fra
.me
.REG
[5] = once_value_8
;
6106 fra
.me
.REG
[5] = fra
.me
.REG
[5];
6107 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6108 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6109 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
6110 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6111 if (!once_value_9
) {
6112 fra
.me
.REG
[5] = BOX_NativeString("::");
6114 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB2
);
6115 once_value_9
= fra
.me
.REG
[5];
6116 register_static_object(&once_value_9
);
6117 } else fra
.me
.REG
[5] = once_value_9
;
6118 fra
.me
.REG
[5] = fra
.me
.REG
[5];
6119 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6120 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6121 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6122 if (!once_value_10
) {
6123 fra
.me
.REG
[5] = BOX_NativeString(" cannot redefine a method.");
6124 REGB2
= TAG_Int(26);
6125 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB2
);
6126 once_value_10
= fra
.me
.REG
[5];
6127 register_static_object(&once_value_10
);
6128 } else fra
.me
.REG
[5] = once_value_10
;
6129 fra
.me
.REG
[5] = fra
.me
.REG
[5];
6130 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
6131 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
6132 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[4]);
6135 /* ./syntax//mmbuilder.nit:926 */
6136 fra
.me
.REG
[4] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6137 /* ./syntax//mmbuilder.nit:928 */
6138 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMLocalProperty___prhe(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6139 fra
.me
.REG
[5] = CALL_metamodel___partial_order___PartialOrderElement___direct_greaters(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
6140 /* ./../lib/standard//collection//array.nit:232 */
6142 /* ./../lib/standard//collection//array.nit:233 */
6143 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
6144 if (UNTAG_Bool(REGB0
)) {
6146 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
6148 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
6149 /* ./../lib/standard//collection//array.nit:234 */
6150 fra
.me
.REG
[6] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[5]);
6151 /* ./../lib/standard//collection//array.nit:235 */
6153 /* ./../lib/standard//collection//array.nit:23 */
6154 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
6155 if (UNTAG_Bool(REGB0
)) {
6157 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
6159 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
6160 REGB3
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB2
), VTID_standard___kernel___Comparable___OTHER(REGB2
))) /*cast OTHER*/;
6161 if (UNTAG_Bool(REGB3
)) {
6163 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
6165 /* ./../lib/standard//kernel.nit:215 */
6166 REGB0
= TAG_Bool(UNTAG_Int(REGB2
)<UNTAG_Int(REGB0
));
6167 /* ./../lib/standard//collection//array.nit:235 */
6168 if (UNTAG_Bool(REGB0
)) {
6169 /* ./../lib/standard//collection//array.nit:236 */
6170 REGB0
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
6171 if (UNTAG_Bool(REGB0
)) {
6172 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
6174 /* ./../lib/standard//collection//array.nit:652 */
6175 fra
.me
.REG
[7] = ((Nit_NativeArray
)fra
.me
.REG
[6])->val
[UNTAG_Int(REGB2
)];
6176 /* ./syntax//mmbuilder.nit:929 */
6177 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
6178 fra
.me
.REG
[9] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6179 fra
.me
.REG
[9] = CALL_metamodel___abstractmetamodel___MMLocalClass_____bra(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[9]);
6180 /* ./syntax//mmbuilder.nit:930 */
6181 fra
.me
.REG
[7] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
6182 /* ./syntax//mmbuilder.nit:931 */
6183 REGB0
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6184 if (UNTAG_Bool(REGB0
)) {
6186 REGB3
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6187 if (UNTAG_Bool(REGB3
)) {
6188 REGB3
= TAG_Bool(false);
6191 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[7])(fra
.me
.REG
[7], NIT_NULL
);
6195 if (UNTAG_Bool(REGB0
)) {
6198 /* ./syntax//mmbuilder.nit:932 */
6199 fra
.me
.REG
[8] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
6200 fra
.me
.REG
[8] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
6201 REGB0
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6202 if (UNTAG_Bool(REGB0
)) {
6203 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 932);
6205 fra
.me
.REG
[8] = CALL_metamodel___static_type___MMSignature___adaptation_to(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[8]);
6206 fra
.me
.REG
[7] = fra
.me
.REG
[8];
6207 /* ./syntax//mmbuilder.nit:934 */
6208 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
6209 if (UNTAG_Bool(REGB0
)) {
6211 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
6212 if (UNTAG_Bool(REGB3
)) {
6213 REGB3
= TAG_Bool(false);
6216 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
6220 if (UNTAG_Bool(REGB0
)) {
6221 /* ./syntax//mmbuilder.nit:936 */
6222 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
6223 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___SignatureBuilder___params(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
6224 /* ./../lib/standard//collection//array.nit:23 */
6225 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[8])!=NIT_NULL
);
6226 if (UNTAG_Bool(REGB0
)) {
6228 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
6230 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[8]);
6231 /* ./syntax//mmbuilder.nit:936 */
6232 REGB3
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6233 if (UNTAG_Bool(REGB3
)) {
6234 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 936);
6236 REGB3
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
6237 REGB4
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB3
));
6238 if (UNTAG_Bool(REGB4
)) {
6240 /* ./../lib/standard//kernel.nit:210 */
6241 REGB3
= TAG_Bool((REGB0
)==(REGB3
));
6242 /* ./syntax//mmbuilder.nit:936 */
6245 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
6246 if (UNTAG_Bool(REGB4
)) {
6247 /* ./syntax//mmbuilder.nit:937 */
6248 REGB4
= TAG_Int(11);
6249 fra
.me
.REG
[8] = NEW_Array_standard___collection___array___Array___with_capacity(REGB4
);
6250 if (!once_value_12
) {
6251 fra
.me
.REG
[10] = BOX_NativeString("Redef error: ");
6252 REGB4
= TAG_Int(13);
6253 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB4
);
6254 once_value_12
= fra
.me
.REG
[10];
6255 register_static_object(&once_value_12
);
6256 } else fra
.me
.REG
[10] = once_value_12
;
6257 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6258 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6259 fra
.me
.REG
[10] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6260 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
6261 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6262 if (!once_value_13
) {
6263 fra
.me
.REG
[10] = BOX_NativeString("::");
6265 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB4
);
6266 once_value_13
= fra
.me
.REG
[10];
6267 register_static_object(&once_value_13
);
6268 } else fra
.me
.REG
[10] = once_value_13
;
6269 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6270 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6271 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6272 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6273 if (!once_value_14
) {
6274 fra
.me
.REG
[10] = BOX_NativeString(" redefines ");
6275 REGB4
= TAG_Int(11);
6276 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB4
);
6277 once_value_14
= fra
.me
.REG
[10];
6278 register_static_object(&once_value_14
);
6279 } else fra
.me
.REG
[10] = once_value_14
;
6280 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6281 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6282 fra
.me
.REG
[10] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6283 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
6284 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6285 if (!once_value_15
) {
6286 fra
.me
.REG
[10] = BOX_NativeString("::");
6288 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB4
);
6289 once_value_15
= fra
.me
.REG
[10];
6290 register_static_object(&once_value_15
);
6291 } else fra
.me
.REG
[10] = once_value_15
;
6292 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6293 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6294 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6295 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6296 if (!once_value_16
) {
6297 fra
.me
.REG
[10] = BOX_NativeString(" with ");
6299 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB4
);
6300 once_value_16
= fra
.me
.REG
[10];
6301 register_static_object(&once_value_16
);
6302 } else fra
.me
.REG
[10] = once_value_16
;
6303 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6304 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6305 REGB4
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6306 if (UNTAG_Bool(REGB4
)) {
6307 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 937);
6309 REGB4
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
6310 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(REGB4
)(REGB4
);
6311 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6312 if (!once_value_17
) {
6313 fra
.me
.REG
[10] = BOX_NativeString(" parameter(s).");
6314 REGB4
= TAG_Int(14);
6315 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB4
);
6316 once_value_17
= fra
.me
.REG
[10];
6317 register_static_object(&once_value_17
);
6318 } else fra
.me
.REG
[10] = once_value_17
;
6319 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6320 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6321 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
6322 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[8]);
6323 /* ./syntax//mmbuilder.nit:938 */
6326 /* ./syntax//mmbuilder.nit:940 */
6327 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
6328 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___SignatureBuilder___closure_decls(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
6329 /* ./../lib/standard//collection//array.nit:23 */
6330 REGB4
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[8])!=NIT_NULL
);
6331 if (UNTAG_Bool(REGB4
)) {
6333 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
6335 REGB4
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[8]);
6336 /* ./syntax//mmbuilder.nit:940 */
6337 REGB3
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6338 if (UNTAG_Bool(REGB3
)) {
6339 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 940);
6341 fra
.me
.REG
[8] = CALL_metamodel___static_type___MMSignature___closures(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
6342 /* ./../lib/standard//collection//array.nit:23 */
6343 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[8])!=NIT_NULL
);
6344 if (UNTAG_Bool(REGB3
)) {
6346 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
6348 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[8]);
6349 /* ./syntax//mmbuilder.nit:940 */
6350 REGB0
= TAG_Bool(IS_EQUAL_OO(REGB4
,REGB3
));
6351 if (UNTAG_Bool(REGB0
)) {
6353 /* ./../lib/standard//kernel.nit:210 */
6354 REGB3
= TAG_Bool((REGB4
)==(REGB3
));
6355 /* ./syntax//mmbuilder.nit:940 */
6358 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
6359 if (UNTAG_Bool(REGB0
)) {
6360 /* ./syntax//mmbuilder.nit:941 */
6361 REGB0
= TAG_Int(11);
6362 fra
.me
.REG
[8] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
6363 if (!once_value_18
) {
6364 fra
.me
.REG
[10] = BOX_NativeString("Redef error: ");
6365 REGB0
= TAG_Int(13);
6366 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB0
);
6367 once_value_18
= fra
.me
.REG
[10];
6368 register_static_object(&once_value_18
);
6369 } else fra
.me
.REG
[10] = once_value_18
;
6370 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6371 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6372 fra
.me
.REG
[10] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6373 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
6374 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6375 if (!once_value_19
) {
6376 fra
.me
.REG
[10] = BOX_NativeString("::");
6378 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB0
);
6379 once_value_19
= fra
.me
.REG
[10];
6380 register_static_object(&once_value_19
);
6381 } else fra
.me
.REG
[10] = once_value_19
;
6382 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6383 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6384 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6385 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6386 if (!once_value_20
) {
6387 fra
.me
.REG
[10] = BOX_NativeString(" redefines ");
6388 REGB0
= TAG_Int(11);
6389 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB0
);
6390 once_value_20
= fra
.me
.REG
[10];
6391 register_static_object(&once_value_20
);
6392 } else fra
.me
.REG
[10] = once_value_20
;
6393 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6394 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6395 fra
.me
.REG
[10] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6396 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
6397 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6398 if (!once_value_21
) {
6399 fra
.me
.REG
[10] = BOX_NativeString("::");
6401 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB0
);
6402 once_value_21
= fra
.me
.REG
[10];
6403 register_static_object(&once_value_21
);
6404 } else fra
.me
.REG
[10] = once_value_21
;
6405 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6406 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6407 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6408 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6409 if (!once_value_22
) {
6410 fra
.me
.REG
[10] = BOX_NativeString(" with ");
6412 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB0
);
6413 once_value_22
= fra
.me
.REG
[10];
6414 register_static_object(&once_value_22
);
6415 } else fra
.me
.REG
[10] = once_value_22
;
6416 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6417 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6418 REGB0
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6419 if (UNTAG_Bool(REGB0
)) {
6420 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 941);
6422 REGB0
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
6423 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(REGB0
)(REGB0
);
6424 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6425 if (!once_value_23
) {
6426 fra
.me
.REG
[10] = BOX_NativeString(" closure(s).");
6427 REGB0
= TAG_Int(12);
6428 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB0
);
6429 once_value_23
= fra
.me
.REG
[10];
6430 register_static_object(&once_value_23
);
6431 } else fra
.me
.REG
[10] = once_value_23
;
6432 fra
.me
.REG
[10] = fra
.me
.REG
[10];
6433 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[10]);
6434 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
6435 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[8]);
6436 /* ./syntax//mmbuilder.nit:942 */
6439 /* ./syntax//mmbuilder.nit:944 */
6440 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
6441 fra
.me
.REG
[8] = CALL_syntax___mmbuilder___SignatureBuilder___params(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
6442 /* ./../lib/standard//collection//array.nit:232 */
6444 /* ./../lib/standard//collection//array.nit:233 */
6445 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[8])!=NIT_NULL
);
6446 if (UNTAG_Bool(REGB3
)) {
6448 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
6450 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[8]);
6451 /* ./../lib/standard//collection//array.nit:234 */
6452 fra
.me
.REG
[10] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[8]);
6453 /* ./../lib/standard//collection//array.nit:235 */
6455 /* ./../lib/standard//collection//array.nit:23 */
6456 REGB3
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[8])!=NIT_NULL
);
6457 if (UNTAG_Bool(REGB3
)) {
6459 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
6461 REGB3
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[8]);
6462 REGB4
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
6463 if (UNTAG_Bool(REGB4
)) {
6465 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
6467 /* ./../lib/standard//kernel.nit:215 */
6468 REGB3
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB3
));
6469 /* ./../lib/standard//collection//array.nit:235 */
6470 if (UNTAG_Bool(REGB3
)) {
6471 /* ./../lib/standard//collection//array.nit:236 */
6472 REGB3
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
6473 if (UNTAG_Bool(REGB3
)) {
6474 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
6476 /* ./../lib/standard//collection//array.nit:652 */
6477 fra
.me
.REG
[11] = ((Nit_NativeArray
)fra
.me
.REG
[10])->val
[UNTAG_Int(REGB0
)];
6478 /* ./syntax//mmbuilder.nit:945 */
6479 REGB3
= CALL_syntax___syntax_base___AParam___position(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
6480 REGB4
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6481 if (UNTAG_Bool(REGB4
)) {
6482 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 945);
6484 fra
.me
.REG
[12] = CALL_metamodel___static_type___MMSignature_____bra(fra
.me
.REG
[7])(fra
.me
.REG
[7], REGB3
);
6485 /* ./syntax//mmbuilder.nit:946 */
6486 CALL_syntax___mmbuilder___AParam___stype__eq(fra
.me
.REG
[11])(fra
.me
.REG
[11], fra
.me
.REG
[12]);
6487 /* ./syntax//mmbuilder.nit:947 */
6488 REGB3
= CALL_syntax___syntax_base___AParam___position(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
6489 REGB4
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6490 if (UNTAG_Bool(REGB4
)) {
6491 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 947);
6493 REGB4
= CALL_metamodel___vararg___MMSignature___vararg_rank(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
6494 REGB5
= TAG_Bool(IS_EQUAL_OO(REGB3
,REGB4
));
6495 if (UNTAG_Bool(REGB5
)) {
6497 /* ./../lib/standard//kernel.nit:210 */
6498 REGB4
= TAG_Bool((REGB3
)==(REGB4
));
6499 /* ./syntax//mmbuilder.nit:947 */
6502 if (UNTAG_Bool(REGB5
)) {
6503 /* ./syntax//mmbuilder.nit:948 */
6504 fra
.me
.REG
[13] = CALL_syntax___syntax_base___AbsSyntaxVisitor___type_array(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[12]);
6505 fra
.me
.REG
[12] = fra
.me
.REG
[13];
6507 /* ./syntax//mmbuilder.nit:950 */
6508 fra
.me
.REG
[11] = CALL_syntax___syntax_base___AParam___variable(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
6509 CALL_syntax___syntax_base___Variable___stype__eq(fra
.me
.REG
[11])(fra
.me
.REG
[11], fra
.me
.REG
[12]);
6510 /* ./../lib/standard//collection//array.nit:237 */
6512 /* ./../lib/standard//kernel.nit:218 */
6513 REGB5
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB5
));
6514 /* ./../lib/standard//collection//array.nit:237 */
6517 /* ./../lib/standard//collection//array.nit:235 */
6522 /* ./syntax//mmbuilder.nit:952 */
6523 fra
.me
.REG
[4] = fra
.me
.REG
[7];
6524 /* ./syntax//mmbuilder.nit:953 */
6525 CALL_metamodel___static_type___MMLocalProperty___signature__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[4]);
6527 /* ./syntax//mmbuilder.nit:957 */
6528 fra
.me
.REG
[10] = CALL_syntax___syntax_base___AbsSyntaxVisitor___tc(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
6529 REGB0
= CALL_mmloader___ToolContext___error_count(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
6530 /* ./syntax//mmbuilder.nit:965 */
6531 REGB5
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
6532 if (UNTAG_Bool(REGB5
)) {
6533 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 965);
6535 REGB5
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
6536 REGB4
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6537 if (UNTAG_Bool(REGB4
)) {
6538 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 965);
6540 REGB4
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
6541 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB5
,REGB4
));
6542 if (UNTAG_Bool(REGB3
)) {
6544 /* ./../lib/standard//kernel.nit:210 */
6545 REGB4
= TAG_Bool((REGB5
)==(REGB4
));
6546 /* ./syntax//mmbuilder.nit:965 */
6549 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
6550 if (UNTAG_Bool(REGB3
)) {
6551 /* ./syntax//mmbuilder.nit:966 */
6552 REGB3
= TAG_Int(11);
6553 fra
.me
.REG
[10] = NEW_Array_standard___collection___array___Array___with_capacity(REGB3
);
6554 if (!once_value_25
) {
6555 fra
.me
.REG
[8] = BOX_NativeString("Redef error: ");
6556 REGB3
= TAG_Int(13);
6557 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB3
);
6558 once_value_25
= fra
.me
.REG
[8];
6559 register_static_object(&once_value_25
);
6560 } else fra
.me
.REG
[8] = once_value_25
;
6561 fra
.me
.REG
[8] = fra
.me
.REG
[8];
6562 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6563 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6564 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
6565 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6566 if (!once_value_26
) {
6567 fra
.me
.REG
[8] = BOX_NativeString("::");
6569 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB3
);
6570 once_value_26
= fra
.me
.REG
[8];
6571 register_static_object(&once_value_26
);
6572 } else fra
.me
.REG
[8] = once_value_26
;
6573 fra
.me
.REG
[8] = fra
.me
.REG
[8];
6574 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6575 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6576 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6577 if (!once_value_27
) {
6578 fra
.me
.REG
[8] = BOX_NativeString(" redefines ");
6579 REGB3
= TAG_Int(11);
6580 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB3
);
6581 once_value_27
= fra
.me
.REG
[8];
6582 register_static_object(&once_value_27
);
6583 } else fra
.me
.REG
[8] = once_value_27
;
6584 fra
.me
.REG
[8] = fra
.me
.REG
[8];
6585 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6586 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6587 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
6588 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6589 if (!once_value_28
) {
6590 fra
.me
.REG
[8] = BOX_NativeString("::");
6592 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB3
);
6593 once_value_28
= fra
.me
.REG
[8];
6594 register_static_object(&once_value_28
);
6595 } else fra
.me
.REG
[8] = once_value_28
;
6596 fra
.me
.REG
[8] = fra
.me
.REG
[8];
6597 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6598 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6599 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6600 if (!once_value_29
) {
6601 fra
.me
.REG
[8] = BOX_NativeString(" with ");
6603 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB3
);
6604 once_value_29
= fra
.me
.REG
[8];
6605 register_static_object(&once_value_29
);
6606 } else fra
.me
.REG
[8] = once_value_29
;
6607 fra
.me
.REG
[8] = fra
.me
.REG
[8];
6608 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6609 REGB3
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6610 if (UNTAG_Bool(REGB3
)) {
6611 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 966);
6613 REGB3
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
6614 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(REGB3
)(REGB3
);
6615 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6616 if (!once_value_30
) {
6617 fra
.me
.REG
[8] = BOX_NativeString(" parameter(s).");
6618 REGB3
= TAG_Int(14);
6619 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB3
);
6620 once_value_30
= fra
.me
.REG
[8];
6621 register_static_object(&once_value_30
);
6622 } else fra
.me
.REG
[8] = once_value_30
;
6623 fra
.me
.REG
[8] = fra
.me
.REG
[8];
6624 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6625 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
6626 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[10]);
6628 /* ./syntax//mmbuilder.nit:967 */
6629 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
6630 if (UNTAG_Bool(REGB3
)) {
6631 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 967);
6633 REGB3
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
6635 REGB5
= TAG_Bool(VAL_ISA(REGB4
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB3
), VTID_standard___kernel___Comparable___OTHER(REGB3
))) /*cast OTHER*/;
6636 if (UNTAG_Bool(REGB5
)) {
6638 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
6640 /* ./../lib/standard//kernel.nit:217 */
6641 REGB4
= TAG_Bool(UNTAG_Int(REGB3
)>UNTAG_Int(REGB4
));
6642 /* ./syntax//mmbuilder.nit:967 */
6643 if (UNTAG_Bool(REGB4
)) {
6644 /* ./syntax//mmbuilder.nit:968 */
6645 REGB4
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_parser___parser_nodes___AMethPropdef
, ID_parser___parser_nodes___AMethPropdef
)) /*cast AMethPropdef*/;
6646 if (UNTAG_Bool(REGB4
)) {
6647 /* ./syntax//mmbuilder.nit:970 */
6649 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
6650 if (UNTAG_Bool(REGB3
)) {
6651 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 970);
6653 REGB3
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
6654 /* ./../lib/standard//kernel.nit:335 */
6656 REGB5
= TAG_Bool(VAL_ISA(REGB3
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB4
), VTID_standard___kernel___Comparable___OTHER(REGB4
))) /*cast OTHER*/;
6657 if (UNTAG_Bool(REGB5
)) {
6659 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
6661 /* ./../lib/standard//kernel.nit:215 */
6662 REGB5
= TAG_Bool(UNTAG_Int(REGB4
)<UNTAG_Int(REGB3
));
6663 /* ./../lib/standard//kernel.nit:335 */
6664 if (UNTAG_Bool(REGB5
)) {
6665 /* ./syntax//mmbuilder.nit:970 */
6667 /* ./syntax//mmbuilder.nit:971 */
6668 REGB6
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
6669 if (UNTAG_Bool(REGB6
)) {
6670 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 971);
6672 fra
.me
.REG
[10] = CALL_metamodel___static_type___MMSignature_____bra(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB5
);
6673 REGB6
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6674 if (UNTAG_Bool(REGB6
)) {
6675 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 971);
6677 fra
.me
.REG
[8] = CALL_metamodel___static_type___MMSignature_____bra(fra
.me
.REG
[7])(fra
.me
.REG
[7], REGB5
);
6678 REGB6
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[10],fra
.me
.REG
[8]));
6679 if (UNTAG_Bool(REGB6
)) {
6681 REGB7
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6684 REGB6
= TAG_Bool(!UNTAG_Bool(REGB6
));
6685 if (UNTAG_Bool(REGB6
)) {
6686 /* ./syntax//mmbuilder.nit:972 */
6687 fra
.me
.REG
[8] = CALL_parser___parser_nodes___AMethPropdef___n_signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
6688 REGB6
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
6689 if (UNTAG_Bool(REGB6
)) {
6690 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 972);
6692 fra
.me
.REG
[8] = CALL_parser___parser_nodes___ASignature___n_params(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
6693 fra
.me
.REG
[8] = CALL_standard___collection___abstract_collection___SequenceRead_____bra(fra
.me
.REG
[8])(fra
.me
.REG
[8], REGB5
);
6695 fra
.me
.REG
[10] = NEW_Array_standard___collection___array___Array___with_capacity(REGB6
);
6696 if (!once_value_31
) {
6697 fra
.me
.REG
[12] = BOX_NativeString("Redef error: Expected ");
6698 REGB6
= TAG_Int(22);
6699 fra
.me
.REG
[12] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[12], REGB6
);
6700 once_value_31
= fra
.me
.REG
[12];
6701 register_static_object(&once_value_31
);
6702 } else fra
.me
.REG
[12] = once_value_31
;
6703 fra
.me
.REG
[12] = fra
.me
.REG
[12];
6704 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6705 REGB6
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6706 if (UNTAG_Bool(REGB6
)) {
6707 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 972);
6709 fra
.me
.REG
[12] = CALL_metamodel___static_type___MMSignature_____bra(fra
.me
.REG
[7])(fra
.me
.REG
[7], REGB5
);
6710 fra
.me
.REG
[12] = CALL_standard___string___Object___to_s(fra
.me
.REG
[12])(fra
.me
.REG
[12]);
6711 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6712 if (!once_value_32
) {
6713 fra
.me
.REG
[12] = BOX_NativeString(", as in ");
6715 fra
.me
.REG
[12] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[12], REGB5
);
6716 once_value_32
= fra
.me
.REG
[12];
6717 register_static_object(&once_value_32
);
6718 } else fra
.me
.REG
[12] = once_value_32
;
6719 fra
.me
.REG
[12] = fra
.me
.REG
[12];
6720 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6721 fra
.me
.REG
[12] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6722 fra
.me
.REG
[12] = CALL_standard___string___Object___to_s(fra
.me
.REG
[12])(fra
.me
.REG
[12]);
6723 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6724 if (!once_value_33
) {
6725 fra
.me
.REG
[12] = BOX_NativeString("::");
6727 fra
.me
.REG
[12] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[12], REGB5
);
6728 once_value_33
= fra
.me
.REG
[12];
6729 register_static_object(&once_value_33
);
6730 } else fra
.me
.REG
[12] = once_value_33
;
6731 fra
.me
.REG
[12] = fra
.me
.REG
[12];
6732 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6733 fra
.me
.REG
[12] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6734 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6735 if (!once_value_34
) {
6736 fra
.me
.REG
[12] = BOX_NativeString(".");
6738 fra
.me
.REG
[12] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[12], REGB5
);
6739 once_value_34
= fra
.me
.REG
[12];
6740 register_static_object(&once_value_34
);
6741 } else fra
.me
.REG
[12] = once_value_34
;
6742 fra
.me
.REG
[12] = fra
.me
.REG
[12];
6743 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6744 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
6745 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[8], fra
.me
.REG
[10]);
6747 /* ./../lib/standard//kernel.nit:337 */
6749 /* ./../lib/standard//kernel.nit:218 */
6750 REGB5
= TAG_Int(UNTAG_Int(REGB4
)+UNTAG_Int(REGB5
));
6751 /* ./../lib/standard//kernel.nit:337 */
6754 /* ./../lib/standard//kernel.nit:335 */
6760 /* ./syntax//mmbuilder.nit:975 */
6761 REGB4
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_parser___parser_nodes___AAttrPropdef
, ID_parser___parser_nodes___AAttrPropdef
)) /*cast AAttrPropdef*/;
6762 if (UNTAG_Bool(REGB4
)) {
6763 /* ./syntax//mmbuilder.nit:977 */
6765 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
6766 if (UNTAG_Bool(REGB3
)) {
6767 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 977);
6769 fra
.me
.REG
[10] = CALL_metamodel___static_type___MMSignature_____bra(fra
.me
.REG
[4])(fra
.me
.REG
[4], REGB4
);
6771 REGB3
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6772 if (UNTAG_Bool(REGB3
)) {
6773 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 977);
6775 fra
.me
.REG
[8] = CALL_metamodel___static_type___MMSignature_____bra(fra
.me
.REG
[7])(fra
.me
.REG
[7], REGB4
);
6776 REGB4
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[10],fra
.me
.REG
[8]));
6777 if (UNTAG_Bool(REGB4
)) {
6779 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
6782 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
6783 if (UNTAG_Bool(REGB4
)) {
6784 /* ./syntax//mmbuilder.nit:978 */
6785 fra
.me
.REG
[8] = CALL_parser___parser_nodes___AAttrPropdef___n_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
6787 fra
.me
.REG
[10] = NEW_Array_standard___collection___array___Array___with_capacity(REGB4
);
6788 if (!once_value_36
) {
6789 fra
.me
.REG
[12] = BOX_NativeString("Redef error: Expected ");
6790 REGB4
= TAG_Int(22);
6791 fra
.me
.REG
[12] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[12], REGB4
);
6792 once_value_36
= fra
.me
.REG
[12];
6793 register_static_object(&once_value_36
);
6794 } else fra
.me
.REG
[12] = once_value_36
;
6795 fra
.me
.REG
[12] = fra
.me
.REG
[12];
6796 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6798 REGB3
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6799 if (UNTAG_Bool(REGB3
)) {
6800 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 978);
6802 fra
.me
.REG
[12] = CALL_metamodel___static_type___MMSignature_____bra(fra
.me
.REG
[7])(fra
.me
.REG
[7], REGB4
);
6803 fra
.me
.REG
[12] = CALL_standard___string___Object___to_s(fra
.me
.REG
[12])(fra
.me
.REG
[12]);
6804 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6805 if (!once_value_37
) {
6806 fra
.me
.REG
[12] = BOX_NativeString(", as in the parameter of ");
6807 REGB4
= TAG_Int(25);
6808 fra
.me
.REG
[12] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[12], REGB4
);
6809 once_value_37
= fra
.me
.REG
[12];
6810 register_static_object(&once_value_37
);
6811 } else fra
.me
.REG
[12] = once_value_37
;
6812 fra
.me
.REG
[12] = fra
.me
.REG
[12];
6813 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6814 fra
.me
.REG
[12] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6815 fra
.me
.REG
[12] = CALL_standard___string___Object___to_s(fra
.me
.REG
[12])(fra
.me
.REG
[12]);
6816 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6817 if (!once_value_38
) {
6818 fra
.me
.REG
[12] = BOX_NativeString("::");
6820 fra
.me
.REG
[12] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[12], REGB4
);
6821 once_value_38
= fra
.me
.REG
[12];
6822 register_static_object(&once_value_38
);
6823 } else fra
.me
.REG
[12] = once_value_38
;
6824 fra
.me
.REG
[12] = fra
.me
.REG
[12];
6825 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6826 fra
.me
.REG
[12] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6827 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6828 if (!once_value_39
) {
6829 fra
.me
.REG
[12] = BOX_NativeString(".");
6831 fra
.me
.REG
[12] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[12], REGB4
);
6832 once_value_39
= fra
.me
.REG
[12];
6833 register_static_object(&once_value_39
);
6834 } else fra
.me
.REG
[12] = once_value_39
;
6835 fra
.me
.REG
[12] = fra
.me
.REG
[12];
6836 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[12]);
6837 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
6838 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[8], fra
.me
.REG
[10]);
6841 /* ./syntax//mmbuilder.nit:982 */
6842 nit_abort("Aborted", NULL
, LOCATE_syntax___mmbuilder
, 982);
6847 /* ./syntax//mmbuilder.nit:986 */
6848 REGB4
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
6849 if (UNTAG_Bool(REGB4
)) {
6850 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 986);
6852 fra
.me
.REG
[10] = CALL_metamodel___static_type___MMSignature___return_type(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
6853 /* ./syntax//mmbuilder.nit:987 */
6854 REGB4
= TAG_Bool(fra
.me
.REG
[7]==NIT_NULL
);
6855 if (UNTAG_Bool(REGB4
)) {
6856 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 987);
6858 fra
.me
.REG
[8] = CALL_metamodel___static_type___MMSignature___return_type(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
6859 /* ./syntax//mmbuilder.nit:988 */
6860 REGB4
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
6861 if (UNTAG_Bool(REGB4
)) {
6863 REGB3
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
6864 if (UNTAG_Bool(REGB3
)) {
6865 REGB3
= TAG_Bool(false);
6868 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[10])(fra
.me
.REG
[10], NIT_NULL
);
6872 if (UNTAG_Bool(REGB4
)) {
6873 REGB4
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
6874 if (UNTAG_Bool(REGB4
)) {
6876 REGB3
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
6877 if (UNTAG_Bool(REGB3
)) {
6878 REGB3
= TAG_Bool(false);
6881 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[8])(fra
.me
.REG
[8], NIT_NULL
);
6885 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
6887 REGB3
= TAG_Bool(false);
6890 if (UNTAG_Bool(REGB4
)) {
6891 /* ./syntax//mmbuilder.nit:989 */
6893 fra
.me
.REG
[12] = NEW_Array_standard___collection___array___Array___with_capacity(REGB4
);
6894 if (!once_value_40
) {
6895 fra
.me
.REG
[11] = BOX_NativeString("Redef error: The procedure ");
6896 REGB4
= TAG_Int(27);
6897 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB4
);
6898 once_value_40
= fra
.me
.REG
[11];
6899 register_static_object(&once_value_40
);
6900 } else fra
.me
.REG
[11] = once_value_40
;
6901 fra
.me
.REG
[11] = fra
.me
.REG
[11];
6902 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6903 fra
.me
.REG
[11] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6904 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
6905 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6906 if (!once_value_41
) {
6907 fra
.me
.REG
[11] = BOX_NativeString("::");
6909 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB4
);
6910 once_value_41
= fra
.me
.REG
[11];
6911 register_static_object(&once_value_41
);
6912 } else fra
.me
.REG
[11] = once_value_41
;
6913 fra
.me
.REG
[11] = fra
.me
.REG
[11];
6914 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6915 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6916 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6917 if (!once_value_42
) {
6918 fra
.me
.REG
[11] = BOX_NativeString(" redefines the function ");
6919 REGB4
= TAG_Int(24);
6920 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB4
);
6921 once_value_42
= fra
.me
.REG
[11];
6922 register_static_object(&once_value_42
);
6923 } else fra
.me
.REG
[11] = once_value_42
;
6924 fra
.me
.REG
[11] = fra
.me
.REG
[11];
6925 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6926 fra
.me
.REG
[11] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6927 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
6928 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6929 if (!once_value_43
) {
6930 fra
.me
.REG
[11] = BOX_NativeString("::");
6932 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB4
);
6933 once_value_43
= fra
.me
.REG
[11];
6934 register_static_object(&once_value_43
);
6935 } else fra
.me
.REG
[11] = once_value_43
;
6936 fra
.me
.REG
[11] = fra
.me
.REG
[11];
6937 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6938 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
6939 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6940 if (!once_value_44
) {
6941 fra
.me
.REG
[11] = BOX_NativeString(".");
6943 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB4
);
6944 once_value_44
= fra
.me
.REG
[11];
6945 register_static_object(&once_value_44
);
6946 } else fra
.me
.REG
[11] = once_value_44
;
6947 fra
.me
.REG
[11] = fra
.me
.REG
[11];
6948 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6949 fra
.me
.REG
[12] = CALL_standard___string___Object___to_s(fra
.me
.REG
[12])(fra
.me
.REG
[12]);
6950 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[12]);
6952 /* ./syntax//mmbuilder.nit:990 */
6953 REGB4
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
6954 if (UNTAG_Bool(REGB4
)) {
6956 REGB3
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
6957 if (UNTAG_Bool(REGB3
)) {
6958 REGB3
= TAG_Bool(false);
6961 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[10])(fra
.me
.REG
[10], NIT_NULL
);
6965 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
6966 if (UNTAG_Bool(REGB4
)) {
6967 REGB4
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
6968 if (UNTAG_Bool(REGB4
)) {
6970 REGB3
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
6971 if (UNTAG_Bool(REGB3
)) {
6972 REGB3
= TAG_Bool(false);
6975 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[8])(fra
.me
.REG
[8], NIT_NULL
);
6980 REGB3
= TAG_Bool(false);
6983 if (UNTAG_Bool(REGB4
)) {
6984 /* ./syntax//mmbuilder.nit:991 */
6986 fra
.me
.REG
[12] = NEW_Array_standard___collection___array___Array___with_capacity(REGB4
);
6987 if (!once_value_45
) {
6988 fra
.me
.REG
[11] = BOX_NativeString("Redef error: The function ");
6989 REGB4
= TAG_Int(26);
6990 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB4
);
6991 once_value_45
= fra
.me
.REG
[11];
6992 register_static_object(&once_value_45
);
6993 } else fra
.me
.REG
[11] = once_value_45
;
6994 fra
.me
.REG
[11] = fra
.me
.REG
[11];
6995 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6996 fra
.me
.REG
[11] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
6997 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
6998 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
6999 if (!once_value_46
) {
7000 fra
.me
.REG
[11] = BOX_NativeString("::");
7002 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB4
);
7003 once_value_46
= fra
.me
.REG
[11];
7004 register_static_object(&once_value_46
);
7005 } else fra
.me
.REG
[11] = once_value_46
;
7006 fra
.me
.REG
[11] = fra
.me
.REG
[11];
7007 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
7008 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7009 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
7010 if (!once_value_47
) {
7011 fra
.me
.REG
[11] = BOX_NativeString(" redefines the procedure ");
7012 REGB4
= TAG_Int(25);
7013 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB4
);
7014 once_value_47
= fra
.me
.REG
[11];
7015 register_static_object(&once_value_47
);
7016 } else fra
.me
.REG
[11] = once_value_47
;
7017 fra
.me
.REG
[11] = fra
.me
.REG
[11];
7018 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
7019 fra
.me
.REG
[11] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
7020 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
7021 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
7022 if (!once_value_48
) {
7023 fra
.me
.REG
[11] = BOX_NativeString("::");
7025 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB4
);
7026 once_value_48
= fra
.me
.REG
[11];
7027 register_static_object(&once_value_48
);
7028 } else fra
.me
.REG
[11] = once_value_48
;
7029 fra
.me
.REG
[11] = fra
.me
.REG
[11];
7030 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
7031 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
7032 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
7033 if (!once_value_49
) {
7034 fra
.me
.REG
[11] = BOX_NativeString(".");
7036 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB4
);
7037 once_value_49
= fra
.me
.REG
[11];
7038 register_static_object(&once_value_49
);
7039 } else fra
.me
.REG
[11] = once_value_49
;
7040 fra
.me
.REG
[11] = fra
.me
.REG
[11];
7041 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[12])(fra
.me
.REG
[12], fra
.me
.REG
[11]);
7042 fra
.me
.REG
[12] = CALL_standard___string___Object___to_s(fra
.me
.REG
[12])(fra
.me
.REG
[12]);
7043 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[12]);
7045 /* ./syntax//mmbuilder.nit:992 */
7046 REGB4
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
7047 if (UNTAG_Bool(REGB4
)) {
7049 REGB3
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
7050 if (UNTAG_Bool(REGB3
)) {
7051 REGB3
= TAG_Bool(false);
7054 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[10])(fra
.me
.REG
[10], NIT_NULL
);
7058 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
7059 if (UNTAG_Bool(REGB4
)) {
7060 REGB4
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
7061 if (UNTAG_Bool(REGB4
)) {
7063 REGB3
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
7064 if (UNTAG_Bool(REGB3
)) {
7065 REGB3
= TAG_Bool(false);
7068 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[8])(fra
.me
.REG
[8], NIT_NULL
);
7072 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
7074 REGB3
= TAG_Bool(false);
7077 if (UNTAG_Bool(REGB4
)) {
7078 REGB4
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
7079 if (UNTAG_Bool(REGB4
)) {
7080 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 992);
7082 REGB4
= CALL_metamodel___static_type___MMType_____l(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
7083 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
7085 REGB3
= TAG_Bool(false);
7088 if (UNTAG_Bool(REGB4
)) {
7089 /* ./syntax//mmbuilder.nit:993 */
7090 fra
.me
.REG
[12] = NIT_NULL
;
7091 /* ./syntax//mmbuilder.nit:994 */
7092 REGB4
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_parser___parser_nodes___AMethPropdef
, ID_parser___parser_nodes___AMethPropdef
)) /*cast AMethPropdef*/;
7093 if (UNTAG_Bool(REGB4
)) {
7094 /* ./syntax//mmbuilder.nit:995 */
7095 fra
.me
.REG
[11] = CALL_parser___parser_nodes___AMethPropdef___n_signature(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
7096 REGB4
= TAG_Bool(fra
.me
.REG
[11]==NIT_NULL
);
7097 if (UNTAG_Bool(REGB4
)) {
7098 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 995);
7100 fra
.me
.REG
[11] = CALL_parser___parser_nodes___ASignature___n_type(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
7101 fra
.me
.REG
[12] = fra
.me
.REG
[11];
7103 /* ./syntax//mmbuilder.nit:996 */
7104 REGB4
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_parser___parser_nodes___AAttrPropdef
, ID_parser___parser_nodes___AAttrPropdef
)) /*cast AAttrPropdef*/;
7105 if (UNTAG_Bool(REGB4
)) {
7106 /* ./syntax//mmbuilder.nit:997 */
7107 fra
.me
.REG
[11] = CALL_parser___parser_nodes___AAttrPropdef___n_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
7108 fra
.me
.REG
[12] = fra
.me
.REG
[11];
7110 /* ./syntax//mmbuilder.nit:998 */
7111 REGB4
= TAG_Bool(VAL_ISA(fra
.me
.REG
[0], COLOR_parser___parser_nodes___ATypePropdef
, ID_parser___parser_nodes___ATypePropdef
)) /*cast ATypePropdef*/;
7112 if (UNTAG_Bool(REGB4
)) {
7113 /* ./syntax//mmbuilder.nit:999 */
7114 fra
.me
.REG
[11] = CALL_parser___parser_nodes___ATypePropdef___n_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
7115 fra
.me
.REG
[12] = fra
.me
.REG
[11];
7119 /* ./syntax//mmbuilder.nit:1001 */
7121 fra
.me
.REG
[11] = NEW_Array_standard___collection___array___Array___with_capacity(REGB4
);
7122 if (!once_value_50
) {
7123 fra
.me
.REG
[13] = BOX_NativeString("Redef error: Expected ");
7124 REGB4
= TAG_Int(22);
7125 fra
.me
.REG
[13] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[13], REGB4
);
7126 once_value_50
= fra
.me
.REG
[13];
7127 register_static_object(&once_value_50
);
7128 } else fra
.me
.REG
[13] = once_value_50
;
7129 fra
.me
.REG
[13] = fra
.me
.REG
[13];
7130 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[11])(fra
.me
.REG
[11], fra
.me
.REG
[13]);
7131 fra
.me
.REG
[13] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
7132 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[11])(fra
.me
.REG
[11], fra
.me
.REG
[13]);
7133 if (!once_value_51
) {
7134 fra
.me
.REG
[13] = BOX_NativeString(", as in ");
7136 fra
.me
.REG
[13] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[13], REGB4
);
7137 once_value_51
= fra
.me
.REG
[13];
7138 register_static_object(&once_value_51
);
7139 } else fra
.me
.REG
[13] = once_value_51
;
7140 fra
.me
.REG
[13] = fra
.me
.REG
[13];
7141 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[11])(fra
.me
.REG
[11], fra
.me
.REG
[13]);
7142 fra
.me
.REG
[13] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
7143 fra
.me
.REG
[13] = CALL_standard___string___Object___to_s(fra
.me
.REG
[13])(fra
.me
.REG
[13]);
7144 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[11])(fra
.me
.REG
[11], fra
.me
.REG
[13]);
7145 if (!once_value_52
) {
7146 fra
.me
.REG
[13] = BOX_NativeString("::");
7148 fra
.me
.REG
[13] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[13], REGB4
);
7149 once_value_52
= fra
.me
.REG
[13];
7150 register_static_object(&once_value_52
);
7151 } else fra
.me
.REG
[13] = once_value_52
;
7152 fra
.me
.REG
[13] = fra
.me
.REG
[13];
7153 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[11])(fra
.me
.REG
[11], fra
.me
.REG
[13]);
7154 fra
.me
.REG
[13] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
7155 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[11])(fra
.me
.REG
[11], fra
.me
.REG
[13]);
7156 if (!once_value_53
) {
7157 fra
.me
.REG
[13] = BOX_NativeString(".");
7159 fra
.me
.REG
[13] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[13], REGB4
);
7160 once_value_53
= fra
.me
.REG
[13];
7161 register_static_object(&once_value_53
);
7162 } else fra
.me
.REG
[13] = once_value_53
;
7163 fra
.me
.REG
[13] = fra
.me
.REG
[13];
7164 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[11])(fra
.me
.REG
[11], fra
.me
.REG
[13]);
7165 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
7166 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[12], fra
.me
.REG
[11]);
7168 /* ./syntax//mmbuilder.nit:1002 */
7169 REGB4
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
7170 if (UNTAG_Bool(REGB4
)) {
7171 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1002);
7173 REGB4
= CALL_metamodel___static_type___MMSignature_____l(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[7]);
7174 REGB4
= TAG_Bool(!UNTAG_Bool(REGB4
));
7175 if (UNTAG_Bool(REGB4
)) {
7176 fra
.me
.REG
[7] = CALL_syntax___syntax_base___AbsSyntaxVisitor___tc(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
7177 REGB4
= CALL_mmloader___ToolContext___error_count(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
7178 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB4
));
7179 if (UNTAG_Bool(REGB3
)) {
7181 /* ./../lib/standard//kernel.nit:210 */
7182 REGB4
= TAG_Bool((REGB0
)==(REGB4
));
7183 /* ./syntax//mmbuilder.nit:1002 */
7187 REGB4
= TAG_Bool(false);
7190 if (UNTAG_Bool(REGB3
)) {
7191 /* ./syntax//mmbuilder.nit:1004 */
7193 fra
.me
.REG
[7] = NEW_Array_standard___collection___array___Array___with_capacity(REGB3
);
7194 if (!once_value_54
) {
7195 fra
.me
.REG
[11] = BOX_NativeString("Redef error: Incompatible redefinition of ");
7196 REGB3
= TAG_Int(42);
7197 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB3
);
7198 once_value_54
= fra
.me
.REG
[11];
7199 register_static_object(&once_value_54
);
7200 } else fra
.me
.REG
[11] = once_value_54
;
7201 fra
.me
.REG
[11] = fra
.me
.REG
[11];
7202 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[11]);
7203 fra
.me
.REG
[11] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
7204 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
7205 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[11]);
7206 if (!once_value_55
) {
7207 fra
.me
.REG
[11] = BOX_NativeString("::");
7209 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB3
);
7210 once_value_55
= fra
.me
.REG
[11];
7211 register_static_object(&once_value_55
);
7212 } else fra
.me
.REG
[11] = once_value_55
;
7213 fra
.me
.REG
[11] = fra
.me
.REG
[11];
7214 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[11]);
7215 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
7216 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[11]);
7217 if (!once_value_56
) {
7218 fra
.me
.REG
[11] = BOX_NativeString(" with ");
7220 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB3
);
7221 once_value_56
= fra
.me
.REG
[11];
7222 register_static_object(&once_value_56
);
7223 } else fra
.me
.REG
[11] = once_value_56
;
7224 fra
.me
.REG
[11] = fra
.me
.REG
[11];
7225 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[11]);
7226 fra
.me
.REG
[11] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7227 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[11])(fra
.me
.REG
[11]);
7228 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[11]);
7229 if (!once_value_57
) {
7230 fra
.me
.REG
[11] = BOX_NativeString("::");
7232 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB3
);
7233 once_value_57
= fra
.me
.REG
[11];
7234 register_static_object(&once_value_57
);
7235 } else fra
.me
.REG
[11] = once_value_57
;
7236 fra
.me
.REG
[11] = fra
.me
.REG
[11];
7237 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[11]);
7238 fra
.me
.REG
[11] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7239 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[11]);
7240 if (!once_value_58
) {
7241 fra
.me
.REG
[11] = BOX_NativeString("");
7243 fra
.me
.REG
[11] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[11], REGB3
);
7244 once_value_58
= fra
.me
.REG
[11];
7245 register_static_object(&once_value_58
);
7246 } else fra
.me
.REG
[11] = once_value_58
;
7247 fra
.me
.REG
[11] = fra
.me
.REG
[11];
7248 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[11]);
7249 fra
.me
.REG
[7] = CALL_standard___string___Object___to_s(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
7250 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[7]);
7252 /* ./syntax//mmbuilder.nit:1005 */
7253 REGB3
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
7254 if (UNTAG_Bool(REGB3
)) {
7256 REGB4
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
7257 if (UNTAG_Bool(REGB4
)) {
7258 REGB4
= TAG_Bool(false);
7261 REGB4
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[10])(fra
.me
.REG
[10], NIT_NULL
);
7265 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
7266 if (UNTAG_Bool(REGB3
)) {
7267 REGB3
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
7268 if (UNTAG_Bool(REGB3
)) {
7270 REGB4
= TAG_Bool(fra
.me
.REG
[8]==NIT_NULL
);
7271 if (UNTAG_Bool(REGB4
)) {
7272 REGB4
= TAG_Bool(false);
7275 REGB4
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[8])(fra
.me
.REG
[8], NIT_NULL
);
7279 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
7281 REGB4
= TAG_Bool(false);
7284 if (UNTAG_Bool(REGB3
)) {
7285 REGB3
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[10],fra
.me
.REG
[8]));
7286 if (UNTAG_Bool(REGB3
)) {
7288 REGB4
= TAG_Bool(fra
.me
.REG
[10]==NIT_NULL
);
7289 if (UNTAG_Bool(REGB4
)) {
7290 REGB4
= TAG_Bool(false);
7293 REGB4
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
7297 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
7299 REGB4
= TAG_Bool(false);
7302 if (UNTAG_Bool(REGB3
)) {
7303 REGB3
= TAG_Bool(VAL_ISA(fra
.me
.REG
[2], COLOR_metamodel___abstractmetamodel___MMAttribute
, ID_metamodel___abstractmetamodel___MMAttribute
)) /*cast MMAttribute*/;
7305 REGB4
= TAG_Bool(false);
7308 if (UNTAG_Bool(REGB3
)) {
7309 /* ./syntax//mmbuilder.nit:1007 */
7311 fra
.me
.REG
[10] = NEW_Array_standard___collection___array___Array___with_capacity(REGB3
);
7312 if (!once_value_59
) {
7313 fra
.me
.REG
[7] = BOX_NativeString("Redef warning: Expected ");
7314 REGB3
= TAG_Int(24);
7315 fra
.me
.REG
[7] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[7], REGB3
);
7316 once_value_59
= fra
.me
.REG
[7];
7317 register_static_object(&once_value_59
);
7318 } else fra
.me
.REG
[7] = once_value_59
;
7319 fra
.me
.REG
[7] = fra
.me
.REG
[7];
7320 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[7]);
7321 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
7322 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
7323 if (!once_value_60
) {
7324 fra
.me
.REG
[8] = BOX_NativeString(", as in ");
7326 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB3
);
7327 once_value_60
= fra
.me
.REG
[8];
7328 register_static_object(&once_value_60
);
7329 } else fra
.me
.REG
[8] = once_value_60
;
7330 fra
.me
.REG
[8] = fra
.me
.REG
[8];
7331 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
7332 fra
.me
.REG
[8] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
7333 fra
.me
.REG
[8] = CALL_standard___string___Object___to_s(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
7334 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
7335 if (!once_value_61
) {
7336 fra
.me
.REG
[8] = BOX_NativeString("::");
7338 fra
.me
.REG
[8] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[8], REGB3
);
7339 once_value_61
= fra
.me
.REG
[8];
7340 register_static_object(&once_value_61
);
7341 } else fra
.me
.REG
[8] = once_value_61
;
7342 fra
.me
.REG
[8] = fra
.me
.REG
[8];
7343 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[8]);
7344 fra
.me
.REG
[9] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
7345 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[9]);
7346 if (!once_value_62
) {
7347 fra
.me
.REG
[9] = BOX_NativeString(".");
7349 fra
.me
.REG
[9] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[9], REGB3
);
7350 once_value_62
= fra
.me
.REG
[9];
7351 register_static_object(&once_value_62
);
7352 } else fra
.me
.REG
[9] = once_value_62
;
7353 fra
.me
.REG
[9] = fra
.me
.REG
[9];
7354 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[10])(fra
.me
.REG
[10], fra
.me
.REG
[9]);
7355 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
7356 CALL_syntax___syntax_base___AbsSyntaxVisitor___warning(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[10]);
7362 /* ./../lib/standard//collection//array.nit:237 */
7364 /* ./../lib/standard//kernel.nit:218 */
7365 REGB3
= TAG_Int(UNTAG_Int(REGB2
)+UNTAG_Int(REGB3
));
7366 /* ./../lib/standard//collection//array.nit:237 */
7369 /* ./../lib/standard//collection//array.nit:235 */
7375 /* ./syntax//mmbuilder.nit:1011 */
7377 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB2
));
7378 if (UNTAG_Bool(REGB3
)) {
7380 /* ./../lib/standard//kernel.nit:210 */
7381 REGB2
= TAG_Bool((REGB1
)==(REGB2
));
7382 /* ./syntax//mmbuilder.nit:1011 */
7385 REGB3
= TAG_Bool(!UNTAG_Bool(REGB3
));
7386 if (UNTAG_Bool(REGB3
)) {
7387 REGB3
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___visibility_level(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
7388 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB3
,REGB1
));
7389 if (UNTAG_Bool(REGB2
)) {
7391 /* ./../lib/standard//kernel.nit:210 */
7392 REGB1
= TAG_Bool((REGB3
)==(REGB1
));
7393 /* ./syntax//mmbuilder.nit:1011 */
7396 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
7398 REGB1
= TAG_Bool(false);
7401 if (UNTAG_Bool(REGB2
)) {
7402 /* ./syntax//mmbuilder.nit:1012 */
7404 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2
);
7405 if (!once_value_64
) {
7406 fra
.me
.REG
[6] = BOX_NativeString("Redef error: ");
7407 REGB2
= TAG_Int(13);
7408 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB2
);
7409 once_value_64
= fra
.me
.REG
[6];
7410 register_static_object(&once_value_64
);
7411 } else fra
.me
.REG
[6] = once_value_64
;
7412 fra
.me
.REG
[6] = fra
.me
.REG
[6];
7413 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[6]);
7414 fra
.me
.REG
[6] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7415 fra
.me
.REG
[6] = CALL_standard___string___Object___to_s(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
7416 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[6]);
7417 if (!once_value_65
) {
7418 fra
.me
.REG
[6] = BOX_NativeString("::");
7420 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB2
);
7421 once_value_65
= fra
.me
.REG
[6];
7422 register_static_object(&once_value_65
);
7423 } else fra
.me
.REG
[6] = once_value_65
;
7424 fra
.me
.REG
[6] = fra
.me
.REG
[6];
7425 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[6]);
7426 fra
.me
.REG
[2] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7427 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
7428 if (!once_value_66
) {
7429 fra
.me
.REG
[2] = BOX_NativeString(" redefinition cannot change visibility.");
7430 REGB2
= TAG_Int(39);
7431 fra
.me
.REG
[2] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[2], REGB2
);
7432 once_value_66
= fra
.me
.REG
[2];
7433 register_static_object(&once_value_66
);
7434 } else fra
.me
.REG
[2] = once_value_66
;
7435 fra
.me
.REG
[2] = fra
.me
.REG
[2];
7436 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
7437 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
7438 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[4]);
7440 /* ./syntax//mmbuilder.nit:1014 */
7441 fra
.me
.REG
[4] = CALL_syntax___syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
7442 REGB2
= TAG_Bool(true);
7443 CALL_syntax___syntax_base___MMGlobalProperty___check_visibility(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[4], REGB2
);
7445 stack_frame_head
= fra
.me
.prev
;
7448 val_t
syntax___mmbuilder___AAttrPropdef___readmethod(val_t p0
){
7449 struct {struct stack_frame_t me
;} fra
;
7451 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
7452 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
7454 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AAttrPropdef___readmethod
;
7455 fra
.me
.has_broke
= 0;
7456 fra
.me
.REG_size
= 1;
7457 fra
.me
.REG
[0] = NIT_NULL
;
7459 /* ./syntax//mmbuilder.nit:1019 */
7460 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___AAttrPropdef____readmethod(fra
.me
.REG
[0]);
7461 stack_frame_head
= fra
.me
.prev
;
7462 return fra
.me
.REG
[0];
7464 val_t
syntax___mmbuilder___AAttrPropdef___writemethod(val_t p0
){
7465 struct {struct stack_frame_t me
;} fra
;
7467 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
7468 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
7470 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AAttrPropdef___writemethod
;
7471 fra
.me
.has_broke
= 0;
7472 fra
.me
.REG_size
= 1;
7473 fra
.me
.REG
[0] = NIT_NULL
;
7475 /* ./syntax//mmbuilder.nit:1020 */
7476 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___AAttrPropdef____writemethod(fra
.me
.REG
[0]);
7477 stack_frame_head
= fra
.me
.prev
;
7478 return fra
.me
.REG
[0];
7480 val_t
syntax___mmbuilder___AAttrPropdef___prop(val_t p0
){
7481 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
7484 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
7485 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
7487 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AAttrPropdef___prop
;
7488 fra
.me
.has_broke
= 0;
7489 fra
.me
.REG_size
= 2;
7490 fra
.me
.REG
[0] = NIT_NULL
;
7491 fra
.me
.REG
[1] = NIT_NULL
;
7493 /* ./syntax//mmbuilder.nit:1022 */
7494 fra
.me
.REG
[1] = fra
.me
.REG
[0];
7495 fra
.me
.REG
[1] = ATTR_syntax___mmbuilder___AAttrPropdef____prop(fra
.me
.REG
[1]);
7496 REGB0
= TAG_Bool(fra
.me
.REG
[1]!=NIT_NULL
);
7497 if (UNTAG_Bool(REGB0
)) {
7499 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 1022);
7503 stack_frame_head
= fra
.me
.prev
;
7504 return fra
.me
.REG
[1];
7506 void syntax___mmbuilder___AAttrPropdef___accept_property_builder(val_t p0
, val_t p1
){
7507 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
7512 static val_t once_value_1
; /* Once value */
7513 static val_t once_value_2
; /* Once value */
7514 static val_t once_value_3
; /* Once value */
7515 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
7516 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
7518 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AAttrPropdef___accept_property_builder
;
7519 fra
.me
.has_broke
= 0;
7520 fra
.me
.REG_size
= 6;
7521 fra
.me
.REG
[0] = NIT_NULL
;
7522 fra
.me
.REG
[1] = NIT_NULL
;
7523 fra
.me
.REG
[2] = NIT_NULL
;
7524 fra
.me
.REG
[3] = NIT_NULL
;
7525 fra
.me
.REG
[4] = NIT_NULL
;
7526 fra
.me
.REG
[5] = NIT_NULL
;
7529 /* ./syntax//mmbuilder.nit:1024 */
7530 fra
.me
.REG
[2] = fra
.me
.REG
[0];
7531 fra
.me
.REG
[3] = fra
.me
.REG
[1];
7532 /* ./syntax//mmbuilder.nit:1026 */
7533 CALL_SUPER_syntax___mmbuilder___AAttrPropdef___accept_property_builder(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
7534 /* ./syntax//mmbuilder.nit:1028 */
7535 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7536 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
7537 if (UNTAG_Bool(REGB0
)) {
7539 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
7540 if (UNTAG_Bool(REGB1
)) {
7541 REGB1
= TAG_Bool(false);
7544 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
7548 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
7549 if (UNTAG_Bool(REGB0
)) {
7550 /* ./syntax//mmbuilder.nit:1029 */
7551 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7552 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
7553 if (UNTAG_Bool(REGB0
)) {
7554 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1029);
7556 fra
.me
.REG
[1] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
7558 /* ./syntax//mmbuilder.nit:1031 */
7559 if (!once_value_1
) {
7560 fra
.me
.REG
[0] = BOX_NativeString("@");
7562 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
7563 once_value_1
= fra
.me
.REG
[0];
7564 register_static_object(&once_value_1
);
7565 } else fra
.me
.REG
[0] = once_value_1
;
7566 fra
.me
.REG
[0] = fra
.me
.REG
[0];
7567 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AAttrPropdef___n_id2(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7568 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
7569 if (UNTAG_Bool(REGB0
)) {
7570 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1031);
7572 fra
.me
.REG
[4] = CALL_parser___lexer___Token___text(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
7573 fra
.me
.REG
[4] = CALL_standard___string___String_____plus(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
7574 fra
.me
.REG
[4] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
7575 fra
.me
.REG
[1] = fra
.me
.REG
[4];
7577 /* ./syntax//mmbuilder.nit:1033 */
7578 fra
.me
.REG
[4] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
7579 /* ./syntax//mmbuilder.nit:1034 */
7580 fra
.me
.REG
[0] = NEW_MMSrcAttribute_syntax___syntax_base___MMSrcAttribute___init(fra
.me
.REG
[1], fra
.me
.REG
[4], fra
.me
.REG
[2]);
7581 /* ./syntax//mmbuilder.nit:1035 */
7582 ATTR_syntax___mmbuilder___AAttrPropdef____prop(fra
.me
.REG
[2]) = fra
.me
.REG
[0];
7583 /* ./syntax//mmbuilder.nit:1036 */
7584 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
7585 CALL_syntax___mmbuilder___MMSrcLocalClass___add_src_local_property(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3], fra
.me
.REG
[0]);
7586 /* ./syntax//mmbuilder.nit:1038 */
7587 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AAttrPropdef___n_readable(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7588 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7589 if (UNTAG_Bool(REGB0
)) {
7591 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7592 if (UNTAG_Bool(REGB1
)) {
7593 REGB1
= TAG_Bool(false);
7596 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
7600 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
7601 if (UNTAG_Bool(REGB0
)) {
7602 REGB0
= TAG_Bool(true);
7604 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7605 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7606 if (UNTAG_Bool(REGB1
)) {
7608 REGB2
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7609 if (UNTAG_Bool(REGB2
)) {
7610 REGB2
= TAG_Bool(false);
7613 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
7619 if (UNTAG_Bool(REGB0
)) {
7620 /* ./syntax//mmbuilder.nit:1039 */
7621 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7622 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7623 if (UNTAG_Bool(REGB0
)) {
7625 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7626 if (UNTAG_Bool(REGB1
)) {
7627 REGB1
= TAG_Bool(false);
7630 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
7634 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
7635 if (UNTAG_Bool(REGB0
)) {
7636 /* ./syntax//mmbuilder.nit:1040 */
7637 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7638 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7639 if (UNTAG_Bool(REGB0
)) {
7640 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1040);
7642 fra
.me
.REG
[0] = CALL_parser___lexer___Token___text(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
7644 fra
.me
.REG
[0] = CALL_standard___string___AbstractString___substring_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
7645 fra
.me
.REG
[0] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
7646 fra
.me
.REG
[1] = fra
.me
.REG
[0];
7648 /* ./syntax//mmbuilder.nit:1042 */
7649 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AAttrPropdef___n_id2(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7650 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7651 if (UNTAG_Bool(REGB0
)) {
7652 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1042);
7654 fra
.me
.REG
[0] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
7655 fra
.me
.REG
[1] = fra
.me
.REG
[0];
7657 /* ./syntax//mmbuilder.nit:1044 */
7658 fra
.me
.REG
[0] = NEW_MMReadImplementationMethod_syntax___syntax_base___MMReadImplementationMethod___init(fra
.me
.REG
[1], fra
.me
.REG
[4], fra
.me
.REG
[2]);
7659 /* ./syntax//mmbuilder.nit:1045 */
7660 ATTR_syntax___mmbuilder___AAttrPropdef____readmethod(fra
.me
.REG
[2]) = fra
.me
.REG
[0];
7661 /* ./syntax//mmbuilder.nit:1046 */
7662 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
7663 CALL_syntax___mmbuilder___MMSrcLocalClass___add_src_local_property(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[3], fra
.me
.REG
[0]);
7665 /* ./syntax//mmbuilder.nit:1048 */
7666 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AAttrPropdef___n_writable(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7667 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7668 if (UNTAG_Bool(REGB0
)) {
7670 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7671 if (UNTAG_Bool(REGB1
)) {
7672 REGB1
= TAG_Bool(false);
7675 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
7679 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
7680 if (UNTAG_Bool(REGB0
)) {
7681 REGB0
= TAG_Bool(true);
7683 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7684 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7685 if (UNTAG_Bool(REGB1
)) {
7687 REGB2
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7688 if (UNTAG_Bool(REGB2
)) {
7689 REGB2
= TAG_Bool(false);
7692 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
7698 if (UNTAG_Bool(REGB0
)) {
7699 /* ./syntax//mmbuilder.nit:1049 */
7700 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7701 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7702 if (UNTAG_Bool(REGB0
)) {
7704 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7705 if (UNTAG_Bool(REGB1
)) {
7706 REGB1
= TAG_Bool(false);
7709 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
7713 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
7714 if (UNTAG_Bool(REGB0
)) {
7715 /* ./syntax//mmbuilder.nit:1050 */
7716 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7717 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
7718 if (UNTAG_Bool(REGB0
)) {
7719 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1050);
7721 fra
.me
.REG
[0] = CALL_parser___lexer___Token___text(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
7723 fra
.me
.REG
[0] = CALL_standard___string___AbstractString___substring_from(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB0
);
7724 if (!once_value_2
) {
7725 fra
.me
.REG
[5] = BOX_NativeString("=");
7727 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
7728 once_value_2
= fra
.me
.REG
[5];
7729 register_static_object(&once_value_2
);
7730 } else fra
.me
.REG
[5] = once_value_2
;
7731 fra
.me
.REG
[5] = fra
.me
.REG
[5];
7732 fra
.me
.REG
[5] = CALL_standard___string___String_____plus(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[5]);
7733 fra
.me
.REG
[5] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
7734 fra
.me
.REG
[1] = fra
.me
.REG
[5];
7736 /* ./syntax//mmbuilder.nit:1052 */
7737 fra
.me
.REG
[5] = CALL_parser___parser_nodes___AAttrPropdef___n_id2(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7738 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
7739 if (UNTAG_Bool(REGB0
)) {
7740 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1052);
7742 fra
.me
.REG
[5] = CALL_parser___lexer___Token___text(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
7743 if (!once_value_3
) {
7744 fra
.me
.REG
[0] = BOX_NativeString("=");
7746 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
7747 once_value_3
= fra
.me
.REG
[0];
7748 register_static_object(&once_value_3
);
7749 } else fra
.me
.REG
[0] = once_value_3
;
7750 fra
.me
.REG
[0] = fra
.me
.REG
[0];
7751 fra
.me
.REG
[0] = CALL_standard___string___String_____plus(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[0]);
7752 fra
.me
.REG
[0] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
7753 fra
.me
.REG
[1] = fra
.me
.REG
[0];
7755 /* ./syntax//mmbuilder.nit:1054 */
7756 fra
.me
.REG
[4] = NEW_MMWriteImplementationMethod_syntax___syntax_base___MMWriteImplementationMethod___init(fra
.me
.REG
[1], fra
.me
.REG
[4], fra
.me
.REG
[2]);
7757 /* ./syntax//mmbuilder.nit:1055 */
7758 ATTR_syntax___mmbuilder___AAttrPropdef____writemethod(fra
.me
.REG
[2]) = fra
.me
.REG
[4];
7759 /* ./syntax//mmbuilder.nit:1056 */
7760 fra
.me
.REG
[2] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
7761 CALL_syntax___mmbuilder___MMSrcLocalClass___add_src_local_property(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[4]);
7763 stack_frame_head
= fra
.me
.prev
;
7766 void syntax___mmbuilder___AAttrPropdef___accept_property_verifier(val_t p0
, val_t p1
){
7767 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
7773 static val_t once_value_2
; /* Once value */
7774 static val_t once_value_3
; /* Once value */
7775 static val_t once_value_4
; /* Once value */
7776 static val_t once_value_5
; /* Once value */
7777 static val_t once_value_6
; /* Once value */
7778 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
7779 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
7781 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AAttrPropdef___accept_property_verifier
;
7782 fra
.me
.has_broke
= 0;
7783 fra
.me
.REG_size
= 7;
7784 fra
.me
.REG
[0] = NIT_NULL
;
7785 fra
.me
.REG
[1] = NIT_NULL
;
7786 fra
.me
.REG
[2] = NIT_NULL
;
7787 fra
.me
.REG
[3] = NIT_NULL
;
7788 fra
.me
.REG
[4] = NIT_NULL
;
7789 fra
.me
.REG
[5] = NIT_NULL
;
7790 fra
.me
.REG
[6] = NIT_NULL
;
7793 /* ./syntax//mmbuilder.nit:1060 */
7794 fra
.me
.REG
[2] = fra
.me
.REG
[0];
7795 fra
.me
.REG
[3] = fra
.me
.REG
[1];
7796 /* ./syntax//mmbuilder.nit:1062 */
7797 CALL_SUPER_syntax___mmbuilder___AAttrPropdef___accept_property_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
7798 /* ./syntax//mmbuilder.nit:1064 */
7799 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AAttrPropdef___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7800 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
7801 if (UNTAG_Bool(REGB0
)) {
7803 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
7804 if (UNTAG_Bool(REGB1
)) {
7805 REGB1
= TAG_Bool(false);
7808 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
7812 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
7813 if (UNTAG_Bool(REGB0
)) {
7814 /* ./syntax//mmbuilder.nit:1065 */
7815 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AAttrPropdef___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7816 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
7817 if (UNTAG_Bool(REGB0
)) {
7818 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1065);
7820 fra
.me
.REG
[1] = CALL_syntax___syntax_base___AType___get_stype(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[3]);
7821 /* ./syntax//mmbuilder.nit:1066 */
7822 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
7823 if (UNTAG_Bool(REGB0
)) {
7825 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
7826 if (UNTAG_Bool(REGB1
)) {
7827 REGB1
= TAG_Bool(false);
7830 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
7834 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
7835 if (UNTAG_Bool(REGB0
)) {
7840 /* ./syntax//mmbuilder.nit:1068 */
7842 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
7843 if (!once_value_2
) {
7844 fra
.me
.REG
[5] = BOX_NativeString("Not yet implemented: Attribute definition ");
7845 REGB0
= TAG_Int(42);
7846 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
7847 once_value_2
= fra
.me
.REG
[5];
7848 register_static_object(&once_value_2
);
7849 } else fra
.me
.REG
[5] = once_value_2
;
7850 fra
.me
.REG
[5] = fra
.me
.REG
[5];
7851 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
7852 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AAttrPropdef___prop(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7853 fra
.me
.REG
[5] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
7854 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
7855 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
7856 if (!once_value_3
) {
7857 fra
.me
.REG
[5] = BOX_NativeString("::");
7859 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
7860 once_value_3
= fra
.me
.REG
[5];
7861 register_static_object(&once_value_3
);
7862 } else fra
.me
.REG
[5] = once_value_3
;
7863 fra
.me
.REG
[5] = fra
.me
.REG
[5];
7864 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
7865 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AAttrPropdef___prop(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7866 fra
.me
.REG
[5] = CALL_standard___string___Object___to_s(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
7867 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
7868 if (!once_value_4
) {
7869 fra
.me
.REG
[5] = BOX_NativeString(" requires an explicit type.");
7870 REGB0
= TAG_Int(27);
7871 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
7872 once_value_4
= fra
.me
.REG
[5];
7873 register_static_object(&once_value_4
);
7874 } else fra
.me
.REG
[5] = once_value_4
;
7875 fra
.me
.REG
[5] = fra
.me
.REG
[5];
7876 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
7877 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
7878 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[4]);
7879 /* ./syntax//mmbuilder.nit:1069 */
7882 /* ./syntax//mmbuilder.nit:1072 */
7883 fra
.me
.REG
[4] = CALL_syntax___syntax_base___AAttrPropdef___prop(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7884 /* ./syntax//mmbuilder.nit:1073 */
7885 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___init();
7886 fra
.me
.REG
[6] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
7887 fra
.me
.REG
[6] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
7888 fra
.me
.REG
[6] = NEW_MMSignature_metamodel___static_type___MMSignature___init(fra
.me
.REG
[5], fra
.me
.REG
[1], fra
.me
.REG
[6]);
7889 /* ./syntax//mmbuilder.nit:1074 */
7890 CALL_metamodel___static_type___MMLocalProperty___signature__eq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[6]);
7891 /* ./syntax//mmbuilder.nit:1075 */
7892 fra
.me
.REG
[5] = CALL_parser___parser_nodes___AAttrPropdef___n_visibility(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7893 REGB0
= CALL_syntax___mmbuilder___AVisibility___level(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
7894 /* ./syntax//mmbuilder.nit:1076 */
7895 fra
.me
.REG
[5] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7896 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
7897 if (UNTAG_Bool(REGB1
)) {
7899 REGB2
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
7900 if (UNTAG_Bool(REGB2
)) {
7901 REGB2
= TAG_Bool(false);
7904 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
7908 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
7909 if (UNTAG_Bool(REGB1
)) {
7910 fra
.me
.REG
[5] = CALL_parser___parser_nodes___AAttrPropdef___n_kwredef(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7911 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
7912 if (UNTAG_Bool(REGB1
)) {
7914 REGB2
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
7915 if (UNTAG_Bool(REGB2
)) {
7916 REGB2
= TAG_Bool(false);
7919 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
7923 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
7925 REGB2
= TAG_Bool(false);
7928 CALL_syntax___mmbuilder___APropdef___process_and_check(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[4], REGB1
, REGB0
);
7929 /* ./syntax//mmbuilder.nit:1077 */
7930 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AAttrPropdef___n_readable(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7931 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
7932 if (UNTAG_Bool(REGB1
)) {
7934 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
7935 if (UNTAG_Bool(REGB2
)) {
7936 REGB2
= TAG_Bool(false);
7939 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
7943 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
7944 if (UNTAG_Bool(REGB1
)) {
7945 REGB1
= TAG_Bool(true);
7947 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7948 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
7949 if (UNTAG_Bool(REGB2
)) {
7951 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
7952 if (UNTAG_Bool(REGB3
)) {
7953 REGB3
= TAG_Bool(false);
7956 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
7962 if (UNTAG_Bool(REGB1
)) {
7963 /* ./syntax//mmbuilder.nit:1078 */
7964 fra
.me
.REG
[4] = ATTR_syntax___mmbuilder___AAttrPropdef____readmethod(fra
.me
.REG
[2]);
7965 REGB1
= TAG_Bool(fra
.me
.REG
[4]!=NIT_NULL
);
7966 if (UNTAG_Bool(REGB1
)) {
7968 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 1078);
7970 /* ./syntax//mmbuilder.nit:1079 */
7971 CALL_metamodel___static_type___MMLocalProperty___signature__eq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[6]);
7972 /* ./syntax//mmbuilder.nit:1080 */
7973 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAttrPropdef___n_readable(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7974 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
7975 if (UNTAG_Bool(REGB1
)) {
7977 REGB2
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
7978 if (UNTAG_Bool(REGB2
)) {
7979 REGB2
= TAG_Bool(false);
7982 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
7986 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
7987 if (UNTAG_Bool(REGB1
)) {
7988 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAttrPropdef___n_readable(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
7989 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
7990 if (UNTAG_Bool(REGB1
)) {
7991 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1080);
7993 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAble___n_kwredef(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
7994 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
7995 if (UNTAG_Bool(REGB1
)) {
7997 REGB2
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
7998 if (UNTAG_Bool(REGB2
)) {
7999 REGB2
= TAG_Bool(false);
8002 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
8006 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
8008 REGB2
= TAG_Bool(false);
8011 if (UNTAG_Bool(REGB1
)) {
8012 REGB1
= TAG_Bool(true);
8014 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8015 REGB2
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8016 if (UNTAG_Bool(REGB2
)) {
8018 REGB3
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8019 if (UNTAG_Bool(REGB3
)) {
8020 REGB3
= TAG_Bool(false);
8023 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
8027 if (UNTAG_Bool(REGB2
)) {
8028 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAttrPropdef___n_kwredef(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8029 REGB2
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8030 if (UNTAG_Bool(REGB2
)) {
8032 REGB3
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8033 if (UNTAG_Bool(REGB3
)) {
8034 REGB3
= TAG_Bool(false);
8037 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
8041 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
8043 REGB3
= TAG_Bool(false);
8048 CALL_syntax___mmbuilder___APropdef___process_and_check(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[4], REGB1
, REGB0
);
8049 /* ./syntax//mmbuilder.nit:1081 */
8050 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAttrPropdef___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8051 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8052 if (UNTAG_Bool(REGB1
)) {
8053 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1081);
8055 CALL_syntax___mmbuilder___AType___check_visibility(fra
.me
.REG
[6])(fra
.me
.REG
[6], fra
.me
.REG
[3], fra
.me
.REG
[4]);
8057 /* ./syntax//mmbuilder.nit:1083 */
8058 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AAttrPropdef___n_writable(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8059 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8060 if (UNTAG_Bool(REGB1
)) {
8062 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8063 if (UNTAG_Bool(REGB2
)) {
8064 REGB2
= TAG_Bool(false);
8067 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
8071 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
8072 if (UNTAG_Bool(REGB1
)) {
8073 REGB1
= TAG_Bool(true);
8075 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8076 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8077 if (UNTAG_Bool(REGB2
)) {
8079 REGB3
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8080 if (UNTAG_Bool(REGB3
)) {
8081 REGB3
= TAG_Bool(false);
8084 REGB3
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
8090 if (UNTAG_Bool(REGB1
)) {
8091 /* ./syntax//mmbuilder.nit:1084 */
8092 fra
.me
.REG
[4] = ATTR_syntax___mmbuilder___AAttrPropdef____writemethod(fra
.me
.REG
[2]);
8093 REGB1
= TAG_Bool(fra
.me
.REG
[4]!=NIT_NULL
);
8094 if (UNTAG_Bool(REGB1
)) {
8096 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 1084);
8098 /* ./syntax//mmbuilder.nit:1085 */
8100 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
8101 if (!once_value_5
) {
8102 if (!once_value_6
) {
8103 fra
.me
.REG
[6] = BOX_NativeString("value");
8105 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB1
);
8106 once_value_6
= fra
.me
.REG
[6];
8107 register_static_object(&once_value_6
);
8108 } else fra
.me
.REG
[6] = once_value_6
;
8109 fra
.me
.REG
[6] = fra
.me
.REG
[6];
8110 fra
.me
.REG
[6] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
8111 once_value_5
= fra
.me
.REG
[6];
8112 register_static_object(&once_value_5
);
8113 } else fra
.me
.REG
[6] = once_value_5
;
8114 fra
.me
.REG
[6] = fra
.me
.REG
[6];
8115 fra
.me
.REG
[6] = NEW_MMParam_metamodel___static_type___MMParam___init(fra
.me
.REG
[1], fra
.me
.REG
[6]);
8116 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[6]);
8117 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___with_items(fra
.me
.REG
[0]);
8118 fra
.me
.REG
[6] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8119 fra
.me
.REG
[6] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
8120 fra
.me
.REG
[6] = NEW_MMSignature_metamodel___static_type___MMSignature___init(fra
.me
.REG
[0], NIT_NULL
, fra
.me
.REG
[6]);
8121 CALL_metamodel___static_type___MMLocalProperty___signature__eq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[6]);
8122 /* ./syntax//mmbuilder.nit:1087 */
8123 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAttrPropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8124 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8125 if (UNTAG_Bool(REGB1
)) {
8127 REGB2
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8128 if (UNTAG_Bool(REGB2
)) {
8129 REGB2
= TAG_Bool(false);
8132 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
8136 if (UNTAG_Bool(REGB1
)) {
8137 /* ./syntax//mmbuilder.nit:1088 */
8138 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAttrPropdef___n_writable(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8139 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8140 if (UNTAG_Bool(REGB1
)) {
8142 REGB2
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8143 if (UNTAG_Bool(REGB2
)) {
8144 REGB2
= TAG_Bool(false);
8147 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
8151 if (UNTAG_Bool(REGB1
)) {
8155 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAttrPropdef___n_writable(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8156 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8157 if (UNTAG_Bool(REGB1
)) {
8158 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1088);
8160 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAble___n_visibility(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
8161 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8162 if (UNTAG_Bool(REGB1
)) {
8163 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1088);
8165 REGB1
= CALL_syntax___mmbuilder___AVisibility___level(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
8169 /* ./syntax//mmbuilder.nit:1090 */
8170 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAttrPropdef___n_writable(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8171 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8172 if (UNTAG_Bool(REGB1
)) {
8174 REGB2
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8175 if (UNTAG_Bool(REGB2
)) {
8176 REGB2
= TAG_Bool(false);
8179 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
8183 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
8184 if (UNTAG_Bool(REGB1
)) {
8185 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAttrPropdef___n_writable(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8186 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8187 if (UNTAG_Bool(REGB1
)) {
8188 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1090);
8190 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AAble___n_kwredef(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
8191 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8192 if (UNTAG_Bool(REGB1
)) {
8194 REGB2
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
8195 if (UNTAG_Bool(REGB2
)) {
8196 REGB2
= TAG_Bool(false);
8199 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[6])(fra
.me
.REG
[6], NIT_NULL
);
8203 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
8205 REGB2
= TAG_Bool(false);
8208 CALL_syntax___mmbuilder___APropdef___process_and_check(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[4], REGB1
, REGB0
);
8209 /* ./syntax//mmbuilder.nit:1091 */
8210 fra
.me
.REG
[2] = CALL_parser___parser_nodes___AAttrPropdef___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8211 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
8212 if (UNTAG_Bool(REGB0
)) {
8213 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1091);
8215 CALL_syntax___mmbuilder___AType___check_visibility(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[4]);
8218 stack_frame_head
= fra
.me
.prev
;
8221 void syntax___mmbuilder___AAttrPropdef___accept_abs_syntax_visitor(val_t p0
, val_t p1
){
8222 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
8224 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8225 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8227 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AAttrPropdef___accept_abs_syntax_visitor
;
8228 fra
.me
.has_broke
= 0;
8229 fra
.me
.REG_size
= 4;
8230 fra
.me
.REG
[0] = NIT_NULL
;
8231 fra
.me
.REG
[1] = NIT_NULL
;
8232 fra
.me
.REG
[2] = NIT_NULL
;
8233 fra
.me
.REG
[3] = NIT_NULL
;
8236 /* ./syntax//mmbuilder.nit:1095 */
8237 fra
.me
.REG
[2] = fra
.me
.REG
[0];
8238 fra
.me
.REG
[3] = fra
.me
.REG
[1];
8239 /* ./syntax//mmbuilder.nit:1097 */
8240 fra
.me
.REG
[2] = ATTR_syntax___mmbuilder___AAttrPropdef____prop(fra
.me
.REG
[2]);
8241 CALL_syntax___syntax_base___AbsSyntaxVisitor___local_property__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
8242 /* ./syntax//mmbuilder.nit:1098 */
8243 CALL_SUPER_syntax___mmbuilder___AAttrPropdef___accept_abs_syntax_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
8244 /* ./syntax//mmbuilder.nit:1099 */
8245 CALL_syntax___syntax_base___AbsSyntaxVisitor___local_property__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
8246 stack_frame_head
= fra
.me
.prev
;
8249 val_t
syntax___mmbuilder___AMethPropdef___name(val_t p0
){
8250 struct {struct stack_frame_t me
;} fra
;
8252 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8253 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8255 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AMethPropdef___name
;
8256 fra
.me
.has_broke
= 0;
8257 fra
.me
.REG_size
= 1;
8258 fra
.me
.REG
[0] = NIT_NULL
;
8260 /* ./syntax//mmbuilder.nit:1104 */
8261 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___AMethPropdef____name(fra
.me
.REG
[0]);
8262 stack_frame_head
= fra
.me
.prev
;
8263 return fra
.me
.REG
[0];
8265 val_t
syntax___mmbuilder___AMethPropdef___method(val_t p0
){
8266 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
8269 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8270 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8272 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AMethPropdef___method
;
8273 fra
.me
.has_broke
= 0;
8274 fra
.me
.REG_size
= 2;
8275 fra
.me
.REG
[0] = NIT_NULL
;
8276 fra
.me
.REG
[1] = NIT_NULL
;
8278 /* ./syntax//mmbuilder.nit:1108 */
8279 fra
.me
.REG
[1] = fra
.me
.REG
[0];
8280 fra
.me
.REG
[1] = ATTR_syntax___mmbuilder___AMethPropdef____method(fra
.me
.REG
[1]);
8281 REGB0
= TAG_Bool(fra
.me
.REG
[1]!=NIT_NULL
);
8282 if (UNTAG_Bool(REGB0
)) {
8284 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 1108);
8288 stack_frame_head
= fra
.me
.prev
;
8289 return fra
.me
.REG
[1];
8291 void syntax___mmbuilder___AMethPropdef___accept_property_builder(val_t p0
, val_t p1
){
8292 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
8297 static val_t once_value_1
; /* Once value */
8298 static val_t once_value_2
; /* Once value */
8299 static val_t once_value_3
; /* Once value */
8300 static val_t once_value_4
; /* Once value */
8301 static val_t once_value_5
; /* Once value */
8302 static val_t once_value_6
; /* Once value */
8303 static val_t once_value_7
; /* Once value */
8304 static val_t once_value_8
; /* Once value */
8305 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8306 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8308 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AMethPropdef___accept_property_builder
;
8309 fra
.me
.has_broke
= 0;
8310 fra
.me
.REG_size
= 5;
8311 fra
.me
.REG
[0] = NIT_NULL
;
8312 fra
.me
.REG
[1] = NIT_NULL
;
8313 fra
.me
.REG
[2] = NIT_NULL
;
8314 fra
.me
.REG
[3] = NIT_NULL
;
8315 fra
.me
.REG
[4] = NIT_NULL
;
8318 /* ./syntax//mmbuilder.nit:1110 */
8319 fra
.me
.REG
[2] = fra
.me
.REG
[0];
8320 fra
.me
.REG
[3] = fra
.me
.REG
[1];
8321 /* ./syntax//mmbuilder.nit:1112 */
8322 CALL_SUPER_syntax___mmbuilder___AMethPropdef___accept_property_builder(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
8323 /* ./syntax//mmbuilder.nit:1114 */
8324 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AMethPropdef___n_methid(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8325 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
8326 if (UNTAG_Bool(REGB0
)) {
8328 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
8329 if (UNTAG_Bool(REGB1
)) {
8330 REGB1
= TAG_Bool(false);
8333 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
8337 if (UNTAG_Bool(REGB0
)) {
8338 /* ./syntax//mmbuilder.nit:1115 */
8339 REGB0
= TAG_Bool(VAL_ISA(fra
.me
.REG
[2], COLOR_parser___parser_nodes___AConcreteInitPropdef
, ID_parser___parser_nodes___AConcreteInitPropdef
)) /*cast AConcreteInitPropdef*/;
8340 if (UNTAG_Bool(REGB0
)) {
8341 /* ./syntax//mmbuilder.nit:1116 */
8342 if (!once_value_1
) {
8343 if (!once_value_2
) {
8344 fra
.me
.REG
[1] = BOX_NativeString("init");
8346 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
8347 once_value_2
= fra
.me
.REG
[1];
8348 register_static_object(&once_value_2
);
8349 } else fra
.me
.REG
[1] = once_value_2
;
8350 fra
.me
.REG
[1] = fra
.me
.REG
[1];
8351 fra
.me
.REG
[1] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
8352 once_value_1
= fra
.me
.REG
[1];
8353 register_static_object(&once_value_1
);
8354 } else fra
.me
.REG
[1] = once_value_1
;
8355 fra
.me
.REG
[1] = fra
.me
.REG
[1];
8357 /* ./syntax//mmbuilder.nit:1118 */
8358 if (!once_value_3
) {
8359 if (!once_value_4
) {
8360 fra
.me
.REG
[4] = BOX_NativeString("main");
8362 fra
.me
.REG
[4] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[4], REGB0
);
8363 once_value_4
= fra
.me
.REG
[4];
8364 register_static_object(&once_value_4
);
8365 } else fra
.me
.REG
[4] = once_value_4
;
8366 fra
.me
.REG
[4] = fra
.me
.REG
[4];
8367 fra
.me
.REG
[4] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
8368 once_value_3
= fra
.me
.REG
[4];
8369 register_static_object(&once_value_3
);
8370 } else fra
.me
.REG
[4] = once_value_3
;
8371 fra
.me
.REG
[4] = fra
.me
.REG
[4];
8372 fra
.me
.REG
[1] = fra
.me
.REG
[4];
8375 /* ./syntax//mmbuilder.nit:1121 */
8376 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AMethPropdef___n_methid(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8377 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8378 if (UNTAG_Bool(REGB0
)) {
8379 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1121);
8381 fra
.me
.REG
[4] = CALL_syntax___syntax_base___AMethid___name(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
8382 REGB0
= TAG_Bool(fra
.me
.REG
[4]!=NIT_NULL
);
8383 if (UNTAG_Bool(REGB0
)) {
8385 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 1121);
8387 fra
.me
.REG
[1] = fra
.me
.REG
[4];
8388 /* ./syntax//mmbuilder.nit:1123 */
8389 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AMethPropdef___n_methid(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8390 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8391 if (UNTAG_Bool(REGB0
)) {
8392 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1123);
8394 fra
.me
.REG
[4] = CALL_syntax___syntax_base___AMethid___name(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
8395 if (!once_value_5
) {
8396 if (!once_value_6
) {
8397 fra
.me
.REG
[0] = BOX_NativeString("-");
8399 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB0
);
8400 once_value_6
= fra
.me
.REG
[0];
8401 register_static_object(&once_value_6
);
8402 } else fra
.me
.REG
[0] = once_value_6
;
8403 fra
.me
.REG
[0] = fra
.me
.REG
[0];
8404 fra
.me
.REG
[0] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
8405 once_value_5
= fra
.me
.REG
[0];
8406 register_static_object(&once_value_5
);
8407 } else fra
.me
.REG
[0] = once_value_5
;
8408 fra
.me
.REG
[0] = fra
.me
.REG
[0];
8409 REGB0
= TAG_Bool(IS_EQUAL_ON(fra
.me
.REG
[0],fra
.me
.REG
[4]));
8410 if (UNTAG_Bool(REGB0
)) {
8412 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8413 if (UNTAG_Bool(REGB1
)) {
8414 REGB1
= TAG_Bool(false);
8417 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[0]);
8421 if (UNTAG_Bool(REGB0
)) {
8422 /* ./syntax//mmbuilder.nit:1124 */
8423 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AMethPropdef___n_signature(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8424 /* ./syntax//mmbuilder.nit:1125 */
8425 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
8426 if (UNTAG_Bool(REGB0
)) {
8428 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
8429 if (UNTAG_Bool(REGB1
)) {
8430 REGB1
= TAG_Bool(false);
8433 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
8437 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
8438 if (UNTAG_Bool(REGB0
)) {
8439 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
8440 if (UNTAG_Bool(REGB0
)) {
8441 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1125);
8443 fra
.me
.REG
[0] = CALL_parser___parser_nodes___ASignature___n_params(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
8444 REGB0
= CALL_standard___collection___abstract_collection___Collection___length(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
8446 REGB2
= TAG_Bool(IS_EQUAL_OO(REGB0
,REGB1
));
8447 if (UNTAG_Bool(REGB2
)) {
8449 /* ./../lib/standard//kernel.nit:210 */
8450 REGB1
= TAG_Bool((REGB0
)==(REGB1
));
8451 /* ./syntax//mmbuilder.nit:1125 */
8455 REGB1
= TAG_Bool(false);
8458 if (UNTAG_Bool(REGB2
)) {
8459 /* ./syntax//mmbuilder.nit:1126 */
8460 if (!once_value_7
) {
8461 if (!once_value_8
) {
8462 fra
.me
.REG
[0] = BOX_NativeString("unary -");
8464 fra
.me
.REG
[0] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[0], REGB2
);
8465 once_value_8
= fra
.me
.REG
[0];
8466 register_static_object(&once_value_8
);
8467 } else fra
.me
.REG
[0] = once_value_8
;
8468 fra
.me
.REG
[0] = fra
.me
.REG
[0];
8469 fra
.me
.REG
[0] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
8470 once_value_7
= fra
.me
.REG
[0];
8471 register_static_object(&once_value_7
);
8472 } else fra
.me
.REG
[0] = once_value_7
;
8473 fra
.me
.REG
[0] = fra
.me
.REG
[0];
8474 fra
.me
.REG
[1] = fra
.me
.REG
[0];
8478 /* ./syntax//mmbuilder.nit:1130 */
8479 ATTR_syntax___mmbuilder___AMethPropdef____name(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
8480 /* ./syntax//mmbuilder.nit:1131 */
8481 fra
.me
.REG
[0] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8482 fra
.me
.REG
[0] = NEW_MMMethSrcMethod_syntax___syntax_base___MMMethSrcMethod___init(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[2]);
8483 /* ./syntax//mmbuilder.nit:1132 */
8484 ATTR_syntax___mmbuilder___AMethPropdef____method(fra
.me
.REG
[2]) = fra
.me
.REG
[0];
8485 /* ./syntax//mmbuilder.nit:1133 */
8486 fra
.me
.REG
[2] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8487 CALL_syntax___mmbuilder___MMSrcLocalClass___add_src_local_property(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[0]);
8488 stack_frame_head
= fra
.me
.prev
;
8491 void syntax___mmbuilder___AMethPropdef___accept_property_verifier(val_t p0
, val_t p1
){
8492 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
8498 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8499 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8501 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AMethPropdef___accept_property_verifier
;
8502 fra
.me
.has_broke
= 0;
8503 fra
.me
.REG_size
= 5;
8504 fra
.me
.REG
[0] = NIT_NULL
;
8505 fra
.me
.REG
[1] = NIT_NULL
;
8506 fra
.me
.REG
[2] = NIT_NULL
;
8507 fra
.me
.REG
[3] = NIT_NULL
;
8508 fra
.me
.REG
[4] = NIT_NULL
;
8511 /* ./syntax//mmbuilder.nit:1136 */
8512 fra
.me
.REG
[2] = fra
.me
.REG
[0];
8513 fra
.me
.REG
[3] = fra
.me
.REG
[1];
8514 /* ./syntax//mmbuilder.nit:1138 */
8515 fra
.me
.REG
[4] = NEW_SignatureBuilder_syntax___mmbuilder___SignatureBuilder___init();
8516 CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
8517 /* ./syntax//mmbuilder.nit:1139 */
8518 CALL_SUPER_syntax___mmbuilder___AMethPropdef___accept_property_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
8519 /* ./syntax//mmbuilder.nit:1141 */
8520 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8521 REGB0
= CALL_syntax___mmbuilder___SignatureBuilder___has_error_occured(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
8522 if (UNTAG_Bool(REGB0
)) {
8525 /* ./syntax//mmbuilder.nit:1143 */
8526 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8527 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___SignatureBuilder___signature(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
8528 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
8529 if (UNTAG_Bool(REGB0
)) {
8531 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
8532 if (UNTAG_Bool(REGB1
)) {
8533 REGB1
= TAG_Bool(false);
8536 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
8540 if (UNTAG_Bool(REGB0
)) {
8542 /* ./syntax//mmbuilder.nit:1146 */
8543 fra
.me
.REG
[1] = CALL_syntax___syntax_base___AMethPropdef___method(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8544 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8545 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___SignatureBuilder___signature(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
8546 REGB0
= TAG_Bool(fra
.me
.REG
[4]!=NIT_NULL
);
8547 if (UNTAG_Bool(REGB0
)) {
8549 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 1146);
8551 CALL_metamodel___static_type___MMLocalProperty___signature__eq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
8553 /* ./syntax//mmbuilder.nit:1148 */
8555 /* ./syntax//mmbuilder.nit:1149 */
8556 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AMethPropdef___n_visibility(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8557 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8558 if (UNTAG_Bool(REGB1
)) {
8560 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8561 if (UNTAG_Bool(REGB2
)) {
8562 REGB2
= TAG_Bool(false);
8565 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
8569 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
8570 if (UNTAG_Bool(REGB1
)) {
8571 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AMethPropdef___n_visibility(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8572 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8573 if (UNTAG_Bool(REGB1
)) {
8574 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1149);
8576 REGB1
= CALL_syntax___mmbuilder___AVisibility___level(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
8578 REGB3
= TAG_Bool(VAL_ISA(REGB2
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
8579 if (UNTAG_Bool(REGB3
)) {
8581 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
8583 /* ./../lib/standard//kernel.nit:217 */
8584 REGB2
= TAG_Bool(UNTAG_Int(REGB1
)>UNTAG_Int(REGB2
));
8586 /* ./syntax//mmbuilder.nit:1149 */
8587 REGB1
= TAG_Bool(false);
8590 if (UNTAG_Bool(REGB2
)) {
8591 /* ./syntax//mmbuilder.nit:1150 */
8592 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AMethPropdef___n_visibility(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8593 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8594 if (UNTAG_Bool(REGB2
)) {
8595 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1150);
8597 REGB2
= CALL_syntax___mmbuilder___AVisibility___level(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
8600 /* ./syntax//mmbuilder.nit:1152 */
8601 fra
.me
.REG
[4] = CALL_syntax___syntax_base___AMethPropdef___method(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8602 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AMethPropdef___n_kwredef(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8603 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
8604 if (UNTAG_Bool(REGB2
)) {
8606 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
8607 if (UNTAG_Bool(REGB1
)) {
8608 REGB1
= TAG_Bool(false);
8611 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
8615 REGB2
= TAG_Bool(!UNTAG_Bool(REGB2
));
8616 CALL_syntax___mmbuilder___APropdef___process_and_check(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[4], REGB2
, REGB0
);
8617 /* ./syntax//mmbuilder.nit:1153 */
8618 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AMethPropdef___n_signature(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8619 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8620 if (UNTAG_Bool(REGB0
)) {
8622 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8623 if (UNTAG_Bool(REGB2
)) {
8624 REGB2
= TAG_Bool(false);
8627 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
8631 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
8632 if (UNTAG_Bool(REGB0
)) {
8633 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AMethPropdef___n_signature(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8634 fra
.me
.REG
[2] = CALL_syntax___syntax_base___AMethPropdef___method(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8635 REGB0
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
8636 if (UNTAG_Bool(REGB0
)) {
8637 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1153);
8639 CALL_syntax___mmbuilder___ASignature___check_visibility(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3], fra
.me
.REG
[2]);
8642 stack_frame_head
= fra
.me
.prev
;
8645 void syntax___mmbuilder___AMethPropdef___accept_abs_syntax_visitor(val_t p0
, val_t p1
){
8646 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
8648 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8649 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8651 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AMethPropdef___accept_abs_syntax_visitor
;
8652 fra
.me
.has_broke
= 0;
8653 fra
.me
.REG_size
= 4;
8654 fra
.me
.REG
[0] = NIT_NULL
;
8655 fra
.me
.REG
[1] = NIT_NULL
;
8656 fra
.me
.REG
[2] = NIT_NULL
;
8657 fra
.me
.REG
[3] = NIT_NULL
;
8660 /* ./syntax//mmbuilder.nit:1156 */
8661 fra
.me
.REG
[2] = fra
.me
.REG
[0];
8662 fra
.me
.REG
[3] = fra
.me
.REG
[1];
8663 /* ./syntax//mmbuilder.nit:1158 */
8664 fra
.me
.REG
[2] = ATTR_syntax___mmbuilder___AMethPropdef____method(fra
.me
.REG
[2]);
8665 CALL_syntax___syntax_base___AbsSyntaxVisitor___local_property__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
8666 /* ./syntax//mmbuilder.nit:1159 */
8667 CALL_SUPER_syntax___mmbuilder___AMethPropdef___accept_abs_syntax_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
8668 /* ./syntax//mmbuilder.nit:1160 */
8669 CALL_syntax___syntax_base___AbsSyntaxVisitor___local_property__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
8670 stack_frame_head
= fra
.me
.prev
;
8673 void syntax___mmbuilder___AMainMethPropdef___process_and_check(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
){
8674 struct {struct stack_frame_t me
; val_t MORE_REG
[2];} fra
;
8678 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8679 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8681 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AMainMethPropdef___process_and_check
;
8682 fra
.me
.has_broke
= 0;
8683 fra
.me
.REG_size
= 3;
8684 fra
.me
.REG
[0] = NIT_NULL
;
8685 fra
.me
.REG
[1] = NIT_NULL
;
8686 fra
.me
.REG
[2] = NIT_NULL
;
8692 /* ./syntax//mmbuilder.nit:1167 */
8693 fra
.me
.REG
[0] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8694 CALL_metamodel___abstractmetamodel___MMGlobalProperty___visibility_level__eq(fra
.me
.REG
[0])(fra
.me
.REG
[0], REGB1
);
8695 /* ./syntax//mmbuilder.nit:1168 */
8696 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___init();
8697 fra
.me
.REG
[1] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
8698 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
8699 fra
.me
.REG
[1] = NEW_MMSignature_metamodel___static_type___MMSignature___init(fra
.me
.REG
[0], NIT_NULL
, fra
.me
.REG
[1]);
8700 CALL_metamodel___static_type___MMLocalProperty___signature__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
8701 stack_frame_head
= fra
.me
.prev
;
8704 void syntax___mmbuilder___AExternMethPropdef___accept_property_verifier(val_t p0
, val_t p1
){
8705 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
8710 static val_t once_value_1
; /* Once value */
8711 static val_t once_value_2
; /* Once value */
8712 static val_t once_value_3
; /* Once value */
8713 static val_t once_value_4
; /* Once value */
8714 static val_t once_value_5
; /* Once value */
8715 static val_t once_value_6
; /* Once value */
8716 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8717 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8719 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AExternMethPropdef___accept_property_verifier
;
8720 fra
.me
.has_broke
= 0;
8721 fra
.me
.REG_size
= 4;
8722 fra
.me
.REG
[0] = NIT_NULL
;
8723 fra
.me
.REG
[1] = NIT_NULL
;
8724 fra
.me
.REG
[2] = NIT_NULL
;
8725 fra
.me
.REG
[3] = NIT_NULL
;
8728 /* ./syntax//mmbuilder.nit:1174 */
8729 fra
.me
.REG
[2] = fra
.me
.REG
[0];
8730 /* ./syntax//mmbuilder.nit:1176 */
8731 CALL_SUPER_syntax___mmbuilder___AExternMethPropdef___accept_property_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
8732 /* ./syntax//mmbuilder.nit:1178 */
8733 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AExternMethPropdef___n_extern(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8734 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
8735 if (UNTAG_Bool(REGB0
)) {
8737 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
8738 if (UNTAG_Bool(REGB1
)) {
8739 REGB1
= TAG_Bool(false);
8742 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
8746 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
8747 if (UNTAG_Bool(REGB0
)) {
8748 /* ./syntax//mmbuilder.nit:1179 */
8749 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AExternMethPropdef___n_extern(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8750 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
8751 if (UNTAG_Bool(REGB0
)) {
8752 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1179);
8754 fra
.me
.REG
[1] = CALL_parser___lexer___Token___text(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
8755 /* ./syntax//mmbuilder.nit:1180 */
8757 /* ./../lib/standard//collection//array.nit:23 */
8758 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
8759 if (UNTAG_Bool(REGB1
)) {
8761 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
8763 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
8764 /* ./syntax//mmbuilder.nit:1180 */
8766 /* ./../lib/standard//kernel.nit:220 */
8767 REGB2
= TAG_Int(UNTAG_Int(REGB1
)-UNTAG_Int(REGB2
));
8768 /* ./syntax//mmbuilder.nit:1180 */
8769 fra
.me
.REG
[0] = CALL_standard___string___AbstractString___substring(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
, REGB2
);
8770 fra
.me
.REG
[1] = fra
.me
.REG
[0];
8772 /* ./syntax//mmbuilder.nit:1182 */
8773 REGB2
= TAG_Int(11);
8774 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___with_capacity(REGB2
);
8775 if (!once_value_1
) {
8776 fra
.me
.REG
[3] = BOX_NativeString("");
8778 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB2
);
8779 once_value_1
= fra
.me
.REG
[3];
8780 register_static_object(&once_value_1
);
8781 } else fra
.me
.REG
[3] = once_value_1
;
8782 fra
.me
.REG
[3] = fra
.me
.REG
[3];
8783 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8784 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AMethPropdef___method(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8785 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___mmmodule(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8786 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMModule___name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8787 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8788 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8789 if (!once_value_2
) {
8790 fra
.me
.REG
[3] = BOX_NativeString("_");
8792 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB2
);
8793 once_value_2
= fra
.me
.REG
[3];
8794 register_static_object(&once_value_2
);
8795 } else fra
.me
.REG
[3] = once_value_2
;
8796 fra
.me
.REG
[3] = fra
.me
.REG
[3];
8797 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8798 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AMethPropdef___method(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8799 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8800 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8801 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8802 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8803 if (!once_value_3
) {
8804 fra
.me
.REG
[3] = BOX_NativeString("_");
8806 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB2
);
8807 once_value_3
= fra
.me
.REG
[3];
8808 register_static_object(&once_value_3
);
8809 } else fra
.me
.REG
[3] = once_value_3
;
8810 fra
.me
.REG
[3] = fra
.me
.REG
[3];
8811 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8812 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AMethPropdef___method(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8813 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8814 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8815 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8816 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8817 if (!once_value_4
) {
8818 fra
.me
.REG
[3] = BOX_NativeString("_");
8820 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB2
);
8821 once_value_4
= fra
.me
.REG
[3];
8822 register_static_object(&once_value_4
);
8823 } else fra
.me
.REG
[3] = once_value_4
;
8824 fra
.me
.REG
[3] = fra
.me
.REG
[3];
8825 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8826 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AMethPropdef___method(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8827 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8828 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8829 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8830 if (!once_value_5
) {
8831 fra
.me
.REG
[3] = BOX_NativeString("_");
8833 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB2
);
8834 once_value_5
= fra
.me
.REG
[3];
8835 register_static_object(&once_value_5
);
8836 } else fra
.me
.REG
[3] = once_value_5
;
8837 fra
.me
.REG
[3] = fra
.me
.REG
[3];
8838 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8839 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AMethPropdef___method(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8840 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMLocalProperty___signature(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8841 REGB2
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
8842 if (UNTAG_Bool(REGB2
)) {
8843 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1182);
8845 REGB2
= CALL_metamodel___static_type___MMSignature___arity(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8846 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(REGB2
)(REGB2
);
8847 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8848 if (!once_value_6
) {
8849 fra
.me
.REG
[3] = BOX_NativeString("");
8851 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB2
);
8852 once_value_6
= fra
.me
.REG
[3];
8853 register_static_object(&once_value_6
);
8854 } else fra
.me
.REG
[3] = once_value_6
;
8855 fra
.me
.REG
[3] = fra
.me
.REG
[3];
8856 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8857 fra
.me
.REG
[0] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
8858 fra
.me
.REG
[1] = fra
.me
.REG
[0];
8860 /* ./syntax//mmbuilder.nit:1184 */
8861 fra
.me
.REG
[2] = CALL_syntax___syntax_base___AMethPropdef___method(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8862 CALL_syntax___syntax_base___MMMethSrcMethod___extern_name__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[1]);
8863 stack_frame_head
= fra
.me
.prev
;
8866 val_t
syntax___mmbuilder___ATypePropdef___prop(val_t p0
){
8867 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
8870 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8871 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8873 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ATypePropdef___prop
;
8874 fra
.me
.has_broke
= 0;
8875 fra
.me
.REG_size
= 2;
8876 fra
.me
.REG
[0] = NIT_NULL
;
8877 fra
.me
.REG
[1] = NIT_NULL
;
8879 /* ./syntax//mmbuilder.nit:1189 */
8880 fra
.me
.REG
[1] = fra
.me
.REG
[0];
8881 fra
.me
.REG
[1] = ATTR_syntax___mmbuilder___ATypePropdef____prop(fra
.me
.REG
[1]);
8882 REGB0
= TAG_Bool(fra
.me
.REG
[1]!=NIT_NULL
);
8883 if (UNTAG_Bool(REGB0
)) {
8885 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 1189);
8889 stack_frame_head
= fra
.me
.prev
;
8890 return fra
.me
.REG
[1];
8892 void syntax___mmbuilder___ATypePropdef___accept_property_builder(val_t p0
, val_t p1
){
8893 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
8895 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8896 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8898 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ATypePropdef___accept_property_builder
;
8899 fra
.me
.has_broke
= 0;
8900 fra
.me
.REG_size
= 4;
8901 fra
.me
.REG
[0] = NIT_NULL
;
8902 fra
.me
.REG
[1] = NIT_NULL
;
8903 fra
.me
.REG
[2] = NIT_NULL
;
8904 fra
.me
.REG
[3] = NIT_NULL
;
8907 /* ./syntax//mmbuilder.nit:1192 */
8908 fra
.me
.REG
[2] = fra
.me
.REG
[0];
8909 fra
.me
.REG
[3] = fra
.me
.REG
[1];
8910 /* ./syntax//mmbuilder.nit:1194 */
8911 CALL_SUPER_syntax___mmbuilder___ATypePropdef___accept_property_builder(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
8912 /* ./syntax//mmbuilder.nit:1195 */
8913 fra
.me
.REG
[1] = CALL_parser___parser_nodes___ATypePropdef___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8914 fra
.me
.REG
[1] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
8915 /* ./syntax//mmbuilder.nit:1196 */
8916 fra
.me
.REG
[0] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8917 fra
.me
.REG
[0] = NEW_MMSrcTypeProperty_syntax___syntax_base___MMSrcTypeProperty___init(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[2]);
8918 /* ./syntax//mmbuilder.nit:1197 */
8919 ATTR_syntax___mmbuilder___ATypePropdef____prop(fra
.me
.REG
[2]) = fra
.me
.REG
[0];
8920 /* ./syntax//mmbuilder.nit:1198 */
8921 fra
.me
.REG
[2] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8922 CALL_syntax___mmbuilder___MMSrcLocalClass___add_src_local_property(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[0]);
8923 stack_frame_head
= fra
.me
.prev
;
8926 void syntax___mmbuilder___ATypePropdef___accept_property_verifier(val_t p0
, val_t p1
){
8927 struct {struct stack_frame_t me
; val_t MORE_REG
[4];} fra
;
8932 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8933 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8935 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ATypePropdef___accept_property_verifier
;
8936 fra
.me
.has_broke
= 0;
8937 fra
.me
.REG_size
= 5;
8938 fra
.me
.REG
[0] = NIT_NULL
;
8939 fra
.me
.REG
[1] = NIT_NULL
;
8940 fra
.me
.REG
[2] = NIT_NULL
;
8941 fra
.me
.REG
[3] = NIT_NULL
;
8942 fra
.me
.REG
[4] = NIT_NULL
;
8945 /* ./syntax//mmbuilder.nit:1201 */
8946 fra
.me
.REG
[2] = fra
.me
.REG
[0];
8947 fra
.me
.REG
[3] = fra
.me
.REG
[1];
8948 /* ./syntax//mmbuilder.nit:1203 */
8949 CALL_SUPER_syntax___mmbuilder___ATypePropdef___accept_property_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
8950 /* ./syntax//mmbuilder.nit:1204 */
8951 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___init();
8952 fra
.me
.REG
[0] = CALL_parser___parser_nodes___ATypePropdef___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8953 fra
.me
.REG
[0] = CALL_syntax___syntax_base___AType___get_stype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
8954 fra
.me
.REG
[4] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
8955 fra
.me
.REG
[4] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
8956 fra
.me
.REG
[4] = NEW_MMSignature_metamodel___static_type___MMSignature___init(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[4]);
8957 /* ./syntax//mmbuilder.nit:1205 */
8958 fra
.me
.REG
[0] = CALL_syntax___syntax_base___ATypePropdef___prop(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8959 CALL_metamodel___static_type___MMLocalProperty___signature__eq(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[4]);
8960 /* ./syntax//mmbuilder.nit:1206 */
8961 fra
.me
.REG
[4] = CALL_parser___parser_nodes___ATypePropdef___n_visibility(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8962 REGB0
= CALL_syntax___mmbuilder___AVisibility___level(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
8963 /* ./syntax//mmbuilder.nit:1207 */
8964 fra
.me
.REG
[4] = CALL_syntax___syntax_base___ATypePropdef___prop(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8965 fra
.me
.REG
[0] = CALL_parser___parser_nodes___ATypePropdef___n_kwredef(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
8966 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
8967 if (UNTAG_Bool(REGB1
)) {
8969 REGB2
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
8970 if (UNTAG_Bool(REGB2
)) {
8971 REGB2
= TAG_Bool(false);
8974 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
8978 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
8979 CALL_syntax___mmbuilder___APropdef___process_and_check(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3], fra
.me
.REG
[4], REGB1
, REGB0
);
8980 stack_frame_head
= fra
.me
.prev
;
8983 void syntax___mmbuilder___ATypePropdef___accept_abs_syntax_visitor(val_t p0
, val_t p1
){
8984 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
8986 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
8987 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
8989 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ATypePropdef___accept_abs_syntax_visitor
;
8990 fra
.me
.has_broke
= 0;
8991 fra
.me
.REG_size
= 4;
8992 fra
.me
.REG
[0] = NIT_NULL
;
8993 fra
.me
.REG
[1] = NIT_NULL
;
8994 fra
.me
.REG
[2] = NIT_NULL
;
8995 fra
.me
.REG
[3] = NIT_NULL
;
8998 /* ./syntax//mmbuilder.nit:1210 */
8999 fra
.me
.REG
[2] = fra
.me
.REG
[0];
9000 fra
.me
.REG
[3] = fra
.me
.REG
[1];
9001 /* ./syntax//mmbuilder.nit:1212 */
9002 fra
.me
.REG
[2] = ATTR_syntax___mmbuilder___ATypePropdef____prop(fra
.me
.REG
[2]);
9003 CALL_syntax___syntax_base___AbsSyntaxVisitor___local_property__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
9004 /* ./syntax//mmbuilder.nit:1213 */
9005 CALL_SUPER_syntax___mmbuilder___ATypePropdef___accept_abs_syntax_visitor(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
9006 /* ./syntax//mmbuilder.nit:1214 */
9007 CALL_syntax___syntax_base___AbsSyntaxVisitor___local_property__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
9008 stack_frame_head
= fra
.me
.prev
;
9011 val_t
syntax___mmbuilder___MethidAccumulator___name(val_t p0
){
9012 struct {struct stack_frame_t me
;} fra
;
9015 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9016 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9018 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MethidAccumulator___name
;
9019 fra
.me
.has_broke
= 0;
9020 fra
.me
.REG_size
= 1;
9021 fra
.me
.REG
[0] = NIT_NULL
;
9023 /* ./syntax//mmbuilder.nit:1221 */
9024 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___MethidAccumulator____name(fra
.me
.REG
[0])!=NIT_NULL
);
9025 if (UNTAG_Bool(REGB0
)) {
9027 nit_abort("Uninitialized attribute %s", "_name", LOCATE_syntax___mmbuilder
, 1221);
9029 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___MethidAccumulator____name(fra
.me
.REG
[0]);
9030 stack_frame_head
= fra
.me
.prev
;
9031 return fra
.me
.REG
[0];
9033 void syntax___mmbuilder___MethidAccumulator___visit(val_t p0
, val_t p1
){
9034 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
9037 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9038 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9040 fra
.me
.meth
= LOCATE_syntax___mmbuilder___MethidAccumulator___visit
;
9041 fra
.me
.has_broke
= 0;
9042 fra
.me
.REG_size
= 4;
9043 fra
.me
.REG
[0] = NIT_NULL
;
9044 fra
.me
.REG
[1] = NIT_NULL
;
9045 fra
.me
.REG
[2] = NIT_NULL
;
9046 fra
.me
.REG
[3] = NIT_NULL
;
9049 /* ./syntax//mmbuilder.nit:1224 */
9050 REGB0
= TAG_Bool((fra
.me
.REG
[1]!=NIT_NULL
) && VAL_ISA(fra
.me
.REG
[1], COLOR_parser___parser_nodes___Token
, ID_parser___parser_nodes___Token
)) /*cast Token*/;
9051 if (UNTAG_Bool(REGB0
)) {
9052 /* ./syntax//mmbuilder.nit:1225 */
9053 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___MethidAccumulator____name(fra
.me
.REG
[0])!=NIT_NULL
);
9054 if (UNTAG_Bool(REGB0
)) {
9056 nit_abort("Uninitialized attribute %s", "_name", LOCATE_syntax___mmbuilder
, 1225);
9058 fra
.me
.REG
[2] = ATTR_syntax___mmbuilder___MethidAccumulator____name(fra
.me
.REG
[0]);
9059 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
9060 if (UNTAG_Bool(REGB0
)) {
9061 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1225);
9063 fra
.me
.REG
[3] = CALL_parser___lexer___Token___text(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9064 CALL_standard___collection___abstract_collection___Sequence___append(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
9066 /* ./syntax//mmbuilder.nit:1227 */
9067 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
9068 if (UNTAG_Bool(REGB0
)) {
9069 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1227);
9071 CALL_parser___parser_prod___ANode___visit_all(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
9073 stack_frame_head
= fra
.me
.prev
;
9076 val_t
syntax___mmbuilder___AMethid___name(val_t p0
){
9077 struct {struct stack_frame_t me
;} fra
;
9079 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9080 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9082 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AMethid___name
;
9083 fra
.me
.has_broke
= 0;
9084 fra
.me
.REG_size
= 1;
9085 fra
.me
.REG
[0] = NIT_NULL
;
9087 /* ./syntax//mmbuilder.nit:1233 */
9088 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___AMethid____name(fra
.me
.REG
[0]);
9089 stack_frame_head
= fra
.me
.prev
;
9090 return fra
.me
.REG
[0];
9092 void syntax___mmbuilder___AMethid___accept_property_builder(val_t p0
, val_t p1
){
9093 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
9095 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9096 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9098 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AMethid___accept_property_builder
;
9099 fra
.me
.has_broke
= 0;
9100 fra
.me
.REG_size
= 4;
9101 fra
.me
.REG
[0] = NIT_NULL
;
9102 fra
.me
.REG
[1] = NIT_NULL
;
9103 fra
.me
.REG
[2] = NIT_NULL
;
9104 fra
.me
.REG
[3] = NIT_NULL
;
9107 /* ./syntax//mmbuilder.nit:1235 */
9108 fra
.me
.REG
[2] = fra
.me
.REG
[0];
9109 /* ./syntax//mmbuilder.nit:1237 */
9110 fra
.me
.REG
[3] = NEW_MethidAccumulator_parser___parser_prod___Visitor___init();
9111 /* ./syntax//mmbuilder.nit:1238 */
9112 CALL_parser___parser_prod___Visitor___enter_visit(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2]);
9113 /* ./syntax//mmbuilder.nit:1239 */
9114 fra
.me
.REG
[3] = CALL_syntax___mmbuilder___MethidAccumulator___name(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9115 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9116 fra
.me
.REG
[3] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9117 ATTR_syntax___mmbuilder___AMethid____name(fra
.me
.REG
[2]) = fra
.me
.REG
[3];
9118 /* ./syntax//mmbuilder.nit:1240 */
9119 CALL_SUPER_syntax___mmbuilder___AMethid___accept_property_builder(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
9120 stack_frame_head
= fra
.me
.prev
;
9123 void syntax___mmbuilder___ASignature___accept_property_verifier(val_t p0
, val_t p1
){
9124 struct {struct stack_frame_t me
; val_t MORE_REG
[7];} fra
;
9129 static val_t once_value_2
; /* Once value */
9130 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9131 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9133 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ASignature___accept_property_verifier
;
9134 fra
.me
.has_broke
= 0;
9135 fra
.me
.REG_size
= 8;
9136 fra
.me
.REG
[0] = NIT_NULL
;
9137 fra
.me
.REG
[1] = NIT_NULL
;
9138 fra
.me
.REG
[2] = NIT_NULL
;
9139 fra
.me
.REG
[3] = NIT_NULL
;
9140 fra
.me
.REG
[4] = NIT_NULL
;
9141 fra
.me
.REG
[5] = NIT_NULL
;
9142 fra
.me
.REG
[6] = NIT_NULL
;
9143 fra
.me
.REG
[7] = NIT_NULL
;
9146 /* ./syntax//mmbuilder.nit:1245 */
9147 fra
.me
.REG
[2] = fra
.me
.REG
[0];
9148 fra
.me
.REG
[3] = fra
.me
.REG
[1];
9149 /* ./syntax//mmbuilder.nit:1247 */
9150 CALL_SUPER_syntax___mmbuilder___ASignature___accept_property_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
9151 /* ./syntax//mmbuilder.nit:1248 */
9152 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9153 REGB0
= CALL_syntax___mmbuilder___SignatureBuilder___has_error_occured(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9154 if (UNTAG_Bool(REGB0
)) {
9155 /* ./syntax//mmbuilder.nit:1249 */
9158 /* ./syntax//mmbuilder.nit:1250 */
9159 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9160 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___SignatureBuilder___untyped_params(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9161 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9162 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
9163 if (UNTAG_Bool(REGB0
)) {
9164 /* ./syntax//mmbuilder.nit:1251 */
9165 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9166 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___SignatureBuilder___untyped_params(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9167 fra
.me
.REG
[1] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9168 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9169 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___SignatureBuilder___params(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
9170 fra
.me
.REG
[4] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
9171 REGB0
= TAG_Bool(IS_EQUAL_NN(fra
.me
.REG
[1],fra
.me
.REG
[4]));
9172 if (UNTAG_Bool(REGB0
)) {
9174 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
9175 if (UNTAG_Bool(REGB1
)) {
9176 REGB1
= TAG_Bool(false);
9179 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[4]);
9183 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
9184 if (UNTAG_Bool(REGB0
)) {
9185 REGB0
= TAG_Bool(true);
9187 fra
.me
.REG
[4] = CALL_parser___parser_nodes___ASignature___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9188 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
9189 if (UNTAG_Bool(REGB1
)) {
9191 REGB2
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
9192 if (UNTAG_Bool(REGB2
)) {
9193 REGB2
= TAG_Bool(false);
9196 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[4])(fra
.me
.REG
[4], NIT_NULL
);
9200 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
9203 if (UNTAG_Bool(REGB0
)) {
9204 /* ./syntax//mmbuilder.nit:1252 */
9205 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9206 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___SignatureBuilder___untyped_params(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
9207 fra
.me
.REG
[4] = CALL_standard___collection___abstract_collection___Collection___first(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
9208 if (!once_value_2
) {
9209 fra
.me
.REG
[1] = BOX_NativeString("Syntax error: untyped parameter.");
9210 REGB0
= TAG_Int(32);
9211 fra
.me
.REG
[1] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[1], REGB0
);
9212 once_value_2
= fra
.me
.REG
[1];
9213 register_static_object(&once_value_2
);
9214 } else fra
.me
.REG
[1] = once_value_2
;
9215 fra
.me
.REG
[1] = fra
.me
.REG
[1];
9216 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4], fra
.me
.REG
[1]);
9217 /* ./syntax//mmbuilder.nit:1253 */
9221 /* ./syntax//mmbuilder.nit:1255 */
9222 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9223 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___SignatureBuilder___params(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9224 REGB0
= CALL_standard___collection___abstract_collection___Collection___is_empty(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9225 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
9226 if (UNTAG_Bool(REGB0
)) {
9227 REGB0
= TAG_Bool(true);
9229 fra
.me
.REG
[1] = CALL_parser___parser_nodes___ASignature___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9230 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
9231 if (UNTAG_Bool(REGB1
)) {
9233 REGB2
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
9234 if (UNTAG_Bool(REGB2
)) {
9235 REGB2
= TAG_Bool(false);
9238 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
9242 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
9245 if (UNTAG_Bool(REGB0
)) {
9246 /* ./syntax//mmbuilder.nit:1256 */
9247 fra
.me
.REG
[1] = NEW_Array_standard___collection___array___Array___init();
9248 /* ./syntax//mmbuilder.nit:1257 */
9249 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9250 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___SignatureBuilder___params(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
9251 /* ./../lib/standard//collection//array.nit:232 */
9253 /* ./../lib/standard//collection//array.nit:233 */
9254 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
9255 if (UNTAG_Bool(REGB1
)) {
9257 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
9259 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
9260 /* ./../lib/standard//collection//array.nit:234 */
9261 fra
.me
.REG
[5] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[4]);
9262 /* ./../lib/standard//collection//array.nit:235 */
9264 /* ./../lib/standard//collection//array.nit:23 */
9265 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4])!=NIT_NULL
);
9266 if (UNTAG_Bool(REGB1
)) {
9268 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
9270 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[4]);
9271 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
9272 if (UNTAG_Bool(REGB2
)) {
9274 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
9276 /* ./../lib/standard//kernel.nit:215 */
9277 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
9278 /* ./../lib/standard//collection//array.nit:235 */
9279 if (UNTAG_Bool(REGB1
)) {
9280 /* ./../lib/standard//collection//array.nit:236 */
9281 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
9282 if (UNTAG_Bool(REGB1
)) {
9283 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
9285 /* ./../lib/standard//collection//array.nit:652 */
9286 fra
.me
.REG
[6] = ((Nit_NativeArray
)fra
.me
.REG
[5])->val
[UNTAG_Int(REGB0
)];
9287 /* ./syntax//mmbuilder.nit:1258 */
9288 fra
.me
.REG
[7] = CALL_syntax___mmbuilder___AParam___stype(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
9289 REGB1
= TAG_Bool(fra
.me
.REG
[7]!=NIT_NULL
);
9290 if (UNTAG_Bool(REGB1
)) {
9292 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 1258);
9294 fra
.me
.REG
[6] = CALL_parser___parser_nodes___AParam___n_id(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
9295 fra
.me
.REG
[6] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
9296 fra
.me
.REG
[6] = NEW_MMParam_metamodel___static_type___MMParam___init(fra
.me
.REG
[7], fra
.me
.REG
[6]);
9297 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[6]);
9298 /* ./../lib/standard//collection//array.nit:237 */
9300 /* ./../lib/standard//kernel.nit:218 */
9301 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
9302 /* ./../lib/standard//collection//array.nit:237 */
9305 /* ./../lib/standard//collection//array.nit:235 */
9310 /* ./syntax//mmbuilder.nit:1260 */
9311 fra
.me
.REG
[0] = NIT_NULL
;
9312 /* ./syntax//mmbuilder.nit:1261 */
9313 fra
.me
.REG
[5] = CALL_parser___parser_nodes___ASignature___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9314 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
9315 if (UNTAG_Bool(REGB0
)) {
9317 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
9318 if (UNTAG_Bool(REGB1
)) {
9319 REGB1
= TAG_Bool(false);
9322 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
9326 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
9327 if (UNTAG_Bool(REGB0
)) {
9328 /* ./syntax//mmbuilder.nit:1262 */
9329 fra
.me
.REG
[2] = CALL_parser___parser_nodes___ASignature___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9330 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
9331 if (UNTAG_Bool(REGB0
)) {
9332 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1262);
9334 fra
.me
.REG
[2] = CALL_syntax___syntax_base___AType___get_stype(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[3]);
9335 fra
.me
.REG
[0] = fra
.me
.REG
[2];
9336 /* ./syntax//mmbuilder.nit:1263 */
9337 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9338 if (UNTAG_Bool(REGB0
)) {
9340 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9341 if (UNTAG_Bool(REGB1
)) {
9342 REGB1
= TAG_Bool(false);
9345 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
9349 if (UNTAG_Bool(REGB0
)) {
9350 /* ./syntax//mmbuilder.nit:1264 */
9351 fra
.me
.REG
[2] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9352 REGB0
= TAG_Bool(true);
9353 CALL_syntax___mmbuilder___SignatureBuilder___has_error_occured__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], REGB0
);
9354 /* ./syntax//mmbuilder.nit:1265 */
9358 /* ./syntax//mmbuilder.nit:1268 */
9359 fra
.me
.REG
[2] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9360 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9361 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
9362 fra
.me
.REG
[5] = NEW_MMSignature_metamodel___static_type___MMSignature___init(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[5]);
9363 CALL_syntax___mmbuilder___SignatureBuilder___signature__eq(fra
.me
.REG
[2])(fra
.me
.REG
[2], fra
.me
.REG
[5]);
9364 /* ./syntax//mmbuilder.nit:1269 */
9365 fra
.me
.REG
[5] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9366 REGB0
= CALL_syntax___mmbuilder___SignatureBuilder___vararg_rank(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
9368 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
9369 if (UNTAG_Bool(REGB2
)) {
9371 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
9373 /* ./../lib/standard//kernel.nit:216 */
9374 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
9375 /* ./syntax//mmbuilder.nit:1269 */
9376 if (UNTAG_Bool(REGB1
)) {
9377 /* ./syntax//mmbuilder.nit:1270 */
9378 fra
.me
.REG
[5] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9379 fra
.me
.REG
[5] = CALL_syntax___mmbuilder___SignatureBuilder___signature(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
9380 fra
.me
.REG
[2] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9381 REGB1
= CALL_syntax___mmbuilder___SignatureBuilder___vararg_rank(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9382 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
9383 if (UNTAG_Bool(REGB0
)) {
9384 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1270);
9386 CALL_metamodel___vararg___MMSignature___vararg_rank__eq(fra
.me
.REG
[5])(fra
.me
.REG
[5], REGB1
);
9388 /* ./syntax//mmbuilder.nit:1272 */
9389 fra
.me
.REG
[5] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9390 fra
.me
.REG
[5] = CALL_syntax___mmbuilder___SignatureBuilder___closure_decls(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
9391 /* ./../lib/standard//collection//array.nit:232 */
9393 /* ./../lib/standard//collection//array.nit:233 */
9394 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
9395 if (UNTAG_Bool(REGB0
)) {
9397 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
9399 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
9400 /* ./../lib/standard//collection//array.nit:234 */
9401 fra
.me
.REG
[2] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[5]);
9402 /* ./../lib/standard//collection//array.nit:235 */
9404 /* ./../lib/standard//collection//array.nit:23 */
9405 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
9406 if (UNTAG_Bool(REGB0
)) {
9408 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
9410 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
9411 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
9412 if (UNTAG_Bool(REGB2
)) {
9414 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
9416 /* ./../lib/standard//kernel.nit:215 */
9417 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)<UNTAG_Int(REGB0
));
9418 /* ./../lib/standard//collection//array.nit:235 */
9419 if (UNTAG_Bool(REGB0
)) {
9420 /* ./../lib/standard//collection//array.nit:236 */
9421 REGB0
= TAG_Bool(fra
.me
.REG
[2]==NIT_NULL
);
9422 if (UNTAG_Bool(REGB0
)) {
9423 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
9425 /* ./../lib/standard//collection//array.nit:652 */
9426 fra
.me
.REG
[0] = ((Nit_NativeArray
)fra
.me
.REG
[2])->val
[UNTAG_Int(REGB1
)];
9427 /* ./syntax//mmbuilder.nit:1273 */
9428 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9429 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___SignatureBuilder___signature(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9430 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
9431 if (UNTAG_Bool(REGB0
)) {
9432 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1273);
9434 fra
.me
.REG
[1] = CALL_metamodel___static_type___MMSignature___closures(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9435 fra
.me
.REG
[0] = CALL_syntax___syntax_base___AClosureDecl___variable(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
9436 fra
.me
.REG
[0] = CALL_syntax___syntax_base___ClosureVariable___closure(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
9437 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0]);
9438 /* ./../lib/standard//collection//array.nit:237 */
9440 /* ./../lib/standard//kernel.nit:218 */
9441 REGB0
= TAG_Int(UNTAG_Int(REGB1
)+UNTAG_Int(REGB0
));
9442 /* ./../lib/standard//collection//array.nit:237 */
9445 /* ./../lib/standard//collection//array.nit:235 */
9454 stack_frame_head
= fra
.me
.prev
;
9457 void syntax___mmbuilder___ASignature___check_visibility(val_t p0
, val_t p1
, val_t p2
){
9458 struct {struct stack_frame_t me
; val_t MORE_REG
[3];} fra
;
9463 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9464 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9466 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ASignature___check_visibility
;
9467 fra
.me
.has_broke
= 0;
9468 fra
.me
.REG_size
= 4;
9469 fra
.me
.REG
[0] = NIT_NULL
;
9470 fra
.me
.REG
[1] = NIT_NULL
;
9471 fra
.me
.REG
[2] = NIT_NULL
;
9472 fra
.me
.REG
[3] = NIT_NULL
;
9476 /* ./syntax//mmbuilder.nit:1281 */
9477 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9478 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___visibility_level(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9480 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
9481 if (UNTAG_Bool(REGB2
)) {
9483 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
9485 /* ./../lib/standard//kernel.nit:216 */
9486 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
9487 /* ./syntax//mmbuilder.nit:1281 */
9488 if (UNTAG_Bool(REGB1
)) {
9491 /* ./syntax//mmbuilder.nit:1282 */
9492 fra
.me
.REG
[3] = CALL_parser___parser_nodes___ASignature___n_params(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
9493 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[3])(fra
.me
.REG
[3], (&(fra
.me
)), ((fun_t
)OC_syntax___mmbuilder___ASignature___check_visibility_2
));
9494 /* ./syntax//mmbuilder.nit:1285 */
9495 fra
.me
.REG
[3] = CALL_parser___parser_nodes___ASignature___n_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
9496 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
9497 if (UNTAG_Bool(REGB1
)) {
9499 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
9500 if (UNTAG_Bool(REGB0
)) {
9501 REGB0
= TAG_Bool(false);
9504 REGB0
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
9508 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
9509 if (UNTAG_Bool(REGB1
)) {
9510 fra
.me
.REG
[0] = CALL_parser___parser_nodes___ASignature___n_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
9511 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9512 if (UNTAG_Bool(REGB1
)) {
9513 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1285);
9515 CALL_syntax___mmbuilder___AType___check_visibility(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1], fra
.me
.REG
[2]);
9518 stack_frame_head
= fra
.me
.prev
;
9521 void OC_syntax___mmbuilder___ASignature___check_visibility_2(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
9522 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
9527 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9528 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9530 fra
.me
.meth
= LOCATE_syntax___mmbuilder___ASignature___check_visibility
;
9531 fra
.me
.has_broke
= 0;
9532 fra
.me
.REG_size
= 2;
9533 fra
.me
.REG
[0] = NIT_NULL
;
9534 fra
.me
.REG
[1] = NIT_NULL
;
9535 fra
.me
.closure_ctx
= closctx_param
;
9536 fra
.me
.closure_funs
= CREG
;
9538 CREG
[0] = clos_fun0
;
9539 /* ./syntax//mmbuilder.nit:1283 */
9540 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AParam___n_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
9541 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
9542 if (UNTAG_Bool(REGB0
)) {
9544 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
9545 if (UNTAG_Bool(REGB1
)) {
9546 REGB1
= TAG_Bool(false);
9549 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
9553 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
9554 if (UNTAG_Bool(REGB0
)) {
9555 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AParam___n_type(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
9556 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9557 if (UNTAG_Bool(REGB0
)) {
9558 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1283);
9560 CALL_syntax___mmbuilder___AType___check_visibility(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1], closctx
->REG
[2]);
9562 stack_frame_head
= fra
.me
.prev
;
9565 val_t
syntax___mmbuilder___AParam___position(val_t p0
){
9566 struct {struct stack_frame_t me
;} fra
;
9569 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9570 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9572 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AParam___position
;
9573 fra
.me
.has_broke
= 0;
9574 fra
.me
.REG_size
= 1;
9575 fra
.me
.REG
[0] = NIT_NULL
;
9577 /* ./syntax//mmbuilder.nit:1290 */
9578 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___AParam____position(fra
.me
.REG
[0])!=NIT_NULL
);
9579 if (UNTAG_Bool(REGB0
)) {
9581 nit_abort("Uninitialized attribute %s", "_position", LOCATE_syntax___mmbuilder
, 1290);
9583 REGB0
= ATTR_syntax___mmbuilder___AParam____position(fra
.me
.REG
[0]);
9584 stack_frame_head
= fra
.me
.prev
;
9587 val_t
syntax___mmbuilder___AParam___variable(val_t p0
){
9588 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
9591 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9592 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9594 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AParam___variable
;
9595 fra
.me
.has_broke
= 0;
9596 fra
.me
.REG_size
= 2;
9597 fra
.me
.REG
[0] = NIT_NULL
;
9598 fra
.me
.REG
[1] = NIT_NULL
;
9600 /* ./syntax//mmbuilder.nit:1292 */
9601 fra
.me
.REG
[1] = fra
.me
.REG
[0];
9602 fra
.me
.REG
[1] = ATTR_syntax___mmbuilder___AParam____variable(fra
.me
.REG
[1]);
9603 REGB0
= TAG_Bool(fra
.me
.REG
[1]!=NIT_NULL
);
9604 if (UNTAG_Bool(REGB0
)) {
9606 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 1292);
9610 stack_frame_head
= fra
.me
.prev
;
9611 return fra
.me
.REG
[1];
9613 val_t
syntax___mmbuilder___AParam___stype(val_t p0
){
9614 struct {struct stack_frame_t me
;} fra
;
9616 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9617 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9619 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AParam___stype
;
9620 fra
.me
.has_broke
= 0;
9621 fra
.me
.REG_size
= 1;
9622 fra
.me
.REG
[0] = NIT_NULL
;
9624 /* ./syntax//mmbuilder.nit:1295 */
9625 fra
.me
.REG
[0] = ATTR_syntax___mmbuilder___AParam____stype(fra
.me
.REG
[0]);
9626 stack_frame_head
= fra
.me
.prev
;
9627 return fra
.me
.REG
[0];
9629 void syntax___mmbuilder___AParam___stype__eq(val_t p0
, val_t p1
){
9630 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
9632 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9633 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9635 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AParam___stype__eq
;
9636 fra
.me
.has_broke
= 0;
9637 fra
.me
.REG_size
= 2;
9638 fra
.me
.REG
[0] = NIT_NULL
;
9639 fra
.me
.REG
[1] = NIT_NULL
;
9642 /* ./syntax//mmbuilder.nit:1295 */
9643 ATTR_syntax___mmbuilder___AParam____stype(fra
.me
.REG
[0]) = fra
.me
.REG
[1];
9644 stack_frame_head
= fra
.me
.prev
;
9647 void syntax___mmbuilder___AParam___accept_property_verifier(val_t p0
, val_t p1
){
9648 struct {struct stack_frame_t me
; val_t MORE_REG
[6];} fra
;
9654 static val_t once_value_2
; /* Once value */
9655 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9656 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9658 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AParam___accept_property_verifier
;
9659 fra
.me
.has_broke
= 0;
9660 fra
.me
.REG_size
= 7;
9661 fra
.me
.REG
[0] = NIT_NULL
;
9662 fra
.me
.REG
[1] = NIT_NULL
;
9663 fra
.me
.REG
[2] = NIT_NULL
;
9664 fra
.me
.REG
[3] = NIT_NULL
;
9665 fra
.me
.REG
[4] = NIT_NULL
;
9666 fra
.me
.REG
[5] = NIT_NULL
;
9667 fra
.me
.REG
[6] = NIT_NULL
;
9670 /* ./syntax//mmbuilder.nit:1298 */
9671 fra
.me
.REG
[2] = fra
.me
.REG
[0];
9672 fra
.me
.REG
[3] = fra
.me
.REG
[1];
9673 /* ./syntax//mmbuilder.nit:1300 */
9674 CALL_SUPER_syntax___mmbuilder___AParam___accept_property_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
9675 /* ./syntax//mmbuilder.nit:1301 */
9676 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9677 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___SignatureBuilder___params(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9678 /* ./../lib/standard//collection//array.nit:23 */
9679 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
9680 if (UNTAG_Bool(REGB0
)) {
9682 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
9684 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
9685 /* ./syntax//mmbuilder.nit:1301 */
9686 ATTR_syntax___mmbuilder___AParam____position(fra
.me
.REG
[2]) = REGB0
;
9687 /* ./syntax//mmbuilder.nit:1302 */
9688 fra
.me
.REG
[1] = CALL_parser___parser_nodes___AParam___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9689 fra
.me
.REG
[1] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9690 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AParam___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9691 fra
.me
.REG
[0] = NEW_ParamVariable_syntax___syntax_base___ParamVariable___init(fra
.me
.REG
[1], fra
.me
.REG
[0]);
9692 ATTR_syntax___mmbuilder___AParam____variable(fra
.me
.REG
[2]) = fra
.me
.REG
[0];
9693 /* ./syntax//mmbuilder.nit:1303 */
9694 fra
.me
.REG
[0] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9695 fra
.me
.REG
[0] = CALL_syntax___mmbuilder___SignatureBuilder___params(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
9696 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
9697 /* ./syntax//mmbuilder.nit:1304 */
9698 fra
.me
.REG
[0] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9699 fra
.me
.REG
[0] = CALL_syntax___mmbuilder___SignatureBuilder___untyped_params(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
9700 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[2]);
9701 /* ./syntax//mmbuilder.nit:1305 */
9702 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AParam___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9703 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9704 if (UNTAG_Bool(REGB0
)) {
9706 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9707 if (UNTAG_Bool(REGB1
)) {
9708 REGB1
= TAG_Bool(false);
9711 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
9715 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
9716 if (UNTAG_Bool(REGB0
)) {
9717 /* ./syntax//mmbuilder.nit:1306 */
9718 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AParam___n_type(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9719 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9720 if (UNTAG_Bool(REGB0
)) {
9721 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1306);
9723 fra
.me
.REG
[0] = CALL_syntax___syntax_base___AType___get_stype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[3]);
9724 /* ./syntax//mmbuilder.nit:1307 */
9725 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9726 if (UNTAG_Bool(REGB0
)) {
9728 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9729 if (UNTAG_Bool(REGB1
)) {
9730 REGB1
= TAG_Bool(false);
9733 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
9737 if (UNTAG_Bool(REGB0
)) {
9738 /* ./syntax//mmbuilder.nit:1308 */
9739 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9740 REGB0
= TAG_Bool(true);
9741 CALL_syntax___mmbuilder___SignatureBuilder___has_error_occured__eq(fra
.me
.REG
[1])(fra
.me
.REG
[1], REGB0
);
9742 /* ./syntax//mmbuilder.nit:1309 */
9745 /* ./syntax//mmbuilder.nit:1311 */
9746 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9747 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___SignatureBuilder___untyped_params(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9748 /* ./../lib/standard//collection//array.nit:232 */
9750 /* ./../lib/standard//collection//array.nit:233 */
9751 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
9752 if (UNTAG_Bool(REGB1
)) {
9754 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
9756 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
9757 /* ./../lib/standard//collection//array.nit:234 */
9758 fra
.me
.REG
[4] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[1]);
9759 /* ./../lib/standard//collection//array.nit:235 */
9761 /* ./../lib/standard//collection//array.nit:23 */
9762 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1])!=NIT_NULL
);
9763 if (UNTAG_Bool(REGB1
)) {
9765 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
9767 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[1]);
9768 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
9769 if (UNTAG_Bool(REGB2
)) {
9771 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
9773 /* ./../lib/standard//kernel.nit:215 */
9774 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
9775 /* ./../lib/standard//collection//array.nit:235 */
9776 if (UNTAG_Bool(REGB1
)) {
9777 /* ./../lib/standard//collection//array.nit:236 */
9778 REGB1
= TAG_Bool(fra
.me
.REG
[4]==NIT_NULL
);
9779 if (UNTAG_Bool(REGB1
)) {
9780 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
9782 /* ./../lib/standard//collection//array.nit:652 */
9783 fra
.me
.REG
[5] = ((Nit_NativeArray
)fra
.me
.REG
[4])->val
[UNTAG_Int(REGB0
)];
9784 /* ./syntax//mmbuilder.nit:1312 */
9785 CALL_syntax___mmbuilder___AParam___stype__eq(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[0]);
9786 /* ./syntax//mmbuilder.nit:1313 */
9787 REGB1
= CALL_syntax___mmbuilder___AParam___is_vararg(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
9788 if (UNTAG_Bool(REGB1
)) {
9789 /* ./syntax//mmbuilder.nit:1314 */
9790 fra
.me
.REG
[6] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9791 REGB1
= CALL_syntax___mmbuilder___SignatureBuilder___vararg_rank(fra
.me
.REG
[6])(fra
.me
.REG
[6]);
9793 /* ./../lib/standard//kernel.nit:219 */
9794 REGB2
= TAG_Int(-UNTAG_Int(REGB2
));
9795 /* ./syntax//mmbuilder.nit:1314 */
9796 REGB3
= TAG_Bool(IS_EQUAL_OO(REGB1
,REGB2
));
9797 if (UNTAG_Bool(REGB3
)) {
9799 /* ./../lib/standard//kernel.nit:210 */
9800 REGB2
= TAG_Bool((REGB1
)==(REGB2
));
9801 /* ./syntax//mmbuilder.nit:1314 */
9804 if (UNTAG_Bool(REGB3
)) {
9805 /* ./syntax//mmbuilder.nit:1315 */
9806 fra
.me
.REG
[6] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9807 REGB3
= CALL_syntax___syntax_base___AParam___position(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
9808 CALL_syntax___mmbuilder___SignatureBuilder___vararg_rank__eq(fra
.me
.REG
[6])(fra
.me
.REG
[6], REGB3
);
9810 /* ./syntax//mmbuilder.nit:1317 */
9811 if (!once_value_2
) {
9812 fra
.me
.REG
[6] = BOX_NativeString("Error: A vararg parameter is already defined.");
9813 REGB3
= TAG_Int(45);
9814 fra
.me
.REG
[6] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[6], REGB3
);
9815 once_value_2
= fra
.me
.REG
[6];
9816 register_static_object(&once_value_2
);
9817 } else fra
.me
.REG
[6] = once_value_2
;
9818 fra
.me
.REG
[6] = fra
.me
.REG
[6];
9819 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[6]);
9821 /* ./syntax//mmbuilder.nit:1319 */
9822 fra
.me
.REG
[6] = CALL_syntax___syntax_base___AbsSyntaxVisitor___type_array(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[0]);
9823 fra
.me
.REG
[0] = fra
.me
.REG
[6];
9825 /* ./syntax//mmbuilder.nit:1321 */
9826 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AParam___variable(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
9827 CALL_syntax___syntax_base___Variable___stype__eq(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[0]);
9828 /* ./../lib/standard//collection//array.nit:237 */
9830 /* ./../lib/standard//kernel.nit:218 */
9831 REGB3
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB3
));
9832 /* ./../lib/standard//collection//array.nit:237 */
9835 /* ./../lib/standard//collection//array.nit:235 */
9840 /* ./syntax//mmbuilder.nit:1323 */
9841 fra
.me
.REG
[3] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9842 fra
.me
.REG
[3] = CALL_syntax___mmbuilder___SignatureBuilder___untyped_params(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9843 CALL_standard___collection___abstract_collection___RemovableCollection___clear(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9846 stack_frame_head
= fra
.me
.prev
;
9849 val_t
syntax___mmbuilder___AParam___is_vararg(val_t p0
){
9850 struct {struct stack_frame_t me
;} fra
;
9854 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9855 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9857 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AParam___is_vararg
;
9858 fra
.me
.has_broke
= 0;
9859 fra
.me
.REG_size
= 1;
9860 fra
.me
.REG
[0] = NIT_NULL
;
9862 /* ./syntax//mmbuilder.nit:1327 */
9863 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AParam___n_dotdotdot(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
9864 REGB0
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9865 if (UNTAG_Bool(REGB0
)) {
9867 REGB1
= TAG_Bool(fra
.me
.REG
[0]==NIT_NULL
);
9868 if (UNTAG_Bool(REGB1
)) {
9869 REGB1
= TAG_Bool(false);
9872 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[0])(fra
.me
.REG
[0], NIT_NULL
);
9876 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
9879 stack_frame_head
= fra
.me
.prev
;
9882 val_t
syntax___mmbuilder___AClosureDecl___position(val_t p0
){
9883 struct {struct stack_frame_t me
;} fra
;
9886 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9887 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9889 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClosureDecl___position
;
9890 fra
.me
.has_broke
= 0;
9891 fra
.me
.REG_size
= 1;
9892 fra
.me
.REG
[0] = NIT_NULL
;
9894 /* ./syntax//mmbuilder.nit:1331 */
9895 REGB0
= TAG_Bool(ATTR_syntax___mmbuilder___AClosureDecl____position(fra
.me
.REG
[0])!=NIT_NULL
);
9896 if (UNTAG_Bool(REGB0
)) {
9898 nit_abort("Uninitialized attribute %s", "_position", LOCATE_syntax___mmbuilder
, 1331);
9900 REGB0
= ATTR_syntax___mmbuilder___AClosureDecl____position(fra
.me
.REG
[0]);
9901 stack_frame_head
= fra
.me
.prev
;
9904 val_t
syntax___mmbuilder___AClosureDecl___variable(val_t p0
){
9905 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
9908 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9909 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9911 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClosureDecl___variable
;
9912 fra
.me
.has_broke
= 0;
9913 fra
.me
.REG_size
= 2;
9914 fra
.me
.REG
[0] = NIT_NULL
;
9915 fra
.me
.REG
[1] = NIT_NULL
;
9917 /* ./syntax//mmbuilder.nit:1333 */
9918 fra
.me
.REG
[1] = fra
.me
.REG
[0];
9919 fra
.me
.REG
[1] = ATTR_syntax___mmbuilder___AClosureDecl____variable(fra
.me
.REG
[1]);
9920 REGB0
= TAG_Bool(fra
.me
.REG
[1]!=NIT_NULL
);
9921 if (UNTAG_Bool(REGB0
)) {
9923 nit_abort("Cast failed", NULL
, LOCATE_syntax___mmbuilder
, 1333);
9927 stack_frame_head
= fra
.me
.prev
;
9928 return fra
.me
.REG
[1];
9930 void syntax___mmbuilder___AClosureDecl___accept_property_verifier(val_t p0
, val_t p1
){
9931 struct {struct stack_frame_t me
; val_t MORE_REG
[10];} fra
;
9936 static val_t once_value_2
; /* Once value */
9937 static val_t once_value_3
; /* Once value */
9938 static val_t once_value_4
; /* Once value */
9939 static val_t once_value_5
; /* Once value */
9940 static val_t once_value_6
; /* Once value */
9941 static val_t once_value_7
; /* Once value */
9942 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
9943 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
9945 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AClosureDecl___accept_property_verifier
;
9946 fra
.me
.has_broke
= 0;
9947 fra
.me
.REG_size
= 11;
9948 fra
.me
.REG
[0] = NIT_NULL
;
9949 fra
.me
.REG
[1] = NIT_NULL
;
9950 fra
.me
.REG
[2] = NIT_NULL
;
9951 fra
.me
.REG
[3] = NIT_NULL
;
9952 fra
.me
.REG
[4] = NIT_NULL
;
9953 fra
.me
.REG
[5] = NIT_NULL
;
9954 fra
.me
.REG
[6] = NIT_NULL
;
9955 fra
.me
.REG
[7] = NIT_NULL
;
9956 fra
.me
.REG
[8] = NIT_NULL
;
9957 fra
.me
.REG
[9] = NIT_NULL
;
9958 fra
.me
.REG
[10] = NIT_NULL
;
9961 /* ./syntax//mmbuilder.nit:1336 */
9962 fra
.me
.REG
[2] = fra
.me
.REG
[0];
9963 fra
.me
.REG
[3] = fra
.me
.REG
[1];
9964 /* ./syntax//mmbuilder.nit:1338 */
9965 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9966 /* ./syntax//mmbuilder.nit:1339 */
9967 fra
.me
.REG
[5] = NEW_SignatureBuilder_syntax___mmbuilder___SignatureBuilder___init();
9968 CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[5]);
9969 /* ./syntax//mmbuilder.nit:1340 */
9970 CALL_SUPER_syntax___mmbuilder___AClosureDecl___accept_property_verifier(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
9971 /* ./syntax//mmbuilder.nit:1341 */
9972 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9973 REGB0
= CALL_syntax___mmbuilder___SignatureBuilder___has_error_occured(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9974 if (UNTAG_Bool(REGB0
)) {
9975 /* ./syntax//mmbuilder.nit:1342 */
9978 /* ./syntax//mmbuilder.nit:1344 */
9979 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9980 fra
.me
.REG
[1] = CALL_syntax___mmbuilder___SignatureBuilder___signature(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
9981 /* ./syntax//mmbuilder.nit:1345 */
9982 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
9983 if (UNTAG_Bool(REGB0
)) {
9985 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
9986 if (UNTAG_Bool(REGB1
)) {
9987 REGB1
= TAG_Bool(false);
9990 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[1])(fra
.me
.REG
[1], NIT_NULL
);
9994 if (UNTAG_Bool(REGB0
)) {
9995 /* ./syntax//mmbuilder.nit:1346 */
9996 fra
.me
.REG
[0] = NEW_Array_standard___collection___array___Array___init();
9997 fra
.me
.REG
[5] = CALL_syntax___syntax_base___AbsSyntaxVisitor___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
9998 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMLocalClass___get_type(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
9999 fra
.me
.REG
[5] = NEW_MMSignature_metamodel___static_type___MMSignature___init(fra
.me
.REG
[0], NIT_NULL
, fra
.me
.REG
[5]);
10000 fra
.me
.REG
[1] = fra
.me
.REG
[5];
10002 /* ./syntax//mmbuilder.nit:1348 */
10003 REGB0
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
10004 if (UNTAG_Bool(REGB0
)) {
10005 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1348);
10007 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMSignature___return_type(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
10008 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
10009 if (UNTAG_Bool(REGB0
)) {
10011 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
10012 if (UNTAG_Bool(REGB1
)) {
10013 REGB1
= TAG_Bool(false);
10016 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
10020 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
10021 if (UNTAG_Bool(REGB0
)) {
10022 fra
.me
.REG
[5] = CALL_parser___parser_nodes___AClosureDecl___n_kwbreak(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
10023 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
10024 if (UNTAG_Bool(REGB0
)) {
10026 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
10027 if (UNTAG_Bool(REGB1
)) {
10028 REGB1
= TAG_Bool(false);
10031 REGB1
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
10035 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
10037 REGB1
= TAG_Bool(false);
10040 if (UNTAG_Bool(REGB0
)) {
10041 /* ./syntax//mmbuilder.nit:1349 */
10042 if (!once_value_2
) {
10043 fra
.me
.REG
[5] = BOX_NativeString("Syntax Error: A break block cannot have a return value.");
10044 REGB0
= TAG_Int(55);
10045 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
10046 once_value_2
= fra
.me
.REG
[5];
10047 register_static_object(&once_value_2
);
10048 } else fra
.me
.REG
[5] = once_value_2
;
10049 fra
.me
.REG
[5] = fra
.me
.REG
[5];
10050 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[2], fra
.me
.REG
[5]);
10052 /* ./syntax//mmbuilder.nit:1353 */
10053 fra
.me
.REG
[5] = NEW_Array_standard___collection___array___Array___init();
10054 fra
.me
.REG
[0] = CALL_syntax___syntax_base___AbsSyntaxVisitor___mmmodule(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
10055 fra
.me
.REG
[0] = CALL_metamodel___inheritance___MMModule___type_any(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
10056 fra
.me
.REG
[0] = NEW_MMSignature_metamodel___static_type___MMSignature___init(fra
.me
.REG
[5], NIT_NULL
, fra
.me
.REG
[0]);
10057 /* ./syntax//mmbuilder.nit:1354 */
10058 if (!once_value_3
) {
10059 if (!once_value_4
) {
10060 fra
.me
.REG
[5] = BOX_NativeString("break");
10061 REGB0
= TAG_Int(5);
10062 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
10063 once_value_4
= fra
.me
.REG
[5];
10064 register_static_object(&once_value_4
);
10065 } else fra
.me
.REG
[5] = once_value_4
;
10066 fra
.me
.REG
[5] = fra
.me
.REG
[5];
10067 fra
.me
.REG
[5] = CALL_standard___symbol___String___to_symbol(fra
.me
.REG
[5])(fra
.me
.REG
[5]);
10068 once_value_3
= fra
.me
.REG
[5];
10069 register_static_object(&once_value_3
);
10070 } else fra
.me
.REG
[5] = once_value_3
;
10071 fra
.me
.REG
[5] = fra
.me
.REG
[5];
10072 REGB0
= TAG_Bool(false);
10073 REGB1
= TAG_Bool(true);
10074 fra
.me
.REG
[0] = NEW_MMClosure_metamodel___static_type___MMClosure___init(fra
.me
.REG
[5], fra
.me
.REG
[0], REGB0
, REGB1
);
10075 /* ./syntax//mmbuilder.nit:1355 */
10076 REGB1
= TAG_Bool(fra
.me
.REG
[1]==NIT_NULL
);
10077 if (UNTAG_Bool(REGB1
)) {
10078 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1355);
10080 fra
.me
.REG
[5] = CALL_metamodel___static_type___MMSignature___closures(fra
.me
.REG
[1])(fra
.me
.REG
[1]);
10081 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[5])(fra
.me
.REG
[5], fra
.me
.REG
[0]);
10082 /* ./syntax//mmbuilder.nit:1357 */
10083 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AClosureDecl___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
10084 fra
.me
.REG
[0] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
10085 /* ./syntax//mmbuilder.nit:1358 */
10086 fra
.me
.REG
[5] = CALL_parser___parser_nodes___AClosureDecl___n_kwbreak(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
10087 REGB1
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
10088 if (UNTAG_Bool(REGB1
)) {
10090 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
10091 if (UNTAG_Bool(REGB0
)) {
10092 REGB0
= TAG_Bool(false);
10095 REGB0
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
10099 REGB1
= TAG_Bool(!UNTAG_Bool(REGB1
));
10100 fra
.me
.REG
[5] = CALL_parser___parser_nodes___AClosureDecl___n_expr(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
10101 REGB0
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
10102 if (UNTAG_Bool(REGB0
)) {
10104 REGB2
= TAG_Bool(fra
.me
.REG
[5]==NIT_NULL
);
10105 if (UNTAG_Bool(REGB2
)) {
10106 REGB2
= TAG_Bool(false);
10109 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[5])(fra
.me
.REG
[5], NIT_NULL
);
10113 REGB0
= TAG_Bool(!UNTAG_Bool(REGB0
));
10114 fra
.me
.REG
[1] = NEW_MMClosure_metamodel___static_type___MMClosure___init(fra
.me
.REG
[0], fra
.me
.REG
[1], REGB1
, REGB0
);
10115 /* ./syntax//mmbuilder.nit:1359 */
10116 fra
.me
.REG
[5] = CALL_syntax___mmbuilder___SignatureBuilder___closure_decls(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
10117 /* ./../lib/standard//collection//array.nit:232 */
10118 REGB0
= TAG_Int(0);
10119 /* ./../lib/standard//collection//array.nit:233 */
10120 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
10121 if (UNTAG_Bool(REGB1
)) {
10123 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 233);
10125 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
10126 /* ./../lib/standard//collection//array.nit:234 */
10127 fra
.me
.REG
[6] = ATTR_standard___collection___array___Array____items(fra
.me
.REG
[5]);
10128 /* ./../lib/standard//collection//array.nit:235 */
10130 /* ./../lib/standard//collection//array.nit:23 */
10131 REGB1
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5])!=NIT_NULL
);
10132 if (UNTAG_Bool(REGB1
)) {
10134 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
10136 REGB1
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[5]);
10137 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
10138 if (UNTAG_Bool(REGB2
)) {
10140 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
10142 /* ./../lib/standard//kernel.nit:215 */
10143 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)<UNTAG_Int(REGB1
));
10144 /* ./../lib/standard//collection//array.nit:235 */
10145 if (UNTAG_Bool(REGB1
)) {
10146 /* ./../lib/standard//collection//array.nit:236 */
10147 REGB1
= TAG_Bool(fra
.me
.REG
[6]==NIT_NULL
);
10148 if (UNTAG_Bool(REGB1
)) {
10149 nit_abort("Reciever is null", NULL
, LOCATE_standard___collection___array
, 236);
10151 /* ./../lib/standard//collection//array.nit:652 */
10152 fra
.me
.REG
[7] = ((Nit_NativeArray
)fra
.me
.REG
[6])->val
[UNTAG_Int(REGB0
)];
10153 /* ./syntax//mmbuilder.nit:1360 */
10154 fra
.me
.REG
[8] = CALL_parser___parser_nodes___AClosureDecl___n_id(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
10155 fra
.me
.REG
[8] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[8])(fra
.me
.REG
[8]);
10156 REGB1
= TAG_Bool(IS_EQUAL_OO(fra
.me
.REG
[8],fra
.me
.REG
[0]));
10157 if (UNTAG_Bool(REGB1
)) {
10159 REGB2
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[8])(fra
.me
.REG
[8], fra
.me
.REG
[0]);
10162 if (UNTAG_Bool(REGB1
)) {
10163 /* ./syntax//mmbuilder.nit:1361 */
10164 fra
.me
.REG
[8] = CALL_parser___parser_nodes___AClosureDecl___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
10165 REGB1
= TAG_Int(5);
10166 fra
.me
.REG
[9] = NEW_Array_standard___collection___array___Array___with_capacity(REGB1
);
10167 if (!once_value_5
) {
10168 fra
.me
.REG
[10] = BOX_NativeString("A closure '!");
10169 REGB1
= TAG_Int(12);
10170 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB1
);
10171 once_value_5
= fra
.me
.REG
[10];
10172 register_static_object(&once_value_5
);
10173 } else fra
.me
.REG
[10] = once_value_5
;
10174 fra
.me
.REG
[10] = fra
.me
.REG
[10];
10175 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
10176 fra
.me
.REG
[10] = CALL_standard___string___Object___to_s(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
10177 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
10178 if (!once_value_6
) {
10179 fra
.me
.REG
[10] = BOX_NativeString("' already defined at ");
10180 REGB1
= TAG_Int(21);
10181 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB1
);
10182 once_value_6
= fra
.me
.REG
[10];
10183 register_static_object(&once_value_6
);
10184 } else fra
.me
.REG
[10] = once_value_6
;
10185 fra
.me
.REG
[10] = fra
.me
.REG
[10];
10186 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
10187 fra
.me
.REG
[7] = CALL_parser___parser_nodes___AClosureDecl___n_id(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
10188 fra
.me
.REG
[7] = CALL_parser___parser_nodes___ANode___location(fra
.me
.REG
[7])(fra
.me
.REG
[7]);
10189 fra
.me
.REG
[10] = CALL_parser___parser_nodes___AClosureDecl___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
10190 fra
.me
.REG
[10] = CALL_parser___parser_nodes___ANode___location(fra
.me
.REG
[10])(fra
.me
.REG
[10]);
10191 fra
.me
.REG
[10] = CALL_location___Location___relative_to(fra
.me
.REG
[7])(fra
.me
.REG
[7], fra
.me
.REG
[10]);
10192 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
10193 if (!once_value_7
) {
10194 fra
.me
.REG
[10] = BOX_NativeString(".");
10195 REGB1
= TAG_Int(1);
10196 fra
.me
.REG
[10] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[10], REGB1
);
10197 once_value_7
= fra
.me
.REG
[10];
10198 register_static_object(&once_value_7
);
10199 } else fra
.me
.REG
[10] = once_value_7
;
10200 fra
.me
.REG
[10] = fra
.me
.REG
[10];
10201 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[9])(fra
.me
.REG
[9], fra
.me
.REG
[10]);
10202 fra
.me
.REG
[9] = CALL_standard___string___Object___to_s(fra
.me
.REG
[9])(fra
.me
.REG
[9]);
10203 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[8], fra
.me
.REG
[9]);
10204 /* ./syntax//mmbuilder.nit:1362 */
10207 /* ./../lib/standard//collection//array.nit:237 */
10208 REGB1
= TAG_Int(1);
10209 /* ./../lib/standard//kernel.nit:218 */
10210 REGB1
= TAG_Int(UNTAG_Int(REGB0
)+UNTAG_Int(REGB1
));
10211 /* ./../lib/standard//collection//array.nit:237 */
10214 /* ./../lib/standard//collection//array.nit:235 */
10219 /* ./syntax//mmbuilder.nit:1365 */
10220 CALL_syntax___mmbuilder___PropertyVerifierVisitor___signature_builder__eq(fra
.me
.REG
[3])(fra
.me
.REG
[3], fra
.me
.REG
[4]);
10221 /* ./syntax//mmbuilder.nit:1366 */
10222 fra
.me
.REG
[3] = CALL_syntax___mmbuilder___SignatureBuilder___closure_decls(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
10223 /* ./../lib/standard//collection//array.nit:23 */
10224 REGB0
= TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3])!=NIT_NULL
);
10225 if (UNTAG_Bool(REGB0
)) {
10227 nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array
, 23);
10229 REGB0
= ATTR_standard___collection___array___AbstractArrayRead____length(fra
.me
.REG
[3]);
10230 /* ./syntax//mmbuilder.nit:1366 */
10231 ATTR_syntax___mmbuilder___AClosureDecl____position(fra
.me
.REG
[2]) = REGB0
;
10232 /* ./syntax//mmbuilder.nit:1367 */
10233 fra
.me
.REG
[4] = CALL_syntax___mmbuilder___SignatureBuilder___closure_decls(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
10234 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[2]);
10235 /* ./syntax//mmbuilder.nit:1368 */
10236 fra
.me
.REG
[4] = CALL_parser___parser_nodes___AClosureDecl___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
10237 fra
.me
.REG
[4] = CALL_syntax___syntax_base___Token___to_symbol(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
10238 fra
.me
.REG
[3] = CALL_parser___parser_nodes___AClosureDecl___n_id(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
10239 fra
.me
.REG
[1] = NEW_ClosureVariable_syntax___syntax_base___ClosureVariable___init(fra
.me
.REG
[4], fra
.me
.REG
[3], fra
.me
.REG
[1]);
10240 ATTR_syntax___mmbuilder___AClosureDecl____variable(fra
.me
.REG
[2]) = fra
.me
.REG
[1];
10242 stack_frame_head
= fra
.me
.prev
;
10245 void syntax___mmbuilder___AType___check_visibility(val_t p0
, val_t p1
, val_t p2
){
10246 struct {struct stack_frame_t me
; val_t MORE_REG
[5];} fra
;
10251 static val_t once_value_2
; /* Once value */
10252 static val_t once_value_3
; /* Once value */
10253 static val_t once_value_4
; /* Once value */
10254 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
10255 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
10256 fra
.me
.line
= 1373;
10257 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AType___check_visibility
;
10258 fra
.me
.has_broke
= 0;
10259 fra
.me
.REG_size
= 6;
10260 fra
.me
.REG
[0] = NIT_NULL
;
10261 fra
.me
.REG
[1] = NIT_NULL
;
10262 fra
.me
.REG
[2] = NIT_NULL
;
10263 fra
.me
.REG
[3] = NIT_NULL
;
10264 fra
.me
.REG
[4] = NIT_NULL
;
10265 fra
.me
.REG
[5] = NIT_NULL
;
10266 fra
.me
.REG
[0] = p0
;
10267 fra
.me
.REG
[1] = p1
;
10268 fra
.me
.REG
[2] = p2
;
10269 /* ./syntax//mmbuilder.nit:1376 */
10270 fra
.me
.REG
[3] = CALL_metamodel___abstractmetamodel___MMLocalProperty___global(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
10271 REGB0
= CALL_metamodel___abstractmetamodel___MMGlobalProperty___visibility_level(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
10272 REGB1
= TAG_Int(3);
10273 REGB2
= TAG_Bool(VAL_ISA(REGB1
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0
), VTID_standard___kernel___Comparable___OTHER(REGB0
))) /*cast OTHER*/;
10274 if (UNTAG_Bool(REGB2
)) {
10276 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
10278 /* ./../lib/standard//kernel.nit:216 */
10279 REGB1
= TAG_Bool(UNTAG_Int(REGB0
)>=UNTAG_Int(REGB1
));
10280 /* ./syntax//mmbuilder.nit:1376 */
10281 if (UNTAG_Bool(REGB1
)) {
10284 /* ./syntax//mmbuilder.nit:1377 */
10285 fra
.me
.REG
[3] = CALL_syntax___syntax_base___AType___get_stype(fra
.me
.REG
[0])(fra
.me
.REG
[0], fra
.me
.REG
[1]);
10286 /* ./syntax//mmbuilder.nit:1378 */
10287 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
10288 if (UNTAG_Bool(REGB1
)) {
10290 REGB0
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
10291 if (UNTAG_Bool(REGB0
)) {
10292 REGB0
= TAG_Bool(false);
10295 REGB0
= CALL_standard___kernel___Object_____eqeq(fra
.me
.REG
[3])(fra
.me
.REG
[3], NIT_NULL
);
10299 if (UNTAG_Bool(REGB1
)) {
10302 /* ./syntax//mmbuilder.nit:1379 */
10303 REGB1
= TAG_Bool(fra
.me
.REG
[3]==NIT_NULL
);
10304 if (UNTAG_Bool(REGB1
)) {
10305 nit_abort("Reciever is null", NULL
, LOCATE_syntax___mmbuilder
, 1379);
10307 fra
.me
.REG
[3] = CALL_metamodel___static_type___MMType___local_class(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
10308 /* ./syntax//mmbuilder.nit:1380 */
10309 fra
.me
.REG
[4] = CALL_metamodel___abstractmetamodel___MMLocalClass___global(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
10310 REGB1
= CALL_metamodel___abstractmetamodel___MMGlobalClass___visibility_level(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
10311 REGB0
= TAG_Int(3);
10312 REGB2
= TAG_Bool(VAL_ISA(REGB0
, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1
), VTID_standard___kernel___Comparable___OTHER(REGB1
))) /*cast OTHER*/;
10313 if (UNTAG_Bool(REGB2
)) {
10315 nit_abort("Cast failed", NULL
, LOCATE_standard___kernel
, 0);
10317 /* ./../lib/standard//kernel.nit:216 */
10318 REGB0
= TAG_Bool(UNTAG_Int(REGB1
)>=UNTAG_Int(REGB0
));
10319 /* ./syntax//mmbuilder.nit:1380 */
10320 if (UNTAG_Bool(REGB0
)) {
10321 /* ./syntax//mmbuilder.nit:1381 */
10322 REGB0
= TAG_Int(5);
10323 fra
.me
.REG
[4] = NEW_Array_standard___collection___array___Array___with_capacity(REGB0
);
10324 if (!once_value_2
) {
10325 fra
.me
.REG
[5] = BOX_NativeString("Access error: Class ");
10326 REGB0
= TAG_Int(20);
10327 fra
.me
.REG
[5] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[5], REGB0
);
10328 once_value_2
= fra
.me
.REG
[5];
10329 register_static_object(&once_value_2
);
10330 } else fra
.me
.REG
[5] = once_value_2
;
10331 fra
.me
.REG
[5] = fra
.me
.REG
[5];
10332 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[5]);
10333 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[3])(fra
.me
.REG
[3]);
10334 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
10335 if (!once_value_3
) {
10336 fra
.me
.REG
[3] = BOX_NativeString(" is private and cannot be used in the signature of the non-private property ");
10337 REGB0
= TAG_Int(76);
10338 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
10339 once_value_3
= fra
.me
.REG
[3];
10340 register_static_object(&once_value_3
);
10341 } else fra
.me
.REG
[3] = once_value_3
;
10342 fra
.me
.REG
[3] = fra
.me
.REG
[3];
10343 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
10344 fra
.me
.REG
[3] = CALL_standard___string___Object___to_s(fra
.me
.REG
[2])(fra
.me
.REG
[2]);
10345 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
10346 if (!once_value_4
) {
10347 fra
.me
.REG
[3] = BOX_NativeString(".");
10348 REGB0
= TAG_Int(1);
10349 fra
.me
.REG
[3] = NEW_String_standard___string___String___with_native(fra
.me
.REG
[3], REGB0
);
10350 once_value_4
= fra
.me
.REG
[3];
10351 register_static_object(&once_value_4
);
10352 } else fra
.me
.REG
[3] = once_value_4
;
10353 fra
.me
.REG
[3] = fra
.me
.REG
[3];
10354 CALL_standard___collection___abstract_collection___SimpleCollection___add(fra
.me
.REG
[4])(fra
.me
.REG
[4], fra
.me
.REG
[3]);
10355 fra
.me
.REG
[4] = CALL_standard___string___Object___to_s(fra
.me
.REG
[4])(fra
.me
.REG
[4]);
10356 CALL_syntax___syntax_base___AbsSyntaxVisitor___error(fra
.me
.REG
[1])(fra
.me
.REG
[1], fra
.me
.REG
[0], fra
.me
.REG
[4]);
10358 /* ./syntax//mmbuilder.nit:1383 */
10359 fra
.me
.REG
[0] = CALL_parser___parser_nodes___AType___n_types(fra
.me
.REG
[0])(fra
.me
.REG
[0]);
10360 CALL_standard___collection___abstract_collection___Collection___iterate(fra
.me
.REG
[0])(fra
.me
.REG
[0], (&(fra
.me
)), ((fun_t
)OC_syntax___mmbuilder___AType___check_visibility_5
));
10362 stack_frame_head
= fra
.me
.prev
;
10365 void OC_syntax___mmbuilder___AType___check_visibility_5(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
){
10366 struct {struct stack_frame_t me
;} fra
;
10369 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
10370 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
10372 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AType___check_visibility
;
10373 fra
.me
.has_broke
= 0;
10374 fra
.me
.REG_size
= 1;
10375 fra
.me
.REG
[0] = NIT_NULL
;
10376 fra
.me
.closure_ctx
= closctx_param
;
10377 fra
.me
.closure_funs
= CREG
;
10378 fra
.me
.REG
[0] = p0
;
10379 CREG
[0] = clos_fun0
;
10380 /* ./syntax//mmbuilder.nit:1384 */
10381 CALL_syntax___mmbuilder___AType___check_visibility(fra
.me
.REG
[0])(fra
.me
.REG
[0], closctx
->REG
[1], closctx
->REG
[2]);
10382 stack_frame_head
= fra
.me
.prev
;
10385 void syntax___mmbuilder___AExpr___accept_class_builder(val_t p0
, val_t p1
){
10386 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
10388 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
10389 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
10390 fra
.me
.line
= 1390;
10391 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AExpr___accept_class_builder
;
10392 fra
.me
.has_broke
= 0;
10393 fra
.me
.REG_size
= 2;
10394 fra
.me
.REG
[0] = NIT_NULL
;
10395 fra
.me
.REG
[1] = NIT_NULL
;
10396 fra
.me
.REG
[0] = p0
;
10397 fra
.me
.REG
[1] = p1
;
10398 stack_frame_head
= fra
.me
.prev
;
10401 void syntax___mmbuilder___AExpr___accept_property_builder(val_t p0
, val_t p1
){
10402 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
10404 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
10405 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
10406 fra
.me
.line
= 1391;
10407 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AExpr___accept_property_builder
;
10408 fra
.me
.has_broke
= 0;
10409 fra
.me
.REG_size
= 2;
10410 fra
.me
.REG
[0] = NIT_NULL
;
10411 fra
.me
.REG
[1] = NIT_NULL
;
10412 fra
.me
.REG
[0] = p0
;
10413 fra
.me
.REG
[1] = p1
;
10414 stack_frame_head
= fra
.me
.prev
;
10417 void syntax___mmbuilder___AExpr___accept_property_verifier(val_t p0
, val_t p1
){
10418 struct {struct stack_frame_t me
; val_t MORE_REG
[1];} fra
;
10420 fra
.me
.prev
= stack_frame_head
; stack_frame_head
= &fra
.me
;
10421 fra
.me
.file
= LOCATE_syntax___mmbuilder
;
10422 fra
.me
.line
= 1392;
10423 fra
.me
.meth
= LOCATE_syntax___mmbuilder___AExpr___accept_property_verifier
;
10424 fra
.me
.has_broke
= 0;
10425 fra
.me
.REG_size
= 2;
10426 fra
.me
.REG
[0] = NIT_NULL
;
10427 fra
.me
.REG
[1] = NIT_NULL
;
10428 fra
.me
.REG
[0] = p0
;
10429 fra
.me
.REG
[1] = p1
;
10430 stack_frame_head
= fra
.me
.prev
;