1 /* This C file is generated by NIT to compile module syntax_base. */
2 #include "syntax_base._sep.h"
3 val_t
syntax_base___MMSrcModule___node(val_t self
) {
4 struct trace_t trace
= {NULL
, NULL
, 26, LOCATE_syntax_base___MMSrcModule___node
};
5 val_t
*variable
= NULL
;
6 void **closurevariable
= NULL
;
7 trace
.prev
= tracehead
; tracehead
= &trace
;
8 trace
.file
= LOCATE_syntax_base
;
9 tracehead
= trace
.prev
;
10 return ATTR_syntax_base___MMSrcModule____node( self
) /*MMSrcModule::_node*/;
12 val_t
syntax_base___MMSrcModule___src_local_classes(val_t self
) {
13 struct trace_t trace
= {NULL
, NULL
, 29, LOCATE_syntax_base___MMSrcModule___src_local_classes
};
14 val_t
*variable
= NULL
;
15 void **closurevariable
= NULL
;
16 trace
.prev
= tracehead
; tracehead
= &trace
;
17 trace
.file
= LOCATE_syntax_base
;
18 tracehead
= trace
.prev
;
19 return ATTR_syntax_base___MMSrcModule____src_local_classes( self
) /*MMSrcModule::_src_local_classes*/;
21 void syntax_base___MMSrcModule___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, val_t param3
, int* init_table
) {
22 struct trace_t trace
= {NULL
, NULL
, 32, LOCATE_syntax_base___MMSrcModule___init
};
24 void **closurevariable
= NULL
;
25 trace
.prev
= tracehead
; tracehead
= &trace
;
26 trace
.file
= LOCATE_syntax_base
;
32 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMSrcModule
].i
]) return;
33 CALL_abstractmetamodel___MMModule___init(variable
[0])(variable
[0], variable
[4] /*name*/, variable
[3] /*dir*/, variable
[1] /*c*/, init_table
/*YYY*/) /*MMModule::init*/;
34 variable
[6] = variable
[0];
35 ATTR_syntax_base___MMSrcModule____node(variable
[6]) /*MMSrcModule::_node*/ = variable
[2] /*source*/;
36 variable
[6] = variable
[0];
37 variable
[7] = NEW_HashMap_hash___HashMap___init(); /*new HashMap[Symbol, MMSrcLocalClass]*/
38 ATTR_syntax_base___MMSrcModule____src_local_classes(variable
[6]) /*MMSrcModule::_src_local_classes*/ = variable
[7];
39 return_label0
: while(false);
40 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMSrcModule
].i
] = 1;
41 tracehead
= trace
.prev
;
44 val_t
syntax_base___MMGlobalClass___check_visibility(val_t self
, val_t param0
, val_t param1
, val_t param2
) {
45 struct trace_t trace
= {NULL
, NULL
, 41, LOCATE_syntax_base___MMGlobalClass___check_visibility
};
47 void **closurevariable
= NULL
;
48 trace
.prev
= tracehead
; tracehead
= &trace
;
49 trace
.file
= LOCATE_syntax_base
;
54 variable
[6] = variable
[0];
55 variable
[6] = CALL_abstractmetamodel___MMGlobalClass___intro(variable
[6])(variable
[6]) /*MMGlobalClass::intro*/;
56 variable
[6] = CALL_abstractmetamodel___MMLocalClass___module(variable
[6])(variable
[6]) /*MMLocalClass::module*/;
57 variable
[5] = variable
[6];
58 variable
[6] = TAG_Bool(( variable
[5] /*pm*/==NIT_NULL
) || VAL_ISA( variable
[5] /*pm*/, COLOR_MMSrcModule
, ID_MMSrcModule
)) /*cast MMSrcModule*/;
59 if (!UNTAG_Bool(variable
[6])) { fprintf(stderr
, "Assert%s failed", ""); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_syntax_base___MMGlobalClass___check_visibility
, LOCATE_syntax_base
, 44); nit_exit(1);}
60 variable
[7] = CALL_abstractmetamodel___MMModule___visibility_for( variable
[3] /*cm*/)( variable
[3] /*cm*/, variable
[5] /*pm*/) /*MMModule::visibility_for*/;
61 variable
[6] = variable
[7];
62 variable
[7] = TAG_Bool(( variable
[6] /*vpm*/)==( TAG_Int(3)));
63 if (UNTAG_Bool(variable
[7])) { /*if*/
64 variable
[4] = TAG_Bool(true);
67 variable
[7] = TAG_Bool(( variable
[6] /*vpm*/)==( TAG_Int(0)));
68 if (UNTAG_Bool(variable
[7])) { /*if*/
69 variable
[7] = NEW_Array_array___Array___with_capacity(TAG_Int(5)); /*new Array[String]*/
70 variable
[8] = NEW_String_string___String___with_native(BOX_NativeString("Visibility error: Class "), TAG_Int(24)); /*new String*/
71 variable
[9] = variable
[8];
72 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[9]) /*AbstractArray::add*/;
73 variable
[10] = variable
[0];
74 variable
[11] = variable
[10];
75 variable
[11] = CALL_string___Object___to_s(variable
[11])(variable
[11]) /*Object::to_s*/;
76 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[11]) /*AbstractArray::add*/;
77 variable
[12] = NEW_String_string___String___with_native(BOX_NativeString(" comes from the hidden module "), TAG_Int(30)); /*new String*/
78 variable
[13] = variable
[12];
79 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[13]) /*AbstractArray::add*/;
80 variable
[14] = variable
[3] /*cm*/;
81 variable
[14] = CALL_string___Object___to_s(variable
[14])(variable
[14]) /*Object::to_s*/;
82 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[14]) /*AbstractArray::add*/;
83 variable
[15] = NEW_String_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
84 variable
[16] = variable
[15];
85 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[16]) /*AbstractArray::add*/;
86 variable
[7] = CALL_string___Object___to_s(variable
[7])(variable
[7]) /*Object::to_s*/;
87 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[2] /*n*/, variable
[7]) /*AbsSyntaxVisitor::error*/;
88 variable
[4] = TAG_Bool(false);
91 variable
[7] = variable
[0];
92 variable
[7] = CALL_abstractmetamodel___MMGlobalClass___visibility_level(variable
[7])(variable
[7]) /*MMGlobalClass::visibility_level*/;
93 variable
[7] = TAG_Bool(UNTAG_Int(variable
[7])>=UNTAG_Int( TAG_Int(3)));
94 if (UNTAG_Bool(variable
[7])) { /*if*/
95 variable
[7] = NEW_Array_array___Array___with_capacity(TAG_Int(3)); /*new Array[String]*/
96 variable
[8] = NEW_String_string___String___with_native(BOX_NativeString("Visibility error: Class "), TAG_Int(24)); /*new String*/
97 variable
[9] = variable
[8];
98 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[9]) /*AbstractArray::add*/;
99 variable
[10] = variable
[0];
100 variable
[11] = variable
[10];
101 variable
[11] = CALL_string___Object___to_s(variable
[11])(variable
[11]) /*Object::to_s*/;
102 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[11]) /*AbstractArray::add*/;
103 variable
[12] = NEW_String_string___String___with_native(BOX_NativeString(" is private."), TAG_Int(12)); /*new String*/
104 variable
[13] = variable
[12];
105 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[13]) /*AbstractArray::add*/;
106 variable
[7] = CALL_string___Object___to_s(variable
[7])(variable
[7]) /*Object::to_s*/;
107 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[2] /*n*/, variable
[7]) /*AbsSyntaxVisitor::error*/;
108 variable
[4] = TAG_Bool(false);
113 variable
[4] = TAG_Bool(true);
115 return_label1
: while(false);
116 tracehead
= trace
.prev
;
119 val_t
syntax_base___MMSrcLocalClass___nodes(val_t self
) {
120 struct trace_t trace
= {NULL
, NULL
, 62, LOCATE_syntax_base___MMSrcLocalClass___nodes
};
121 val_t
*variable
= NULL
;
122 void **closurevariable
= NULL
;
123 trace
.prev
= tracehead
; tracehead
= &trace
;
124 trace
.file
= LOCATE_syntax_base
;
125 tracehead
= trace
.prev
;
126 return ATTR_syntax_base___MMSrcLocalClass____nodes( self
) /*MMSrcLocalClass::_nodes*/;
128 val_t
syntax_base___MMSrcLocalClass___formal_dict(val_t self
) {
129 struct trace_t trace
= {NULL
, NULL
, 65, LOCATE_syntax_base___MMSrcLocalClass___formal_dict
};
130 val_t
*variable
= NULL
;
131 void **closurevariable
= NULL
;
132 trace
.prev
= tracehead
; tracehead
= &trace
;
133 trace
.file
= LOCATE_syntax_base
;
134 tracehead
= trace
.prev
;
135 return ATTR_syntax_base___MMSrcLocalClass____formal_dict( self
) /*MMSrcLocalClass::_formal_dict*/;
137 void syntax_base___MMSrcLocalClass___formal_dict__eq(val_t self
, val_t param0
) {
138 struct trace_t trace
= {NULL
, NULL
, 65, LOCATE_syntax_base___MMSrcLocalClass___formal_dict__eq
};
139 val_t
*variable
= NULL
;
140 void **closurevariable
= NULL
;
141 trace
.prev
= tracehead
; tracehead
= &trace
;
142 trace
.file
= LOCATE_syntax_base
;
143 ATTR_syntax_base___MMSrcLocalClass____formal_dict( self
) /*MMSrcLocalClass::_formal_dict*/ = param0
;
144 tracehead
= trace
.prev
;
147 val_t
syntax_base___MMSrcLocalClass___src_local_properties(val_t self
) {
148 struct trace_t trace
= {NULL
, NULL
, 68, LOCATE_syntax_base___MMSrcLocalClass___src_local_properties
};
149 val_t
*variable
= NULL
;
150 void **closurevariable
= NULL
;
151 trace
.prev
= tracehead
; tracehead
= &trace
;
152 trace
.file
= LOCATE_syntax_base
;
153 tracehead
= trace
.prev
;
154 return ATTR_syntax_base___MMSrcLocalClass____src_local_properties( self
) /*MMSrcLocalClass::_src_local_properties*/;
156 void syntax_base___MMSrcLocalClass___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
157 struct trace_t trace
= {NULL
, NULL
, 71, LOCATE_syntax_base___MMSrcLocalClass___init
};
159 void **closurevariable
= NULL
;
160 trace
.prev
= tracehead
; tracehead
= &trace
;
161 trace
.file
= LOCATE_syntax_base
;
163 variable
[1] = param0
;
164 variable
[2] = param1
;
165 variable
[3] = param2
;
166 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMSrcLocalClass
].i
]) return;
167 CALL_abstractmetamodel___MMLocalClass___init(variable
[0])(variable
[0], variable
[1] /*n*/, variable
[3] /*a*/, init_table
/*YYY*/) /*MMLocalClass::init*/;
168 variable
[5] = variable
[0];
169 variable
[6] = NEW_Array_array___Array___with_capacity(TAG_Int(1)); /*new Array[PClassdef]*/
170 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[2] /*cla*/) /*AbstractArray::add*/;
171 ATTR_syntax_base___MMSrcLocalClass____nodes(variable
[5]) /*MMSrcLocalClass::_nodes*/ = variable
[6];
172 variable
[5] = variable
[0];
173 variable
[6] = NEW_HashMap_hash___HashMap___init(); /*new HashMap[Symbol, MMLocalProperty]*/
174 ATTR_syntax_base___MMSrcLocalClass____src_local_properties(variable
[5]) /*MMSrcLocalClass::_src_local_properties*/ = variable
[6];
175 return_label2
: while(false);
176 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMSrcLocalClass
].i
] = 1;
177 tracehead
= trace
.prev
;
180 val_t
syntax_base___MMGlobalProperty___check_visibility(val_t self
, val_t param0
, val_t param1
, val_t param2
, val_t param3
) {
181 struct trace_t trace
= {NULL
, NULL
, 80, LOCATE_syntax_base___MMGlobalProperty___check_visibility
};
183 void **closurevariable
= NULL
;
184 trace
.prev
= tracehead
; tracehead
= &trace
;
185 trace
.file
= LOCATE_syntax_base
;
187 variable
[1] = param0
;
188 variable
[2] = param1
;
189 variable
[3] = param2
;
190 variable
[4] = param3
;
191 variable
[7] = variable
[0];
192 variable
[7] = CALL_abstractmetamodel___MMGlobalProperty___local_class(variable
[7])(variable
[7]) /*MMGlobalProperty::local_class*/;
193 variable
[7] = CALL_abstractmetamodel___MMLocalClass___module(variable
[7])(variable
[7]) /*MMLocalClass::module*/;
194 variable
[6] = variable
[7];
195 variable
[7] = TAG_Bool(( variable
[6] /*pm*/==NIT_NULL
) || VAL_ISA( variable
[6] /*pm*/, COLOR_MMSrcModule
, ID_MMSrcModule
)) /*cast MMSrcModule*/;
196 if (!UNTAG_Bool(variable
[7])) { fprintf(stderr
, "Assert%s failed", ""); fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_syntax_base___MMGlobalProperty___check_visibility
, LOCATE_syntax_base
, 83); nit_exit(1);}
197 variable
[8] = CALL_abstractmetamodel___MMModule___visibility_for( variable
[3] /*cm*/)( variable
[3] /*cm*/, variable
[6] /*pm*/) /*MMModule::visibility_for*/;
198 variable
[7] = variable
[8];
199 variable
[8] = TAG_Bool(( variable
[7] /*vpm*/)==( TAG_Int(3)));
200 if (UNTAG_Bool(variable
[8])) { /*if*/
201 variable
[5] = TAG_Bool(true);
204 variable
[8] = TAG_Bool(( variable
[7] /*vpm*/)==( TAG_Int(0)));
205 if (UNTAG_Bool(variable
[8])) { /*if*/
206 variable
[8] = NEW_Array_array___Array___with_capacity(TAG_Int(5)); /*new Array[String]*/
207 variable
[9] = NEW_String_string___String___with_native(BOX_NativeString("Visibility error: Property "), TAG_Int(27)); /*new String*/
208 variable
[10] = variable
[9];
209 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[10]) /*AbstractArray::add*/;
210 variable
[11] = variable
[0];
211 variable
[12] = variable
[11];
212 variable
[12] = CALL_string___Object___to_s(variable
[12])(variable
[12]) /*Object::to_s*/;
213 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[12]) /*AbstractArray::add*/;
214 variable
[13] = NEW_String_string___String___with_native(BOX_NativeString(" comes from the hidden module "), TAG_Int(30)); /*new String*/
215 variable
[14] = variable
[13];
216 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[14]) /*AbstractArray::add*/;
217 variable
[15] = variable
[3] /*cm*/;
218 variable
[15] = CALL_string___Object___to_s(variable
[15])(variable
[15]) /*Object::to_s*/;
219 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[15]) /*AbstractArray::add*/;
220 variable
[16] = NEW_String_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
221 variable
[17] = variable
[16];
222 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[17]) /*AbstractArray::add*/;
223 variable
[8] = CALL_string___Object___to_s(variable
[8])(variable
[8]) /*Object::to_s*/;
224 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[2] /*n*/, variable
[8]) /*AbsSyntaxVisitor::error*/;
225 variable
[5] = TAG_Bool(false);
228 variable
[8] = variable
[0];
229 variable
[8] = CALL_abstractmetamodel___MMGlobalProperty___visibility_level(variable
[8])(variable
[8]) /*MMGlobalProperty::visibility_level*/;
230 variable
[8] = TAG_Bool(UNTAG_Int(variable
[8])>=UNTAG_Int( TAG_Int(3)));
231 if (UNTAG_Bool(variable
[8])) { /*if*/
232 variable
[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)); /*new Array[String]*/
233 variable
[9] = NEW_String_string___String___with_native(BOX_NativeString("Visibility error: Property "), TAG_Int(27)); /*new String*/
234 variable
[10] = variable
[9];
235 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[10]) /*AbstractArray::add*/;
236 variable
[11] = variable
[0];
237 variable
[12] = variable
[11];
238 variable
[12] = CALL_string___Object___to_s(variable
[12])(variable
[12]) /*Object::to_s*/;
239 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[12]) /*AbstractArray::add*/;
240 variable
[13] = NEW_String_string___String___with_native(BOX_NativeString(" is private."), TAG_Int(12)); /*new String*/
241 variable
[14] = variable
[13];
242 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[14]) /*AbstractArray::add*/;
243 variable
[8] = CALL_string___Object___to_s(variable
[8])(variable
[8]) /*Object::to_s*/;
244 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[2] /*n*/, variable
[8]) /*AbsSyntaxVisitor::error*/;
245 variable
[5] = TAG_Bool(false);
248 variable
[8] = variable
[0];
249 variable
[8] = CALL_abstractmetamodel___MMGlobalProperty___visibility_level(variable
[8])(variable
[8]) /*MMGlobalProperty::visibility_level*/;
250 variable
[8] = TAG_Bool(UNTAG_Int(variable
[8])>=UNTAG_Int( TAG_Int(2)));
251 variable
[9] = variable
[8];
252 if (UNTAG_Bool(variable
[9])) { /* and */
253 variable
[9] = TAG_Bool(!UNTAG_Bool( variable
[4] /*allows_protected*/));
255 variable
[8] = variable
[9];
256 if (UNTAG_Bool(variable
[8])) { /*if*/
257 variable
[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)); /*new Array[String]*/
258 variable
[9] = NEW_String_string___String___with_native(BOX_NativeString("Visibility error: Property "), TAG_Int(27)); /*new String*/
259 variable
[10] = variable
[9];
260 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[10]) /*AbstractArray::add*/;
261 variable
[11] = variable
[0];
262 variable
[12] = variable
[11];
263 variable
[12] = CALL_string___Object___to_s(variable
[12])(variable
[12]) /*Object::to_s*/;
264 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[12]) /*AbstractArray::add*/;
265 variable
[13] = NEW_String_string___String___with_native(BOX_NativeString(" is protected and can only acceded by self."), TAG_Int(43)); /*new String*/
266 variable
[14] = variable
[13];
267 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[14]) /*AbstractArray::add*/;
268 variable
[8] = CALL_string___Object___to_s(variable
[8])(variable
[8]) /*Object::to_s*/;
269 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[2] /*n*/, variable
[8]) /*AbsSyntaxVisitor::error*/;
270 variable
[5] = TAG_Bool(false);
276 variable
[5] = TAG_Bool(true);
278 return_label3
: while(false);
279 tracehead
= trace
.prev
;
282 val_t
syntax_base___MMLocalProperty___node(val_t self
) {
283 struct trace_t trace
= {NULL
, NULL
, 103, LOCATE_syntax_base___MMLocalProperty___node
};
285 void **closurevariable
= NULL
;
286 trace
.prev
= tracehead
; tracehead
= &trace
;
287 trace
.file
= LOCATE_syntax_base
;
289 variable
[1] = NIT_NULL
/*null*/;
291 return_label4
: while(false);
292 tracehead
= trace
.prev
;
295 val_t
syntax_base___MMLocalProperty___is_init(val_t self
) {
296 struct trace_t trace
= {NULL
, NULL
, 106, LOCATE_syntax_base___MMLocalProperty___is_init
};
298 void **closurevariable
= NULL
;
299 trace
.prev
= tracehead
; tracehead
= &trace
;
300 trace
.file
= LOCATE_syntax_base
;
302 variable
[1] = TAG_Bool(false);
304 return_label5
: while(false);
305 tracehead
= trace
.prev
;
308 val_t
syntax_base___MMSrcAttribute___node(val_t self
) {
309 struct trace_t trace
= {NULL
, NULL
, 113, LOCATE_syntax_base___MMSrcAttribute___node
};
310 val_t
*variable
= NULL
;
311 void **closurevariable
= NULL
;
312 trace
.prev
= tracehead
; tracehead
= &trace
;
313 trace
.file
= LOCATE_syntax_base
;
314 tracehead
= trace
.prev
;
315 return ATTR_syntax_base___MMSrcAttribute____node( self
) /*MMSrcAttribute::_node*/;
317 void syntax_base___MMSrcAttribute___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
318 struct trace_t trace
= {NULL
, NULL
, 114, LOCATE_syntax_base___MMSrcAttribute___init
};
320 void **closurevariable
= NULL
;
321 trace
.prev
= tracehead
; tracehead
= &trace
;
322 trace
.file
= LOCATE_syntax_base
;
324 variable
[1] = param0
;
325 variable
[2] = param1
;
326 variable
[3] = param2
;
327 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMSrcAttribute
].i
]) return;
328 CALL_abstractmetamodel___MMLocalProperty___init(variable
[0])(variable
[0], variable
[1] /*name*/, variable
[2] /*cla*/, init_table
/*YYY*/) /*MMLocalProperty::init*/;
329 variable
[5] = variable
[0];
330 ATTR_syntax_base___MMSrcAttribute____node(variable
[5]) /*MMSrcAttribute::_node*/ = variable
[3] /*n*/;
331 return_label6
: while(false);
332 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMSrcAttribute
].i
] = 1;
333 tracehead
= trace
.prev
;
336 val_t
syntax_base___MMAttrImplementationMethod___node(val_t self
) {
337 struct trace_t trace
= {NULL
, NULL
, 129, LOCATE_syntax_base___MMAttrImplementationMethod___node
};
338 val_t
*variable
= NULL
;
339 void **closurevariable
= NULL
;
340 trace
.prev
= tracehead
; tracehead
= &trace
;
341 trace
.file
= LOCATE_syntax_base
;
342 tracehead
= trace
.prev
;
343 return ATTR_syntax_base___MMAttrImplementationMethod____node( self
) /*MMAttrImplementationMethod::_node*/;
345 void syntax_base___MMAttrImplementationMethod___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
346 struct trace_t trace
= {NULL
, NULL
, 130, LOCATE_syntax_base___MMAttrImplementationMethod___init
};
348 void **closurevariable
= NULL
;
349 trace
.prev
= tracehead
; tracehead
= &trace
;
350 trace
.file
= LOCATE_syntax_base
;
352 variable
[1] = param0
;
353 variable
[2] = param1
;
354 variable
[3] = param2
;
355 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMAttrImplementationMethod
].i
]) return;
356 CALL_abstractmetamodel___MMLocalProperty___init(variable
[0])(variable
[0], variable
[1] /*name*/, variable
[2] /*cla*/, init_table
/*YYY*/) /*MMLocalProperty::init*/;
357 variable
[5] = variable
[0];
358 ATTR_syntax_base___MMAttrImplementationMethod____node(variable
[5]) /*MMAttrImplementationMethod::_node*/ = variable
[3] /*n*/;
359 return_label7
: while(false);
360 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMAttrImplementationMethod
].i
] = 1;
361 tracehead
= trace
.prev
;
364 void syntax_base___MMReadImplementationMethod___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
365 struct trace_t trace
= {NULL
, NULL
, 140, LOCATE_syntax_base___MMReadImplementationMethod___init
};
367 void **closurevariable
= NULL
;
368 trace
.prev
= tracehead
; tracehead
= &trace
;
369 trace
.file
= LOCATE_syntax_base
;
371 variable
[1] = param0
;
372 variable
[2] = param1
;
373 variable
[3] = param2
;
374 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMReadImplementationMethod
].i
]) return;
375 CALL_syntax_base___MMAttrImplementationMethod___init(variable
[0])(variable
[0], variable
[1] /*name*/, variable
[2] /*cla*/, variable
[3] /*n*/, init_table
/*YYY*/) /*MMAttrImplementationMethod::init*/;
376 return_label8
: while(false);
377 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMReadImplementationMethod
].i
] = 1;
378 tracehead
= trace
.prev
;
381 void syntax_base___MMWriteImplementationMethod___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
382 struct trace_t trace
= {NULL
, NULL
, 149, LOCATE_syntax_base___MMWriteImplementationMethod___init
};
384 void **closurevariable
= NULL
;
385 trace
.prev
= tracehead
; tracehead
= &trace
;
386 trace
.file
= LOCATE_syntax_base
;
388 variable
[1] = param0
;
389 variable
[2] = param1
;
390 variable
[3] = param2
;
391 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMWriteImplementationMethod
].i
]) return;
392 CALL_syntax_base___MMAttrImplementationMethod___init(variable
[0])(variable
[0], variable
[1] /*name*/, variable
[2] /*cla*/, variable
[3] /*n*/, init_table
/*YYY*/) /*MMAttrImplementationMethod::init*/;
393 return_label9
: while(false);
394 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMWriteImplementationMethod
].i
] = 1;
395 tracehead
= trace
.prev
;
398 val_t
syntax_base___MMMethSrcMethod___node(val_t self
) {
399 struct trace_t trace
= {NULL
, NULL
, 159, LOCATE_syntax_base___MMMethSrcMethod___node
};
400 val_t
*variable
= NULL
;
401 void **closurevariable
= NULL
;
402 trace
.prev
= tracehead
; tracehead
= &trace
;
403 trace
.file
= LOCATE_syntax_base
;
404 tracehead
= trace
.prev
;
405 return ATTR_syntax_base___MMMethSrcMethod____node( self
) /*MMMethSrcMethod::_node*/;
407 val_t
syntax_base___MMMethSrcMethod___is_init(val_t self
) {
408 struct trace_t trace
= {NULL
, NULL
, 158, LOCATE_syntax_base___MMMethSrcMethod___is_init
};
410 void **closurevariable
= NULL
;
411 trace
.prev
= tracehead
; tracehead
= &trace
;
412 trace
.file
= LOCATE_syntax_base
;
414 variable
[2] = variable
[0];
415 variable
[2] = ATTR_syntax_base___MMMethSrcMethod____node(variable
[2]) /*MMMethSrcMethod::_node*/;
416 variable
[2] = TAG_Bool((variable
[2]==NIT_NULL
) || VAL_ISA(variable
[2], COLOR_AConcreteInitPropdef
, ID_AConcreteInitPropdef
)) /*cast AConcreteInitPropdef*/;
417 variable
[1] = variable
[2];
419 return_label10
: while(false);
420 tracehead
= trace
.prev
;
423 void syntax_base___MMMethSrcMethod___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
424 struct trace_t trace
= {NULL
, NULL
, 160, LOCATE_syntax_base___MMMethSrcMethod___init
};
426 void **closurevariable
= NULL
;
427 trace
.prev
= tracehead
; tracehead
= &trace
;
428 trace
.file
= LOCATE_syntax_base
;
430 variable
[1] = param0
;
431 variable
[2] = param1
;
432 variable
[3] = param2
;
433 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMMethSrcMethod
].i
]) return;
434 CALL_abstractmetamodel___MMLocalProperty___init(variable
[0])(variable
[0], variable
[1] /*name*/, variable
[2] /*cla*/, init_table
/*YYY*/) /*MMLocalProperty::init*/;
435 variable
[5] = variable
[0];
436 ATTR_syntax_base___MMMethSrcMethod____node(variable
[5]) /*MMMethSrcMethod::_node*/ = variable
[3] /*n*/;
437 return_label11
: while(false);
438 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMMethSrcMethod
].i
] = 1;
439 tracehead
= trace
.prev
;
442 val_t
syntax_base___MMSrcTypeProperty___node(val_t self
) {
443 struct trace_t trace
= {NULL
, NULL
, 171, LOCATE_syntax_base___MMSrcTypeProperty___node
};
444 val_t
*variable
= NULL
;
445 void **closurevariable
= NULL
;
446 trace
.prev
= tracehead
; tracehead
= &trace
;
447 trace
.file
= LOCATE_syntax_base
;
448 tracehead
= trace
.prev
;
449 return ATTR_syntax_base___MMSrcTypeProperty____node( self
) /*MMSrcTypeProperty::_node*/;
451 void syntax_base___MMSrcTypeProperty___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
452 struct trace_t trace
= {NULL
, NULL
, 172, LOCATE_syntax_base___MMSrcTypeProperty___init
};
454 void **closurevariable
= NULL
;
455 trace
.prev
= tracehead
; tracehead
= &trace
;
456 trace
.file
= LOCATE_syntax_base
;
458 variable
[1] = param0
;
459 variable
[2] = param1
;
460 variable
[3] = param2
;
461 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMSrcTypeProperty
].i
]) return;
462 CALL_abstractmetamodel___MMLocalProperty___init(variable
[0])(variable
[0], variable
[1] /*name*/, variable
[2] /*cla*/, init_table
/*YYY*/) /*MMLocalProperty::init*/;
463 variable
[5] = variable
[0];
464 ATTR_syntax_base___MMSrcTypeProperty____node(variable
[5]) /*MMSrcTypeProperty::_node*/ = variable
[3] /*n*/;
465 return_label12
: while(false);
466 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMSrcTypeProperty
].i
] = 1;
467 tracehead
= trace
.prev
;
470 val_t
syntax_base___MMImplicitInit___is_init(val_t self
) {
471 struct trace_t trace
= {NULL
, NULL
, 182, LOCATE_syntax_base___MMImplicitInit___is_init
};
473 void **closurevariable
= NULL
;
474 trace
.prev
= tracehead
; tracehead
= &trace
;
475 trace
.file
= LOCATE_syntax_base
;
477 variable
[1] = TAG_Bool(true);
479 return_label13
: while(false);
480 tracehead
= trace
.prev
;
483 val_t
syntax_base___MMImplicitInit___unassigned_attributes(val_t self
) {
484 struct trace_t trace
= {NULL
, NULL
, 183, LOCATE_syntax_base___MMImplicitInit___unassigned_attributes
};
485 val_t
*variable
= NULL
;
486 void **closurevariable
= NULL
;
487 trace
.prev
= tracehead
; tracehead
= &trace
;
488 trace
.file
= LOCATE_syntax_base
;
489 tracehead
= trace
.prev
;
490 return ATTR_syntax_base___MMImplicitInit____unassigned_attributes( self
) /*MMImplicitInit::_unassigned_attributes*/;
492 val_t
syntax_base___MMImplicitInit___super_inits(val_t self
) {
493 struct trace_t trace
= {NULL
, NULL
, 184, LOCATE_syntax_base___MMImplicitInit___super_inits
};
494 val_t
*variable
= NULL
;
495 void **closurevariable
= NULL
;
496 trace
.prev
= tracehead
; tracehead
= &trace
;
497 trace
.file
= LOCATE_syntax_base
;
498 tracehead
= trace
.prev
;
499 return ATTR_syntax_base___MMImplicitInit____super_inits( self
) /*MMImplicitInit::_super_inits*/;
501 void syntax_base___MMImplicitInit___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
502 struct trace_t trace
= {NULL
, NULL
, 185, LOCATE_syntax_base___MMImplicitInit___init
};
503 static val_t once_value_15
; static int once_bool_15
; /* Once value for variable[5]*/
505 void **closurevariable
= NULL
;
506 trace
.prev
= tracehead
; tracehead
= &trace
;
507 trace
.file
= LOCATE_syntax_base
;
509 variable
[1] = param0
;
510 variable
[2] = param1
;
511 variable
[3] = param2
;
512 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMImplicitInit
].i
]) return;
513 if (once_bool_15
) variable
[5] = once_value_15
;
515 variable
[5] = NEW_String_string___String___with_native(BOX_NativeString("init"), TAG_Int(4)); /*new String*/
516 variable
[5] = CALL_symbol___String___to_symbol(variable
[5])(variable
[5]) /*String::to_symbol*/;
517 once_value_15
= variable
[5];
520 CALL_syntax_base___MMMethSrcMethod___init(variable
[0])(variable
[0], variable
[5], variable
[1] /*cla*/, NIT_NULL
/*null*/, init_table
/*YYY*/) /*MMMethSrcMethod::init*/;
521 variable
[5] = variable
[0];
522 ATTR_syntax_base___MMImplicitInit____unassigned_attributes(variable
[5]) /*MMImplicitInit::_unassigned_attributes*/ = variable
[2] /*unassigned_attributes*/;
523 variable
[5] = variable
[0];
524 ATTR_syntax_base___MMImplicitInit____super_inits(variable
[5]) /*MMImplicitInit::_super_inits*/ = variable
[3] /*super_inits*/;
525 return_label14
: while(false);
526 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_MMImplicitInit
].i
] = 1;
527 tracehead
= trace
.prev
;
530 val_t
syntax_base___Variable___to_s(val_t self
) {
531 struct trace_t trace
= {NULL
, NULL
, 204, LOCATE_syntax_base___Variable___to_s
};
533 void **closurevariable
= NULL
;
534 trace
.prev
= tracehead
; tracehead
= &trace
;
535 trace
.file
= LOCATE_syntax_base
;
537 variable
[2] = variable
[0];
538 variable
[2] = ATTR_syntax_base___Variable____name(variable
[2]) /*Variable::_name*/;
539 variable
[2] = CALL_string___Object___to_s(variable
[2])(variable
[2]) /*Symbol::to_s*/;
540 variable
[1] = variable
[2];
542 return_label16
: while(false);
543 tracehead
= trace
.prev
;
546 val_t
syntax_base___Variable___name(val_t self
) {
547 struct trace_t trace
= {NULL
, NULL
, 195, LOCATE_syntax_base___Variable___name
};
548 val_t
*variable
= NULL
;
549 void **closurevariable
= NULL
;
550 trace
.prev
= tracehead
; tracehead
= &trace
;
551 trace
.file
= LOCATE_syntax_base
;
552 tracehead
= trace
.prev
;
553 return ATTR_syntax_base___Variable____name( self
) /*Variable::_name*/;
555 val_t
syntax_base___Variable___decl(val_t self
) {
556 struct trace_t trace
= {NULL
, NULL
, 198, LOCATE_syntax_base___Variable___decl
};
557 val_t
*variable
= NULL
;
558 void **closurevariable
= NULL
;
559 trace
.prev
= tracehead
; tracehead
= &trace
;
560 trace
.file
= LOCATE_syntax_base
;
561 tracehead
= trace
.prev
;
562 return ATTR_syntax_base___Variable____decl( self
) /*Variable::_decl*/;
564 val_t
syntax_base___Variable___stype(val_t self
) {
565 struct trace_t trace
= {NULL
, NULL
, 201, LOCATE_syntax_base___Variable___stype
};
566 val_t
*variable
= NULL
;
567 void **closurevariable
= NULL
;
568 trace
.prev
= tracehead
; tracehead
= &trace
;
569 trace
.file
= LOCATE_syntax_base
;
570 tracehead
= trace
.prev
;
571 return ATTR_syntax_base___Variable____stype( self
) /*Variable::_stype*/;
573 void syntax_base___Variable___stype__eq(val_t self
, val_t param0
) {
574 struct trace_t trace
= {NULL
, NULL
, 201, LOCATE_syntax_base___Variable___stype__eq
};
575 val_t
*variable
= NULL
;
576 void **closurevariable
= NULL
;
577 trace
.prev
= tracehead
; tracehead
= &trace
;
578 trace
.file
= LOCATE_syntax_base
;
579 ATTR_syntax_base___Variable____stype( self
) /*Variable::_stype*/ = param0
;
580 tracehead
= trace
.prev
;
583 val_t
syntax_base___Variable___kind(val_t self
) {
584 struct trace_t trace
= {NULL
, NULL
, 206, LOCATE_syntax_base___Variable___kind
};
585 val_t
*variable
= NULL
;
586 void **closurevariable
= NULL
;
587 trace
.prev
= tracehead
; tracehead
= &trace
;
588 trace
.file
= LOCATE_syntax_base
;
589 fprintf(stderr
, "Deferred method called");
590 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 206);
592 tracehead
= trace
.prev
;
595 void syntax_base___Variable___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
596 struct trace_t trace
= {NULL
, NULL
, 208, LOCATE_syntax_base___Variable___init
};
598 void **closurevariable
= NULL
;
599 trace
.prev
= tracehead
; tracehead
= &trace
;
600 trace
.file
= LOCATE_syntax_base
;
602 variable
[1] = param0
;
603 variable
[2] = param1
;
604 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_Variable
].i
]) return;
605 variable
[4] = variable
[0];
606 ATTR_syntax_base___Variable____name(variable
[4]) /*Variable::_name*/ = variable
[1] /*n*/;
607 variable
[4] = variable
[0];
608 ATTR_syntax_base___Variable____decl(variable
[4]) /*Variable::_decl*/ = variable
[2] /*d*/;
609 return_label17
: while(false);
610 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_Variable
].i
] = 1;
611 tracehead
= trace
.prev
;
614 val_t
syntax_base___VarVariable___kind(val_t self
) {
615 struct trace_t trace
= {NULL
, NULL
, 220, LOCATE_syntax_base___VarVariable___kind
};
616 static val_t once_value_19
; static int once_bool_19
; /* Once value for variable[2]*/
618 void **closurevariable
= NULL
;
619 trace
.prev
= tracehead
; tracehead
= &trace
;
620 trace
.file
= LOCATE_syntax_base
;
622 if (once_bool_19
) variable
[2] = once_value_19
;
624 variable
[2] = NEW_String_string___String___with_native(BOX_NativeString("variable"), TAG_Int(8)); /*new String*/
625 once_value_19
= variable
[2];
628 variable
[1] = variable
[2];
630 return_label18
: while(false);
631 tracehead
= trace
.prev
;
634 void syntax_base___VarVariable___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
635 struct trace_t trace
= {NULL
, NULL
, 221, LOCATE_syntax_base___VarVariable___init
};
637 void **closurevariable
= NULL
;
638 trace
.prev
= tracehead
; tracehead
= &trace
;
639 trace
.file
= LOCATE_syntax_base
;
641 variable
[1] = param0
;
642 variable
[2] = param1
;
643 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_VarVariable
].i
]) return;
644 CALL_syntax_base___Variable___init(variable
[0])(variable
[0], variable
[1], variable
[2], init_table
/*YYY*/) /*Variable::init*/;
645 return_label20
: while(false);
646 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_VarVariable
].i
] = 1;
647 tracehead
= trace
.prev
;
650 val_t
syntax_base___ParamVariable___kind(val_t self
) {
651 struct trace_t trace
= {NULL
, NULL
, 227, LOCATE_syntax_base___ParamVariable___kind
};
652 static val_t once_value_22
; static int once_bool_22
; /* Once value for variable[2]*/
654 void **closurevariable
= NULL
;
655 trace
.prev
= tracehead
; tracehead
= &trace
;
656 trace
.file
= LOCATE_syntax_base
;
658 if (once_bool_22
) variable
[2] = once_value_22
;
660 variable
[2] = NEW_String_string___String___with_native(BOX_NativeString("parameter"), TAG_Int(9)); /*new String*/
661 once_value_22
= variable
[2];
664 variable
[1] = variable
[2];
666 return_label21
: while(false);
667 tracehead
= trace
.prev
;
670 void syntax_base___ParamVariable___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
671 struct trace_t trace
= {NULL
, NULL
, 228, LOCATE_syntax_base___ParamVariable___init
};
673 void **closurevariable
= NULL
;
674 trace
.prev
= tracehead
; tracehead
= &trace
;
675 trace
.file
= LOCATE_syntax_base
;
677 variable
[1] = param0
;
678 variable
[2] = param1
;
679 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_ParamVariable
].i
]) return;
680 CALL_syntax_base___Variable___init(variable
[0])(variable
[0], variable
[1], variable
[2], init_table
/*YYY*/) /*Variable::init*/;
681 return_label23
: while(false);
682 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_ParamVariable
].i
] = 1;
683 tracehead
= trace
.prev
;
686 val_t
syntax_base___AutoVariable___kind(val_t self
) {
687 struct trace_t trace
= {NULL
, NULL
, 234, LOCATE_syntax_base___AutoVariable___kind
};
688 static val_t once_value_25
; static int once_bool_25
; /* Once value for variable[2]*/
690 void **closurevariable
= NULL
;
691 trace
.prev
= tracehead
; tracehead
= &trace
;
692 trace
.file
= LOCATE_syntax_base
;
694 if (once_bool_25
) variable
[2] = once_value_25
;
696 variable
[2] = NEW_String_string___String___with_native(BOX_NativeString("automatic variable"), TAG_Int(18)); /*new String*/
697 once_value_25
= variable
[2];
700 variable
[1] = variable
[2];
702 return_label24
: while(false);
703 tracehead
= trace
.prev
;
706 void syntax_base___AutoVariable___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
707 struct trace_t trace
= {NULL
, NULL
, 235, LOCATE_syntax_base___AutoVariable___init
};
709 void **closurevariable
= NULL
;
710 trace
.prev
= tracehead
; tracehead
= &trace
;
711 trace
.file
= LOCATE_syntax_base
;
713 variable
[1] = param0
;
714 variable
[2] = param1
;
715 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_AutoVariable
].i
]) return;
716 CALL_syntax_base___Variable___init(variable
[0])(variable
[0], variable
[1], variable
[2], init_table
/*YYY*/) /*Variable::init*/;
717 return_label26
: while(false);
718 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_AutoVariable
].i
] = 1;
719 tracehead
= trace
.prev
;
722 val_t
syntax_base___ClosureVariable___kind(val_t self
) {
723 struct trace_t trace
= {NULL
, NULL
, 242, LOCATE_syntax_base___ClosureVariable___kind
};
724 static val_t once_value_28
; static int once_bool_28
; /* Once value for variable[2]*/
726 void **closurevariable
= NULL
;
727 trace
.prev
= tracehead
; tracehead
= &trace
;
728 trace
.file
= LOCATE_syntax_base
;
730 if (once_bool_28
) variable
[2] = once_value_28
;
732 variable
[2] = NEW_String_string___String___with_native(BOX_NativeString("closure"), TAG_Int(7)); /*new String*/
733 once_value_28
= variable
[2];
736 variable
[1] = variable
[2];
738 return_label27
: while(false);
739 tracehead
= trace
.prev
;
742 val_t
syntax_base___ClosureVariable___closure(val_t self
) {
743 struct trace_t trace
= {NULL
, NULL
, 244, LOCATE_syntax_base___ClosureVariable___closure
};
744 val_t
*variable
= NULL
;
745 void **closurevariable
= NULL
;
746 trace
.prev
= tracehead
; tracehead
= &trace
;
747 trace
.file
= LOCATE_syntax_base
;
748 tracehead
= trace
.prev
;
749 return ATTR_syntax_base___ClosureVariable____closure( self
) /*ClosureVariable::_closure*/;
751 void syntax_base___ClosureVariable___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
752 struct trace_t trace
= {NULL
, NULL
, 247, LOCATE_syntax_base___ClosureVariable___init
};
754 void **closurevariable
= NULL
;
755 trace
.prev
= tracehead
; tracehead
= &trace
;
756 trace
.file
= LOCATE_syntax_base
;
758 variable
[1] = param0
;
759 variable
[2] = param1
;
760 variable
[3] = param2
;
761 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_ClosureVariable
].i
]) return;
762 CALL_syntax_base___Variable___init(variable
[0])(variable
[0], variable
[1] /*n*/, variable
[2] /*d*/, init_table
/*YYY*/) /*Variable::init*/;
763 variable
[5] = variable
[0];
764 ATTR_syntax_base___ClosureVariable____closure(variable
[5]) /*ClosureVariable::_closure*/ = variable
[3] /*c*/;
765 return_label29
: while(false);
766 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_ClosureVariable
].i
] = 1;
767 tracehead
= trace
.prev
;
770 val_t
syntax_base___AbsSyntaxVisitor___type_object(val_t self
) {
771 struct trace_t trace
= {NULL
, NULL
, 259, LOCATE_syntax_base___AbsSyntaxVisitor___type_object
};
772 static val_t once_value_31
; static int once_bool_31
; /* Once value for variable[3]*/
774 void **closurevariable
= NULL
;
775 trace
.prev
= tracehead
; tracehead
= &trace
;
776 trace
.file
= LOCATE_syntax_base
;
778 variable
[2] = variable
[0];
779 variable
[2] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[2]) /*AbsSyntaxVisitor::_module*/;
780 if (once_bool_31
) variable
[3] = once_value_31
;
782 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("Object"), TAG_Int(6)); /*new String*/
783 variable
[3] = CALL_symbol___String___to_symbol(variable
[3])(variable
[3]) /*String::to_symbol*/;
784 once_value_31
= variable
[3];
787 variable
[2] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[2])(variable
[2], variable
[3]) /*MMModule::class_by_name*/;
788 variable
[2] = CALL_static_type___MMLocalClass___get_type(variable
[2])(variable
[2]) /*MMLocalClass::get_type*/;
789 variable
[1] = variable
[2];
791 return_label30
: while(false);
792 tracehead
= trace
.prev
;
795 val_t
syntax_base___AbsSyntaxVisitor___type_bool(val_t self
) {
796 struct trace_t trace
= {NULL
, NULL
, 265, LOCATE_syntax_base___AbsSyntaxVisitor___type_bool
};
797 static val_t once_value_33
; static int once_bool_33
; /* Once value for variable[3]*/
799 void **closurevariable
= NULL
;
800 trace
.prev
= tracehead
; tracehead
= &trace
;
801 trace
.file
= LOCATE_syntax_base
;
803 variable
[2] = variable
[0];
804 variable
[2] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[2]) /*AbsSyntaxVisitor::_module*/;
805 if (once_bool_33
) variable
[3] = once_value_33
;
807 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("Bool"), TAG_Int(4)); /*new String*/
808 variable
[3] = CALL_symbol___String___to_symbol(variable
[3])(variable
[3]) /*String::to_symbol*/;
809 once_value_33
= variable
[3];
812 variable
[2] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[2])(variable
[2], variable
[3]) /*MMModule::class_by_name*/;
813 variable
[2] = CALL_static_type___MMLocalClass___get_type(variable
[2])(variable
[2]) /*MMLocalClass::get_type*/;
814 variable
[1] = variable
[2];
816 return_label32
: while(false);
817 tracehead
= trace
.prev
;
820 val_t
syntax_base___AbsSyntaxVisitor___type_int(val_t self
) {
821 struct trace_t trace
= {NULL
, NULL
, 271, LOCATE_syntax_base___AbsSyntaxVisitor___type_int
};
822 static val_t once_value_35
; static int once_bool_35
; /* Once value for variable[3]*/
824 void **closurevariable
= NULL
;
825 trace
.prev
= tracehead
; tracehead
= &trace
;
826 trace
.file
= LOCATE_syntax_base
;
828 variable
[2] = variable
[0];
829 variable
[2] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[2]) /*AbsSyntaxVisitor::_module*/;
830 if (once_bool_35
) variable
[3] = once_value_35
;
832 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("Int"), TAG_Int(3)); /*new String*/
833 variable
[3] = CALL_symbol___String___to_symbol(variable
[3])(variable
[3]) /*String::to_symbol*/;
834 once_value_35
= variable
[3];
837 variable
[2] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[2])(variable
[2], variable
[3]) /*MMModule::class_by_name*/;
838 variable
[2] = CALL_static_type___MMLocalClass___get_type(variable
[2])(variable
[2]) /*MMLocalClass::get_type*/;
839 variable
[1] = variable
[2];
841 return_label34
: while(false);
842 tracehead
= trace
.prev
;
845 val_t
syntax_base___AbsSyntaxVisitor___type_float(val_t self
) {
846 struct trace_t trace
= {NULL
, NULL
, 277, LOCATE_syntax_base___AbsSyntaxVisitor___type_float
};
847 static val_t once_value_37
; static int once_bool_37
; /* Once value for variable[3]*/
849 void **closurevariable
= NULL
;
850 trace
.prev
= tracehead
; tracehead
= &trace
;
851 trace
.file
= LOCATE_syntax_base
;
853 variable
[2] = variable
[0];
854 variable
[2] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[2]) /*AbsSyntaxVisitor::_module*/;
855 if (once_bool_37
) variable
[3] = once_value_37
;
857 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("Float"), TAG_Int(5)); /*new String*/
858 variable
[3] = CALL_symbol___String___to_symbol(variable
[3])(variable
[3]) /*String::to_symbol*/;
859 once_value_37
= variable
[3];
862 variable
[2] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[2])(variable
[2], variable
[3]) /*MMModule::class_by_name*/;
863 variable
[2] = CALL_static_type___MMLocalClass___get_type(variable
[2])(variable
[2]) /*MMLocalClass::get_type*/;
864 variable
[1] = variable
[2];
866 return_label36
: while(false);
867 tracehead
= trace
.prev
;
870 val_t
syntax_base___AbsSyntaxVisitor___type_char(val_t self
) {
871 struct trace_t trace
= {NULL
, NULL
, 283, LOCATE_syntax_base___AbsSyntaxVisitor___type_char
};
872 static val_t once_value_39
; static int once_bool_39
; /* Once value for variable[3]*/
874 void **closurevariable
= NULL
;
875 trace
.prev
= tracehead
; tracehead
= &trace
;
876 trace
.file
= LOCATE_syntax_base
;
878 variable
[2] = variable
[0];
879 variable
[2] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[2]) /*AbsSyntaxVisitor::_module*/;
880 if (once_bool_39
) variable
[3] = once_value_39
;
882 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("Char"), TAG_Int(4)); /*new String*/
883 variable
[3] = CALL_symbol___String___to_symbol(variable
[3])(variable
[3]) /*String::to_symbol*/;
884 once_value_39
= variable
[3];
887 variable
[2] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[2])(variable
[2], variable
[3]) /*MMModule::class_by_name*/;
888 variable
[2] = CALL_static_type___MMLocalClass___get_type(variable
[2])(variable
[2]) /*MMLocalClass::get_type*/;
889 variable
[1] = variable
[2];
891 return_label38
: while(false);
892 tracehead
= trace
.prev
;
895 val_t
syntax_base___AbsSyntaxVisitor___type_string(val_t self
) {
896 struct trace_t trace
= {NULL
, NULL
, 289, LOCATE_syntax_base___AbsSyntaxVisitor___type_string
};
897 static val_t once_value_41
; static int once_bool_41
; /* Once value for variable[3]*/
899 void **closurevariable
= NULL
;
900 trace
.prev
= tracehead
; tracehead
= &trace
;
901 trace
.file
= LOCATE_syntax_base
;
903 variable
[2] = variable
[0];
904 variable
[2] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[2]) /*AbsSyntaxVisitor::_module*/;
905 if (once_bool_41
) variable
[3] = once_value_41
;
907 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("String"), TAG_Int(6)); /*new String*/
908 variable
[3] = CALL_symbol___String___to_symbol(variable
[3])(variable
[3]) /*String::to_symbol*/;
909 once_value_41
= variable
[3];
912 variable
[2] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[2])(variable
[2], variable
[3]) /*MMModule::class_by_name*/;
913 variable
[2] = CALL_static_type___MMLocalClass___get_type(variable
[2])(variable
[2]) /*MMLocalClass::get_type*/;
914 variable
[1] = variable
[2];
916 return_label40
: while(false);
917 tracehead
= trace
.prev
;
920 val_t
syntax_base___AbsSyntaxVisitor___type_collection(val_t self
) {
921 struct trace_t trace
= {NULL
, NULL
, 295, LOCATE_syntax_base___AbsSyntaxVisitor___type_collection
};
922 static val_t once_value_43
; static int once_bool_43
; /* Once value for variable[3]*/
924 void **closurevariable
= NULL
;
925 trace
.prev
= tracehead
; tracehead
= &trace
;
926 trace
.file
= LOCATE_syntax_base
;
928 variable
[2] = variable
[0];
929 variable
[2] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[2]) /*AbsSyntaxVisitor::_module*/;
930 if (once_bool_43
) variable
[3] = once_value_43
;
932 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("Collection"), TAG_Int(10)); /*new String*/
933 variable
[3] = CALL_symbol___String___to_symbol(variable
[3])(variable
[3]) /*String::to_symbol*/;
934 once_value_43
= variable
[3];
937 variable
[2] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[2])(variable
[2], variable
[3]) /*MMModule::class_by_name*/;
938 variable
[2] = CALL_static_type___MMLocalClass___get_type(variable
[2])(variable
[2]) /*MMLocalClass::get_type*/;
939 variable
[1] = variable
[2];
941 return_label42
: while(false);
942 tracehead
= trace
.prev
;
945 val_t
syntax_base___AbsSyntaxVisitor___type_array(val_t self
, val_t param0
) {
946 struct trace_t trace
= {NULL
, NULL
, 301, LOCATE_syntax_base___AbsSyntaxVisitor___type_array
};
947 static val_t once_value_45
; static int once_bool_45
; /* Once value for variable[4]*/
949 void **closurevariable
= NULL
;
950 trace
.prev
= tracehead
; tracehead
= &trace
;
951 trace
.file
= LOCATE_syntax_base
;
953 variable
[1] = param0
;
954 variable
[3] = variable
[0];
955 variable
[3] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[3]) /*AbsSyntaxVisitor::_module*/;
956 if (once_bool_45
) variable
[4] = once_value_45
;
958 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString("Array"), TAG_Int(5)); /*new String*/
959 variable
[4] = CALL_symbol___String___to_symbol(variable
[4])(variable
[4]) /*String::to_symbol*/;
960 once_value_45
= variable
[4];
963 variable
[3] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[3])(variable
[3], variable
[4]) /*MMModule::class_by_name*/;
964 variable
[4] = NEW_Array_array___Array___with_capacity(TAG_Int(1)); /*new Array[MMType]*/
965 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[1] /*stype*/) /*AbstractArray::add*/;
966 variable
[3] = CALL_genericity___MMLocalClass___get_instantiate_type(variable
[3])(variable
[3], variable
[4]) /*MMLocalClass::get_instantiate_type*/;
967 variable
[2] = variable
[3];
969 return_label44
: while(false);
970 tracehead
= trace
.prev
;
973 val_t
syntax_base___AbsSyntaxVisitor___type_discrete(val_t self
) {
974 struct trace_t trace
= {NULL
, NULL
, 307, LOCATE_syntax_base___AbsSyntaxVisitor___type_discrete
};
975 static val_t once_value_47
; static int once_bool_47
; /* Once value for variable[3]*/
977 void **closurevariable
= NULL
;
978 trace
.prev
= tracehead
; tracehead
= &trace
;
979 trace
.file
= LOCATE_syntax_base
;
981 variable
[2] = variable
[0];
982 variable
[2] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[2]) /*AbsSyntaxVisitor::_module*/;
983 if (once_bool_47
) variable
[3] = once_value_47
;
985 variable
[3] = NEW_String_string___String___with_native(BOX_NativeString("Discrete"), TAG_Int(8)); /*new String*/
986 variable
[3] = CALL_symbol___String___to_symbol(variable
[3])(variable
[3]) /*String::to_symbol*/;
987 once_value_47
= variable
[3];
990 variable
[2] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[2])(variable
[2], variable
[3]) /*MMModule::class_by_name*/;
991 variable
[2] = CALL_static_type___MMLocalClass___get_type(variable
[2])(variable
[2]) /*MMLocalClass::get_type*/;
992 variable
[1] = variable
[2];
994 return_label46
: while(false);
995 tracehead
= trace
.prev
;
998 val_t
syntax_base___AbsSyntaxVisitor___type_range(val_t self
, val_t param0
) {
999 struct trace_t trace
= {NULL
, NULL
, 313, LOCATE_syntax_base___AbsSyntaxVisitor___type_range
};
1000 static val_t once_value_49
; static int once_bool_49
; /* Once value for variable[4]*/
1002 void **closurevariable
= NULL
;
1003 trace
.prev
= tracehead
; tracehead
= &trace
;
1004 trace
.file
= LOCATE_syntax_base
;
1006 variable
[1] = param0
;
1007 variable
[3] = variable
[0];
1008 variable
[3] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[3]) /*AbsSyntaxVisitor::_module*/;
1009 if (once_bool_49
) variable
[4] = once_value_49
;
1011 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString("Range"), TAG_Int(5)); /*new String*/
1012 variable
[4] = CALL_symbol___String___to_symbol(variable
[4])(variable
[4]) /*String::to_symbol*/;
1013 once_value_49
= variable
[4];
1014 once_bool_49
= true;
1016 variable
[3] = CALL_abstractmetamodel___MMModule___class_by_name(variable
[3])(variable
[3], variable
[4]) /*MMModule::class_by_name*/;
1017 variable
[4] = NEW_Array_array___Array___with_capacity(TAG_Int(1)); /*new Array[MMType]*/
1018 CALL_abstract_collection___SimpleCollection___add(variable
[4])(variable
[4], variable
[1] /*stype*/) /*AbstractArray::add*/;
1019 variable
[3] = CALL_genericity___MMLocalClass___get_instantiate_type(variable
[3])(variable
[3], variable
[4]) /*MMLocalClass::get_instantiate_type*/;
1020 variable
[2] = variable
[3];
1021 goto return_label48
;
1022 return_label48
: while(false);
1023 tracehead
= trace
.prev
;
1026 val_t
syntax_base___AbsSyntaxVisitor___type_none(val_t self
) {
1027 struct trace_t trace
= {NULL
, NULL
, 319, LOCATE_syntax_base___AbsSyntaxVisitor___type_none
};
1029 void **closurevariable
= NULL
;
1030 trace
.prev
= tracehead
; tracehead
= &trace
;
1031 trace
.file
= LOCATE_syntax_base
;
1033 variable
[2] = variable
[0];
1034 variable
[2] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[2]) /*AbsSyntaxVisitor::_module*/;
1035 variable
[2] = CALL_static_type___MMModule___type_none(variable
[2])(variable
[2]) /*MMModule::type_none*/;
1036 variable
[1] = variable
[2];
1037 goto return_label50
;
1038 return_label50
: while(false);
1039 tracehead
= trace
.prev
;
1042 val_t
syntax_base___AbsSyntaxVisitor___module(val_t self
) {
1043 struct trace_t trace
= {NULL
, NULL
, 325, LOCATE_syntax_base___AbsSyntaxVisitor___module
};
1044 val_t
*variable
= NULL
;
1045 void **closurevariable
= NULL
;
1046 trace
.prev
= tracehead
; tracehead
= &trace
;
1047 trace
.file
= LOCATE_syntax_base
;
1048 tracehead
= trace
.prev
;
1049 return ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
1051 void syntax_base___AbsSyntaxVisitor___module__eq(val_t self
, val_t param0
) {
1052 struct trace_t trace
= {NULL
, NULL
, 325, LOCATE_syntax_base___AbsSyntaxVisitor___module__eq
};
1053 val_t
*variable
= NULL
;
1054 void **closurevariable
= NULL
;
1055 trace
.prev
= tracehead
; tracehead
= &trace
;
1056 trace
.file
= LOCATE_syntax_base
;
1057 ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/ = param0
;
1058 tracehead
= trace
.prev
;
1061 val_t
syntax_base___AbsSyntaxVisitor___local_class(val_t self
) {
1062 struct trace_t trace
= {NULL
, NULL
, 328, LOCATE_syntax_base___AbsSyntaxVisitor___local_class
};
1063 val_t
*variable
= NULL
;
1064 void **closurevariable
= NULL
;
1065 trace
.prev
= tracehead
; tracehead
= &trace
;
1066 trace
.file
= LOCATE_syntax_base
;
1067 tracehead
= trace
.prev
;
1068 return ATTR_syntax_base___AbsSyntaxVisitor____local_class( self
) /*AbsSyntaxVisitor::_local_class*/;
1070 void syntax_base___AbsSyntaxVisitor___local_class__eq(val_t self
, val_t param0
) {
1071 struct trace_t trace
= {NULL
, NULL
, 328, LOCATE_syntax_base___AbsSyntaxVisitor___local_class__eq
};
1072 val_t
*variable
= NULL
;
1073 void **closurevariable
= NULL
;
1074 trace
.prev
= tracehead
; tracehead
= &trace
;
1075 trace
.file
= LOCATE_syntax_base
;
1076 ATTR_syntax_base___AbsSyntaxVisitor____local_class( self
) /*AbsSyntaxVisitor::_local_class*/ = param0
;
1077 tracehead
= trace
.prev
;
1080 val_t
syntax_base___AbsSyntaxVisitor___local_property(val_t self
) {
1081 struct trace_t trace
= {NULL
, NULL
, 331, LOCATE_syntax_base___AbsSyntaxVisitor___local_property
};
1082 val_t
*variable
= NULL
;
1083 void **closurevariable
= NULL
;
1084 trace
.prev
= tracehead
; tracehead
= &trace
;
1085 trace
.file
= LOCATE_syntax_base
;
1086 tracehead
= trace
.prev
;
1087 return ATTR_syntax_base___AbsSyntaxVisitor____local_property( self
) /*AbsSyntaxVisitor::_local_property*/;
1089 void syntax_base___AbsSyntaxVisitor___local_property__eq(val_t self
, val_t param0
) {
1090 struct trace_t trace
= {NULL
, NULL
, 331, LOCATE_syntax_base___AbsSyntaxVisitor___local_property__eq
};
1091 val_t
*variable
= NULL
;
1092 void **closurevariable
= NULL
;
1093 trace
.prev
= tracehead
; tracehead
= &trace
;
1094 trace
.file
= LOCATE_syntax_base
;
1095 ATTR_syntax_base___AbsSyntaxVisitor____local_property( self
) /*AbsSyntaxVisitor::_local_property*/ = param0
;
1096 tracehead
= trace
.prev
;
1099 val_t
syntax_base___AbsSyntaxVisitor___tc(val_t self
) {
1100 struct trace_t trace
= {NULL
, NULL
, 334, LOCATE_syntax_base___AbsSyntaxVisitor___tc
};
1101 val_t
*variable
= NULL
;
1102 void **closurevariable
= NULL
;
1103 trace
.prev
= tracehead
; tracehead
= &trace
;
1104 trace
.file
= LOCATE_syntax_base
;
1105 tracehead
= trace
.prev
;
1106 return ATTR_syntax_base___AbsSyntaxVisitor____tc( self
) /*AbsSyntaxVisitor::_tc*/;
1108 void syntax_base___AbsSyntaxVisitor___error(val_t self
, val_t param0
, val_t param1
) {
1109 struct trace_t trace
= {NULL
, NULL
, 337, LOCATE_syntax_base___AbsSyntaxVisitor___error
};
1111 void **closurevariable
= NULL
;
1112 trace
.prev
= tracehead
; tracehead
= &trace
;
1113 trace
.file
= LOCATE_syntax_base
;
1115 variable
[1] = param0
;
1116 variable
[2] = param1
;
1117 variable
[4] = variable
[0];
1118 variable
[4] = ATTR_syntax_base___AbsSyntaxVisitor____tc(variable
[4]) /*AbsSyntaxVisitor::_tc*/;
1119 variable
[5] = NEW_Array_array___Array___with_capacity(TAG_Int(5)); /*new Array[String]*/
1120 variable
[6] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1121 variable
[7] = variable
[6];
1122 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], variable
[7]) /*AbstractArray::add*/;
1123 variable
[8] = variable
[0];
1124 variable
[8] = CALL_syntax_base___AbsSyntaxVisitor___locate(variable
[8])(variable
[8], variable
[1] /*n*/) /*AbsSyntaxVisitor::locate*/;
1125 variable
[9] = variable
[8];
1126 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], variable
[9]) /*AbstractArray::add*/;
1127 variable
[10] = NEW_String_string___String___with_native(BOX_NativeString(": "), TAG_Int(2)); /*new String*/
1128 variable
[11] = variable
[10];
1129 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], variable
[11]) /*AbstractArray::add*/;
1130 variable
[12] = variable
[2] /*s*/;
1131 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], variable
[12]) /*AbstractArray::add*/;
1132 variable
[13] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1133 variable
[14] = variable
[13];
1134 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], variable
[14]) /*AbstractArray::add*/;
1135 variable
[5] = CALL_string___Object___to_s(variable
[5])(variable
[5]) /*Object::to_s*/;
1136 CALL_mmloader___ToolContext___error(variable
[4])(variable
[4], variable
[5]) /*ToolContext::error*/;
1137 return_label51
: while(false);
1138 tracehead
= trace
.prev
;
1141 void syntax_base___AbsSyntaxVisitor___warning(val_t self
, val_t param0
, val_t param1
) {
1142 struct trace_t trace
= {NULL
, NULL
, 343, LOCATE_syntax_base___AbsSyntaxVisitor___warning
};
1144 void **closurevariable
= NULL
;
1145 trace
.prev
= tracehead
; tracehead
= &trace
;
1146 trace
.file
= LOCATE_syntax_base
;
1148 variable
[1] = param0
;
1149 variable
[2] = param1
;
1150 variable
[4] = variable
[0];
1151 variable
[4] = ATTR_syntax_base___AbsSyntaxVisitor____tc(variable
[4]) /*AbsSyntaxVisitor::_tc*/;
1152 variable
[5] = NEW_Array_array___Array___with_capacity(TAG_Int(5)); /*new Array[String]*/
1153 variable
[6] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1154 variable
[7] = variable
[6];
1155 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], variable
[7]) /*AbstractArray::add*/;
1156 variable
[8] = variable
[0];
1157 variable
[8] = CALL_syntax_base___AbsSyntaxVisitor___locate(variable
[8])(variable
[8], variable
[1] /*n*/) /*AbsSyntaxVisitor::locate*/;
1158 variable
[9] = variable
[8];
1159 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], variable
[9]) /*AbstractArray::add*/;
1160 variable
[10] = NEW_String_string___String___with_native(BOX_NativeString(": "), TAG_Int(2)); /*new String*/
1161 variable
[11] = variable
[10];
1162 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], variable
[11]) /*AbstractArray::add*/;
1163 variable
[12] = variable
[2] /*s*/;
1164 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], variable
[12]) /*AbstractArray::add*/;
1165 variable
[13] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1166 variable
[14] = variable
[13];
1167 CALL_abstract_collection___SimpleCollection___add(variable
[5])(variable
[5], variable
[14]) /*AbstractArray::add*/;
1168 variable
[5] = CALL_string___Object___to_s(variable
[5])(variable
[5]) /*Object::to_s*/;
1169 CALL_mmloader___ToolContext___warning(variable
[4])(variable
[4], variable
[5]) /*ToolContext::warning*/;
1170 return_label52
: while(false);
1171 tracehead
= trace
.prev
;
1174 val_t
syntax_base___AbsSyntaxVisitor___locate(val_t self
, val_t param0
) {
1175 struct trace_t trace
= {NULL
, NULL
, 349, LOCATE_syntax_base___AbsSyntaxVisitor___locate
};
1177 void **closurevariable
= NULL
;
1178 trace
.prev
= tracehead
; tracehead
= &trace
;
1179 trace
.file
= LOCATE_syntax_base
;
1181 variable
[1] = param0
;
1182 variable
[3] = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable
[1] /*n*/ == NIT_NULL
/*null*/) || (( variable
[1] /*n*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[1] /*n*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[1] /*n*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[1] /*n*/)( variable
[1] /*n*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
1183 if (UNTAG_Bool(variable
[3])) { /*if*/
1184 variable
[3] = CALL_parser_prod___PNode___locate( variable
[1] /*n*/)( variable
[1] /*n*/) /*PNode::locate*/;
1185 variable
[2] = variable
[3];
1186 goto return_label53
;
1188 variable
[3] = variable
[0];
1189 variable
[3] = ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[3]) /*AbsSyntaxVisitor::_module*/;
1190 variable
[3] = CALL_mmloader___MMModule___filename(variable
[3])(variable
[3]) /*MMModule::filename*/;
1191 variable
[2] = variable
[3];
1192 goto return_label53
;
1193 return_label53
: while(false);
1194 tracehead
= trace
.prev
;
1197 val_t
syntax_base___AbsSyntaxVisitor___check_conform(val_t self
, val_t param0
, val_t param1
, val_t param2
) {
1198 struct trace_t trace
= {NULL
, NULL
, 356, LOCATE_syntax_base___AbsSyntaxVisitor___check_conform
};
1200 void **closurevariable
= NULL
;
1201 trace
.prev
= tracehead
; tracehead
= &trace
;
1202 trace
.file
= LOCATE_syntax_base
;
1204 variable
[1] = param0
;
1205 variable
[2] = param1
;
1206 variable
[3] = param2
;
1207 variable
[5] = TAG_Bool(( variable
[3] /*stype*/ == NIT_NULL
/*null*/) || (( variable
[3] /*stype*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[3] /*stype*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[3] /*stype*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[3] /*stype*/)( variable
[3] /*stype*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1208 variable
[6] = variable
[5];
1209 if (!UNTAG_Bool(variable
[6])) { /* or */
1210 variable
[6] = TAG_Bool(( variable
[2] /*subtype*/ == NIT_NULL
/*null*/) || (( variable
[2] /*subtype*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[2] /*subtype*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[2] /*subtype*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[2] /*subtype*/)( variable
[2] /*subtype*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1212 variable
[5] = variable
[6];
1213 if (UNTAG_Bool(variable
[5])) { /*if*/
1214 variable
[4] = TAG_Bool(false);
1215 goto return_label54
;
1217 variable
[5] = CALL_static_type___MMType_____l( variable
[2] /*subtype*/)( variable
[2] /*subtype*/, variable
[3] /*stype*/) /*MMType::<*/;
1218 if (UNTAG_Bool(variable
[5])) { /*if*/
1219 variable
[4] = TAG_Bool(true);
1220 goto return_label54
;
1222 variable
[5] = variable
[0];
1223 variable
[6] = NEW_Array_array___Array___with_capacity(TAG_Int(5)); /*new Array[String]*/
1224 variable
[7] = NEW_String_string___String___with_native(BOX_NativeString("Type error: expected "), TAG_Int(21)); /*new String*/
1225 variable
[8] = variable
[7];
1226 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[8]) /*AbstractArray::add*/;
1227 variable
[9] = variable
[3] /*stype*/;
1228 variable
[9] = CALL_string___Object___to_s(variable
[9])(variable
[9]) /*Object::to_s*/;
1229 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[9]) /*AbstractArray::add*/;
1230 variable
[10] = NEW_String_string___String___with_native(BOX_NativeString(", got "), TAG_Int(6)); /*new String*/
1231 variable
[11] = variable
[10];
1232 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[11]) /*AbstractArray::add*/;
1233 variable
[12] = variable
[2] /*subtype*/;
1234 variable
[12] = CALL_string___Object___to_s(variable
[12])(variable
[12]) /*Object::to_s*/;
1235 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[12]) /*AbstractArray::add*/;
1236 variable
[13] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
1237 variable
[14] = variable
[13];
1238 CALL_abstract_collection___SimpleCollection___add(variable
[6])(variable
[6], variable
[14]) /*AbstractArray::add*/;
1239 variable
[6] = CALL_string___Object___to_s(variable
[6])(variable
[6]) /*Object::to_s*/;
1240 CALL_syntax_base___AbsSyntaxVisitor___error(variable
[5])(variable
[5], variable
[1] /*n*/, variable
[6]) /*AbsSyntaxVisitor::error*/;
1241 variable
[4] = TAG_Bool(false);
1242 goto return_label54
;
1243 return_label54
: while(false);
1244 tracehead
= trace
.prev
;
1247 val_t
syntax_base___AbsSyntaxVisitor___check_expr(val_t self
, val_t param0
) {
1248 struct trace_t trace
= {NULL
, NULL
, 371, LOCATE_syntax_base___AbsSyntaxVisitor___check_expr
};
1250 void **closurevariable
= NULL
;
1251 trace
.prev
= tracehead
; tracehead
= &trace
;
1252 trace
.file
= LOCATE_syntax_base
;
1254 variable
[1] = param0
;
1255 variable
[3] = variable
[0];
1256 variable
[3] = CALL_syntax_base___AbsSyntaxVisitor___tc(variable
[3])(variable
[3]) /*AbsSyntaxVisitor::tc*/;
1257 variable
[3] = CALL_mmloader___ToolContext___error_count(variable
[3])(variable
[3]) /*ToolContext::error_count*/;
1258 variable
[3] = TAG_Bool((variable
[3])==( TAG_Int(0)));
1259 variable
[4] = variable
[3];
1260 if (UNTAG_Bool(variable
[4])) { /* and */
1261 variable
[4] = CALL_syntax_base___PExpr___stype( variable
[1] /*n*/)( variable
[1] /*n*/) /*PExpr::stype*/;
1262 variable
[4] = TAG_Bool((variable
[4] == NIT_NULL
/*null*/) || ((variable
[4] != NIT_NULL
) && ((CALL_kernel___Object_____eqeq(variable
[4])==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable
[4], NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable
[4])(variable
[4], NIT_NULL
/*null*/) /*Object::==*/)))));
1264 variable
[3] = variable
[4];
1265 if (UNTAG_Bool(variable
[3])) { /*if*/
1266 variable
[3] = variable
[0];
1267 variable
[4] = NEW_String_string___String___with_native(BOX_NativeString("Type error: expected expression."), TAG_Int(32)); /*new String*/
1268 CALL_syntax_base___AbsSyntaxVisitor___error(variable
[3])(variable
[3], variable
[1] /*n*/, variable
[4]) /*AbsSyntaxVisitor::error*/;
1269 variable
[2] = TAG_Bool(false);
1270 goto return_label55
;
1272 variable
[2] = TAG_Bool(true);
1273 goto return_label55
;
1274 return_label55
: while(false);
1275 tracehead
= trace
.prev
;
1278 val_t
syntax_base___AbsSyntaxVisitor___check_conform_expr(val_t self
, val_t param0
, val_t param1
) {
1279 struct trace_t trace
= {NULL
, NULL
, 385, LOCATE_syntax_base___AbsSyntaxVisitor___check_conform_expr
};
1281 void **closurevariable
= NULL
;
1282 trace
.prev
= tracehead
; tracehead
= &trace
;
1283 trace
.file
= LOCATE_syntax_base
;
1285 variable
[1] = param0
;
1286 variable
[2] = param1
;
1287 variable
[4] = variable
[0];
1288 variable
[4] = CALL_syntax_base___AbsSyntaxVisitor___check_expr(variable
[4])(variable
[4], variable
[1] /*n*/) /*AbsSyntaxVisitor::check_expr*/;
1289 if (UNTAG_Bool(variable
[4])) { /*if*/
1290 variable
[4] = variable
[0];
1291 variable
[5] = CALL_syntax_base___PExpr___stype( variable
[1] /*n*/)( variable
[1] /*n*/) /*PExpr::stype*/;
1292 variable
[4] = CALL_syntax_base___AbsSyntaxVisitor___check_conform(variable
[4])(variable
[4], variable
[1] /*n*/, variable
[5], variable
[2] /*stype*/) /*AbsSyntaxVisitor::check_conform*/;
1293 variable
[3] = variable
[4];
1294 goto return_label56
;
1296 variable
[3] = TAG_Bool(false);
1297 goto return_label56
;
1299 return_label56
: while(false);
1300 tracehead
= trace
.prev
;
1303 void syntax_base___AbsSyntaxVisitor___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
1304 struct trace_t trace
= {NULL
, NULL
, 392, LOCATE_syntax_base___AbsSyntaxVisitor___init
};
1306 void **closurevariable
= NULL
;
1307 trace
.prev
= tracehead
; tracehead
= &trace
;
1308 trace
.file
= LOCATE_syntax_base
;
1310 variable
[1] = param0
;
1311 variable
[2] = param1
;
1312 if (init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_AbsSyntaxVisitor
].i
]) return;
1313 variable
[4] = variable
[0];
1314 ATTR_syntax_base___AbsSyntaxVisitor____tc(variable
[4]) /*AbsSyntaxVisitor::_tc*/ = variable
[1] /*tc*/;
1315 variable
[4] = variable
[0];
1316 ATTR_syntax_base___AbsSyntaxVisitor____module(variable
[4]) /*AbsSyntaxVisitor::_module*/ = variable
[2] /*module*/;
1317 return_label57
: while(false);
1318 init_table
[VAL2OBJ(variable
[0])->vft
[INIT_TABLE_POS_AbsSyntaxVisitor
].i
] = 1;
1319 tracehead
= trace
.prev
;
1322 void syntax_base___PNode___accept_abs_syntax_visitor(val_t self
, val_t param0
) {
1323 struct trace_t trace
= {NULL
, NULL
, 402, LOCATE_syntax_base___PNode___accept_abs_syntax_visitor
};
1325 void **closurevariable
= NULL
;
1326 trace
.prev
= tracehead
; tracehead
= &trace
;
1327 trace
.file
= LOCATE_syntax_base
;
1329 variable
[1] = param0
;
1330 variable
[3] = variable
[0];
1331 CALL_parser_prod___PNode___visit_all(variable
[3])(variable
[3], variable
[1] /*v*/) /*PNode::visit_all*/;
1332 return_label58
: while(false);
1333 tracehead
= trace
.prev
;
1336 val_t
syntax_base___Token___to_symbol(val_t self
) {
1337 struct trace_t trace
= {NULL
, NULL
, 408, LOCATE_syntax_base___Token___to_symbol
};
1339 void **closurevariable
= NULL
;
1340 trace
.prev
= tracehead
; tracehead
= &trace
;
1341 trace
.file
= LOCATE_syntax_base
;
1343 variable
[3] = variable
[0];
1344 variable
[3] = ATTR_syntax_base___Token____symbol(variable
[3]) /*Token::_symbol*/;
1345 variable
[2] = variable
[3];
1346 variable
[3] = TAG_Bool(( variable
[2] /*s*/ == NIT_NULL
/*null*/) || (( variable
[2] /*s*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[2] /*s*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[2] /*s*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[2] /*s*/)( variable
[2] /*s*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1347 if (UNTAG_Bool(variable
[3])) { /*if*/
1348 variable
[3] = variable
[0];
1349 variable
[3] = CALL_lexer___Token___text(variable
[3])(variable
[3]) /*Token::text*/;
1350 variable
[3] = CALL_symbol___String___to_symbol(variable
[3])(variable
[3]) /*String::to_symbol*/;
1351 variable
[2] = variable
[3] /*s=*/;
1352 variable
[3] = variable
[0];
1353 ATTR_syntax_base___Token____symbol(variable
[3]) /*Token::_symbol*/ = variable
[2] /*s*/;
1355 variable
[1] = variable
[2] /*s*/;
1356 goto return_label59
;
1357 return_label59
: while(false);
1358 tracehead
= trace
.prev
;
1361 val_t
syntax_base___PClassdef___local_class(val_t self
) {
1362 struct trace_t trace
= {NULL
, NULL
, 422, LOCATE_syntax_base___PClassdef___local_class
};
1363 val_t
*variable
= NULL
;
1364 void **closurevariable
= NULL
;
1365 trace
.prev
= tracehead
; tracehead
= &trace
;
1366 trace
.file
= LOCATE_syntax_base
;
1367 fprintf(stderr
, "Deferred method called");
1368 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 422);
1370 tracehead
= trace
.prev
;
1373 val_t
syntax_base___AAttrPropdef___prop(val_t self
) {
1374 struct trace_t trace
= {NULL
, NULL
, 427, LOCATE_syntax_base___AAttrPropdef___prop
};
1375 val_t
*variable
= NULL
;
1376 void **closurevariable
= NULL
;
1377 trace
.prev
= tracehead
; tracehead
= &trace
;
1378 trace
.file
= LOCATE_syntax_base
;
1379 fprintf(stderr
, "Deferred method called");
1380 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 427);
1382 tracehead
= trace
.prev
;
1385 val_t
syntax_base___AAttrPropdef___readmethod(val_t self
) {
1386 struct trace_t trace
= {NULL
, NULL
, 430, LOCATE_syntax_base___AAttrPropdef___readmethod
};
1387 val_t
*variable
= NULL
;
1388 void **closurevariable
= NULL
;
1389 trace
.prev
= tracehead
; tracehead
= &trace
;
1390 trace
.file
= LOCATE_syntax_base
;
1391 fprintf(stderr
, "Deferred method called");
1392 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 430);
1394 tracehead
= trace
.prev
;
1397 val_t
syntax_base___AAttrPropdef___writemethod(val_t self
) {
1398 struct trace_t trace
= {NULL
, NULL
, 433, LOCATE_syntax_base___AAttrPropdef___writemethod
};
1399 val_t
*variable
= NULL
;
1400 void **closurevariable
= NULL
;
1401 trace
.prev
= tracehead
; tracehead
= &trace
;
1402 trace
.file
= LOCATE_syntax_base
;
1403 fprintf(stderr
, "Deferred method called");
1404 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 433);
1406 tracehead
= trace
.prev
;
1409 val_t
syntax_base___AMethPropdef___method(val_t self
) {
1410 struct trace_t trace
= {NULL
, NULL
, 438, LOCATE_syntax_base___AMethPropdef___method
};
1411 val_t
*variable
= NULL
;
1412 void **closurevariable
= NULL
;
1413 trace
.prev
= tracehead
; tracehead
= &trace
;
1414 trace
.file
= LOCATE_syntax_base
;
1415 fprintf(stderr
, "Deferred method called");
1416 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 438);
1418 tracehead
= trace
.prev
;
1421 val_t
syntax_base___AMethPropdef___self_var(val_t self
) {
1422 struct trace_t trace
= {NULL
, NULL
, 441, LOCATE_syntax_base___AMethPropdef___self_var
};
1423 val_t
*variable
= NULL
;
1424 void **closurevariable
= NULL
;
1425 trace
.prev
= tracehead
; tracehead
= &trace
;
1426 trace
.file
= LOCATE_syntax_base
;
1427 fprintf(stderr
, "Deferred method called");
1428 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 441);
1430 tracehead
= trace
.prev
;
1433 val_t
syntax_base___ATypePropdef___prop(val_t self
) {
1434 struct trace_t trace
= {NULL
, NULL
, 446, LOCATE_syntax_base___ATypePropdef___prop
};
1435 val_t
*variable
= NULL
;
1436 void **closurevariable
= NULL
;
1437 trace
.prev
= tracehead
; tracehead
= &trace
;
1438 trace
.file
= LOCATE_syntax_base
;
1439 fprintf(stderr
, "Deferred method called");
1440 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 446);
1442 tracehead
= trace
.prev
;
1445 val_t
syntax_base___PParam___position(val_t self
) {
1446 struct trace_t trace
= {NULL
, NULL
, 451, LOCATE_syntax_base___PParam___position
};
1447 val_t
*variable
= NULL
;
1448 void **closurevariable
= NULL
;
1449 trace
.prev
= tracehead
; tracehead
= &trace
;
1450 trace
.file
= LOCATE_syntax_base
;
1451 fprintf(stderr
, "Deferred method called");
1452 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 451);
1454 tracehead
= trace
.prev
;
1457 val_t
syntax_base___PParam___variable(val_t self
) {
1458 struct trace_t trace
= {NULL
, NULL
, 454, LOCATE_syntax_base___PParam___variable
};
1459 val_t
*variable
= NULL
;
1460 void **closurevariable
= NULL
;
1461 trace
.prev
= tracehead
; tracehead
= &trace
;
1462 trace
.file
= LOCATE_syntax_base
;
1463 fprintf(stderr
, "Deferred method called");
1464 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 454);
1466 tracehead
= trace
.prev
;
1469 val_t
syntax_base___PClosureDecl___variable(val_t self
) {
1470 struct trace_t trace
= {NULL
, NULL
, 459, LOCATE_syntax_base___PClosureDecl___variable
};
1471 val_t
*variable
= NULL
;
1472 void **closurevariable
= NULL
;
1473 trace
.prev
= tracehead
; tracehead
= &trace
;
1474 trace
.file
= LOCATE_syntax_base
;
1475 fprintf(stderr
, "Deferred method called");
1476 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 459);
1478 tracehead
= trace
.prev
;
1481 val_t
syntax_base___PType___get_local_class(val_t self
, val_t param0
) {
1482 struct trace_t trace
= {NULL
, NULL
, 464, LOCATE_syntax_base___PType___get_local_class
};
1483 val_t
*variable
= NULL
;
1484 void **closurevariable
= NULL
;
1485 trace
.prev
= tracehead
; tracehead
= &trace
;
1486 trace
.file
= LOCATE_syntax_base
;
1487 fprintf(stderr
, "Deferred method called");
1488 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 464);
1490 tracehead
= trace
.prev
;
1493 val_t
syntax_base___PType___get_stype(val_t self
, val_t param0
) {
1494 struct trace_t trace
= {NULL
, NULL
, 469, LOCATE_syntax_base___PType___get_stype
};
1495 val_t
*variable
= NULL
;
1496 void **closurevariable
= NULL
;
1497 trace
.prev
= tracehead
; tracehead
= &trace
;
1498 trace
.file
= LOCATE_syntax_base
;
1499 fprintf(stderr
, "Deferred method called");
1500 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 469);
1502 tracehead
= trace
.prev
;
1505 val_t
syntax_base___PType___get_unchecked_stype(val_t self
, val_t param0
) {
1506 struct trace_t trace
= {NULL
, NULL
, 473, LOCATE_syntax_base___PType___get_unchecked_stype
};
1507 val_t
*variable
= NULL
;
1508 void **closurevariable
= NULL
;
1509 trace
.prev
= tracehead
; tracehead
= &trace
;
1510 trace
.file
= LOCATE_syntax_base
;
1511 fprintf(stderr
, "Deferred method called");
1512 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 473);
1514 tracehead
= trace
.prev
;
1517 void syntax_base___PType___check_conform(val_t self
, val_t param0
) {
1518 struct trace_t trace
= {NULL
, NULL
, 479, LOCATE_syntax_base___PType___check_conform
};
1519 val_t
*variable
= NULL
;
1520 void **closurevariable
= NULL
;
1521 trace
.prev
= tracehead
; tracehead
= &trace
;
1522 trace
.file
= LOCATE_syntax_base
;
1523 fprintf(stderr
, "Deferred method called");
1524 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 479);
1526 tracehead
= trace
.prev
;
1529 val_t
syntax_base___AType___get_local_class(val_t self
, val_t param0
) {
1530 struct trace_t trace
= {NULL
, NULL
, 489, LOCATE_syntax_base___AType___get_local_class
};
1532 void **closurevariable
= NULL
;
1533 trace
.prev
= tracehead
; tracehead
= &trace
;
1534 trace
.file
= LOCATE_syntax_base
;
1536 variable
[1] = param0
;
1537 variable
[4] = variable
[0];
1538 variable
[4] = CALL_parser_nodes___AType___n_id(variable
[4])(variable
[4]) /*AType::n_id*/;
1539 variable
[4] = CALL_syntax_base___Token___to_symbol(variable
[4])(variable
[4]) /*Token::to_symbol*/;
1540 variable
[3] = variable
[4];
1541 variable
[5] = CALL_syntax_base___AbsSyntaxVisitor___module( variable
[1] /*v*/)( variable
[1] /*v*/) /*AbsSyntaxVisitor::module*/;
1542 variable
[4] = variable
[5];
1543 variable
[6] = CALL_syntax_base___AbsSyntaxVisitor___local_class( variable
[1] /*v*/)( variable
[1] /*v*/) /*AbsSyntaxVisitor::local_class*/;
1544 variable
[5] = variable
[6];
1545 variable
[6] = CALL_syntax_base___MMSrcLocalClass___formal_dict( variable
[5] /*cla*/)( variable
[5] /*cla*/) /*MMSrcLocalClass::formal_dict*/;
1546 variable
[6] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable
[6] == NIT_NULL
/*null*/) || ((variable
[6] != NIT_NULL
) && ((CALL_kernel___Object_____eqeq(variable
[6])==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable
[6], NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable
[6])(variable
[6], NIT_NULL
/*null*/) /*Object::==*/)))))));
1547 variable
[7] = variable
[6];
1548 if (UNTAG_Bool(variable
[7])) { /* and */
1549 variable
[7] = CALL_syntax_base___MMSrcLocalClass___formal_dict( variable
[5] /*cla*/)( variable
[5] /*cla*/) /*MMSrcLocalClass::formal_dict*/;
1550 variable
[7] = CALL_abstract_collection___Map___has_key(variable
[7])(variable
[7], variable
[3] /*name*/) /*Map::has_key*/;
1552 variable
[6] = variable
[7];
1553 variable
[7] = variable
[6];
1554 if (!UNTAG_Bool(variable
[7])) { /* or */
1555 variable
[7] = CALL_abstractmetamodel___MMLocalClass___global_properties( variable
[5] /*cla*/)( variable
[5] /*cla*/) /*MMLocalClass::global_properties*/;
1556 variable
[7] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable
[7] == NIT_NULL
/*null*/) || ((variable
[7] != NIT_NULL
) && ((CALL_kernel___Object_____eqeq(variable
[7])==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable
[7], NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable
[7])(variable
[7], NIT_NULL
/*null*/) /*Object::==*/)))))));
1557 variable
[8] = variable
[7];
1558 if (UNTAG_Bool(variable
[8])) { /* and */
1559 variable
[8] = CALL_abstractmetamodel___MMLocalClass___has_global_property_by_name( variable
[5] /*cla*/)( variable
[5] /*cla*/, variable
[3] /*name*/) /*MMLocalClass::has_global_property_by_name*/;
1561 variable
[7] = variable
[8];
1563 variable
[6] = variable
[7];
1564 if (UNTAG_Bool(variable
[6])) { /*if*/
1565 variable
[6] = variable
[0];
1566 variable
[6] = CALL_parser_nodes___AType___n_id(variable
[6])(variable
[6]) /*AType::n_id*/;
1567 variable
[7] = NEW_Array_array___Array___with_capacity(TAG_Int(3)); /*new Array[String]*/
1568 variable
[8] = NEW_String_string___String___with_native(BOX_NativeString("Type error: "), TAG_Int(12)); /*new String*/
1569 variable
[9] = variable
[8];
1570 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[9]) /*AbstractArray::add*/;
1571 variable
[10] = variable
[3] /*name*/;
1572 variable
[10] = CALL_string___Object___to_s(variable
[10])(variable
[10]) /*Object::to_s*/;
1573 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[10]) /*AbstractArray::add*/;
1574 variable
[11] = NEW_String_string___String___with_native(BOX_NativeString(" is a formal type"), TAG_Int(17)); /*new String*/
1575 variable
[12] = variable
[11];
1576 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[12]) /*AbstractArray::add*/;
1577 variable
[7] = CALL_string___Object___to_s(variable
[7])(variable
[7]) /*Object::to_s*/;
1578 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[6], variable
[7]) /*AbsSyntaxVisitor::error*/;
1579 variable
[6] = variable
[0];
1580 ATTR_syntax_base___AType____stype_cached(variable
[6]) /*AType::_stype_cached*/ = TAG_Bool(true);
1581 variable
[2] = NIT_NULL
/*null*/;
1582 goto return_label60
;
1584 variable
[6] = CALL_abstractmetamodel___MMModule___has_global_class_named( variable
[4] /*mod*/)( variable
[4] /*mod*/, variable
[3] /*name*/) /*MMModule::has_global_class_named*/;
1585 if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable
[6])))) { /*if*/
1586 variable
[6] = variable
[0];
1587 variable
[6] = CALL_parser_nodes___AType___n_id(variable
[6])(variable
[6]) /*AType::n_id*/;
1588 variable
[7] = NEW_Array_array___Array___with_capacity(TAG_Int(5)); /*new Array[String]*/
1589 variable
[8] = NEW_String_string___String___with_native(BOX_NativeString("Type error: class "), TAG_Int(18)); /*new String*/
1590 variable
[9] = variable
[8];
1591 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[9]) /*AbstractArray::add*/;
1592 variable
[10] = variable
[3] /*name*/;
1593 variable
[10] = CALL_string___Object___to_s(variable
[10])(variable
[10]) /*Object::to_s*/;
1594 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[10]) /*AbstractArray::add*/;
1595 variable
[11] = NEW_String_string___String___with_native(BOX_NativeString(" not found in module "), TAG_Int(21)); /*new String*/
1596 variable
[12] = variable
[11];
1597 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[12]) /*AbstractArray::add*/;
1598 variable
[13] = variable
[4] /*mod*/;
1599 variable
[13] = CALL_string___Object___to_s(variable
[13])(variable
[13]) /*Object::to_s*/;
1600 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[13]) /*AbstractArray::add*/;
1601 variable
[14] = NEW_String_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1602 variable
[15] = variable
[14];
1603 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[15]) /*AbstractArray::add*/;
1604 variable
[7] = CALL_string___Object___to_s(variable
[7])(variable
[7]) /*Object::to_s*/;
1605 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[6], variable
[7]) /*AbsSyntaxVisitor::error*/;
1606 variable
[6] = variable
[0];
1607 ATTR_syntax_base___AType____stype_cached(variable
[6]) /*AType::_stype_cached*/ = TAG_Bool(true);
1608 variable
[2] = NIT_NULL
/*null*/;
1609 goto return_label60
;
1611 variable
[7] = CALL_abstractmetamodel___MMModule___class_by_name( variable
[4] /*mod*/)( variable
[4] /*mod*/, variable
[3] /*name*/) /*MMModule::class_by_name*/;
1612 variable
[6] = variable
[7];
1613 variable
[7] = CALL_abstractmetamodel___MMLocalClass___global( variable
[6] /*local_class*/)( variable
[6] /*local_class*/) /*MMLocalClass::global*/;
1614 variable
[8] = variable
[0];
1615 CALL_syntax_base___MMGlobalClass___check_visibility(variable
[7])(variable
[7], variable
[1] /*v*/, variable
[8], variable
[4] /*mod*/) /*MMGlobalClass::check_visibility*/;
1616 variable
[2] = variable
[6] /*local_class*/;
1617 goto return_label60
;
1618 return_label60
: while(false);
1619 tracehead
= trace
.prev
;
1622 val_t
syntax_base___AType___get_stype(val_t self
, val_t param0
) {
1623 struct trace_t trace
= {NULL
, NULL
, 569, LOCATE_syntax_base___AType___get_stype
};
1625 void **closurevariable
= NULL
;
1626 trace
.prev
= tracehead
; tracehead
= &trace
;
1627 trace
.file
= LOCATE_syntax_base
;
1629 variable
[1] = param0
;
1630 variable
[4] = variable
[0];
1631 variable
[4] = CALL_syntax_base___PType___get_unchecked_stype(variable
[4])(variable
[4], variable
[1] /*v*/) /*AType::get_unchecked_stype*/;
1632 variable
[3] = variable
[4];
1633 variable
[4] = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable
[3] /*t*/ == NIT_NULL
/*null*/) || (( variable
[3] /*t*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[3] /*t*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[3] /*t*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[3] /*t*/)( variable
[3] /*t*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
1634 if (UNTAG_Bool(variable
[4])) { /*if*/
1635 variable
[4] = variable
[0];
1636 CALL_syntax_base___PType___check_conform(variable
[4])(variable
[4], variable
[1] /*v*/) /*AType::check_conform*/;
1638 variable
[2] = variable
[3] /*t*/;
1639 goto return_label61
;
1640 return_label61
: while(false);
1641 tracehead
= trace
.prev
;
1644 val_t
syntax_base___AType___get_unchecked_stype(val_t self
, val_t param0
) {
1645 struct trace_t trace
= {NULL
, NULL
, 512, LOCATE_syntax_base___AType___get_unchecked_stype
};
1647 void **closurevariable
= NULL
;
1648 trace
.prev
= tracehead
; tracehead
= &trace
;
1649 trace
.file
= LOCATE_syntax_base
;
1651 variable
[1] = param0
;
1652 variable
[3] = variable
[0];
1653 variable
[3] = ATTR_syntax_base___AType____stype_cached(variable
[3]) /*AType::_stype_cached*/;
1654 if (UNTAG_Bool(variable
[3])) { /*if*/
1655 variable
[3] = variable
[0];
1656 variable
[3] = ATTR_syntax_base___AType____stype_cache(variable
[3]) /*AType::_stype_cache*/;
1657 variable
[2] = variable
[3];
1658 goto return_label62
;
1660 variable
[3] = variable
[0];
1661 ATTR_syntax_base___AType____stype_cached(variable
[3]) /*AType::_stype_cached*/ = TAG_Bool(true);
1662 variable
[4] = variable
[0];
1663 variable
[4] = CALL_parser_nodes___AType___n_id(variable
[4])(variable
[4]) /*AType::n_id*/;
1664 variable
[4] = CALL_syntax_base___Token___to_symbol(variable
[4])(variable
[4]) /*Token::to_symbol*/;
1665 variable
[3] = variable
[4];
1666 variable
[5] = CALL_syntax_base___AbsSyntaxVisitor___module( variable
[1] /*v*/)( variable
[1] /*v*/) /*AbsSyntaxVisitor::module*/;
1667 variable
[4] = variable
[5];
1668 variable
[6] = CALL_syntax_base___AbsSyntaxVisitor___local_class( variable
[1] /*v*/)( variable
[1] /*v*/) /*AbsSyntaxVisitor::local_class*/;
1669 variable
[5] = variable
[6];
1670 variable
[6] = CALL_syntax_base___MMSrcLocalClass___formal_dict( variable
[5] /*cla*/)( variable
[5] /*cla*/) /*MMSrcLocalClass::formal_dict*/;
1671 variable
[6] = CALL_abstract_collection___Map___has_key(variable
[6])(variable
[6], variable
[3] /*name*/) /*Map::has_key*/;
1672 if (UNTAG_Bool(variable
[6])) { /*if*/
1673 variable
[6] = variable
[0];
1674 variable
[6] = CALL_parser_nodes___AType___n_types(variable
[6])(variable
[6]) /*AType::n_types*/;
1675 variable
[6] = CALL_abstract_collection___Collection___length(variable
[6])(variable
[6]) /*List::length*/;
1676 variable
[6] = TAG_Bool(UNTAG_Int(variable
[6])>UNTAG_Int( TAG_Int(0)));
1677 if (UNTAG_Bool(variable
[6])) { /*if*/
1678 variable
[6] = variable
[0];
1679 variable
[7] = NEW_Array_array___Array___with_capacity(TAG_Int(3)); /*new Array[String]*/
1680 variable
[8] = NEW_String_string___String___with_native(BOX_NativeString("Type error: formal type "), TAG_Int(24)); /*new String*/
1681 variable
[9] = variable
[8];
1682 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[9]) /*AbstractArray::add*/;
1683 variable
[10] = variable
[3] /*name*/;
1684 variable
[10] = CALL_string___Object___to_s(variable
[10])(variable
[10]) /*Object::to_s*/;
1685 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[10]) /*AbstractArray::add*/;
1686 variable
[11] = NEW_String_string___String___with_native(BOX_NativeString(" cannot have formal parameters."), TAG_Int(31)); /*new String*/
1687 variable
[12] = variable
[11];
1688 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[12]) /*AbstractArray::add*/;
1689 variable
[7] = CALL_string___Object___to_s(variable
[7])(variable
[7]) /*Object::to_s*/;
1690 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[6], variable
[7]) /*AbsSyntaxVisitor::error*/;
1691 variable
[2] = NIT_NULL
/*null*/;
1692 goto return_label62
;
1694 variable
[7] = CALL_syntax_base___MMSrcLocalClass___formal_dict( variable
[5] /*cla*/)( variable
[5] /*cla*/) /*MMSrcLocalClass::formal_dict*/;
1695 variable
[7] = CALL_abstract_collection___Map_____bra(variable
[7])(variable
[7], variable
[3] /*name*/) /*Map::[]*/;
1696 variable
[6] = variable
[7];
1697 variable
[7] = variable
[0];
1698 ATTR_syntax_base___AType____stype_cache(variable
[7]) /*AType::_stype_cache*/ = variable
[6] /*formal*/;
1699 variable
[2] = variable
[6] /*formal*/;
1700 goto return_label62
;
1702 variable
[6] = CALL_abstractmetamodel___MMLocalClass___global_properties( variable
[5] /*cla*/)( variable
[5] /*cla*/) /*MMLocalClass::global_properties*/;
1703 variable
[6] = TAG_Bool(!UNTAG_Bool(TAG_Bool((variable
[6] == NIT_NULL
/*null*/) || ((variable
[6] != NIT_NULL
) && ((CALL_kernel___Object_____eqeq(variable
[6])==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable
[6], NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq(variable
[6])(variable
[6], NIT_NULL
/*null*/) /*Object::==*/)))))));
1704 variable
[7] = variable
[6];
1705 if (UNTAG_Bool(variable
[7])) { /* and */
1706 variable
[7] = CALL_abstractmetamodel___MMLocalClass___has_global_property_by_name( variable
[5] /*cla*/)( variable
[5] /*cla*/, variable
[3] /*name*/) /*MMLocalClass::has_global_property_by_name*/;
1708 variable
[6] = variable
[7];
1709 if (UNTAG_Bool(variable
[6])) { /*if*/
1710 variable
[6] = variable
[0];
1711 variable
[6] = CALL_parser_nodes___AType___n_types(variable
[6])(variable
[6]) /*AType::n_types*/;
1712 variable
[6] = CALL_abstract_collection___Collection___length(variable
[6])(variable
[6]) /*List::length*/;
1713 variable
[6] = TAG_Bool(UNTAG_Int(variable
[6])>UNTAG_Int( TAG_Int(0)));
1714 if (UNTAG_Bool(variable
[6])) { /*if*/
1715 variable
[6] = variable
[0];
1716 variable
[7] = NEW_Array_array___Array___with_capacity(TAG_Int(3)); /*new Array[String]*/
1717 variable
[8] = NEW_String_string___String___with_native(BOX_NativeString("Type error: formal type "), TAG_Int(24)); /*new String*/
1718 variable
[9] = variable
[8];
1719 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[9]) /*AbstractArray::add*/;
1720 variable
[10] = variable
[3] /*name*/;
1721 variable
[10] = CALL_string___Object___to_s(variable
[10])(variable
[10]) /*Object::to_s*/;
1722 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[10]) /*AbstractArray::add*/;
1723 variable
[11] = NEW_String_string___String___with_native(BOX_NativeString(" cannot have formal parameters."), TAG_Int(31)); /*new String*/
1724 variable
[12] = variable
[11];
1725 CALL_abstract_collection___SimpleCollection___add(variable
[7])(variable
[7], variable
[12]) /*AbstractArray::add*/;
1726 variable
[7] = CALL_string___Object___to_s(variable
[7])(variable
[7]) /*Object::to_s*/;
1727 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[6], variable
[7]) /*AbsSyntaxVisitor::error*/;
1728 variable
[2] = NIT_NULL
/*null*/;
1729 goto return_label62
;
1731 variable
[7] = CALL_static_type___MMLocalClass___get_type( variable
[5] /*cla*/)( variable
[5] /*cla*/) /*MMLocalClass::get_type*/;
1732 variable
[7] = CALL_static_type___MMType___local_class(variable
[7])(variable
[7]) /*MMType::local_class*/;
1733 variable
[7] = CALL_virtualtype___MMLocalClass___select_virtual_type(variable
[7])(variable
[7], variable
[3] /*name*/) /*MMLocalClass::select_virtual_type*/;
1734 variable
[8] = CALL_static_type___MMLocalClass___get_type( variable
[5] /*cla*/)( variable
[5] /*cla*/) /*MMLocalClass::get_type*/;
1735 variable
[7] = CALL_virtualtype___MMTypeProperty___stype_for(variable
[7])(variable
[7], variable
[8]) /*MMTypeProperty::stype_for*/;
1736 variable
[6] = variable
[7];
1737 variable
[7] = TAG_Bool(( variable
[6] /*t*/ == NIT_NULL
/*null*/) || (( variable
[6] /*t*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[6] /*t*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[6] /*t*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[6] /*t*/)( variable
[6] /*t*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1738 if (UNTAG_Bool(variable
[7])) { /*if*/
1739 variable
[7] = variable
[0];
1740 variable
[8] = NEW_Array_array___Array___with_capacity(TAG_Int(3)); /*new Array[String]*/
1741 variable
[9] = NEW_String_string___String___with_native(BOX_NativeString("Type error: circular definition in formal type "), TAG_Int(47)); /*new String*/
1742 variable
[10] = variable
[9];
1743 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[10]) /*AbstractArray::add*/;
1744 variable
[11] = variable
[3] /*name*/;
1745 variable
[11] = CALL_string___Object___to_s(variable
[11])(variable
[11]) /*Object::to_s*/;
1746 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[11]) /*AbstractArray::add*/;
1747 variable
[12] = NEW_String_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1748 variable
[13] = variable
[12];
1749 CALL_abstract_collection___SimpleCollection___add(variable
[8])(variable
[8], variable
[13]) /*AbstractArray::add*/;
1750 variable
[8] = CALL_string___Object___to_s(variable
[8])(variable
[8]) /*Object::to_s*/;
1751 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[7], variable
[8]) /*AbsSyntaxVisitor::error*/;
1752 variable
[2] = NIT_NULL
/*null*/;
1753 goto return_label62
;
1755 variable
[7] = variable
[0];
1756 ATTR_syntax_base___AType____stype_cache(variable
[7]) /*AType::_stype_cache*/ = variable
[6] /*t*/;
1757 variable
[2] = variable
[6] /*t*/;
1758 goto return_label62
;
1760 variable
[7] = variable
[0];
1761 variable
[7] = CALL_syntax_base___PType___get_local_class(variable
[7])(variable
[7], variable
[1] /*v*/) /*AType::get_local_class*/;
1762 variable
[6] = variable
[7];
1763 variable
[7] = TAG_Bool(( variable
[6] /*local_class*/ == NIT_NULL
/*null*/) || (( variable
[6] /*local_class*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[6] /*local_class*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[6] /*local_class*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[6] /*local_class*/)( variable
[6] /*local_class*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1764 if (UNTAG_Bool(variable
[7])) { /*if*/
1765 variable
[2] = NIT_NULL
/*null*/;
1766 goto return_label62
;
1768 variable
[8] = variable
[0];
1769 variable
[8] = CALL_parser_nodes___AType___n_types(variable
[8])(variable
[8]) /*AType::n_types*/;
1770 variable
[8] = CALL_abstract_collection___Collection___length(variable
[8])(variable
[8]) /*List::length*/;
1771 variable
[7] = variable
[8];
1772 variable
[8] = CALL_abstractmetamodel___MMLocalClass___arity( variable
[6] /*local_class*/)( variable
[6] /*local_class*/) /*MMLocalClass::arity*/;
1773 variable
[8] = TAG_Bool((variable
[8])!=( variable
[7] /*arity*/));
1774 if (UNTAG_Bool(variable
[8])) { /*if*/
1775 variable
[8] = variable
[0];
1776 variable
[9] = NEW_Array_array___Array___with_capacity(TAG_Int(7)); /*new Array[String]*/
1777 variable
[10] = NEW_String_string___String___with_native(BOX_NativeString("Type error: '"), TAG_Int(13)); /*new String*/
1778 variable
[11] = variable
[10];
1779 CALL_abstract_collection___SimpleCollection___add(variable
[9])(variable
[9], variable
[11]) /*AbstractArray::add*/;
1780 variable
[12] = variable
[6] /*local_class*/;
1781 variable
[12] = CALL_string___Object___to_s(variable
[12])(variable
[12]) /*Object::to_s*/;
1782 CALL_abstract_collection___SimpleCollection___add(variable
[9])(variable
[9], variable
[12]) /*AbstractArray::add*/;
1783 variable
[13] = NEW_String_string___String___with_native(BOX_NativeString("' has "), TAG_Int(6)); /*new String*/
1784 variable
[14] = variable
[13];
1785 CALL_abstract_collection___SimpleCollection___add(variable
[9])(variable
[9], variable
[14]) /*AbstractArray::add*/;
1786 variable
[15] = CALL_abstractmetamodel___MMLocalClass___arity( variable
[6] /*local_class*/)( variable
[6] /*local_class*/) /*MMLocalClass::arity*/;
1787 variable
[16] = variable
[15];
1788 variable
[16] = CALL_string___Object___to_s(variable
[16])(variable
[16]) /*Object::to_s*/;
1789 CALL_abstract_collection___SimpleCollection___add(variable
[9])(variable
[9], variable
[16]) /*AbstractArray::add*/;
1790 variable
[17] = NEW_String_string___String___with_native(BOX_NativeString(" parameters which differs from the "), TAG_Int(35)); /*new String*/
1791 variable
[18] = variable
[17];
1792 CALL_abstract_collection___SimpleCollection___add(variable
[9])(variable
[9], variable
[18]) /*AbstractArray::add*/;
1793 variable
[19] = variable
[7] /*arity*/;
1794 variable
[19] = CALL_string___Object___to_s(variable
[19])(variable
[19]) /*Object::to_s*/;
1795 CALL_abstract_collection___SimpleCollection___add(variable
[9])(variable
[9], variable
[19]) /*AbstractArray::add*/;
1796 variable
[20] = NEW_String_string___String___with_native(BOX_NativeString(" params."), TAG_Int(8)); /*new String*/
1797 variable
[21] = variable
[20];
1798 CALL_abstract_collection___SimpleCollection___add(variable
[9])(variable
[9], variable
[21]) /*AbstractArray::add*/;
1799 variable
[9] = CALL_string___Object___to_s(variable
[9])(variable
[9]) /*Object::to_s*/;
1800 CALL_syntax_base___AbsSyntaxVisitor___error( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[8], variable
[9]) /*AbsSyntaxVisitor::error*/;
1801 variable
[2] = NIT_NULL
/*null*/;
1802 goto return_label62
;
1804 variable
[8] = TAG_Bool(UNTAG_Int( variable
[7] /*arity*/)>UNTAG_Int( TAG_Int(0)));
1805 if (UNTAG_Bool(variable
[8])) { /*if*/
1806 variable
[9] = NEW_Array_array___Array___init(); /*new Array[MMType]*/
1807 variable
[8] = variable
[9];
1808 variable
[9] = variable
[0];
1809 variable
[9] = CALL_parser_nodes___AType___n_types(variable
[9])(variable
[9]) /*AType::n_types*/;
1810 variable
[9] = CALL_abstract_collection___Collection___iterator(variable
[9])(variable
[9]) /*List::iterator*/;
1811 while (true) { /*for*/
1812 variable
[10] = CALL_abstract_collection___Iterator___is_ok(variable
[9])(variable
[9]) /*ListIterator::is_ok*/;
1813 if (!UNTAG_Bool(variable
[10])) break; /*for*/
1814 variable
[10] = CALL_abstract_collection___Iterator___item(variable
[9])(variable
[9]) /*ListIterator::item*/;
1815 variable
[11] = variable
[10];
1816 variable
[12] = CALL_syntax_base___PType___get_unchecked_stype( variable
[11] /*p*/)( variable
[11] /*p*/, variable
[1] /*v*/) /*PType::get_unchecked_stype*/;
1817 CALL_abstract_collection___SimpleCollection___add( variable
[8] /*tab*/)( variable
[8] /*tab*/, variable
[12]) /*AbstractArray::add*/;
1818 continue_63
: while(0);
1819 CALL_abstract_collection___Iterator___next(variable
[9])(variable
[9]) /*ListIterator::next*/;
1822 variable
[10] = CALL_genericity___MMLocalClass___get_instantiate_type( variable
[6] /*local_class*/)( variable
[6] /*local_class*/, variable
[8] /*tab*/) /*MMLocalClass::get_instantiate_type*/;
1823 variable
[9] = variable
[10];
1824 variable
[10] = variable
[0];
1825 ATTR_syntax_base___AType____stype_cache(variable
[10]) /*AType::_stype_cache*/ = variable
[9] /*t*/;
1826 variable
[2] = variable
[9] /*t*/;
1827 goto return_label62
;
1829 variable
[9] = CALL_static_type___MMLocalClass___get_type( variable
[6] /*local_class*/)( variable
[6] /*local_class*/) /*MMLocalClass::get_type*/;
1830 variable
[8] = variable
[9];
1831 variable
[9] = variable
[0];
1832 ATTR_syntax_base___AType____stype_cache(variable
[9]) /*AType::_stype_cache*/ = variable
[8] /*t*/;
1833 variable
[2] = variable
[8] /*t*/;
1834 goto return_label62
;
1836 return_label62
: while(false);
1837 tracehead
= trace
.prev
;
1840 void syntax_base___AType___check_conform(val_t self
, val_t param0
) {
1841 struct trace_t trace
= {NULL
, NULL
, 576, LOCATE_syntax_base___AType___check_conform
};
1843 void **closurevariable
= NULL
;
1844 trace
.prev
= tracehead
; tracehead
= &trace
;
1845 trace
.file
= LOCATE_syntax_base
;
1847 variable
[1] = param0
;
1848 variable
[4] = variable
[0];
1849 variable
[4] = CALL_syntax_base___PType___get_unchecked_stype(variable
[4])(variable
[4], variable
[1] /*v*/) /*AType::get_unchecked_stype*/;
1850 variable
[3] = variable
[4];
1851 variable
[4] = TAG_Bool(( variable
[3] /*st*/ == NIT_NULL
/*null*/) || (( variable
[3] /*st*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[3] /*st*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[3] /*st*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[3] /*st*/)( variable
[3] /*st*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1852 if (UNTAG_Bool(variable
[4])) { /*if*/
1853 goto return_label64
;
1855 variable
[5] = CALL_static_type___MMType___local_class( variable
[3] /*st*/)( variable
[3] /*st*/) /*MMType::local_class*/;
1856 variable
[4] = variable
[5];
1857 variable
[6] = variable
[0];
1858 variable
[6] = CALL_parser_nodes___AType___n_types(variable
[6])(variable
[6]) /*AType::n_types*/;
1859 variable
[6] = CALL_abstract_collection___Collection___length(variable
[6])(variable
[6]) /*List::length*/;
1860 variable
[5] = variable
[6];
1861 variable
[6] = TAG_Bool(UNTAG_Int( variable
[5] /*arity*/)>UNTAG_Int( TAG_Int(0)));
1862 if (UNTAG_Bool(variable
[6])) { /*if*/
1863 variable
[6] = NEW_Range_range___Range___without_last( TAG_Int(0), variable
[5] /*arity*/); /*new Range[Int]*/
1864 variable
[6] = CALL_abstract_collection___Collection___iterator(variable
[6])(variable
[6]) /*Range::iterator*/;
1865 while (true) { /*for*/
1866 variable
[7] = CALL_abstract_collection___Iterator___is_ok(variable
[6])(variable
[6]) /*Iterator::is_ok*/;
1867 if (!UNTAG_Bool(variable
[7])) break; /*for*/
1868 variable
[7] = CALL_abstract_collection___Iterator___item(variable
[6])(variable
[6]) /*Iterator::item*/;
1869 variable
[8] = variable
[7];
1870 variable
[10] = variable
[0];
1871 variable
[10] = CALL_parser_nodes___AType___n_types(variable
[10])(variable
[10]) /*AType::n_types*/;
1872 variable
[10] = CALL_abstract_collection___Map_____bra(variable
[10])(variable
[10], variable
[8] /*i*/) /*List::[]*/;
1873 variable
[9] = variable
[10];
1874 variable
[11] = CALL_syntax_base___PType___get_stype( variable
[9] /*p*/)( variable
[9] /*p*/, variable
[1] /*v*/) /*PType::get_stype*/;
1875 variable
[10] = variable
[11];
1876 variable
[12] = CALL_genericity___MMLocalClass___get_formal( variable
[4] /*local_class*/)( variable
[4] /*local_class*/, variable
[8] /*i*/) /*MMLocalClass::get_formal*/;
1877 variable
[12] = CALL_type_formal___MMTypeFormal___bound(variable
[12])(variable
[12]) /*MMTypeFormal::bound*/;
1878 variable
[11] = variable
[12];
1879 variable
[12] = TAG_Bool(( variable
[11] /*bt*/ == NIT_NULL
/*null*/) || (( variable
[11] /*bt*/ != NIT_NULL
) && ((CALL_kernel___Object_____eqeq( variable
[11] /*bt*/)==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable
[11] /*bt*/, NIT_NULL
/*null*/)):(UNTAG_Bool(CALL_kernel___Object_____eqeq( variable
[11] /*bt*/)( variable
[11] /*bt*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1880 if (UNTAG_Bool(variable
[12])) { /*if*/
1881 goto return_label64
;
1883 variable
[12] = CALL_static_type___MMType___adapt_to( variable
[11] /*bt*/)( variable
[11] /*bt*/, variable
[3] /*st*/) /*MMType::adapt_to*/;
1884 variable
[11] = variable
[12] /*bt=*/;
1885 CALL_syntax_base___AbsSyntaxVisitor___check_conform( variable
[1] /*v*/)( variable
[1] /*v*/, variable
[9] /*p*/, variable
[10] /*pt*/, variable
[11] /*bt*/) /*AbsSyntaxVisitor::check_conform*/;
1886 continue_65
: while(0);
1887 CALL_abstract_collection___Iterator___next(variable
[6])(variable
[6]) /*Iterator::next*/;
1891 return_label64
: while(false);
1892 tracehead
= trace
.prev
;
1895 val_t
syntax_base___PExpr___stype(val_t self
) {
1896 struct trace_t trace
= {NULL
, NULL
, 596, LOCATE_syntax_base___PExpr___stype
};
1897 val_t
*variable
= NULL
;
1898 void **closurevariable
= NULL
;
1899 trace
.prev
= tracehead
; tracehead
= &trace
;
1900 trace
.file
= LOCATE_syntax_base
;
1901 fprintf(stderr
, "Deferred method called");
1902 fprintf(stderr
, " (%s:%d)\n", LOCATE_syntax_base
, 596);
1904 tracehead
= trace
.prev
;
1907 val_t
syntax_base___AVardeclExpr___variable(val_t self
) {
1908 struct trace_t trace
= {NULL
, NULL
, 602, LOCATE_syntax_base___AVardeclExpr___variable
};
1909 val_t
*variable
= NULL
;
1910 void **closurevariable
= NULL
;
1911 trace
.prev
= tracehead
; tracehead
= &trace
;
1912 trace
.file
= LOCATE_syntax_base
;
1913 tracehead
= trace
.prev
;
1914 return ATTR_syntax_base___AVardeclExpr____variable( self
) /*AVardeclExpr::_variable*/;
1916 void syntax_base___AVardeclExpr___variable__eq(val_t self
, val_t param0
) {
1917 struct trace_t trace
= {NULL
, NULL
, 602, LOCATE_syntax_base___AVardeclExpr___variable__eq
};
1918 val_t
*variable
= NULL
;
1919 void **closurevariable
= NULL
;
1920 trace
.prev
= tracehead
; tracehead
= &trace
;
1921 trace
.file
= LOCATE_syntax_base
;
1922 ATTR_syntax_base___AVardeclExpr____variable( self
) /*AVardeclExpr::_variable*/ = param0
;
1923 tracehead
= trace
.prev
;
1926 val_t
syntax_base___AForVardeclExpr___variable(val_t self
) {
1927 struct trace_t trace
= {NULL
, NULL
, 607, LOCATE_syntax_base___AForVardeclExpr___variable
};
1928 val_t
*variable
= NULL
;
1929 void **closurevariable
= NULL
;
1930 trace
.prev
= tracehead
; tracehead
= &trace
;
1931 trace
.file
= LOCATE_syntax_base
;
1932 tracehead
= trace
.prev
;
1933 return ATTR_syntax_base___AForVardeclExpr____variable( self
) /*AForVardeclExpr::_variable*/;
1935 void syntax_base___AForVardeclExpr___variable__eq(val_t self
, val_t param0
) {
1936 struct trace_t trace
= {NULL
, NULL
, 607, LOCATE_syntax_base___AForVardeclExpr___variable__eq
};
1937 val_t
*variable
= NULL
;
1938 void **closurevariable
= NULL
;
1939 trace
.prev
= tracehead
; tracehead
= &trace
;
1940 trace
.file
= LOCATE_syntax_base
;
1941 ATTR_syntax_base___AForVardeclExpr____variable( self
) /*AForVardeclExpr::_variable*/ = param0
;
1942 tracehead
= trace
.prev
;
1945 val_t
syntax_base___ASelfExpr___variable(val_t self
) {
1946 struct trace_t trace
= {NULL
, NULL
, 612, LOCATE_syntax_base___ASelfExpr___variable
};
1947 val_t
*variable
= NULL
;
1948 void **closurevariable
= NULL
;
1949 trace
.prev
= tracehead
; tracehead
= &trace
;
1950 trace
.file
= LOCATE_syntax_base
;
1951 tracehead
= trace
.prev
;
1952 return ATTR_syntax_base___ASelfExpr____variable( self
) /*ASelfExpr::_variable*/;
1954 void syntax_base___ASelfExpr___variable__eq(val_t self
, val_t param0
) {
1955 struct trace_t trace
= {NULL
, NULL
, 612, LOCATE_syntax_base___ASelfExpr___variable__eq
};
1956 val_t
*variable
= NULL
;
1957 void **closurevariable
= NULL
;
1958 trace
.prev
= tracehead
; tracehead
= &trace
;
1959 trace
.file
= LOCATE_syntax_base
;
1960 ATTR_syntax_base___ASelfExpr____variable( self
) /*ASelfExpr::_variable*/ = param0
;
1961 tracehead
= trace
.prev
;
1964 val_t
syntax_base___AVarFormExpr___variable(val_t self
) {
1965 struct trace_t trace
= {NULL
, NULL
, 617, LOCATE_syntax_base___AVarFormExpr___variable
};
1966 val_t
*variable
= NULL
;
1967 void **closurevariable
= NULL
;
1968 trace
.prev
= tracehead
; tracehead
= &trace
;
1969 trace
.file
= LOCATE_syntax_base
;
1970 tracehead
= trace
.prev
;
1971 return ATTR_syntax_base___AVarFormExpr____variable( self
) /*AVarFormExpr::_variable*/;
1973 void syntax_base___AVarFormExpr___variable__eq(val_t self
, val_t param0
) {
1974 struct trace_t trace
= {NULL
, NULL
, 617, LOCATE_syntax_base___AVarFormExpr___variable__eq
};
1975 val_t
*variable
= NULL
;
1976 void **closurevariable
= NULL
;
1977 trace
.prev
= tracehead
; tracehead
= &trace
;
1978 trace
.file
= LOCATE_syntax_base
;
1979 ATTR_syntax_base___AVarFormExpr____variable( self
) /*AVarFormExpr::_variable*/ = param0
;
1980 tracehead
= trace
.prev
;
1983 val_t
syntax_base___AClosureCallExpr___variable(val_t self
) {
1984 struct trace_t trace
= {NULL
, NULL
, 622, LOCATE_syntax_base___AClosureCallExpr___variable
};
1985 val_t
*variable
= NULL
;
1986 void **closurevariable
= NULL
;
1987 trace
.prev
= tracehead
; tracehead
= &trace
;
1988 trace
.file
= LOCATE_syntax_base
;
1989 tracehead
= trace
.prev
;
1990 return ATTR_syntax_base___AClosureCallExpr____variable( self
) /*AClosureCallExpr::_variable*/;
1992 void syntax_base___AClosureCallExpr___variable__eq(val_t self
, val_t param0
) {
1993 struct trace_t trace
= {NULL
, NULL
, 622, LOCATE_syntax_base___AClosureCallExpr___variable__eq
};
1994 val_t
*variable
= NULL
;
1995 void **closurevariable
= NULL
;
1996 trace
.prev
= tracehead
; tracehead
= &trace
;
1997 trace
.file
= LOCATE_syntax_base
;
1998 ATTR_syntax_base___AClosureCallExpr____variable( self
) /*AClosureCallExpr::_variable*/ = param0
;
1999 tracehead
= trace
.prev
;
2002 val_t
syntax_base___PClosureDef___closure(val_t self
) {
2003 struct trace_t trace
= {NULL
, NULL
, 627, LOCATE_syntax_base___PClosureDef___closure
};
2004 val_t
*variable
= NULL
;
2005 void **closurevariable
= NULL
;
2006 trace
.prev
= tracehead
; tracehead
= &trace
;
2007 trace
.file
= LOCATE_syntax_base
;
2008 tracehead
= trace
.prev
;
2009 return ATTR_syntax_base___PClosureDef____closure( self
) /*PClosureDef::_closure*/;
2011 void syntax_base___PClosureDef___closure__eq(val_t self
, val_t param0
) {
2012 struct trace_t trace
= {NULL
, NULL
, 627, LOCATE_syntax_base___PClosureDef___closure__eq
};
2013 val_t
*variable
= NULL
;
2014 void **closurevariable
= NULL
;
2015 trace
.prev
= tracehead
; tracehead
= &trace
;
2016 trace
.file
= LOCATE_syntax_base
;
2017 ATTR_syntax_base___PClosureDef____closure( self
) /*PClosureDef::_closure*/ = param0
;
2018 tracehead
= trace
.prev
;
2021 val_t
syntax_base___PClosureDef___variables(val_t self
) {
2022 struct trace_t trace
= {NULL
, NULL
, 630, LOCATE_syntax_base___PClosureDef___variables
};
2023 val_t
*variable
= NULL
;
2024 void **closurevariable
= NULL
;
2025 trace
.prev
= tracehead
; tracehead
= &trace
;
2026 trace
.file
= LOCATE_syntax_base
;
2027 tracehead
= trace
.prev
;
2028 return ATTR_syntax_base___PClosureDef____variables( self
) /*PClosureDef::_variables*/;
2030 void syntax_base___PClosureDef___variables__eq(val_t self
, val_t param0
) {
2031 struct trace_t trace
= {NULL
, NULL
, 630, LOCATE_syntax_base___PClosureDef___variables__eq
};
2032 val_t
*variable
= NULL
;
2033 void **closurevariable
= NULL
;
2034 trace
.prev
= tracehead
; tracehead
= &trace
;
2035 trace
.file
= LOCATE_syntax_base
;
2036 ATTR_syntax_base___PClosureDef____variables( self
) /*PClosureDef::_variables*/ = param0
;
2037 tracehead
= trace
.prev
;