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
, LOCATE_syntax_base___MMSrcModule___node
, 26};
5 trace
.prev
= tracehead
; tracehead
= &trace
;
6 tracehead
= trace
.prev
;
7 return ATTR_syntax_base___MMSrcModule____node( self
) /*MMSrcModule::_node*/;
9 val_t
syntax_base___MMSrcModule___src_local_classes(val_t self
) {
10 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMSrcModule___src_local_classes
, 29};
11 trace
.prev
= tracehead
; tracehead
= &trace
;
12 tracehead
= trace
.prev
;
13 return ATTR_syntax_base___MMSrcModule____src_local_classes( self
) /*MMSrcModule::_src_local_classes*/;
15 void syntax_base___MMSrcModule___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, val_t param3
, int* init_table
) {
16 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMSrcModule___init
, 32};
22 trace
.prev
= tracehead
; tracehead
= &trace
;
27 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcModule
].i
]) return;
28 ((abstractmetamodel___MMModule___init_t
)CALL( self
,COLOR_abstractmetamodel___MMModule___init
))( self
, variable3
/*name*/, variable2
/*dir*/, variable0
/*c*/, init_table
/*YYY*/) /*MMModule::init*/;
29 ATTR_syntax_base___MMSrcModule____node( self
) /*MMSrcModule::_node*/ = variable1
/*source*/;
30 variable4
= NEW_hash___HashMap___init(); /*new HashMap[Symbol, MMSrcLocalClass]*/
31 ATTR_syntax_base___MMSrcModule____src_local_classes( self
) /*MMSrcModule::_src_local_classes*/ = variable4
;
32 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcModule
].i
] = 1;
33 tracehead
= trace
.prev
;
36 val_t
syntax_base___MMGlobalClass___check_visibility(val_t self
, val_t param0
, val_t param1
, val_t param2
) {
37 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMGlobalClass___check_visibility
, 41};
52 trace
.prev
= tracehead
; tracehead
= &trace
;
56 variable4
= ((abstractmetamodel___MMGlobalClass___intro_t
)CALL( self
,COLOR_abstractmetamodel___MMGlobalClass___intro
))( self
) /*MMGlobalClass::intro*/;
57 variable4
= ((abstractmetamodel___MMLocalClass___module_t
)CALL(variable4
,COLOR_abstractmetamodel___MMLocalClass___module
))(variable4
) /*MMLocalClass::module*/;
58 variable3
= variable4
;
59 variable4
= TAG_Bool(( variable3
/*pm*/==NIT_NULL
) || VAL_ISA( variable3
/*pm*/, COLOR_MMSrcModule
, ID_MMSrcModule
)) /*cast MMSrcModule*/;
60 if (!UNTAG_Bool(variable4
)) { fprintf(stderr
, "Assert%s failed (%s: %d)\n", "", LOCATE_syntax_base___MMGlobalClass___check_visibility
, 44); nit_exit(1);}
61 variable5
= ((abstractmetamodel___MMModule___visibility_for_t
)CALL( variable2
/*cm*/,COLOR_abstractmetamodel___MMModule___visibility_for
))( variable2
/*cm*/, variable3
/*pm*/) /*MMSrcModule::visibility_for*/;
62 variable4
= variable5
;
63 variable5
= TAG_Bool(( variable4
/*vpm*/)==( TAG_Int(3)));
64 if (UNTAG_Bool(variable5
)) { /*if*/
65 variable3
= TAG_Bool(true);
68 variable5
= TAG_Bool(( variable4
/*vpm*/)==( TAG_Int(0)));
69 if (UNTAG_Bool(variable5
)) { /*if*/
70 variable5
= NEW_string___String___init(); /*new String*/
71 variable6
= NEW_string___String___with_native(BOX_NativeString("Visibility error: Class "), TAG_Int(24)); /*new String*/
72 variable7
= variable6
;
73 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
75 variable8
= ((string___String___to_s_t
)CALL(variable8
,COLOR_string___Object___to_s
))(variable8
) /*String::to_s*/;
76 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable8
) /*String::append*/;
77 variable9
= NEW_string___String___with_native(BOX_NativeString(" comes from the hidden module "), TAG_Int(30)); /*new String*/
78 variable10
= variable9
;
79 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable10
) /*String::append*/;
80 variable11
= variable2
/*cm*/;
81 variable11
= ((string___String___to_s_t
)CALL(variable11
,COLOR_string___Object___to_s
))(variable11
) /*String::to_s*/;
82 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable11
) /*String::append*/;
83 variable12
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
84 variable13
= variable12
;
85 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable13
) /*String::append*/;
86 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable1
/*n*/, variable5
) /*AbsSyntaxVisitor::error*/;
87 variable3
= TAG_Bool(false);
90 variable5
= ((abstractmetamodel___MMGlobalClass___visibility_level_t
)CALL( self
,COLOR_abstractmetamodel___MMGlobalClass___visibility_level
))( self
) /*MMGlobalClass::visibility_level*/;
91 variable5
= TAG_Bool(UNTAG_Int(variable5
)>=UNTAG_Int( TAG_Int(3)));
92 if (UNTAG_Bool(variable5
)) { /*if*/
93 variable5
= NEW_string___String___init(); /*new String*/
94 variable6
= NEW_string___String___with_native(BOX_NativeString("Visibility error: Class "), TAG_Int(24)); /*new String*/
95 variable7
= variable6
;
96 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
98 variable8
= ((string___String___to_s_t
)CALL(variable8
,COLOR_string___Object___to_s
))(variable8
) /*String::to_s*/;
99 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable8
) /*String::append*/;
100 variable9
= NEW_string___String___with_native(BOX_NativeString(" is private."), TAG_Int(12)); /*new String*/
101 variable10
= variable9
;
102 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable10
) /*String::append*/;
103 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable1
/*n*/, variable5
) /*AbsSyntaxVisitor::error*/;
104 variable3
= TAG_Bool(false);
109 variable3
= TAG_Bool(true);
111 return_label1
: while(false);
112 tracehead
= trace
.prev
;
115 val_t
syntax_base___MMSrcLocalClass___nodes(val_t self
) {
116 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMSrcLocalClass___nodes
, 62};
117 trace
.prev
= tracehead
; tracehead
= &trace
;
118 tracehead
= trace
.prev
;
119 return ATTR_syntax_base___MMSrcLocalClass____nodes( self
) /*MMSrcLocalClass::_nodes*/;
121 val_t
syntax_base___MMSrcLocalClass___formal_dict(val_t self
) {
122 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMSrcLocalClass___formal_dict
, 65};
123 trace
.prev
= tracehead
; tracehead
= &trace
;
124 tracehead
= trace
.prev
;
125 return ATTR_syntax_base___MMSrcLocalClass____formal_dict( self
) /*MMSrcLocalClass::_formal_dict*/;
127 void syntax_base___MMSrcLocalClass___formal_dict__eq(val_t self
, val_t param0
) {
128 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMSrcLocalClass___formal_dict__eq
, 65};
129 trace
.prev
= tracehead
; tracehead
= &trace
;
130 ATTR_syntax_base___MMSrcLocalClass____formal_dict( self
) /*MMSrcLocalClass::_formal_dict*/ = param0
;
131 tracehead
= trace
.prev
;
134 val_t
syntax_base___MMSrcLocalClass___src_local_properties(val_t self
) {
135 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMSrcLocalClass___src_local_properties
, 68};
136 trace
.prev
= tracehead
; tracehead
= &trace
;
137 tracehead
= trace
.prev
;
138 return ATTR_syntax_base___MMSrcLocalClass____src_local_properties( self
) /*MMSrcLocalClass::_src_local_properties*/;
140 void syntax_base___MMSrcLocalClass___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
141 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMSrcLocalClass___init
, 71};
146 trace
.prev
= tracehead
; tracehead
= &trace
;
150 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcLocalClass
].i
]) return;
151 ((abstractmetamodel___MMLocalClass___init_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalClass___init
))( self
, variable0
/*n*/, variable2
/*a*/, init_table
/*YYY*/) /*MMLocalClass::init*/;
152 variable3
= NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[PClassdef]*/
153 ((array___AbstractArray___add_t
)CALL(variable3
,COLOR_abstract_collection___SimpleCollection___add
))(variable3
, variable1
/*cla*/) /*Array::add*/;
154 ATTR_syntax_base___MMSrcLocalClass____nodes( self
) /*MMSrcLocalClass::_nodes*/ = variable3
;
155 variable3
= NEW_hash___HashMap___init(); /*new HashMap[Symbol, MMSrcLocalProperty]*/
156 ATTR_syntax_base___MMSrcLocalClass____src_local_properties( self
) /*MMSrcLocalClass::_src_local_properties*/ = variable3
;
157 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcLocalClass
].i
] = 1;
158 tracehead
= trace
.prev
;
161 val_t
syntax_base___MMGlobalProperty___check_visibility(val_t self
, val_t param0
, val_t param1
, val_t param2
, val_t param3
) {
162 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMGlobalProperty___check_visibility
, 80};
178 trace
.prev
= tracehead
; tracehead
= &trace
;
183 variable5
= ((abstractmetamodel___MMGlobalProperty___local_class_t
)CALL( self
,COLOR_abstractmetamodel___MMGlobalProperty___local_class
))( self
) /*MMGlobalProperty::local_class*/;
184 variable5
= ((abstractmetamodel___MMLocalClass___module_t
)CALL(variable5
,COLOR_abstractmetamodel___MMLocalClass___module
))(variable5
) /*MMLocalClass::module*/;
185 variable4
= variable5
;
186 variable5
= TAG_Bool(( variable4
/*pm*/==NIT_NULL
) || VAL_ISA( variable4
/*pm*/, COLOR_MMSrcModule
, ID_MMSrcModule
)) /*cast MMSrcModule*/;
187 if (!UNTAG_Bool(variable5
)) { fprintf(stderr
, "Assert%s failed (%s: %d)\n", "", LOCATE_syntax_base___MMGlobalProperty___check_visibility
, 83); nit_exit(1);}
188 variable6
= ((abstractmetamodel___MMModule___visibility_for_t
)CALL( variable2
/*cm*/,COLOR_abstractmetamodel___MMModule___visibility_for
))( variable2
/*cm*/, variable4
/*pm*/) /*MMSrcModule::visibility_for*/;
189 variable5
= variable6
;
190 variable6
= TAG_Bool(( variable5
/*vpm*/)==( TAG_Int(3)));
191 if (UNTAG_Bool(variable6
)) { /*if*/
192 variable4
= TAG_Bool(true);
195 variable6
= TAG_Bool(( variable5
/*vpm*/)==( TAG_Int(0)));
196 if (UNTAG_Bool(variable6
)) { /*if*/
197 variable6
= NEW_string___String___init(); /*new String*/
198 variable7
= NEW_string___String___with_native(BOX_NativeString("Visibility error: Property "), TAG_Int(27)); /*new String*/
199 variable8
= variable7
;
200 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
202 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
203 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable9
) /*String::append*/;
204 variable10
= NEW_string___String___with_native(BOX_NativeString(" comes from the hidden module "), TAG_Int(30)); /*new String*/
205 variable11
= variable10
;
206 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable11
) /*String::append*/;
207 variable12
= variable2
/*cm*/;
208 variable12
= ((string___String___to_s_t
)CALL(variable12
,COLOR_string___Object___to_s
))(variable12
) /*String::to_s*/;
209 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable12
) /*String::append*/;
210 variable13
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
211 variable14
= variable13
;
212 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable14
) /*String::append*/;
213 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable1
/*n*/, variable6
) /*AbsSyntaxVisitor::error*/;
214 variable4
= TAG_Bool(false);
217 variable6
= ((abstractmetamodel___MMGlobalProperty___visibility_level_t
)CALL( self
,COLOR_abstractmetamodel___MMGlobalProperty___visibility_level
))( self
) /*MMGlobalProperty::visibility_level*/;
218 variable6
= TAG_Bool(UNTAG_Int(variable6
)>=UNTAG_Int( TAG_Int(3)));
219 if (UNTAG_Bool(variable6
)) { /*if*/
220 variable6
= NEW_string___String___init(); /*new String*/
221 variable7
= NEW_string___String___with_native(BOX_NativeString("Visibility error: Property "), TAG_Int(27)); /*new String*/
222 variable8
= variable7
;
223 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
225 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
226 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable9
) /*String::append*/;
227 variable10
= NEW_string___String___with_native(BOX_NativeString(" is private."), TAG_Int(12)); /*new String*/
228 variable11
= variable10
;
229 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable11
) /*String::append*/;
230 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable1
/*n*/, variable6
) /*AbsSyntaxVisitor::error*/;
231 variable4
= TAG_Bool(false);
234 variable6
= ((abstractmetamodel___MMGlobalProperty___visibility_level_t
)CALL( self
,COLOR_abstractmetamodel___MMGlobalProperty___visibility_level
))( self
) /*MMGlobalProperty::visibility_level*/;
235 variable6
= TAG_Bool(UNTAG_Int(variable6
)>=UNTAG_Int( TAG_Int(2)));
236 variable7
= variable6
;
237 if (UNTAG_Bool(variable7
)) { /* and */
238 variable7
= TAG_Bool(!UNTAG_Bool( variable3
/*allows_protected*/));
240 variable6
= variable7
;
241 if (UNTAG_Bool(variable6
)) { /*if*/
242 variable6
= NEW_string___String___init(); /*new String*/
243 variable7
= NEW_string___String___with_native(BOX_NativeString("Visibility error: Property "), TAG_Int(27)); /*new String*/
244 variable8
= variable7
;
245 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
247 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
248 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable9
) /*String::append*/;
249 variable10
= NEW_string___String___with_native(BOX_NativeString(" is protected and can only acceded by self."), TAG_Int(43)); /*new String*/
250 variable11
= variable10
;
251 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable11
) /*String::append*/;
252 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable1
/*n*/, variable6
) /*AbsSyntaxVisitor::error*/;
253 variable4
= TAG_Bool(false);
259 variable4
= TAG_Bool(true);
261 return_label3
: while(false);
262 tracehead
= trace
.prev
;
265 val_t
syntax_base___MMSrcLocalProperty___node(val_t self
) {
266 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMSrcLocalProperty___node
, 108};
267 trace
.prev
= tracehead
; tracehead
= &trace
;
268 tracehead
= trace
.prev
;
269 return ATTR_syntax_base___MMSrcLocalProperty____node( self
) /*MMSrcLocalProperty::_node*/;
271 void syntax_base___MMSrcAttribute___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
272 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMSrcAttribute___init
, 116};
276 trace
.prev
= tracehead
; tracehead
= &trace
;
280 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcAttribute
].i
]) return;
281 ((abstractmetamodel___MMLocalProperty___init_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalProperty___init
))( self
, variable0
/*name*/, variable1
/*cla*/, self
, init_table
/*YYY*/) /*MMLocalProperty::init*/;
282 ATTR_syntax_base___MMSrcLocalProperty____node( self
) /*MMSrcAttribute::_node*/ = variable2
/*n*/;
283 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcAttribute
].i
] = 1;
284 tracehead
= trace
.prev
;
287 void syntax_base___MMReadImplementationMethod___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
288 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMReadImplementationMethod___init
, 139};
292 trace
.prev
= tracehead
; tracehead
= &trace
;
296 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMReadImplementationMethod
].i
]) return;
297 ((abstractmetamodel___MMLocalProperty___init_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalProperty___init
))( self
, variable0
/*name*/, variable1
/*cla*/, self
, init_table
/*YYY*/) /*MMLocalProperty::init*/;
298 ATTR_syntax_base___MMSrcLocalProperty____node( self
) /*MMReadImplementationMethod::_node*/ = variable2
/*n*/;
299 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMReadImplementationMethod
].i
] = 1;
300 tracehead
= trace
.prev
;
303 void syntax_base___MMWriteImplementationMethod___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
304 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMWriteImplementationMethod___init
, 150};
308 trace
.prev
= tracehead
; tracehead
= &trace
;
312 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMWriteImplementationMethod
].i
]) return;
313 ((abstractmetamodel___MMLocalProperty___init_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalProperty___init
))( self
, variable0
/*name*/, variable1
/*cla*/, self
, init_table
/*YYY*/) /*MMLocalProperty::init*/;
314 ATTR_syntax_base___MMSrcLocalProperty____node( self
) /*MMWriteImplementationMethod::_node*/ = variable2
/*n*/;
315 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMWriteImplementationMethod
].i
] = 1;
316 tracehead
= trace
.prev
;
319 void syntax_base___MMMethSrcMethod___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
320 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMMethSrcMethod___init
, 162};
324 trace
.prev
= tracehead
; tracehead
= &trace
;
328 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMMethSrcMethod
].i
]) return;
329 ((abstractmetamodel___MMLocalProperty___init_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalProperty___init
))( self
, variable0
/*name*/, variable1
/*cla*/, self
, init_table
/*YYY*/) /*MMLocalProperty::init*/;
330 ATTR_syntax_base___MMSrcLocalProperty____node( self
) /*MMMethSrcMethod::_node*/ = variable2
/*n*/;
331 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMMethSrcMethod
].i
] = 1;
332 tracehead
= trace
.prev
;
335 void syntax_base___MMSrcTypeProperty___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, int* init_table
) {
336 struct trace_t trace
= {NULL
, LOCATE_syntax_base___MMSrcTypeProperty___init
, 173};
340 trace
.prev
= tracehead
; tracehead
= &trace
;
344 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcTypeProperty
].i
]) return;
345 ((abstractmetamodel___MMLocalProperty___init_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalProperty___init
))( self
, variable0
/*name*/, variable1
/*cla*/, self
, init_table
/*YYY*/) /*MMLocalProperty::init*/;
346 ATTR_syntax_base___MMSrcLocalProperty____node( self
) /*MMSrcTypeProperty::_node*/ = variable2
/*n*/;
347 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcTypeProperty
].i
] = 1;
348 tracehead
= trace
.prev
;
351 val_t
syntax_base___Variable___name(val_t self
) {
352 struct trace_t trace
= {NULL
, LOCATE_syntax_base___Variable___name
, 183};
353 trace
.prev
= tracehead
; tracehead
= &trace
;
354 tracehead
= trace
.prev
;
355 return ATTR_syntax_base___Variable____name( self
) /*Variable::_name*/;
357 val_t
syntax_base___Variable___decl(val_t self
) {
358 struct trace_t trace
= {NULL
, LOCATE_syntax_base___Variable___decl
, 186};
359 trace
.prev
= tracehead
; tracehead
= &trace
;
360 tracehead
= trace
.prev
;
361 return ATTR_syntax_base___Variable____decl( self
) /*Variable::_decl*/;
363 val_t
syntax_base___Variable___stype(val_t self
) {
364 struct trace_t trace
= {NULL
, LOCATE_syntax_base___Variable___stype
, 189};
365 trace
.prev
= tracehead
; tracehead
= &trace
;
366 tracehead
= trace
.prev
;
367 return ATTR_syntax_base___Variable____stype( self
) /*Variable::_stype*/;
369 void syntax_base___Variable___stype__eq(val_t self
, val_t param0
) {
370 struct trace_t trace
= {NULL
, LOCATE_syntax_base___Variable___stype__eq
, 189};
371 trace
.prev
= tracehead
; tracehead
= &trace
;
372 ATTR_syntax_base___Variable____stype( self
) /*Variable::_stype*/ = param0
;
373 tracehead
= trace
.prev
;
376 void syntax_base___Variable___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
377 struct trace_t trace
= {NULL
, LOCATE_syntax_base___Variable___init
, 192};
381 trace
.prev
= tracehead
; tracehead
= &trace
;
384 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_Variable
].i
]) return;
385 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0
/*n*/ == NIT_NULL
/*null*/) || (( variable0
/*n*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable0
/*n*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable0
/*n*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable0
/*n*/,COLOR_kernel___Object_____eqeq
))( variable0
/*n*/, NIT_NULL
/*null*/) /*Symbol::==*/)))))));
386 if (!UNTAG_Bool(variable2
)) { fprintf(stderr
, "Assert%s failed (%s: %d)\n", "", LOCATE_syntax_base___Variable___init
, 194); nit_exit(1);}
387 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable1
/*d*/ == NIT_NULL
/*null*/) || (( variable1
/*d*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable1
/*d*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable1
/*d*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable1
/*d*/,COLOR_kernel___Object_____eqeq
))( variable1
/*d*/, NIT_NULL
/*null*/) /*PNode::==*/)))))));
388 if (!UNTAG_Bool(variable2
)) { fprintf(stderr
, "Assert%s failed (%s: %d)\n", "", LOCATE_syntax_base___Variable___init
, 195); nit_exit(1);}
389 ATTR_syntax_base___Variable____name( self
) /*Variable::_name*/ = variable0
/*n*/;
390 ATTR_syntax_base___Variable____decl( self
) /*Variable::_decl*/ = variable1
/*d*/;
391 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_Variable
].i
] = 1;
392 tracehead
= trace
.prev
;
395 val_t
syntax_base___AbsSyntaxVisitor___type_bool(val_t self
) {
396 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___type_bool
, 206};
399 static val_t once_value_variable1_11
; static int once_bool_variable1_11
;
400 trace
.prev
= tracehead
; tracehead
= &trace
;
401 variable0
= ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
402 if (once_bool_variable1_11
) variable1
= once_value_variable1_11
;
404 variable1
= NEW_string___String___with_native(BOX_NativeString("Bool"), TAG_Int(4)); /*new String*/
405 variable1
= ((symbol___String___to_symbol_t
)CALL(variable1
,COLOR_symbol___String___to_symbol
))(variable1
) /*String::to_symbol*/;
406 once_value_variable1_11
= variable1
;
407 once_bool_variable1_11
= true;
409 variable0
= ((abstractmetamodel___MMModule___class_by_name_t
)CALL(variable0
,COLOR_abstractmetamodel___MMModule___class_by_name
))(variable0
, variable1
) /*MMSrcModule::class_by_name*/;
410 variable0
= ((genericity___MMLocalClass___get_type_t
)CALL(variable0
,COLOR_static_type___MMLocalClass___get_type
))(variable0
) /*MMLocalClass::get_type*/;
412 return_label10
: while(false);
413 tracehead
= trace
.prev
;
416 val_t
syntax_base___AbsSyntaxVisitor___type_int(val_t self
) {
417 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___type_int
, 212};
420 static val_t once_value_variable1_13
; static int once_bool_variable1_13
;
421 trace
.prev
= tracehead
; tracehead
= &trace
;
422 variable0
= ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
423 if (once_bool_variable1_13
) variable1
= once_value_variable1_13
;
425 variable1
= NEW_string___String___with_native(BOX_NativeString("Int"), TAG_Int(3)); /*new String*/
426 variable1
= ((symbol___String___to_symbol_t
)CALL(variable1
,COLOR_symbol___String___to_symbol
))(variable1
) /*String::to_symbol*/;
427 once_value_variable1_13
= variable1
;
428 once_bool_variable1_13
= true;
430 variable0
= ((abstractmetamodel___MMModule___class_by_name_t
)CALL(variable0
,COLOR_abstractmetamodel___MMModule___class_by_name
))(variable0
, variable1
) /*MMSrcModule::class_by_name*/;
431 variable0
= ((genericity___MMLocalClass___get_type_t
)CALL(variable0
,COLOR_static_type___MMLocalClass___get_type
))(variable0
) /*MMLocalClass::get_type*/;
433 return_label12
: while(false);
434 tracehead
= trace
.prev
;
437 val_t
syntax_base___AbsSyntaxVisitor___type_float(val_t self
) {
438 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___type_float
, 218};
441 static val_t once_value_variable1_15
; static int once_bool_variable1_15
;
442 trace
.prev
= tracehead
; tracehead
= &trace
;
443 variable0
= ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
444 if (once_bool_variable1_15
) variable1
= once_value_variable1_15
;
446 variable1
= NEW_string___String___with_native(BOX_NativeString("Float"), TAG_Int(5)); /*new String*/
447 variable1
= ((symbol___String___to_symbol_t
)CALL(variable1
,COLOR_symbol___String___to_symbol
))(variable1
) /*String::to_symbol*/;
448 once_value_variable1_15
= variable1
;
449 once_bool_variable1_15
= true;
451 variable0
= ((abstractmetamodel___MMModule___class_by_name_t
)CALL(variable0
,COLOR_abstractmetamodel___MMModule___class_by_name
))(variable0
, variable1
) /*MMSrcModule::class_by_name*/;
452 variable0
= ((genericity___MMLocalClass___get_type_t
)CALL(variable0
,COLOR_static_type___MMLocalClass___get_type
))(variable0
) /*MMLocalClass::get_type*/;
454 return_label14
: while(false);
455 tracehead
= trace
.prev
;
458 val_t
syntax_base___AbsSyntaxVisitor___type_char(val_t self
) {
459 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___type_char
, 224};
462 static val_t once_value_variable1_17
; static int once_bool_variable1_17
;
463 trace
.prev
= tracehead
; tracehead
= &trace
;
464 variable0
= ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
465 if (once_bool_variable1_17
) variable1
= once_value_variable1_17
;
467 variable1
= NEW_string___String___with_native(BOX_NativeString("Char"), TAG_Int(4)); /*new String*/
468 variable1
= ((symbol___String___to_symbol_t
)CALL(variable1
,COLOR_symbol___String___to_symbol
))(variable1
) /*String::to_symbol*/;
469 once_value_variable1_17
= variable1
;
470 once_bool_variable1_17
= true;
472 variable0
= ((abstractmetamodel___MMModule___class_by_name_t
)CALL(variable0
,COLOR_abstractmetamodel___MMModule___class_by_name
))(variable0
, variable1
) /*MMSrcModule::class_by_name*/;
473 variable0
= ((genericity___MMLocalClass___get_type_t
)CALL(variable0
,COLOR_static_type___MMLocalClass___get_type
))(variable0
) /*MMLocalClass::get_type*/;
475 return_label16
: while(false);
476 tracehead
= trace
.prev
;
479 val_t
syntax_base___AbsSyntaxVisitor___type_string(val_t self
) {
480 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___type_string
, 230};
483 static val_t once_value_variable1_19
; static int once_bool_variable1_19
;
484 trace
.prev
= tracehead
; tracehead
= &trace
;
485 variable0
= ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
486 if (once_bool_variable1_19
) variable1
= once_value_variable1_19
;
488 variable1
= NEW_string___String___with_native(BOX_NativeString("String"), TAG_Int(6)); /*new String*/
489 variable1
= ((symbol___String___to_symbol_t
)CALL(variable1
,COLOR_symbol___String___to_symbol
))(variable1
) /*String::to_symbol*/;
490 once_value_variable1_19
= variable1
;
491 once_bool_variable1_19
= true;
493 variable0
= ((abstractmetamodel___MMModule___class_by_name_t
)CALL(variable0
,COLOR_abstractmetamodel___MMModule___class_by_name
))(variable0
, variable1
) /*MMSrcModule::class_by_name*/;
494 variable0
= ((genericity___MMLocalClass___get_type_t
)CALL(variable0
,COLOR_static_type___MMLocalClass___get_type
))(variable0
) /*MMLocalClass::get_type*/;
496 return_label18
: while(false);
497 tracehead
= trace
.prev
;
500 val_t
syntax_base___AbsSyntaxVisitor___type_collection(val_t self
) {
501 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___type_collection
, 236};
504 static val_t once_value_variable1_21
; static int once_bool_variable1_21
;
505 trace
.prev
= tracehead
; tracehead
= &trace
;
506 variable0
= ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
507 if (once_bool_variable1_21
) variable1
= once_value_variable1_21
;
509 variable1
= NEW_string___String___with_native(BOX_NativeString("Collection"), TAG_Int(10)); /*new String*/
510 variable1
= ((symbol___String___to_symbol_t
)CALL(variable1
,COLOR_symbol___String___to_symbol
))(variable1
) /*String::to_symbol*/;
511 once_value_variable1_21
= variable1
;
512 once_bool_variable1_21
= true;
514 variable0
= ((abstractmetamodel___MMModule___class_by_name_t
)CALL(variable0
,COLOR_abstractmetamodel___MMModule___class_by_name
))(variable0
, variable1
) /*MMSrcModule::class_by_name*/;
515 variable0
= ((genericity___MMLocalClass___get_type_t
)CALL(variable0
,COLOR_static_type___MMLocalClass___get_type
))(variable0
) /*MMLocalClass::get_type*/;
517 return_label20
: while(false);
518 tracehead
= trace
.prev
;
521 val_t
syntax_base___AbsSyntaxVisitor___type_array(val_t self
, val_t param0
) {
522 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___type_array
, 242};
526 static val_t once_value_variable2_23
; static int once_bool_variable2_23
;
527 trace
.prev
= tracehead
; tracehead
= &trace
;
529 variable1
= ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
530 if (once_bool_variable2_23
) variable2
= once_value_variable2_23
;
532 variable2
= NEW_string___String___with_native(BOX_NativeString("Array"), TAG_Int(5)); /*new String*/
533 variable2
= ((symbol___String___to_symbol_t
)CALL(variable2
,COLOR_symbol___String___to_symbol
))(variable2
) /*String::to_symbol*/;
534 once_value_variable2_23
= variable2
;
535 once_bool_variable2_23
= true;
537 variable1
= ((abstractmetamodel___MMModule___class_by_name_t
)CALL(variable1
,COLOR_abstractmetamodel___MMModule___class_by_name
))(variable1
, variable2
) /*MMSrcModule::class_by_name*/;
538 variable2
= NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[MMType]*/
539 ((array___AbstractArray___add_t
)CALL(variable2
,COLOR_abstract_collection___SimpleCollection___add
))(variable2
, variable0
/*stype*/) /*Array::add*/;
540 variable1
= ((genericity___MMLocalClass___get_instantiate_type_t
)CALL(variable1
,COLOR_genericity___MMLocalClass___get_instantiate_type
))(variable1
, variable2
) /*MMLocalClass::get_instantiate_type*/;
542 return_label22
: while(false);
543 tracehead
= trace
.prev
;
546 val_t
syntax_base___AbsSyntaxVisitor___type_discrete(val_t self
) {
547 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___type_discrete
, 248};
550 static val_t once_value_variable1_25
; static int once_bool_variable1_25
;
551 trace
.prev
= tracehead
; tracehead
= &trace
;
552 variable0
= ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
553 if (once_bool_variable1_25
) variable1
= once_value_variable1_25
;
555 variable1
= NEW_string___String___with_native(BOX_NativeString("Discrete"), TAG_Int(8)); /*new String*/
556 variable1
= ((symbol___String___to_symbol_t
)CALL(variable1
,COLOR_symbol___String___to_symbol
))(variable1
) /*String::to_symbol*/;
557 once_value_variable1_25
= variable1
;
558 once_bool_variable1_25
= true;
560 variable0
= ((abstractmetamodel___MMModule___class_by_name_t
)CALL(variable0
,COLOR_abstractmetamodel___MMModule___class_by_name
))(variable0
, variable1
) /*MMSrcModule::class_by_name*/;
561 variable0
= ((genericity___MMLocalClass___get_type_t
)CALL(variable0
,COLOR_static_type___MMLocalClass___get_type
))(variable0
) /*MMLocalClass::get_type*/;
563 return_label24
: while(false);
564 tracehead
= trace
.prev
;
567 val_t
syntax_base___AbsSyntaxVisitor___type_range(val_t self
, val_t param0
) {
568 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___type_range
, 254};
572 static val_t once_value_variable2_27
; static int once_bool_variable2_27
;
573 trace
.prev
= tracehead
; tracehead
= &trace
;
575 variable1
= ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
576 if (once_bool_variable2_27
) variable2
= once_value_variable2_27
;
578 variable2
= NEW_string___String___with_native(BOX_NativeString("Range"), TAG_Int(5)); /*new String*/
579 variable2
= ((symbol___String___to_symbol_t
)CALL(variable2
,COLOR_symbol___String___to_symbol
))(variable2
) /*String::to_symbol*/;
580 once_value_variable2_27
= variable2
;
581 once_bool_variable2_27
= true;
583 variable1
= ((abstractmetamodel___MMModule___class_by_name_t
)CALL(variable1
,COLOR_abstractmetamodel___MMModule___class_by_name
))(variable1
, variable2
) /*MMSrcModule::class_by_name*/;
584 variable2
= NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[MMType]*/
585 ((array___AbstractArray___add_t
)CALL(variable2
,COLOR_abstract_collection___SimpleCollection___add
))(variable2
, variable0
/*stype*/) /*Array::add*/;
586 variable1
= ((genericity___MMLocalClass___get_instantiate_type_t
)CALL(variable1
,COLOR_genericity___MMLocalClass___get_instantiate_type
))(variable1
, variable2
) /*MMLocalClass::get_instantiate_type*/;
588 return_label26
: while(false);
589 tracehead
= trace
.prev
;
592 val_t
syntax_base___AbsSyntaxVisitor___type_none(val_t self
) {
593 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___type_none
, 260};
595 trace
.prev
= tracehead
; tracehead
= &trace
;
596 variable0
= ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
597 variable0
= ((static_type___MMModule___type_none_t
)CALL(variable0
,COLOR_static_type___MMModule___type_none
))(variable0
) /*MMSrcModule::type_none*/;
599 return_label28
: while(false);
600 tracehead
= trace
.prev
;
603 val_t
syntax_base___AbsSyntaxVisitor___module(val_t self
) {
604 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___module
, 266};
605 trace
.prev
= tracehead
; tracehead
= &trace
;
606 tracehead
= trace
.prev
;
607 return ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/;
609 void syntax_base___AbsSyntaxVisitor___module__eq(val_t self
, val_t param0
) {
610 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___module__eq
, 266};
611 trace
.prev
= tracehead
; tracehead
= &trace
;
612 ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/ = param0
;
613 tracehead
= trace
.prev
;
616 val_t
syntax_base___AbsSyntaxVisitor___local_class(val_t self
) {
617 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___local_class
, 269};
618 trace
.prev
= tracehead
; tracehead
= &trace
;
619 tracehead
= trace
.prev
;
620 return ATTR_syntax_base___AbsSyntaxVisitor____local_class( self
) /*AbsSyntaxVisitor::_local_class*/;
622 void syntax_base___AbsSyntaxVisitor___local_class__eq(val_t self
, val_t param0
) {
623 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___local_class__eq
, 269};
624 trace
.prev
= tracehead
; tracehead
= &trace
;
625 ATTR_syntax_base___AbsSyntaxVisitor____local_class( self
) /*AbsSyntaxVisitor::_local_class*/ = param0
;
626 tracehead
= trace
.prev
;
629 val_t
syntax_base___AbsSyntaxVisitor___local_property(val_t self
) {
630 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___local_property
, 272};
631 trace
.prev
= tracehead
; tracehead
= &trace
;
632 tracehead
= trace
.prev
;
633 return ATTR_syntax_base___AbsSyntaxVisitor____local_property( self
) /*AbsSyntaxVisitor::_local_property*/;
635 void syntax_base___AbsSyntaxVisitor___local_property__eq(val_t self
, val_t param0
) {
636 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___local_property__eq
, 272};
637 trace
.prev
= tracehead
; tracehead
= &trace
;
638 ATTR_syntax_base___AbsSyntaxVisitor____local_property( self
) /*AbsSyntaxVisitor::_local_property*/ = param0
;
639 tracehead
= trace
.prev
;
642 val_t
syntax_base___AbsSyntaxVisitor___tc(val_t self
) {
643 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___tc
, 275};
644 trace
.prev
= tracehead
; tracehead
= &trace
;
645 tracehead
= trace
.prev
;
646 return ATTR_syntax_base___AbsSyntaxVisitor____tc( self
) /*AbsSyntaxVisitor::_tc*/;
648 void syntax_base___AbsSyntaxVisitor___error(val_t self
, val_t param0
, val_t param1
) {
649 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___error
, 278};
663 trace
.prev
= tracehead
; tracehead
= &trace
;
666 variable2
= ATTR_syntax_base___AbsSyntaxVisitor____tc( self
) /*AbsSyntaxVisitor::_tc*/;
667 variable3
= NEW_string___String___init(); /*new String*/
668 variable4
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
669 variable5
= variable4
;
670 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable5
) /*String::append*/;
671 variable6
= ((parser_prod___PNode___locate_t
)CALL( variable0
/*n*/,COLOR_parser_prod___PNode___locate
))( variable0
/*n*/) /*PNode::locate*/;
672 variable7
= variable6
;
673 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable7
) /*String::append*/;
674 variable8
= NEW_string___String___with_native(BOX_NativeString(": "), TAG_Int(2)); /*new String*/
675 variable9
= variable8
;
676 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable9
) /*String::append*/;
677 variable10
= variable1
/*s*/;
678 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable10
) /*String::append*/;
679 variable11
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
680 variable12
= variable11
;
681 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable12
) /*String::append*/;
682 ((mmloader___ToolContext___error_t
)CALL(variable2
,COLOR_mmloader___ToolContext___error
))(variable2
, variable3
) /*ToolContext::error*/;
683 tracehead
= trace
.prev
;
686 void syntax_base___AbsSyntaxVisitor___warning(val_t self
, val_t param0
, val_t param1
) {
687 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___warning
, 284};
701 trace
.prev
= tracehead
; tracehead
= &trace
;
704 variable2
= ATTR_syntax_base___AbsSyntaxVisitor____tc( self
) /*AbsSyntaxVisitor::_tc*/;
705 variable3
= NEW_string___String___init(); /*new String*/
706 variable4
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
707 variable5
= variable4
;
708 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable5
) /*String::append*/;
709 variable6
= ((parser_prod___PNode___locate_t
)CALL( variable0
/*n*/,COLOR_parser_prod___PNode___locate
))( variable0
/*n*/) /*PNode::locate*/;
710 variable7
= variable6
;
711 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable7
) /*String::append*/;
712 variable8
= NEW_string___String___with_native(BOX_NativeString(": "), TAG_Int(2)); /*new String*/
713 variable9
= variable8
;
714 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable9
) /*String::append*/;
715 variable10
= variable1
/*s*/;
716 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable10
) /*String::append*/;
717 variable11
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
718 variable12
= variable11
;
719 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable12
) /*String::append*/;
720 ((mmloader___ToolContext___warning_t
)CALL(variable2
,COLOR_mmloader___ToolContext___warning
))(variable2
, variable3
) /*ToolContext::warning*/;
721 tracehead
= trace
.prev
;
724 val_t
syntax_base___AbsSyntaxVisitor___check_conform(val_t self
, val_t param0
, val_t param1
, val_t param2
) {
725 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___check_conform
, 290};
738 trace
.prev
= tracehead
; tracehead
= &trace
;
742 variable3
= TAG_Bool(( variable2
/*stype*/ == NIT_NULL
/*null*/) || (( variable2
/*stype*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable2
/*stype*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable2
/*stype*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable2
/*stype*/,COLOR_kernel___Object_____eqeq
))( variable2
/*stype*/, NIT_NULL
/*null*/) /*MMType::==*/)))));
743 variable4
= variable3
;
744 if (!UNTAG_Bool(variable4
)) { /* or */
745 variable4
= TAG_Bool(( variable1
/*subtype*/ == NIT_NULL
/*null*/) || (( variable1
/*subtype*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable1
/*subtype*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable1
/*subtype*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable1
/*subtype*/,COLOR_kernel___Object_____eqeq
))( variable1
/*subtype*/, NIT_NULL
/*null*/) /*MMType::==*/)))));
747 variable3
= variable4
;
748 if (UNTAG_Bool(variable3
)) { /*if*/
749 variable3
= TAG_Bool(false);
752 variable3
= ((static_type___MMType_____l_t
)CALL( variable1
/*subtype*/,COLOR_static_type___MMType_____l
))( variable1
/*subtype*/, variable2
/*stype*/) /*MMType::<*/;
753 if (UNTAG_Bool(variable3
)) { /*if*/
754 variable3
= TAG_Bool(true);
757 variable3
= NEW_string___String___init(); /*new String*/
758 variable4
= NEW_string___String___with_native(BOX_NativeString("Type error: expected "), TAG_Int(21)); /*new String*/
759 variable5
= variable4
;
760 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable5
) /*String::append*/;
761 variable6
= variable2
/*stype*/;
762 variable6
= ((string___String___to_s_t
)CALL(variable6
,COLOR_string___Object___to_s
))(variable6
) /*String::to_s*/;
763 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable6
) /*String::append*/;
764 variable7
= NEW_string___String___with_native(BOX_NativeString(", got "), TAG_Int(6)); /*new String*/
765 variable8
= variable7
;
766 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable8
) /*String::append*/;
767 variable9
= variable1
/*subtype*/;
768 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
769 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable9
) /*String::append*/;
770 variable10
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
771 variable11
= variable10
;
772 ((string___String___append_t
)CALL(variable3
,COLOR_abstract_collection___IndexedCollection___append
))(variable3
, variable11
) /*String::append*/;
773 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( self
,COLOR_syntax_base___AbsSyntaxVisitor___error
))( self
, variable0
/*n*/, variable3
) /*AbsSyntaxVisitor::error*/;
774 variable3
= TAG_Bool(false);
776 return_label31
: while(false);
777 tracehead
= trace
.prev
;
780 void syntax_base___AbsSyntaxVisitor___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
781 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AbsSyntaxVisitor___init
, 304};
784 trace
.prev
= tracehead
; tracehead
= &trace
;
787 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_AbsSyntaxVisitor
].i
]) return;
788 ATTR_syntax_base___AbsSyntaxVisitor____tc( self
) /*AbsSyntaxVisitor::_tc*/ = variable0
/*tc*/;
789 ATTR_syntax_base___AbsSyntaxVisitor____module( self
) /*AbsSyntaxVisitor::_module*/ = variable1
/*module*/;
790 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_AbsSyntaxVisitor
].i
] = 1;
791 tracehead
= trace
.prev
;
794 void syntax_base___PNode___accept_abs_syntax_visitor(val_t self
, val_t param0
) {
795 struct trace_t trace
= {NULL
, LOCATE_syntax_base___PNode___accept_abs_syntax_visitor
, 314};
797 trace
.prev
= tracehead
; tracehead
= &trace
;
799 ((parser_prod___PNode___visit_all_t
)CALL( self
,COLOR_parser_prod___PNode___visit_all
))( self
, variable0
/*v*/) /*PNode::visit_all*/;
800 tracehead
= trace
.prev
;
803 val_t
syntax_base___Token___to_symbol(val_t self
) {
804 struct trace_t trace
= {NULL
, LOCATE_syntax_base___Token___to_symbol
, 320};
807 trace
.prev
= tracehead
; tracehead
= &trace
;
808 variable1
= ATTR_syntax_base___Token____symbol( self
) /*Token::_symbol*/;
809 variable0
= variable1
;
810 variable1
= TAG_Bool(( variable0
/*s*/ == NIT_NULL
/*null*/) || (( variable0
/*s*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable0
/*s*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable0
/*s*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable0
/*s*/,COLOR_kernel___Object_____eqeq
))( variable0
/*s*/, NIT_NULL
/*null*/) /*Symbol::==*/)))));
811 if (UNTAG_Bool(variable1
)) { /*if*/
812 variable1
= ((lexer___Token___text_t
)CALL( self
,COLOR_lexer___Token___text
))( self
) /*Token::text*/;
813 variable1
= ((symbol___String___to_symbol_t
)CALL(variable1
,COLOR_symbol___String___to_symbol
))(variable1
) /*String::to_symbol*/;
814 variable0
= variable1
/*s=*/;
815 ATTR_syntax_base___Token____symbol( self
) /*Token::_symbol*/ = variable0
/*s*/;
817 variable0
= variable0
/*s*/;
819 return_label34
: while(false);
820 tracehead
= trace
.prev
;
823 val_t
syntax_base___PClassdef___local_class(val_t self
) {
824 struct trace_t trace
= {NULL
, LOCATE_syntax_base___PClassdef___local_class
, 334};
825 trace
.prev
= tracehead
; tracehead
= &trace
;
826 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "local_class", LOCATE_syntax_base___Token___to_symbol
, 334);
828 tracehead
= trace
.prev
;
831 val_t
syntax_base___AAttrPropdef___prop(val_t self
) {
832 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AAttrPropdef___prop
, 339};
833 trace
.prev
= tracehead
; tracehead
= &trace
;
834 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "prop", LOCATE_syntax_base___Token___to_symbol
, 339);
836 tracehead
= trace
.prev
;
839 val_t
syntax_base___AAttrPropdef___readmethod(val_t self
) {
840 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AAttrPropdef___readmethod
, 342};
841 trace
.prev
= tracehead
; tracehead
= &trace
;
842 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "readmethod", LOCATE_syntax_base___Token___to_symbol
, 342);
844 tracehead
= trace
.prev
;
847 val_t
syntax_base___AAttrPropdef___writemethod(val_t self
) {
848 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AAttrPropdef___writemethod
, 345};
849 trace
.prev
= tracehead
; tracehead
= &trace
;
850 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "writemethod", LOCATE_syntax_base___Token___to_symbol
, 345);
852 tracehead
= trace
.prev
;
855 val_t
syntax_base___AMethPropdef___method(val_t self
) {
856 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AMethPropdef___method
, 350};
857 trace
.prev
= tracehead
; tracehead
= &trace
;
858 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "method", LOCATE_syntax_base___Token___to_symbol
, 350);
860 tracehead
= trace
.prev
;
863 val_t
syntax_base___ATypePropdef___prop(val_t self
) {
864 struct trace_t trace
= {NULL
, LOCATE_syntax_base___ATypePropdef___prop
, 355};
865 trace
.prev
= tracehead
; tracehead
= &trace
;
866 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "prop", LOCATE_syntax_base___Token___to_symbol
, 355);
868 tracehead
= trace
.prev
;
871 val_t
syntax_base___PParam___position(val_t self
) {
872 struct trace_t trace
= {NULL
, LOCATE_syntax_base___PParam___position
, 360};
873 trace
.prev
= tracehead
; tracehead
= &trace
;
874 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "position", LOCATE_syntax_base___Token___to_symbol
, 360);
876 tracehead
= trace
.prev
;
879 val_t
syntax_base___PParam___variable(val_t self
) {
880 struct trace_t trace
= {NULL
, LOCATE_syntax_base___PParam___variable
, 363};
881 trace
.prev
= tracehead
; tracehead
= &trace
;
882 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "variable", LOCATE_syntax_base___Token___to_symbol
, 363);
884 tracehead
= trace
.prev
;
887 val_t
syntax_base___PType___get_local_class(val_t self
, val_t param0
) {
888 struct trace_t trace
= {NULL
, LOCATE_syntax_base___PType___get_local_class
, 368};
889 trace
.prev
= tracehead
; tracehead
= &trace
;
890 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "get_local_class", LOCATE_syntax_base___Token___to_symbol
, 368);
892 tracehead
= trace
.prev
;
895 val_t
syntax_base___PType___get_stype(val_t self
, val_t param0
) {
896 struct trace_t trace
= {NULL
, LOCATE_syntax_base___PType___get_stype
, 373};
897 trace
.prev
= tracehead
; tracehead
= &trace
;
898 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "get_stype", LOCATE_syntax_base___Token___to_symbol
, 373);
900 tracehead
= trace
.prev
;
903 val_t
syntax_base___PType___get_unchecked_stype(val_t self
, val_t param0
) {
904 struct trace_t trace
= {NULL
, LOCATE_syntax_base___PType___get_unchecked_stype
, 377};
905 trace
.prev
= tracehead
; tracehead
= &trace
;
906 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "get_unchecked_stype", LOCATE_syntax_base___Token___to_symbol
, 377);
908 tracehead
= trace
.prev
;
911 void syntax_base___PType___check_conform(val_t self
, val_t param0
) {
912 struct trace_t trace
= {NULL
, LOCATE_syntax_base___PType___check_conform
, 383};
913 trace
.prev
= tracehead
; tracehead
= &trace
;
914 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "check_conform", LOCATE_syntax_base___Token___to_symbol
, 383);
916 tracehead
= trace
.prev
;
919 val_t
syntax_base___AType___get_local_class(val_t self
, val_t param0
) {
920 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AType___get_local_class
, 393};
935 trace
.prev
= tracehead
; tracehead
= &trace
;
937 variable2
= ((parser_nodes___AType___n_id_t
)CALL( self
,COLOR_parser_nodes___AType___n_id
))( self
) /*AType::n_id*/;
938 variable2
= ((syntax_base___Token___to_symbol_t
)CALL(variable2
,COLOR_syntax_base___Token___to_symbol
))(variable2
) /*TClassid::to_symbol*/;
939 variable1
= variable2
;
940 variable3
= ((syntax_base___AbsSyntaxVisitor___module_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___module
))( variable0
/*v*/) /*AbsSyntaxVisitor::module*/;
941 variable2
= variable3
;
942 variable4
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
943 variable3
= variable4
;
944 variable4
= ((syntax_base___MMSrcLocalClass___formal_dict_t
)CALL( variable3
/*cla*/,COLOR_syntax_base___MMSrcLocalClass___formal_dict
))( variable3
/*cla*/) /*MMSrcLocalClass::formal_dict*/;
945 variable4
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable4
== NIT_NULL
/*null*/) || ((variable4
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable4
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable4
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable4
,COLOR_kernel___Object_____eqeq
))(variable4
, NIT_NULL
/*null*/) /*Map::==*/)))))));
946 variable5
= variable4
;
947 if (UNTAG_Bool(variable5
)) { /* and */
948 variable5
= ((syntax_base___MMSrcLocalClass___formal_dict_t
)CALL( variable3
/*cla*/,COLOR_syntax_base___MMSrcLocalClass___formal_dict
))( variable3
/*cla*/) /*MMSrcLocalClass::formal_dict*/;
949 variable5
= ((abstract_collection___Map___has_key_t
)CALL(variable5
,COLOR_abstract_collection___Map___has_key
))(variable5
, variable1
/*name*/) /*Map::has_key*/;
951 variable4
= variable5
;
952 variable5
= variable4
;
953 if (!UNTAG_Bool(variable5
)) { /* or */
954 variable5
= ((abstractmetamodel___MMLocalClass___global_properties_t
)CALL( variable3
/*cla*/,COLOR_abstractmetamodel___MMLocalClass___global_properties
))( variable3
/*cla*/) /*MMSrcLocalClass::global_properties*/;
955 variable5
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable5
== NIT_NULL
/*null*/) || ((variable5
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable5
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable5
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable5
,COLOR_kernel___Object_____eqeq
))(variable5
, NIT_NULL
/*null*/) /*Set::==*/)))))));
956 variable6
= variable5
;
957 if (UNTAG_Bool(variable6
)) { /* and */
958 variable6
= ((abstractmetamodel___MMLocalClass___has_global_property_by_name_t
)CALL( variable3
/*cla*/,COLOR_abstractmetamodel___MMLocalClass___has_global_property_by_name
))( variable3
/*cla*/, variable1
/*name*/) /*MMSrcLocalClass::has_global_property_by_name*/;
960 variable5
= variable6
;
962 variable4
= variable5
;
963 if (UNTAG_Bool(variable4
)) { /*if*/
964 variable4
= ((parser_nodes___AType___n_id_t
)CALL( self
,COLOR_parser_nodes___AType___n_id
))( self
) /*AType::n_id*/;
965 variable5
= NEW_string___String___init(); /*new String*/
966 variable6
= NEW_string___String___with_native(BOX_NativeString("Type error: "), TAG_Int(12)); /*new String*/
967 variable7
= variable6
;
968 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
969 variable8
= variable1
/*name*/;
970 variable8
= ((string___String___to_s_t
)CALL(variable8
,COLOR_string___Object___to_s
))(variable8
) /*String::to_s*/;
971 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable8
) /*String::append*/;
972 variable9
= NEW_string___String___with_native(BOX_NativeString(" is a formal type"), TAG_Int(17)); /*new String*/
973 variable10
= variable9
;
974 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable10
) /*String::append*/;
975 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable4
, variable5
) /*AbsSyntaxVisitor::error*/;
976 ATTR_syntax_base___AType____stype_cached( self
) /*AType::_stype_cached*/ = TAG_Bool(true);
977 variable1
= NIT_NULL
/*null*/;
980 variable4
= ((abstractmetamodel___MMModule___has_global_class_named_t
)CALL( variable2
/*mod*/,COLOR_abstractmetamodel___MMModule___has_global_class_named
))( variable2
/*mod*/, variable1
/*name*/) /*MMSrcModule::has_global_class_named*/;
981 if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable4
)))) { /*if*/
982 variable4
= ((parser_nodes___AType___n_id_t
)CALL( self
,COLOR_parser_nodes___AType___n_id
))( self
) /*AType::n_id*/;
983 variable5
= NEW_string___String___init(); /*new String*/
984 variable6
= NEW_string___String___with_native(BOX_NativeString("Type error: class "), TAG_Int(18)); /*new String*/
985 variable7
= variable6
;
986 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
987 variable8
= variable1
/*name*/;
988 variable8
= ((string___String___to_s_t
)CALL(variable8
,COLOR_string___Object___to_s
))(variable8
) /*String::to_s*/;
989 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable8
) /*String::append*/;
990 variable9
= NEW_string___String___with_native(BOX_NativeString(" not found in module "), TAG_Int(21)); /*new String*/
991 variable10
= variable9
;
992 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable10
) /*String::append*/;
993 variable11
= variable2
/*mod*/;
994 variable11
= ((string___String___to_s_t
)CALL(variable11
,COLOR_string___Object___to_s
))(variable11
) /*String::to_s*/;
995 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable11
) /*String::append*/;
996 variable12
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
997 variable13
= variable12
;
998 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable13
) /*String::append*/;
999 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable4
, variable5
) /*AbsSyntaxVisitor::error*/;
1000 ATTR_syntax_base___AType____stype_cached( self
) /*AType::_stype_cached*/ = TAG_Bool(true);
1001 variable1
= NIT_NULL
/*null*/;
1002 goto return_label35
;
1004 variable5
= ((abstractmetamodel___MMModule___class_by_name_t
)CALL( variable2
/*mod*/,COLOR_abstractmetamodel___MMModule___class_by_name
))( variable2
/*mod*/, variable1
/*name*/) /*MMSrcModule::class_by_name*/;
1005 variable4
= variable5
;
1006 variable5
= ((abstractmetamodel___MMLocalClass___global_t
)CALL( variable4
/*local_class*/,COLOR_abstractmetamodel___MMLocalClass___global
))( variable4
/*local_class*/) /*MMLocalClass::global*/;
1007 ((syntax_base___MMGlobalClass___check_visibility_t
)CALL(variable5
,COLOR_syntax_base___MMGlobalClass___check_visibility
))(variable5
, variable0
/*v*/, self
, variable2
/*mod*/) /*MMGlobalClass::check_visibility*/;
1008 variable1
= variable4
/*local_class*/;
1009 goto return_label35
;
1010 return_label35
: while(false);
1011 tracehead
= trace
.prev
;
1014 val_t
syntax_base___AType___get_unchecked_stype(val_t self
, val_t param0
) {
1015 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AType___get_unchecked_stype
, 416};
1035 trace
.prev
= tracehead
; tracehead
= &trace
;
1037 variable1
= ATTR_syntax_base___AType____stype_cached( self
) /*AType::_stype_cached*/;
1038 if (UNTAG_Bool(variable1
)) { /*if*/
1039 variable1
= ATTR_syntax_base___AType____stype_cache( self
) /*AType::_stype_cache*/;
1040 goto return_label36
;
1042 ATTR_syntax_base___AType____stype_cached( self
) /*AType::_stype_cached*/ = TAG_Bool(true);
1043 variable2
= ((parser_nodes___AType___n_id_t
)CALL( self
,COLOR_parser_nodes___AType___n_id
))( self
) /*AType::n_id*/;
1044 variable2
= ((syntax_base___Token___to_symbol_t
)CALL(variable2
,COLOR_syntax_base___Token___to_symbol
))(variable2
) /*TClassid::to_symbol*/;
1045 variable1
= variable2
;
1046 variable3
= ((syntax_base___AbsSyntaxVisitor___module_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___module
))( variable0
/*v*/) /*AbsSyntaxVisitor::module*/;
1047 variable2
= variable3
;
1048 variable4
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
1049 variable3
= variable4
;
1050 variable4
= ((syntax_base___MMSrcLocalClass___formal_dict_t
)CALL( variable3
/*cla*/,COLOR_syntax_base___MMSrcLocalClass___formal_dict
))( variable3
/*cla*/) /*MMSrcLocalClass::formal_dict*/;
1051 variable4
= ((abstract_collection___Map___has_key_t
)CALL(variable4
,COLOR_abstract_collection___Map___has_key
))(variable4
, variable1
/*name*/) /*Map::has_key*/;
1052 if (UNTAG_Bool(variable4
)) { /*if*/
1053 variable4
= ((parser_nodes___AType___n_types_t
)CALL( self
,COLOR_parser_nodes___AType___n_types
))( self
) /*AType::n_types*/;
1054 variable4
= ((list___List___length_t
)CALL(variable4
,COLOR_abstract_collection___Collection___length
))(variable4
) /*List::length*/;
1055 variable4
= TAG_Bool(UNTAG_Int(variable4
)>UNTAG_Int( TAG_Int(0)));
1056 if (UNTAG_Bool(variable4
)) { /*if*/
1057 variable4
= NEW_string___String___init(); /*new String*/
1058 variable5
= NEW_string___String___with_native(BOX_NativeString("Type error: formal type "), TAG_Int(24)); /*new String*/
1059 variable6
= variable5
;
1060 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable6
) /*String::append*/;
1061 variable7
= variable1
/*name*/;
1062 variable7
= ((string___String___to_s_t
)CALL(variable7
,COLOR_string___Object___to_s
))(variable7
) /*String::to_s*/;
1063 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable7
) /*String::append*/;
1064 variable8
= NEW_string___String___with_native(BOX_NativeString(" cannot have formal parameters."), TAG_Int(31)); /*new String*/
1065 variable9
= variable8
;
1066 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable9
) /*String::append*/;
1067 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable4
) /*AbsSyntaxVisitor::error*/;
1068 variable1
= NIT_NULL
/*null*/;
1069 goto return_label36
;
1071 variable5
= ((syntax_base___MMSrcLocalClass___formal_dict_t
)CALL( variable3
/*cla*/,COLOR_syntax_base___MMSrcLocalClass___formal_dict
))( variable3
/*cla*/) /*MMSrcLocalClass::formal_dict*/;
1072 variable5
= ((abstract_collection___Map_____bra_t
)CALL(variable5
,COLOR_abstract_collection___Map_____bra
))(variable5
, variable1
/*name*/) /*Map::[]*/;
1073 variable4
= variable5
;
1074 ATTR_syntax_base___AType____stype_cache( self
) /*AType::_stype_cache*/ = variable4
/*formal*/;
1075 variable1
= variable4
/*formal*/;
1076 goto return_label36
;
1078 variable4
= ((abstractmetamodel___MMLocalClass___global_properties_t
)CALL( variable3
/*cla*/,COLOR_abstractmetamodel___MMLocalClass___global_properties
))( variable3
/*cla*/) /*MMSrcLocalClass::global_properties*/;
1079 variable4
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable4
== NIT_NULL
/*null*/) || ((variable4
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable4
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable4
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable4
,COLOR_kernel___Object_____eqeq
))(variable4
, NIT_NULL
/*null*/) /*Set::==*/)))))));
1080 variable5
= variable4
;
1081 if (UNTAG_Bool(variable5
)) { /* and */
1082 variable5
= ((abstractmetamodel___MMLocalClass___has_global_property_by_name_t
)CALL( variable3
/*cla*/,COLOR_abstractmetamodel___MMLocalClass___has_global_property_by_name
))( variable3
/*cla*/, variable1
/*name*/) /*MMSrcLocalClass::has_global_property_by_name*/;
1084 variable4
= variable5
;
1085 if (UNTAG_Bool(variable4
)) { /*if*/
1086 variable4
= ((parser_nodes___AType___n_types_t
)CALL( self
,COLOR_parser_nodes___AType___n_types
))( self
) /*AType::n_types*/;
1087 variable4
= ((list___List___length_t
)CALL(variable4
,COLOR_abstract_collection___Collection___length
))(variable4
) /*List::length*/;
1088 variable4
= TAG_Bool(UNTAG_Int(variable4
)>UNTAG_Int( TAG_Int(0)));
1089 if (UNTAG_Bool(variable4
)) { /*if*/
1090 variable4
= NEW_string___String___init(); /*new String*/
1091 variable5
= NEW_string___String___with_native(BOX_NativeString("Type error: formal type "), TAG_Int(24)); /*new String*/
1092 variable6
= variable5
;
1093 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable6
) /*String::append*/;
1094 variable7
= variable1
/*name*/;
1095 variable7
= ((string___String___to_s_t
)CALL(variable7
,COLOR_string___Object___to_s
))(variable7
) /*String::to_s*/;
1096 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable7
) /*String::append*/;
1097 variable8
= NEW_string___String___with_native(BOX_NativeString(" cannot have formal parameters."), TAG_Int(31)); /*new String*/
1098 variable9
= variable8
;
1099 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable9
) /*String::append*/;
1100 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable4
) /*AbsSyntaxVisitor::error*/;
1101 variable1
= NIT_NULL
/*null*/;
1102 goto return_label36
;
1104 variable5
= ((genericity___MMLocalClass___get_type_t
)CALL( variable3
/*cla*/,COLOR_static_type___MMLocalClass___get_type
))( variable3
/*cla*/) /*MMSrcLocalClass::get_type*/;
1105 variable5
= ((virtualtype___MMType___select_virtual_type_t
)CALL(variable5
,COLOR_virtualtype___MMType___select_virtual_type
))(variable5
, variable1
/*name*/) /*MMType::select_virtual_type*/;
1106 variable5
= ((virtualtype___MMTypeProperty___stype_t
)CALL(variable5
,COLOR_virtualtype___MMTypeProperty___stype
))(variable5
) /*MMTypeProperty::stype*/;
1107 variable4
= variable5
;
1108 variable5
= TAG_Bool(( variable4
/*t*/ == NIT_NULL
/*null*/) || (( variable4
/*t*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable4
/*t*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable4
/*t*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable4
/*t*/,COLOR_kernel___Object_____eqeq
))( variable4
/*t*/, NIT_NULL
/*null*/) /*MMVirtualType::==*/)))));
1109 if (UNTAG_Bool(variable5
)) { /*if*/
1110 variable5
= NEW_string___String___init(); /*new String*/
1111 variable6
= NEW_string___String___with_native(BOX_NativeString("Type error: circular definition in formal type "), TAG_Int(47)); /*new String*/
1112 variable7
= variable6
;
1113 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
1114 variable8
= variable1
/*name*/;
1115 variable8
= ((string___String___to_s_t
)CALL(variable8
,COLOR_string___Object___to_s
))(variable8
) /*String::to_s*/;
1116 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable8
) /*String::append*/;
1117 variable9
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1118 variable10
= variable9
;
1119 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable10
) /*String::append*/;
1120 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable5
) /*AbsSyntaxVisitor::error*/;
1121 variable1
= NIT_NULL
/*null*/;
1122 goto return_label36
;
1124 ATTR_syntax_base___AType____stype_cache( self
) /*AType::_stype_cache*/ = variable4
/*t*/;
1125 variable1
= variable4
/*t*/;
1126 goto return_label36
;
1128 variable5
= ((syntax_base___AType___get_local_class_t
)CALL( self
,COLOR_syntax_base___PType___get_local_class
))( self
, variable0
/*v*/) /*AType::get_local_class*/;
1129 variable4
= variable5
;
1130 variable5
= TAG_Bool(( variable4
/*local_class*/ == NIT_NULL
/*null*/) || (( variable4
/*local_class*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable4
/*local_class*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable4
/*local_class*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable4
/*local_class*/,COLOR_kernel___Object_____eqeq
))( variable4
/*local_class*/, NIT_NULL
/*null*/) /*MMLocalClass::==*/)))));
1131 if (UNTAG_Bool(variable5
)) { /*if*/
1132 variable1
= NIT_NULL
/*null*/;
1133 goto return_label36
;
1135 variable6
= ((parser_nodes___AType___n_types_t
)CALL( self
,COLOR_parser_nodes___AType___n_types
))( self
) /*AType::n_types*/;
1136 variable6
= ((list___List___length_t
)CALL(variable6
,COLOR_abstract_collection___Collection___length
))(variable6
) /*List::length*/;
1137 variable5
= variable6
;
1138 variable6
= ((abstractmetamodel___MMLocalClass___arity_t
)CALL( variable4
/*local_class*/,COLOR_abstractmetamodel___MMLocalClass___arity
))( variable4
/*local_class*/) /*MMLocalClass::arity*/;
1139 variable6
= TAG_Bool((variable6
)!=( variable5
/*arity*/));
1140 if (UNTAG_Bool(variable6
)) { /*if*/
1141 variable6
= NEW_string___String___init(); /*new String*/
1142 variable7
= NEW_string___String___with_native(BOX_NativeString("Type error: '"), TAG_Int(13)); /*new String*/
1143 variable8
= variable7
;
1144 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
1145 variable9
= variable4
/*local_class*/;
1146 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
1147 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable9
) /*String::append*/;
1148 variable10
= NEW_string___String___with_native(BOX_NativeString("' has "), TAG_Int(6)); /*new String*/
1149 variable11
= variable10
;
1150 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable11
) /*String::append*/;
1151 variable12
= ((abstractmetamodel___MMLocalClass___arity_t
)CALL( variable4
/*local_class*/,COLOR_abstractmetamodel___MMLocalClass___arity
))( variable4
/*local_class*/) /*MMLocalClass::arity*/;
1152 variable13
= variable12
;
1153 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
1154 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable13
) /*String::append*/;
1155 variable14
= NEW_string___String___with_native(BOX_NativeString(" parameters which differs from the "), TAG_Int(35)); /*new String*/
1156 variable15
= variable14
;
1157 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable15
) /*String::append*/;
1158 variable16
= variable5
/*arity*/;
1159 variable16
= ((string___String___to_s_t
)CALL(variable16
,COLOR_string___Object___to_s
))(variable16
) /*String::to_s*/;
1160 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable16
) /*String::append*/;
1161 variable17
= NEW_string___String___with_native(BOX_NativeString(" params."), TAG_Int(8)); /*new String*/
1162 variable18
= variable17
;
1163 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable18
) /*String::append*/;
1164 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable6
) /*AbsSyntaxVisitor::error*/;
1165 variable1
= NIT_NULL
/*null*/;
1166 goto return_label36
;
1168 variable6
= TAG_Bool(UNTAG_Int( variable5
/*arity*/)>UNTAG_Int( TAG_Int(0)));
1169 if (UNTAG_Bool(variable6
)) { /*if*/
1170 variable7
= NEW_array___Array___init(); /*new Array[MMType]*/
1171 variable6
= variable7
;
1172 variable7
= ((parser_nodes___AType___n_types_t
)CALL( self
,COLOR_parser_nodes___AType___n_types
))( self
) /*AType::n_types*/;
1173 variable7
= ((list___List___iterator_t
)CALL(variable7
,COLOR_abstract_collection___Collection___iterator
))(variable7
) /*List::iterator*/;
1174 while (true) { /*for*/
1175 variable8
= ((list___ListIterator___is_ok_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___is_ok
))(variable7
) /*ListIterator::is_ok*/;
1176 if (!UNTAG_Bool(variable8
)) break; /*for*/
1177 variable8
= ((list___ListIterator___item_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___item
))(variable7
) /*ListIterator::item*/;
1178 variable9
= ((syntax_base___PType___get_unchecked_stype_t
)CALL( variable8
/*p*/,COLOR_syntax_base___PType___get_unchecked_stype
))( variable8
/*p*/, variable0
/*v*/) /*PType::get_unchecked_stype*/;
1179 ((array___AbstractArray___add_t
)CALL( variable6
/*tab*/,COLOR_abstract_collection___SimpleCollection___add
))( variable6
/*tab*/, variable9
) /*Array::add*/;
1180 continue_37
: while(0);
1181 ((list___ListIterator___next_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___next
))(variable7
) /*ListIterator::next*/;
1184 variable8
= ((genericity___MMLocalClass___get_instantiate_type_t
)CALL( variable4
/*local_class*/,COLOR_genericity___MMLocalClass___get_instantiate_type
))( variable4
/*local_class*/, variable6
/*tab*/) /*MMLocalClass::get_instantiate_type*/;
1185 variable7
= variable8
;
1186 ATTR_syntax_base___AType____stype_cache( self
) /*AType::_stype_cache*/ = variable7
/*t*/;
1187 variable1
= variable7
/*t*/;
1188 goto return_label36
;
1190 variable7
= ((genericity___MMLocalClass___get_type_t
)CALL( variable4
/*local_class*/,COLOR_static_type___MMLocalClass___get_type
))( variable4
/*local_class*/) /*MMLocalClass::get_type*/;
1191 variable6
= variable7
;
1192 ATTR_syntax_base___AType____stype_cache( self
) /*AType::_stype_cache*/ = variable6
/*t*/;
1193 variable1
= variable6
/*t*/;
1194 goto return_label36
;
1196 return_label36
: while(false);
1197 tracehead
= trace
.prev
;
1200 val_t
syntax_base___AType___get_stype(val_t self
, val_t param0
) {
1201 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AType___get_stype
, 473};
1205 trace
.prev
= tracehead
; tracehead
= &trace
;
1207 variable2
= ((syntax_base___AType___get_unchecked_stype_t
)CALL( self
,COLOR_syntax_base___PType___get_unchecked_stype
))( self
, variable0
/*v*/) /*AType::get_unchecked_stype*/;
1208 variable1
= variable2
;
1209 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable1
/*t*/ == NIT_NULL
/*null*/) || (( variable1
/*t*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable1
/*t*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable1
/*t*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable1
/*t*/,COLOR_kernel___Object_____eqeq
))( variable1
/*t*/, NIT_NULL
/*null*/) /*MMType::==*/)))))));
1210 if (UNTAG_Bool(variable2
)) { /*if*/
1211 ((syntax_base___AType___check_conform_t
)CALL( self
,COLOR_syntax_base___PType___check_conform
))( self
, variable0
/*v*/) /*AType::check_conform*/;
1213 variable1
= variable1
/*t*/;
1214 goto return_label38
;
1215 return_label38
: while(false);
1216 tracehead
= trace
.prev
;
1219 void syntax_base___AType___check_conform(val_t self
, val_t param0
) {
1220 struct trace_t trace
= {NULL
, LOCATE_syntax_base___AType___check_conform
, 480};
1231 trace
.prev
= tracehead
; tracehead
= &trace
;
1233 variable2
= ((syntax_base___AType___get_unchecked_stype_t
)CALL( self
,COLOR_syntax_base___PType___get_unchecked_stype
))( self
, variable0
/*v*/) /*AType::get_unchecked_stype*/;
1234 variable1
= variable2
;
1235 variable2
= TAG_Bool(( variable1
/*st*/ == NIT_NULL
/*null*/) || (( variable1
/*st*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable1
/*st*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable1
/*st*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable1
/*st*/,COLOR_kernel___Object_____eqeq
))( variable1
/*st*/, NIT_NULL
/*null*/) /*MMType::==*/)))));
1236 if (UNTAG_Bool(variable2
)) { /*if*/
1237 goto return_label39
;
1239 variable3
= ((static_type___MMType___local_class_t
)CALL( variable1
/*st*/,COLOR_static_type___MMType___local_class
))( variable1
/*st*/) /*MMType::local_class*/;
1240 variable2
= variable3
;
1241 variable4
= ((parser_nodes___AType___n_types_t
)CALL( self
,COLOR_parser_nodes___AType___n_types
))( self
) /*AType::n_types*/;
1242 variable4
= ((list___List___length_t
)CALL(variable4
,COLOR_abstract_collection___Collection___length
))(variable4
) /*List::length*/;
1243 variable3
= variable4
;
1244 variable4
= TAG_Bool(UNTAG_Int( variable3
/*arity*/)>UNTAG_Int( TAG_Int(0)));
1245 if (UNTAG_Bool(variable4
)) { /*if*/
1246 variable4
= NEW_range___Range___without_last( TAG_Int(0), variable3
/*arity*/); /*new Range[Int]*/
1247 variable4
= ((range___Range___iterator_t
)CALL(variable4
,COLOR_abstract_collection___Collection___iterator
))(variable4
) /*Range::iterator*/;
1248 while (true) { /*for*/
1249 variable5
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable4
,COLOR_abstract_collection___Iterator___is_ok
))(variable4
) /*Iterator::is_ok*/;
1250 if (!UNTAG_Bool(variable5
)) break; /*for*/
1251 variable5
= ((abstract_collection___Iterator___item_t
)CALL(variable4
,COLOR_abstract_collection___Iterator___item
))(variable4
) /*Iterator::item*/;
1252 variable7
= ((parser_nodes___AType___n_types_t
)CALL( self
,COLOR_parser_nodes___AType___n_types
))( self
) /*AType::n_types*/;
1253 variable7
= ((list___List_____bra_t
)CALL(variable7
,COLOR_abstract_collection___Map_____bra
))(variable7
, variable5
/*i*/) /*List::[]*/;
1254 variable6
= variable7
;
1255 variable8
= ((syntax_base___PType___get_stype_t
)CALL( variable6
/*p*/,COLOR_syntax_base___PType___get_stype
))( variable6
/*p*/, variable0
/*v*/) /*PType::get_stype*/;
1256 variable7
= variable8
;
1257 variable9
= ((genericity___MMLocalClass___get_formal_t
)CALL( variable2
/*local_class*/,COLOR_genericity___MMLocalClass___get_formal
))( variable2
/*local_class*/, variable5
/*i*/) /*MMLocalClass::get_formal*/;
1258 variable9
= ((type_formal___MMTypeFormal___bound_t
)CALL(variable9
,COLOR_type_formal___MMTypeFormal___bound
))(variable9
) /*MMTypeFormalParameter::bound*/;
1259 variable8
= variable9
;
1260 variable9
= TAG_Bool(( variable8
/*bt*/ == NIT_NULL
/*null*/) || (( variable8
/*bt*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable8
/*bt*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable8
/*bt*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable8
/*bt*/,COLOR_kernel___Object_____eqeq
))( variable8
/*bt*/, NIT_NULL
/*null*/) /*MMType::==*/)))));
1261 if (UNTAG_Bool(variable9
)) { /*if*/
1262 goto return_label39
;
1264 variable9
= ((static_type___MMType___adapt_to_t
)CALL( variable8
/*bt*/,COLOR_static_type___MMType___adapt_to
))( variable8
/*bt*/, variable1
/*st*/) /*MMType::adapt_to*/;
1265 variable8
= variable9
/*bt=*/;
1266 ((syntax_base___AbsSyntaxVisitor___check_conform_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___check_conform
))( variable0
/*v*/, variable6
/*p*/, variable7
/*pt*/, variable8
/*bt*/) /*AbsSyntaxVisitor::check_conform*/;
1267 continue_40
: while(0);
1268 ((abstract_collection___Iterator___next_t
)CALL(variable4
,COLOR_abstract_collection___Iterator___next
))(variable4
) /*Iterator::next*/;
1272 return_label39
: while(false);
1273 tracehead
= trace
.prev
;
1276 val_t
syntax_base___PExpr___stype(val_t self
) {
1277 struct trace_t trace
= {NULL
, LOCATE_syntax_base___PExpr___stype
, 500};
1278 trace
.prev
= tracehead
; tracehead
= &trace
;
1279 fprintf(stderr
, "Deferred method %s called (%s: %d)\n", "stype", LOCATE_syntax_base___AType___check_conform
, 500);
1281 tracehead
= trace
.prev
;