1 /* This C file is generated by NIT to compile module mmbuilder. */
2 #include "mmbuilder._sep.h"
3 val_t
mmbuilder___CSHSorter___compare(val_t self
, val_t param0
, val_t param1
) {
4 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 27, LOCATE_mmbuilder___CSHSorter___compare
};
9 trace
.prev
= tracehead
; tracehead
= &trace
;
12 variable2
= ((abstractmetamodel___MMLocalClass___cshe_t
)CALL( variable0
/*a*/,COLOR_abstractmetamodel___MMLocalClass___cshe
))( variable0
/*a*/) /*MMLocalClass::cshe*/;
13 variable2
= ((partial_order___PartialOrderElement___rank_t
)CALL(variable2
,COLOR_partial_order___PartialOrderElement___rank
))(variable2
) /*PartialOrderElement::rank*/;
14 variable3
= ((abstractmetamodel___MMLocalClass___cshe_t
)CALL( variable1
/*b*/,COLOR_abstractmetamodel___MMLocalClass___cshe
))( variable1
/*b*/) /*MMLocalClass::cshe*/;
15 variable3
= ((partial_order___PartialOrderElement___rank_t
)CALL(variable3
,COLOR_partial_order___PartialOrderElement___rank
))(variable3
) /*PartialOrderElement::rank*/;
16 variable2
= ((kernel___Int_____leqg_t
)CALL(variable2
,COLOR_kernel___Comparable_____leqg
))(variable2
, variable3
) /*Int::<=>*/;
18 return_label0
: while(false);
19 tracehead
= trace
.prev
;
22 void mmbuilder___CSHSorter___init(val_t self
, int* init_table
) {
23 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 32, LOCATE_mmbuilder___CSHSorter___init
};
24 trace
.prev
= tracehead
; tracehead
= &trace
;
25 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_CSHSorter
].i
]) return;
26 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_CSHSorter
].i
] = 1;
27 tracehead
= trace
.prev
;
30 void mmbuilder___MMSrcModule___do_mmbuilder(val_t self
, val_t param0
) {
31 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 36, LOCATE_mmbuilder___MMSrcModule___do_mmbuilder
};
39 static val_t once_value_variable5_4
; static int once_bool_variable5_4
;
48 trace
.prev
= tracehead
; tracehead
= &trace
;
50 ((inheritance___MMModule___import_global_classes_t
)CALL( self
,COLOR_inheritance___MMModule___import_global_classes
))( self
) /*MMModule::import_global_classes*/;
51 variable2
= NEW_mmbuilder___ClassBuilderVisitor___init( variable0
/*tc*/, self
); /*new ClassBuilderVisitor*/
52 variable1
= variable2
;
53 variable2
= ((syntax_base___MMSrcModule___node_t
)CALL( self
,COLOR_syntax_base___MMSrcModule___node
))( self
) /*MMSrcModule::node*/;
54 ((mmbuilder___ClassBuilderVisitor___visit_t
)CALL( variable1
/*mmbv*/,COLOR_parser_prod___Visitor___visit
))( variable1
/*mmbv*/, variable2
) /*ClassBuilderVisitor::visit*/;
55 variable2
= ((mmloader___ToolContext___error_count_t
)CALL( variable0
/*tc*/,COLOR_mmloader___ToolContext___error_count
))( variable0
/*tc*/) /*ToolContext::error_count*/;
56 variable2
= TAG_Bool(UNTAG_Int(variable2
)>UNTAG_Int( TAG_Int(0)));
57 if (UNTAG_Bool(variable2
)) { /*if*/
58 exit(UNTAG_Int( TAG_Int(1)));
60 ((inheritance___MMModule___import_local_classes_t
)CALL( self
,COLOR_inheritance___MMModule___import_local_classes
))( self
) /*MMModule::import_local_classes*/;
61 variable3
= NEW_mmbuilder___ClassSpecializationBuilderVisitor___init( variable0
/*tc*/, self
); /*new ClassSpecializationBuilderVisitor*/
62 variable2
= variable3
;
63 variable3
= ((syntax_base___MMSrcModule___node_t
)CALL( self
,COLOR_syntax_base___MMSrcModule___node
))( self
) /*MMSrcModule::node*/;
64 ((mmbuilder___ClassSpecializationBuilderVisitor___visit_t
)CALL( variable2
/*mmbv1*/,COLOR_parser_prod___Visitor___visit
))( variable2
/*mmbv1*/, variable3
) /*ClassSpecializationBuilderVisitor::visit*/;
65 variable3
= ((mmloader___ToolContext___error_count_t
)CALL( variable0
/*tc*/,COLOR_mmloader___ToolContext___error_count
))( variable0
/*tc*/) /*ToolContext::error_count*/;
66 variable3
= TAG_Bool(UNTAG_Int(variable3
)>UNTAG_Int( TAG_Int(0)));
67 if (UNTAG_Bool(variable3
)) { /*if*/
68 exit(UNTAG_Int( TAG_Int(1)));
70 variable3
= ((abstractmetamodel___MMModule___local_classes_t
)CALL( self
,COLOR_abstractmetamodel___MMModule___local_classes
))( self
) /*MMModule::local_classes*/;
71 variable3
= ((array___AbstractArray___iterator_t
)CALL(variable3
,COLOR_abstract_collection___Collection___iterator
))(variable3
) /*AbstractArray::iterator*/;
72 while (true) { /*for*/
73 variable4
= ((array___ArrayIterator___is_ok_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___is_ok
))(variable3
) /*ArrayIterator::is_ok*/;
74 if (!UNTAG_Bool(variable4
)) break; /*for*/
75 variable4
= ((array___ArrayIterator___item_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___item
))(variable3
) /*ArrayIterator::item*/;
76 variable5
= ((abstractmetamodel___MMLocalClass___global_t
)CALL( variable4
/*c*/,COLOR_abstractmetamodel___MMLocalClass___global
))( variable4
/*c*/) /*MMLocalClass::global*/;
77 variable5
= ((abstractmetamodel___MMGlobalClass___intro_t
)CALL(variable5
,COLOR_abstractmetamodel___MMGlobalClass___intro
))(variable5
) /*MMGlobalClass::intro*/;
78 variable5
= ((abstractmetamodel___MMLocalClass___module_t
)CALL(variable5
,COLOR_abstractmetamodel___MMLocalClass___module
))(variable5
) /*MMLocalClass::module*/;
79 variable5
= ((abstractmetamodel___MMModule___visibility_for_t
)CALL( self
,COLOR_abstractmetamodel___MMModule___visibility_for
))( self
, variable5
) /*MMModule::visibility_for*/;
80 variable6
= ((abstractmetamodel___MMLocalClass___global_t
)CALL( variable4
/*c*/,COLOR_abstractmetamodel___MMLocalClass___global
))( variable4
/*c*/) /*MMLocalClass::global*/;
81 variable6
= ((abstractmetamodel___MMGlobalClass___visibility_level_t
)CALL(variable6
,COLOR_abstractmetamodel___MMGlobalClass___visibility_level
))(variable6
) /*MMGlobalClass::visibility_level*/;
82 variable5
= TAG_Bool(UNTAG_Int(variable5
)<UNTAG_Int(variable6
));
83 if (UNTAG_Bool(variable5
)) { /*if*/
86 ((inheritance___MMLocalClass___compute_super_classes_t
)CALL( variable4
/*c*/,COLOR_inheritance___MMLocalClass___compute_super_classes
))( variable4
/*c*/) /*MMLocalClass::compute_super_classes*/;
88 ((array___ArrayIterator___next_t
)CALL(variable3
,COLOR_abstract_collection___Iterator___next
))(variable3
) /*ArrayIterator::next*/;
91 variable4
= ((abstractmetamodel___MMModule___class_specialization_hierarchy_t
)CALL( self
,COLOR_abstractmetamodel___MMModule___class_specialization_hierarchy
))( self
) /*MMModule::class_specialization_hierarchy*/;
92 variable4
= ((array___Collection___to_a_t
)CALL(variable4
,COLOR_array___Collection___to_a
))(variable4
) /*Collection::to_a*/;
93 variable3
= variable4
;
94 if (once_bool_variable5_4
) variable5
= once_value_variable5_4
;
96 variable5
= NEW_mmbuilder___CSHSorter___init(); /*new CSHSorter*/
97 once_value_variable5_4
= variable5
;
98 once_bool_variable5_4
= true;
100 variable4
= variable5
;
101 ((sorter___AbstractSorter___sort_t
)CALL( variable4
/*sorter*/,COLOR_sorter___AbstractSorter___sort
))( variable4
/*sorter*/, variable3
/*classes*/) /*AbstractSorter::sort*/;
102 variable6
= NEW_mmbuilder___ClassAncestorBuilder___init( variable0
/*tc*/, self
); /*new ClassAncestorBuilder*/
103 variable5
= variable6
;
104 variable6
= ((array___AbstractArray___iterator_t
)CALL( variable3
/*classes*/,COLOR_abstract_collection___Collection___iterator
))( variable3
/*classes*/) /*AbstractArray::iterator*/;
105 while (true) { /*for*/
106 variable7
= ((array___ArrayIterator___is_ok_t
)CALL(variable6
,COLOR_abstract_collection___Iterator___is_ok
))(variable6
) /*ArrayIterator::is_ok*/;
107 if (!UNTAG_Bool(variable7
)) break; /*for*/
108 variable7
= ((array___ArrayIterator___item_t
)CALL(variable6
,COLOR_abstract_collection___Iterator___item
))(variable6
) /*ArrayIterator::item*/;
109 ((mmbuilder___MMLocalClass___accept_class_visitor_t
)CALL( variable7
/*c*/,COLOR_mmbuilder___MMLocalClass___accept_class_visitor
))( variable7
/*c*/, variable5
/*mmbv1b*/) /*MMLocalClass::accept_class_visitor*/;
110 ((inheritance___MMLocalClass___compute_ancestors_t
)CALL( variable7
/*c*/,COLOR_inheritance___MMLocalClass___compute_ancestors
))( variable7
/*c*/) /*MMLocalClass::compute_ancestors*/;
111 continue_5
: while(0);
112 ((array___ArrayIterator___next_t
)CALL(variable6
,COLOR_abstract_collection___Iterator___next
))(variable6
) /*ArrayIterator::next*/;
115 variable6
= ((mmloader___ToolContext___error_count_t
)CALL( variable0
/*tc*/,COLOR_mmloader___ToolContext___error_count
))( variable0
/*tc*/) /*ToolContext::error_count*/;
116 variable6
= TAG_Bool(UNTAG_Int(variable6
)>UNTAG_Int( TAG_Int(0)));
117 if (UNTAG_Bool(variable6
)) { /*if*/
118 exit(UNTAG_Int( TAG_Int(1)));
120 variable7
= NEW_mmbuilder___ClassVerifierVisitor___init( variable0
/*tc*/, self
); /*new ClassVerifierVisitor*/
121 variable6
= variable7
;
122 variable7
= ((array___AbstractArray___iterator_t
)CALL( variable3
/*classes*/,COLOR_abstract_collection___Collection___iterator
))( variable3
/*classes*/) /*AbstractArray::iterator*/;
123 while (true) { /*for*/
124 variable8
= ((array___ArrayIterator___is_ok_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___is_ok
))(variable7
) /*ArrayIterator::is_ok*/;
125 if (!UNTAG_Bool(variable8
)) break; /*for*/
126 variable8
= ((array___ArrayIterator___item_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___item
))(variable7
) /*ArrayIterator::item*/;
127 ((mmbuilder___MMLocalClass___accept_class_visitor_t
)CALL( variable8
/*c*/,COLOR_mmbuilder___MMLocalClass___accept_class_visitor
))( variable8
/*c*/, variable6
/*mmbv1b*/) /*MMLocalClass::accept_class_visitor*/;
128 continue_6
: while(0);
129 ((array___ArrayIterator___next_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___next
))(variable7
) /*ArrayIterator::next*/;
132 variable7
= ((mmloader___ToolContext___error_count_t
)CALL( variable0
/*tc*/,COLOR_mmloader___ToolContext___error_count
))( variable0
/*tc*/) /*ToolContext::error_count*/;
133 variable7
= TAG_Bool(UNTAG_Int(variable7
)>UNTAG_Int( TAG_Int(0)));
134 if (UNTAG_Bool(variable7
)) { /*if*/
135 exit(UNTAG_Int( TAG_Int(1)));
137 variable8
= NEW_mmbuilder___PropertyBuilderVisitor___init( variable0
/*tc*/, self
); /*new PropertyBuilderVisitor*/
138 variable7
= variable8
;
139 variable8
= ((array___AbstractArray___iterator_t
)CALL( variable3
/*classes*/,COLOR_abstract_collection___Collection___iterator
))( variable3
/*classes*/) /*AbstractArray::iterator*/;
140 while (true) { /*for*/
141 variable9
= ((array___ArrayIterator___is_ok_t
)CALL(variable8
,COLOR_abstract_collection___Iterator___is_ok
))(variable8
) /*ArrayIterator::is_ok*/;
142 if (!UNTAG_Bool(variable9
)) break; /*for*/
143 variable9
= ((array___ArrayIterator___item_t
)CALL(variable8
,COLOR_abstract_collection___Iterator___item
))(variable8
) /*ArrayIterator::item*/;
144 ((inheritance___MMLocalClass___inherit_global_properties_t
)CALL( variable9
/*c*/,COLOR_inheritance___MMLocalClass___inherit_global_properties
))( variable9
/*c*/) /*MMLocalClass::inherit_global_properties*/;
145 ((mmbuilder___MMLocalClass___accept_class_visitor_t
)CALL( variable9
/*c*/,COLOR_mmbuilder___MMLocalClass___accept_class_visitor
))( variable9
/*c*/, variable7
/*mmbv2*/) /*MMLocalClass::accept_class_visitor*/;
146 variable10
= TAG_Bool(( variable9
/*c*/==NIT_NULL
) || VAL_ISA( variable9
/*c*/, COLOR_MMSrcLocalClass
, ID_MMSrcLocalClass
)) /*cast MMSrcLocalClass*/;
147 if (UNTAG_Bool(variable10
)) { /*if*/
149 continue_7
: while(0);
150 ((array___ArrayIterator___next_t
)CALL(variable8
,COLOR_abstract_collection___Iterator___next
))(variable8
) /*ArrayIterator::next*/;
153 variable8
= ((mmloader___ToolContext___error_count_t
)CALL( variable0
/*tc*/,COLOR_mmloader___ToolContext___error_count
))( variable0
/*tc*/) /*ToolContext::error_count*/;
154 variable8
= TAG_Bool(UNTAG_Int(variable8
)>UNTAG_Int( TAG_Int(0)));
155 if (UNTAG_Bool(variable8
)) { /*if*/
156 exit(UNTAG_Int( TAG_Int(1)));
158 variable9
= NEW_mmbuilder___PropertyVerifierVisitor___init( variable0
/*tc*/, self
); /*new PropertyVerifierVisitor*/
159 variable8
= variable9
;
160 variable9
= ((array___AbstractArray___iterator_t
)CALL( variable3
/*classes*/,COLOR_abstract_collection___Collection___iterator
))( variable3
/*classes*/) /*AbstractArray::iterator*/;
161 while (true) { /*for*/
162 variable10
= ((array___ArrayIterator___is_ok_t
)CALL(variable9
,COLOR_abstract_collection___Iterator___is_ok
))(variable9
) /*ArrayIterator::is_ok*/;
163 if (!UNTAG_Bool(variable10
)) break; /*for*/
164 variable10
= ((array___ArrayIterator___item_t
)CALL(variable9
,COLOR_abstract_collection___Iterator___item
))(variable9
) /*ArrayIterator::item*/;
165 ((mmbuilder___MMLocalClass___accept_properties_visitor_t
)CALL( variable10
/*c*/,COLOR_mmbuilder___MMLocalClass___accept_properties_visitor
))( variable10
/*c*/, variable8
/*mmbv3*/) /*MMLocalClass::accept_properties_visitor*/;
166 continue_8
: while(0);
167 ((array___ArrayIterator___next_t
)CALL(variable9
,COLOR_abstract_collection___Iterator___next
))(variable9
) /*ArrayIterator::next*/;
170 variable9
= ((array___AbstractArray___iterator_t
)CALL( variable3
/*classes*/,COLOR_abstract_collection___Collection___iterator
))( variable3
/*classes*/) /*AbstractArray::iterator*/;
171 while (true) { /*for*/
172 variable10
= ((array___ArrayIterator___is_ok_t
)CALL(variable9
,COLOR_abstract_collection___Iterator___is_ok
))(variable9
) /*ArrayIterator::is_ok*/;
173 if (!UNTAG_Bool(variable10
)) break; /*for*/
174 variable10
= ((array___ArrayIterator___item_t
)CALL(variable9
,COLOR_abstract_collection___Iterator___item
))(variable9
) /*ArrayIterator::item*/;
175 variable11
= ((abstractmetamodel___MMLocalClass___global_properties_t
)CALL( variable10
/*c*/,COLOR_abstractmetamodel___MMLocalClass___global_properties
))( variable10
/*c*/) /*MMLocalClass::global_properties*/;
176 variable11
= ((abstract_collection___Collection___iterator_t
)CALL(variable11
,COLOR_abstract_collection___Collection___iterator
))(variable11
) /*Collection::iterator*/;
177 while (true) { /*for*/
178 variable12
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable11
,COLOR_abstract_collection___Iterator___is_ok
))(variable11
) /*Iterator::is_ok*/;
179 if (!UNTAG_Bool(variable12
)) break; /*for*/
180 variable12
= ((abstract_collection___Iterator___item_t
)CALL(variable11
,COLOR_abstract_collection___Iterator___item
))(variable11
) /*Iterator::item*/;
181 variable13
= ((abstractmetamodel___MMGlobalProperty___intro_t
)CALL( variable12
/*g*/,COLOR_abstractmetamodel___MMGlobalProperty___intro
))( variable12
/*g*/) /*MMGlobalProperty::intro*/;
182 variable13
= ((abstractmetamodel___MMLocalProperty___module_t
)CALL(variable13
,COLOR_abstractmetamodel___MMLocalProperty___module
))(variable13
) /*MMLocalProperty::module*/;
183 variable13
= ((abstractmetamodel___MMModule___visibility_for_t
)CALL( self
,COLOR_abstractmetamodel___MMModule___visibility_for
))( self
, variable13
) /*MMModule::visibility_for*/;
184 variable14
= ((abstractmetamodel___MMGlobalProperty___visibility_level_t
)CALL( variable12
/*g*/,COLOR_abstractmetamodel___MMGlobalProperty___visibility_level
))( variable12
/*g*/) /*MMGlobalProperty::visibility_level*/;
185 variable13
= TAG_Bool(UNTAG_Int(variable13
)<UNTAG_Int(variable14
));
186 if (UNTAG_Bool(variable13
)) { /*if*/
189 variable14
= ((inheritance___MMLocalClass_____bra_t
)CALL( variable10
/*c*/,COLOR_abstractmetamodel___MMLocalClass_____bra
))( variable10
/*c*/, variable12
/*g*/) /*MMLocalClass::[]*/;
190 variable13
= variable14
;
191 continue_10
: while(0);
192 ((abstract_collection___Iterator___next_t
)CALL(variable11
,COLOR_abstract_collection___Iterator___next
))(variable11
) /*Iterator::next*/;
195 continue_9
: while(0);
196 ((array___ArrayIterator___next_t
)CALL(variable9
,COLOR_abstract_collection___Iterator___next
))(variable9
) /*ArrayIterator::next*/;
199 variable9
= ((mmloader___ToolContext___error_count_t
)CALL( variable0
/*tc*/,COLOR_mmloader___ToolContext___error_count
))( variable0
/*tc*/) /*ToolContext::error_count*/;
200 variable9
= TAG_Bool(UNTAG_Int(variable9
)>UNTAG_Int( TAG_Int(0)));
201 if (UNTAG_Bool(variable9
)) { /*if*/
202 exit(UNTAG_Int( TAG_Int(1)));
204 tracehead
= trace
.prev
;
207 void mmbuilder___MMLocalClass___accept_class_visitor(val_t self
, val_t param0
) {
208 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 122, LOCATE_mmbuilder___MMLocalClass___accept_class_visitor
};
210 trace
.prev
= tracehead
; tracehead
= &trace
;
212 tracehead
= trace
.prev
;
215 void mmbuilder___MMLocalClass___accept_properties_visitor(val_t self
, val_t param0
) {
216 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 127, LOCATE_mmbuilder___MMLocalClass___accept_properties_visitor
};
218 trace
.prev
= tracehead
; tracehead
= &trace
;
220 tracehead
= trace
.prev
;
223 void mmbuilder___MMSrcLocalClass___accept_class_visitor(val_t self
, val_t param0
) {
224 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 134, LOCATE_mmbuilder___MMSrcLocalClass___accept_class_visitor
};
228 trace
.prev
= tracehead
; tracehead
= &trace
;
230 variable1
= ((syntax_base___MMSrcLocalClass___nodes_t
)CALL( self
,COLOR_syntax_base___MMSrcLocalClass___nodes
))( self
) /*MMSrcLocalClass::nodes*/;
231 variable1
= ((array___AbstractArray___iterator_t
)CALL(variable1
,COLOR_abstract_collection___Collection___iterator
))(variable1
) /*AbstractArray::iterator*/;
232 while (true) { /*for*/
233 variable2
= ((array___ArrayIterator___is_ok_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___is_ok
))(variable1
) /*ArrayIterator::is_ok*/;
234 if (!UNTAG_Bool(variable2
)) break; /*for*/
235 variable2
= ((array___ArrayIterator___item_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___item
))(variable1
) /*ArrayIterator::item*/;
236 ((parser_prod___Visitor___visit_t
)CALL( variable0
/*v*/,COLOR_parser_prod___Visitor___visit
))( variable0
/*v*/, variable2
/*n*/) /*Visitor::visit*/;
237 continue_14
: while(0);
238 ((array___ArrayIterator___next_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___next
))(variable1
) /*ArrayIterator::next*/;
241 tracehead
= trace
.prev
;
244 void mmbuilder___MMSrcLocalClass___accept_properties_visitor(val_t self
, val_t param0
) {
245 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 141, LOCATE_mmbuilder___MMSrcLocalClass___accept_properties_visitor
};
249 trace
.prev
= tracehead
; tracehead
= &trace
;
251 variable1
= ((syntax_base___MMSrcLocalClass___nodes_t
)CALL( self
,COLOR_syntax_base___MMSrcLocalClass___nodes
))( self
) /*MMSrcLocalClass::nodes*/;
252 variable1
= ((array___AbstractArray___iterator_t
)CALL(variable1
,COLOR_abstract_collection___Collection___iterator
))(variable1
) /*AbstractArray::iterator*/;
253 while (true) { /*for*/
254 variable2
= ((array___ArrayIterator___is_ok_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___is_ok
))(variable1
) /*ArrayIterator::is_ok*/;
255 if (!UNTAG_Bool(variable2
)) break; /*for*/
256 variable2
= ((array___ArrayIterator___item_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___item
))(variable1
) /*ArrayIterator::item*/;
257 ((parser_prod___Visitor___visit_t
)CALL( variable0
/*v*/,COLOR_parser_prod___Visitor___visit
))( variable0
/*v*/, variable2
/*n*/) /*Visitor::visit*/;
258 continue_16
: while(0);
259 ((array___ArrayIterator___next_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___next
))(variable1
) /*ArrayIterator::next*/;
262 variable1
= ((syntax_base___MMSrcLocalClass___src_local_properties_t
)CALL( self
,COLOR_syntax_base___MMSrcLocalClass___src_local_properties
))( self
) /*MMSrcLocalClass::src_local_properties*/;
263 variable1
= ((abstract_collection___Map___iterator_t
)CALL(variable1
,COLOR_abstract_collection___Collection___iterator
))(variable1
) /*Map::iterator*/;
264 while (true) { /*for*/
265 variable2
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___is_ok
))(variable1
) /*Iterator::is_ok*/;
266 if (!UNTAG_Bool(variable2
)) break; /*for*/
267 variable2
= ((abstract_collection___Iterator___item_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___item
))(variable1
) /*Iterator::item*/;
268 ((mmbuilder___MMLocalProperty___accept_property_visitor_t
)CALL( variable2
/*p*/,COLOR_mmbuilder___MMLocalProperty___accept_property_visitor
))( variable2
/*p*/, variable0
/*v*/) /*MMLocalProperty::accept_property_visitor*/;
269 continue_17
: while(0);
270 ((abstract_collection___Iterator___next_t
)CALL(variable1
,COLOR_abstract_collection___Iterator___next
))(variable1
) /*Iterator::next*/;
273 tracehead
= trace
.prev
;
276 void mmbuilder___MMSrcLocalClass___add_src_local_property(val_t self
, val_t param0
, val_t param1
) {
277 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 152, LOCATE_mmbuilder___MMSrcLocalClass___add_src_local_property
};
296 trace
.prev
= tracehead
; tracehead
= &trace
;
299 variable3
= ((abstractmetamodel___MMLocalProperty___name_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___name
))( variable1
/*prop*/) /*MMLocalProperty::name*/;
300 variable2
= variable3
;
301 variable3
= ((syntax_base___MMSrcLocalClass___src_local_properties_t
)CALL( self
,COLOR_syntax_base___MMSrcLocalClass___src_local_properties
))( self
) /*MMSrcLocalClass::src_local_properties*/;
302 variable3
= ((abstract_collection___Map___has_key_t
)CALL(variable3
,COLOR_abstract_collection___Map___has_key
))(variable3
, variable2
/*pname*/) /*Map::has_key*/;
303 if (UNTAG_Bool(variable3
)) { /*if*/
304 variable3
= ((syntax_base___MMLocalProperty___node_t
)CALL( variable1
/*prop*/,COLOR_syntax_base___MMLocalProperty___node
))( variable1
/*prop*/) /*MMLocalProperty::node*/;
305 variable4
= NEW_string___String___init(); /*new String*/
306 variable5
= NEW_string___String___with_native(BOX_NativeString("Error: A property "), TAG_Int(18)); /*new String*/
307 variable6
= variable5
;
308 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable6
) /*String::append*/;
309 variable7
= variable2
/*pname*/;
310 variable7
= ((string___String___to_s_t
)CALL(variable7
,COLOR_string___Object___to_s
))(variable7
) /*String::to_s*/;
311 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable7
) /*String::append*/;
312 variable8
= NEW_string___String___with_native(BOX_NativeString(" is already defined in class "), TAG_Int(29)); /*new String*/
313 variable9
= variable8
;
314 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable9
) /*String::append*/;
315 variable10
= ((abstractmetamodel___MMLocalClass___name_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalClass___name
))( self
) /*MMLocalClass::name*/;
316 variable11
= variable10
;
317 variable11
= ((string___String___to_s_t
)CALL(variable11
,COLOR_string___Object___to_s
))(variable11
) /*String::to_s*/;
318 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable11
) /*String::append*/;
319 variable12
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
320 variable13
= variable12
;
321 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable13
) /*String::append*/;
322 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable3
, variable4
) /*AbsSyntaxVisitor::error*/;
325 variable3
= ((syntax_base___MMSrcLocalClass___src_local_properties_t
)CALL( self
,COLOR_syntax_base___MMSrcLocalClass___src_local_properties
))( self
) /*MMSrcLocalClass::src_local_properties*/;
326 ((abstract_collection___Map_____braeq_t
)CALL(variable3
,COLOR_abstract_collection___Map_____braeq
))(variable3
, variable2
/*pname*/, variable1
/*prop*/) /*Map::[]=*/;
327 variable3
= ((abstractmetamodel___MMLocalClass___has_global_property_by_name_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalClass___has_global_property_by_name
))( self
, variable2
/*pname*/) /*MMLocalClass::has_global_property_by_name*/;
328 if (UNTAG_Bool(variable3
)) { /*if*/
329 variable4
= ((abstractmetamodel___MMLocalClass___properties_by_name_t
)CALL( self
,COLOR_abstractmetamodel___MMLocalClass___properties_by_name
))( self
) /*MMLocalClass::properties_by_name*/;
330 variable4
= ((abstract_collection___Map_____bra_t
)CALL(variable4
,COLOR_abstract_collection___Map_____bra
))(variable4
, variable2
/*pname*/) /*Map::[]*/;
331 variable3
= variable4
;
332 variable4
= ((array___AbstractArray___length_t
)CALL( variable3
/*globs*/,COLOR_abstract_collection___Collection___length
))( variable3
/*globs*/) /*AbstractArray::length*/;
333 variable4
= TAG_Bool(UNTAG_Int(variable4
)>UNTAG_Int( TAG_Int(1)));
334 if (UNTAG_Bool(variable4
)) { /*if*/
335 variable4
= ((syntax_base___MMLocalProperty___node_t
)CALL( variable1
/*prop*/,COLOR_syntax_base___MMLocalProperty___node
))( variable1
/*prop*/) /*MMLocalProperty::node*/;
336 variable5
= NEW_string___String___init(); /*new String*/
337 variable6
= NEW_string___String___with_native(BOX_NativeString("Name error: "), TAG_Int(12)); /*new String*/
338 variable7
= variable6
;
339 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
341 variable8
= ((string___String___to_s_t
)CALL(variable8
,COLOR_string___Object___to_s
))(variable8
) /*String::to_s*/;
342 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable8
) /*String::append*/;
343 variable9
= NEW_string___String___with_native(BOX_NativeString(" inherits "), TAG_Int(10)); /*new String*/
344 variable10
= variable9
;
345 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable10
) /*String::append*/;
346 variable11
= ((array___AbstractArray___length_t
)CALL( variable3
/*globs*/,COLOR_abstract_collection___Collection___length
))( variable3
/*globs*/) /*AbstractArray::length*/;
347 variable12
= variable11
;
348 variable12
= ((string___String___to_s_t
)CALL(variable12
,COLOR_string___Object___to_s
))(variable12
) /*String::to_s*/;
349 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable12
) /*String::append*/;
350 variable13
= NEW_string___String___with_native(BOX_NativeString(" global properties named "), TAG_Int(25)); /*new String*/
351 variable14
= variable13
;
352 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable14
) /*String::append*/;
353 variable15
= variable2
/*pname*/;
354 variable15
= ((string___String___to_s_t
)CALL(variable15
,COLOR_string___Object___to_s
))(variable15
) /*String::to_s*/;
355 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable15
) /*String::append*/;
356 variable16
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
357 variable17
= variable16
;
358 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable17
) /*String::append*/;
359 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable4
, variable5
) /*AbsSyntaxVisitor::error*/;
361 variable5
= ((abstract_collection___IndexedCollection___first_t
)CALL( variable3
/*globs*/,COLOR_abstract_collection___Collection___first
))( variable3
/*globs*/) /*IndexedCollection::first*/;
362 variable4
= variable5
;
363 ((inheritance___MMLocalProperty___inherit_global_t
)CALL( variable1
/*prop*/,COLOR_inheritance___MMLocalProperty___inherit_global
))( variable1
/*prop*/, variable4
/*g*/) /*MMLocalProperty::inherit_global*/;
365 variable3
= ((abstractmetamodel___MMLocalProperty___global_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___global
))( variable1
/*prop*/) /*MMLocalProperty::global*/;
366 variable3
= TAG_Bool((variable3
== NIT_NULL
/*null*/) || ((variable3
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable3
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))(variable3
, NIT_NULL
/*null*/) /*Object::==*/)))));
367 if (UNTAG_Bool(variable3
)) { /*if*/
368 ((abstractmetamodel___MMLocalProperty___new_global_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___new_global
))( variable1
/*prop*/) /*MMLocalProperty::new_global*/;
369 variable3
= ((abstractmetamodel___MMLocalProperty___global_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___global
))( variable1
/*prop*/) /*MMLocalProperty::global*/;
370 variable4
= ((syntax_base___MMLocalProperty___node_t
)CALL( variable1
/*prop*/,COLOR_syntax_base___MMLocalProperty___node
))( variable1
/*prop*/) /*MMLocalProperty::node*/;
371 variable4
= TAG_Bool((variable4
==NIT_NULL
) || VAL_ISA(variable4
, COLOR_AConcreteInitPropdef
, ID_AConcreteInitPropdef
)) /*cast AConcreteInitPropdef*/;
372 ((abstractmetamodel___MMGlobalProperty___is_init__eq_t
)CALL(variable3
,COLOR_abstractmetamodel___MMGlobalProperty___is_init__eq
))(variable3
, variable4
) /*MMGlobalProperty::is_init=*/;
374 return_label18
: while(false);
375 tracehead
= trace
.prev
;
378 void mmbuilder___MMLocalProperty___accept_property_visitor(val_t self
, val_t param0
) {
379 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 183, LOCATE_mmbuilder___MMLocalProperty___accept_property_visitor
};
381 trace
.prev
= tracehead
; tracehead
= &trace
;
383 tracehead
= trace
.prev
;
386 val_t
mmbuilder___MMSrcAncestor___node(val_t self
) {
387 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 190, LOCATE_mmbuilder___MMSrcAncestor___node
};
388 trace
.prev
= tracehead
; tracehead
= &trace
;
389 tracehead
= trace
.prev
;
390 return ATTR_mmbuilder___MMSrcAncestor____node( self
) /*MMSrcAncestor::_node*/;
392 val_t
mmbuilder___MMSrcAncestor___local_class(val_t self
) {
393 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 192, LOCATE_mmbuilder___MMSrcAncestor___local_class
};
394 trace
.prev
= tracehead
; tracehead
= &trace
;
395 tracehead
= trace
.prev
;
396 return ATTR_mmbuilder___MMSrcAncestor____local_class( self
) /*MMSrcAncestor::_local_class*/;
398 void mmbuilder___MMSrcAncestor___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
399 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 194, LOCATE_mmbuilder___MMSrcAncestor___init
};
402 trace
.prev
= tracehead
; tracehead
= &trace
;
405 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcAncestor
].i
]) return;
406 ATTR_mmbuilder___MMSrcAncestor____node( self
) /*MMSrcAncestor::_node*/ = variable0
/*n*/;
407 ATTR_mmbuilder___MMSrcAncestor____local_class( self
) /*MMSrcAncestor::_local_class*/ = variable1
/*c*/;
408 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcAncestor
].i
] = 1;
409 tracehead
= trace
.prev
;
412 val_t
mmbuilder___ClassBuilderVisitor___local_class_arity(val_t self
) {
413 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 208, LOCATE_mmbuilder___ClassBuilderVisitor___local_class_arity
};
414 trace
.prev
= tracehead
; tracehead
= &trace
;
415 tracehead
= trace
.prev
;
416 return ATTR_mmbuilder___ClassBuilderVisitor____local_class_arity( self
) /*ClassBuilderVisitor::_local_class_arity*/;
418 void mmbuilder___ClassBuilderVisitor___local_class_arity__eq(val_t self
, val_t param0
) {
419 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 208, LOCATE_mmbuilder___ClassBuilderVisitor___local_class_arity__eq
};
420 trace
.prev
= tracehead
; tracehead
= &trace
;
421 ATTR_mmbuilder___ClassBuilderVisitor____local_class_arity( self
) /*ClassBuilderVisitor::_local_class_arity*/ = param0
;
422 tracehead
= trace
.prev
;
425 val_t
mmbuilder___ClassBuilderVisitor___formals(val_t self
) {
426 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 211, LOCATE_mmbuilder___ClassBuilderVisitor___formals
};
427 trace
.prev
= tracehead
; tracehead
= &trace
;
428 tracehead
= trace
.prev
;
429 return ATTR_mmbuilder___ClassBuilderVisitor____formals( self
) /*ClassBuilderVisitor::_formals*/;
431 void mmbuilder___ClassBuilderVisitor___formals__eq(val_t self
, val_t param0
) {
432 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 211, LOCATE_mmbuilder___ClassBuilderVisitor___formals__eq
};
433 trace
.prev
= tracehead
; tracehead
= &trace
;
434 ATTR_mmbuilder___ClassBuilderVisitor____formals( self
) /*ClassBuilderVisitor::_formals*/ = param0
;
435 tracehead
= trace
.prev
;
438 void mmbuilder___ClassBuilderVisitor___visit(val_t self
, val_t param0
) {
439 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 214, LOCATE_mmbuilder___ClassBuilderVisitor___visit
};
441 trace
.prev
= tracehead
; tracehead
= &trace
;
443 ((mmbuilder___PNode___accept_class_builder_t
)CALL( variable0
/*n*/,COLOR_mmbuilder___PNode___accept_class_builder
))( variable0
/*n*/, self
) /*PNode::accept_class_builder*/;
444 tracehead
= trace
.prev
;
447 void mmbuilder___ClassBuilderVisitor___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
448 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 215, LOCATE_mmbuilder___ClassBuilderVisitor___init
};
451 trace
.prev
= tracehead
; tracehead
= &trace
;
454 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_ClassBuilderVisitor
].i
]) return;
455 ((syntax_base___AbsSyntaxVisitor___init_t
)CALL( self
,COLOR_syntax_base___AbsSyntaxVisitor___init
))( self
, param0
, param1
, init_table
/*YYY*/) /*AbsSyntaxVisitor::init*/;
456 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_ClassBuilderVisitor
].i
] = 1;
457 tracehead
= trace
.prev
;
460 void mmbuilder___ClassSpecializationBuilderVisitor___visit(val_t self
, val_t param0
) {
461 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 222, LOCATE_mmbuilder___ClassSpecializationBuilderVisitor___visit
};
463 trace
.prev
= tracehead
; tracehead
= &trace
;
465 ((mmbuilder___PNode___accept_class_specialization_builder_t
)CALL( variable0
/*n*/,COLOR_mmbuilder___PNode___accept_class_specialization_builder
))( variable0
/*n*/, self
) /*PNode::accept_class_specialization_builder*/;
466 tracehead
= trace
.prev
;
469 void mmbuilder___ClassSpecializationBuilderVisitor___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
470 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 223, LOCATE_mmbuilder___ClassSpecializationBuilderVisitor___init
};
473 trace
.prev
= tracehead
; tracehead
= &trace
;
476 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_ClassSpecializationBuilderVisitor
].i
]) return;
477 ((syntax_base___AbsSyntaxVisitor___init_t
)CALL( self
,COLOR_syntax_base___AbsSyntaxVisitor___init
))( self
, param0
, param1
, init_table
/*YYY*/) /*AbsSyntaxVisitor::init*/;
478 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_ClassSpecializationBuilderVisitor
].i
] = 1;
479 tracehead
= trace
.prev
;
482 void mmbuilder___ClassAncestorBuilder___visit(val_t self
, val_t param0
) {
483 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 230, LOCATE_mmbuilder___ClassAncestorBuilder___visit
};
485 trace
.prev
= tracehead
; tracehead
= &trace
;
487 ((mmbuilder___PNode___accept_class_ancestor_builder_t
)CALL( variable0
/*n*/,COLOR_mmbuilder___PNode___accept_class_ancestor_builder
))( variable0
/*n*/, self
) /*PNode::accept_class_ancestor_builder*/;
488 tracehead
= trace
.prev
;
491 void mmbuilder___ClassAncestorBuilder___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
492 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 231, LOCATE_mmbuilder___ClassAncestorBuilder___init
};
495 trace
.prev
= tracehead
; tracehead
= &trace
;
498 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_ClassAncestorBuilder
].i
]) return;
499 ((syntax_base___AbsSyntaxVisitor___init_t
)CALL( self
,COLOR_syntax_base___AbsSyntaxVisitor___init
))( self
, param0
, param1
, init_table
/*YYY*/) /*AbsSyntaxVisitor::init*/;
500 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_ClassAncestorBuilder
].i
] = 1;
501 tracehead
= trace
.prev
;
504 void mmbuilder___ClassVerifierVisitor___visit(val_t self
, val_t param0
) {
505 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 238, LOCATE_mmbuilder___ClassVerifierVisitor___visit
};
507 trace
.prev
= tracehead
; tracehead
= &trace
;
509 ((mmbuilder___PNode___accept_class_verifier_t
)CALL( variable0
/*n*/,COLOR_mmbuilder___PNode___accept_class_verifier
))( variable0
/*n*/, self
) /*PNode::accept_class_verifier*/;
510 tracehead
= trace
.prev
;
513 void mmbuilder___ClassVerifierVisitor___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
514 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 239, LOCATE_mmbuilder___ClassVerifierVisitor___init
};
517 trace
.prev
= tracehead
; tracehead
= &trace
;
520 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_ClassVerifierVisitor
].i
]) return;
521 ((syntax_base___AbsSyntaxVisitor___init_t
)CALL( self
,COLOR_syntax_base___AbsSyntaxVisitor___init
))( self
, param0
, param1
, init_table
/*YYY*/) /*AbsSyntaxVisitor::init*/;
522 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_ClassVerifierVisitor
].i
] = 1;
523 tracehead
= trace
.prev
;
526 void mmbuilder___PropertyBuilderVisitor___visit(val_t self
, val_t param0
) {
527 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 249, LOCATE_mmbuilder___PropertyBuilderVisitor___visit
};
529 trace
.prev
= tracehead
; tracehead
= &trace
;
531 ((mmbuilder___PNode___accept_property_builder_t
)CALL( variable0
/*n*/,COLOR_mmbuilder___PNode___accept_property_builder
))( variable0
/*n*/, self
) /*PNode::accept_property_builder*/;
532 tracehead
= trace
.prev
;
535 void mmbuilder___PropertyBuilderVisitor___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
536 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 250, LOCATE_mmbuilder___PropertyBuilderVisitor___init
};
539 trace
.prev
= tracehead
; tracehead
= &trace
;
542 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_PropertyBuilderVisitor
].i
]) return;
543 ((syntax_base___AbsSyntaxVisitor___init_t
)CALL( self
,COLOR_syntax_base___AbsSyntaxVisitor___init
))( self
, param0
, param1
, init_table
/*YYY*/) /*AbsSyntaxVisitor::init*/;
544 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_PropertyBuilderVisitor
].i
] = 1;
545 tracehead
= trace
.prev
;
548 val_t
mmbuilder___PropertyVerifierVisitor___params(val_t self
) {
549 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 257, LOCATE_mmbuilder___PropertyVerifierVisitor___params
};
550 trace
.prev
= tracehead
; tracehead
= &trace
;
551 tracehead
= trace
.prev
;
552 return ATTR_mmbuilder___PropertyVerifierVisitor____params( self
) /*PropertyVerifierVisitor::_params*/;
554 void mmbuilder___PropertyVerifierVisitor___params__eq(val_t self
, val_t param0
) {
555 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 257, LOCATE_mmbuilder___PropertyVerifierVisitor___params__eq
};
556 trace
.prev
= tracehead
; tracehead
= &trace
;
557 ATTR_mmbuilder___PropertyVerifierVisitor____params( self
) /*PropertyVerifierVisitor::_params*/ = param0
;
558 tracehead
= trace
.prev
;
561 val_t
mmbuilder___PropertyVerifierVisitor___untyped_params(val_t self
) {
562 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 260, LOCATE_mmbuilder___PropertyVerifierVisitor___untyped_params
};
563 trace
.prev
= tracehead
; tracehead
= &trace
;
564 tracehead
= trace
.prev
;
565 return ATTR_mmbuilder___PropertyVerifierVisitor____untyped_params( self
) /*PropertyVerifierVisitor::_untyped_params*/;
567 void mmbuilder___PropertyVerifierVisitor___untyped_params__eq(val_t self
, val_t param0
) {
568 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 260, LOCATE_mmbuilder___PropertyVerifierVisitor___untyped_params__eq
};
569 trace
.prev
= tracehead
; tracehead
= &trace
;
570 ATTR_mmbuilder___PropertyVerifierVisitor____untyped_params( self
) /*PropertyVerifierVisitor::_untyped_params*/ = param0
;
571 tracehead
= trace
.prev
;
574 val_t
mmbuilder___PropertyVerifierVisitor___vararg_rank(val_t self
) {
575 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 263, LOCATE_mmbuilder___PropertyVerifierVisitor___vararg_rank
};
576 trace
.prev
= tracehead
; tracehead
= &trace
;
577 tracehead
= trace
.prev
;
578 return ATTR_mmbuilder___PropertyVerifierVisitor____vararg_rank( self
) /*PropertyVerifierVisitor::_vararg_rank*/;
580 void mmbuilder___PropertyVerifierVisitor___vararg_rank__eq(val_t self
, val_t param0
) {
581 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 263, LOCATE_mmbuilder___PropertyVerifierVisitor___vararg_rank__eq
};
582 trace
.prev
= tracehead
; tracehead
= &trace
;
583 ATTR_mmbuilder___PropertyVerifierVisitor____vararg_rank( self
) /*PropertyVerifierVisitor::_vararg_rank*/ = param0
;
584 tracehead
= trace
.prev
;
587 val_t
mmbuilder___PropertyVerifierVisitor___signature(val_t self
) {
588 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 266, LOCATE_mmbuilder___PropertyVerifierVisitor___signature
};
589 trace
.prev
= tracehead
; tracehead
= &trace
;
590 tracehead
= trace
.prev
;
591 return ATTR_mmbuilder___PropertyVerifierVisitor____signature( self
) /*PropertyVerifierVisitor::_signature*/;
593 void mmbuilder___PropertyVerifierVisitor___signature__eq(val_t self
, val_t param0
) {
594 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 266, LOCATE_mmbuilder___PropertyVerifierVisitor___signature__eq
};
595 trace
.prev
= tracehead
; tracehead
= &trace
;
596 ATTR_mmbuilder___PropertyVerifierVisitor____signature( self
) /*PropertyVerifierVisitor::_signature*/ = param0
;
597 tracehead
= trace
.prev
;
600 void mmbuilder___PropertyVerifierVisitor___visit(val_t self
, val_t param0
) {
601 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 269, LOCATE_mmbuilder___PropertyVerifierVisitor___visit
};
603 trace
.prev
= tracehead
; tracehead
= &trace
;
605 ((mmbuilder___PNode___accept_property_verifier_t
)CALL( variable0
/*n*/,COLOR_mmbuilder___PNode___accept_property_verifier
))( variable0
/*n*/, self
) /*PNode::accept_property_verifier*/;
606 tracehead
= trace
.prev
;
609 void mmbuilder___PropertyVerifierVisitor___init(val_t self
, val_t param0
, val_t param1
, int* init_table
) {
610 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 271, LOCATE_mmbuilder___PropertyVerifierVisitor___init
};
613 trace
.prev
= tracehead
; tracehead
= &trace
;
616 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_PropertyVerifierVisitor
].i
]) return;
617 ((syntax_base___AbsSyntaxVisitor___init_t
)CALL( self
,COLOR_syntax_base___AbsSyntaxVisitor___init
))( self
, param0
, param1
, init_table
/*YYY*/) /*AbsSyntaxVisitor::init*/;
618 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_PropertyVerifierVisitor
].i
] = 1;
619 tracehead
= trace
.prev
;
622 void mmbuilder___PNode___accept_class_builder(val_t self
, val_t param0
) {
623 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 277, LOCATE_mmbuilder___PNode___accept_class_builder
};
625 trace
.prev
= tracehead
; tracehead
= &trace
;
627 ((syntax_base___PNode___accept_abs_syntax_visitor_t
)CALL( self
,COLOR_syntax_base___PNode___accept_abs_syntax_visitor
))( self
, variable0
/*v*/) /*PNode::accept_abs_syntax_visitor*/;
628 tracehead
= trace
.prev
;
631 void mmbuilder___PNode___accept_class_specialization_builder(val_t self
, val_t param0
) {
632 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 278, LOCATE_mmbuilder___PNode___accept_class_specialization_builder
};
634 trace
.prev
= tracehead
; tracehead
= &trace
;
636 ((syntax_base___PNode___accept_abs_syntax_visitor_t
)CALL( self
,COLOR_syntax_base___PNode___accept_abs_syntax_visitor
))( self
, variable0
/*v*/) /*PNode::accept_abs_syntax_visitor*/;
637 tracehead
= trace
.prev
;
640 void mmbuilder___PNode___accept_class_ancestor_builder(val_t self
, val_t param0
) {
641 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 279, LOCATE_mmbuilder___PNode___accept_class_ancestor_builder
};
643 trace
.prev
= tracehead
; tracehead
= &trace
;
645 ((syntax_base___PNode___accept_abs_syntax_visitor_t
)CALL( self
,COLOR_syntax_base___PNode___accept_abs_syntax_visitor
))( self
, variable0
/*v*/) /*PNode::accept_abs_syntax_visitor*/;
646 tracehead
= trace
.prev
;
649 void mmbuilder___PNode___accept_class_verifier(val_t self
, val_t param0
) {
650 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 280, LOCATE_mmbuilder___PNode___accept_class_verifier
};
652 trace
.prev
= tracehead
; tracehead
= &trace
;
654 ((syntax_base___PNode___accept_abs_syntax_visitor_t
)CALL( self
,COLOR_syntax_base___PNode___accept_abs_syntax_visitor
))( self
, variable0
/*v*/) /*PNode::accept_abs_syntax_visitor*/;
655 tracehead
= trace
.prev
;
658 void mmbuilder___PNode___accept_property_builder(val_t self
, val_t param0
) {
659 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 281, LOCATE_mmbuilder___PNode___accept_property_builder
};
661 trace
.prev
= tracehead
; tracehead
= &trace
;
663 ((syntax_base___PNode___accept_abs_syntax_visitor_t
)CALL( self
,COLOR_syntax_base___PNode___accept_abs_syntax_visitor
))( self
, variable0
/*v*/) /*PNode::accept_abs_syntax_visitor*/;
664 tracehead
= trace
.prev
;
667 void mmbuilder___PNode___accept_property_verifier(val_t self
, val_t param0
) {
668 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 282, LOCATE_mmbuilder___PNode___accept_property_verifier
};
670 trace
.prev
= tracehead
; tracehead
= &trace
;
672 ((syntax_base___PNode___accept_abs_syntax_visitor_t
)CALL( self
,COLOR_syntax_base___PNode___accept_abs_syntax_visitor
))( self
, variable0
/*v*/) /*PNode::accept_abs_syntax_visitor*/;
673 tracehead
= trace
.prev
;
676 void mmbuilder___AModule___import_super_modules(val_t self
, val_t param0
, val_t param1
) {
677 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 286, LOCATE_mmbuilder___AModule___import_super_modules
};
690 static val_t once_value_variable6_41
; static int once_bool_variable6_41
;
691 trace
.prev
= tracehead
; tracehead
= &trace
;
694 variable3
= NEW_array___Array___init(); /*new Array[E]*/
695 variable2
= variable3
;
696 variable4
= NEW_hash___HashMap___init(); /*new HashMap[K, V]*/
697 variable3
= variable4
;
698 variable4
= NIT_NULL
/*null*/;
699 variable5
= ((parser_nodes___AModule___n_imports_t
)CALL( self
,COLOR_parser_nodes___AModule___n_imports
))( self
) /*AModule::n_imports*/;
700 variable5
= ((list___List___iterator_t
)CALL(variable5
,COLOR_abstract_collection___Collection___iterator
))(variable5
) /*List::iterator*/;
701 while (true) { /*for*/
702 variable6
= ((list___ListIterator___is_ok_t
)CALL(variable5
,COLOR_abstract_collection___Iterator___is_ok
))(variable5
) /*ListIterator::is_ok*/;
703 if (!UNTAG_Bool(variable6
)) break; /*for*/
704 variable6
= ((list___ListIterator___item_t
)CALL(variable5
,COLOR_abstract_collection___Iterator___item
))(variable5
) /*ListIterator::item*/;
705 variable8
= ((mmbuilder___PImport___module_name_t
)CALL( variable6
/*i*/,COLOR_mmbuilder___PImport___module_name
))( variable6
/*i*/) /*PImport::module_name*/;
706 variable7
= variable8
;
707 variable8
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable7
/*n*/ == NIT_NULL
/*null*/) || (( variable7
/*n*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable7
/*n*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable7
/*n*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable7
/*n*/,COLOR_kernel___Object_____eqeq
))( variable7
/*n*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
708 if (UNTAG_Bool(variable8
)) { /*if*/
709 ((array___AbstractArray___add_t
)CALL( variable2
/*module_names_to_import*/,COLOR_abstract_collection___SimpleCollection___add
))( variable2
/*module_names_to_import*/, variable7
/*n*/) /*AbstractArray::add*/;
710 variable8
= ((mmbuilder___PImport___visibility_level_t
)CALL( variable6
/*i*/,COLOR_mmbuilder___PImport___visibility_level
))( variable6
/*i*/) /*PImport::visibility_level*/;
711 ((hash___HashMap_____braeq_t
)CALL( variable3
/*module_visibility*/,COLOR_abstract_collection___Map_____braeq
))( variable3
/*module_visibility*/, variable7
/*n*/, variable8
) /*HashMap::[]=*/;
713 variable4
= variable6
/*i*/ /*no_import=*/;
715 continue_40
: while(0);
716 ((list___ListIterator___next_t
)CALL(variable5
,COLOR_abstract_collection___Iterator___next
))(variable5
) /*ListIterator::next*/;
719 variable5
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable4
/*no_import*/ == NIT_NULL
/*null*/) || (( variable4
/*no_import*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable4
/*no_import*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable4
/*no_import*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable4
/*no_import*/,COLOR_kernel___Object_____eqeq
))( variable4
/*no_import*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
720 if (UNTAG_Bool(variable5
)) { /*if*/
721 variable5
= ((array___AbstractArray___is_empty_t
)CALL( variable2
/*module_names_to_import*/,COLOR_abstract_collection___Collection___is_empty
))( variable2
/*module_names_to_import*/) /*AbstractArray::is_empty*/;
722 if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable5
)))) { /*if*/
723 variable5
= NEW_string___String___init(); /*new String*/
724 variable6
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
725 variable7
= variable6
;
726 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
727 variable8
= ((parser_prod___Prod___locate_t
)CALL( variable4
/*no_import*/,COLOR_parser_prod___PNode___locate
))( variable4
/*no_import*/) /*Prod::locate*/;
728 variable9
= variable8
;
729 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable9
) /*String::append*/;
730 variable10
= NEW_string___String___with_native(BOX_NativeString(": Error: Top modules cannot import other modules."), TAG_Int(49)); /*new String*/
731 variable11
= variable10
;
732 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable11
) /*String::append*/;
733 ((mmloader___ToolContext___error_t
)CALL( variable0
/*tc*/,COLOR_mmloader___ToolContext___error
))( variable0
/*tc*/, variable5
) /*ToolContext::error*/;
736 variable5
= ((array___AbstractArray___is_empty_t
)CALL( variable2
/*module_names_to_import*/,COLOR_abstract_collection___Collection___is_empty
))( variable2
/*module_names_to_import*/) /*AbstractArray::is_empty*/;
737 if (UNTAG_Bool(variable5
)) { /*if*/
738 if (once_bool_variable6_41
) variable6
= once_value_variable6_41
;
740 variable6
= NEW_string___String___with_native(BOX_NativeString("standard"), TAG_Int(8)); /*new String*/
741 variable6
= ((symbol___String___to_symbol_t
)CALL(variable6
,COLOR_symbol___String___to_symbol
))(variable6
) /*String::to_symbol*/;
742 once_value_variable6_41
= variable6
;
743 once_bool_variable6_41
= true;
745 variable5
= variable6
;
746 ((array___AbstractArray___add_t
)CALL( variable2
/*module_names_to_import*/,COLOR_abstract_collection___SimpleCollection___add
))( variable2
/*module_names_to_import*/, variable5
/*stdname*/) /*AbstractArray::add*/;
747 ((hash___HashMap_____braeq_t
)CALL( variable3
/*module_visibility*/,COLOR_abstract_collection___Map_____braeq
))( variable3
/*module_visibility*/, variable5
/*stdname*/, TAG_Int(1)) /*HashMap::[]=*/;
750 ((mmloader___MMModule___import_supers_modules_t
)CALL( variable1
/*mod*/,COLOR_mmloader___MMModule___import_supers_modules
))( variable1
/*mod*/, variable2
/*module_names_to_import*/) /*MMModule::import_supers_modules*/;
751 variable5
= ((array___AbstractArray___iterator_t
)CALL( variable2
/*module_names_to_import*/,COLOR_abstract_collection___Collection___iterator
))( variable2
/*module_names_to_import*/) /*AbstractArray::iterator*/;
752 while (true) { /*for*/
753 variable6
= ((array___ArrayIterator___is_ok_t
)CALL(variable5
,COLOR_abstract_collection___Iterator___is_ok
))(variable5
) /*ArrayIterator::is_ok*/;
754 if (!UNTAG_Bool(variable6
)) break; /*for*/
755 variable6
= ((array___ArrayIterator___item_t
)CALL(variable5
,COLOR_abstract_collection___Iterator___item
))(variable5
) /*ArrayIterator::item*/;
756 variable8
= ((abstract_collection___CoupleMap_____bra_t
)CALL( variable3
/*module_visibility*/,COLOR_abstract_collection___Map_____bra
))( variable3
/*module_visibility*/, variable6
/*mname*/) /*CoupleMap::[]*/;
757 variable7
= variable8
;
758 variable9
= ((mmloader___ToolContext___get_module_t
)CALL( variable0
/*tc*/,COLOR_mmloader___ToolContext___get_module
))( variable0
/*tc*/, variable6
/*mname*/, variable1
/*mod*/) /*ToolContext::get_module*/;
759 variable8
= variable9
;
760 ((abstractmetamodel___MMModule___add_super_module_t
)CALL( variable1
/*mod*/,COLOR_abstractmetamodel___MMModule___add_super_module
))( variable1
/*mod*/, variable8
/*m*/, variable7
/*level*/) /*MMModule::add_super_module*/;
761 continue_42
: while(0);
762 ((array___ArrayIterator___next_t
)CALL(variable5
,COLOR_abstract_collection___Iterator___next
))(variable5
) /*ArrayIterator::next*/;
765 tracehead
= trace
.prev
;
768 void mmbuilder___APackagedecl___accept_class_builder(val_t self
, val_t param0
) {
769 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 323, LOCATE_mmbuilder___APackagedecl___accept_class_builder
};
783 trace
.prev
= tracehead
; tracehead
= &trace
;
785 variable1
= ((parser_nodes___APackagedecl___n_id_t
)CALL( self
,COLOR_parser_nodes___APackagedecl___n_id
))( self
) /*APackagedecl::n_id*/;
786 variable1
= ((syntax_base___Token___to_symbol_t
)CALL(variable1
,COLOR_syntax_base___Token___to_symbol
))(variable1
) /*Token::to_symbol*/;
787 variable2
= ((syntax_base___AbsSyntaxVisitor___module_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___module
))( variable0
/*v*/) /*AbsSyntaxVisitor::module*/;
788 variable2
= ((abstractmetamodel___MMModule___name_t
)CALL(variable2
,COLOR_abstractmetamodel___MMModule___name
))(variable2
) /*MMModule::name*/;
789 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== variable2
) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
,variable2
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, variable2
) /*Object::==*/)))))));
790 if (UNTAG_Bool(variable1
)) { /*if*/
791 variable1
= ((parser_nodes___APackagedecl___n_id_t
)CALL( self
,COLOR_parser_nodes___APackagedecl___n_id
))( self
) /*APackagedecl::n_id*/;
792 variable2
= NEW_string___String___init(); /*new String*/
793 variable3
= NEW_string___String___with_native(BOX_NativeString("Error: Package name missmatch between "), TAG_Int(38)); /*new String*/
794 variable4
= variable3
;
795 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable4
) /*String::append*/;
796 variable5
= ((syntax_base___AbsSyntaxVisitor___module_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___module
))( variable0
/*v*/) /*AbsSyntaxVisitor::module*/;
797 variable5
= ((abstractmetamodel___MMModule___name_t
)CALL(variable5
,COLOR_abstractmetamodel___MMModule___name
))(variable5
) /*MMModule::name*/;
798 variable6
= variable5
;
799 variable6
= ((string___String___to_s_t
)CALL(variable6
,COLOR_string___Object___to_s
))(variable6
) /*String::to_s*/;
800 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable6
) /*String::append*/;
801 variable7
= NEW_string___String___with_native(BOX_NativeString(" and "), TAG_Int(5)); /*new String*/
802 variable8
= variable7
;
803 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable8
) /*String::append*/;
804 variable9
= ((parser_nodes___APackagedecl___n_id_t
)CALL( self
,COLOR_parser_nodes___APackagedecl___n_id
))( self
) /*APackagedecl::n_id*/;
805 variable9
= ((syntax_base___Token___to_symbol_t
)CALL(variable9
,COLOR_syntax_base___Token___to_symbol
))(variable9
) /*Token::to_symbol*/;
806 variable10
= variable9
;
807 variable10
= ((string___String___to_s_t
)CALL(variable10
,COLOR_string___Object___to_s
))(variable10
) /*String::to_s*/;
808 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable10
) /*String::append*/;
809 variable11
= NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
810 variable12
= variable11
;
811 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable12
) /*String::append*/;
812 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable1
, variable2
) /*AbsSyntaxVisitor::error*/;
814 tracehead
= trace
.prev
;
817 val_t
mmbuilder___PImport___module_name(val_t self
) {
818 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 332, LOCATE_mmbuilder___PImport___module_name
};
819 trace
.prev
= tracehead
; tracehead
= &trace
;
820 fprintf(stderr
, "Deferred method %s called");
821 fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_mmbuilder___APackagedecl___accept_class_builder
, LOCATE_mmbuilder
, 332);
823 tracehead
= trace
.prev
;
826 val_t
mmbuilder___PImport___visibility_level(val_t self
) {
827 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 335, LOCATE_mmbuilder___PImport___visibility_level
};
828 trace
.prev
= tracehead
; tracehead
= &trace
;
829 fprintf(stderr
, "Deferred method %s called");
830 fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_mmbuilder___APackagedecl___accept_class_builder
, LOCATE_mmbuilder
, 335);
832 tracehead
= trace
.prev
;
835 val_t
mmbuilder___AImport___module_name(val_t self
) {
836 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 339, LOCATE_mmbuilder___AImport___module_name
};
838 trace
.prev
= tracehead
; tracehead
= &trace
;
839 variable0
= ((parser_nodes___AImport___n_id_t
)CALL( self
,COLOR_parser_nodes___AImport___n_id
))( self
) /*AImport::n_id*/;
840 variable0
= ((syntax_base___Token___to_symbol_t
)CALL(variable0
,COLOR_syntax_base___Token___to_symbol
))(variable0
) /*Token::to_symbol*/;
842 return_label44
: while(false);
843 tracehead
= trace
.prev
;
846 val_t
mmbuilder___AImport___visibility_level(val_t self
) {
847 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 343, LOCATE_mmbuilder___AImport___visibility_level
};
849 trace
.prev
= tracehead
; tracehead
= &trace
;
850 variable0
= ((parser_nodes___AImport___n_visibility_t
)CALL( self
,COLOR_parser_nodes___AImport___n_visibility
))( self
) /*AImport::n_visibility*/;
851 variable0
= ((mmbuilder___PVisibility___level_t
)CALL(variable0
,COLOR_mmbuilder___PVisibility___level
))(variable0
) /*PVisibility::level*/;
853 return_label45
: while(false);
854 tracehead
= trace
.prev
;
857 val_t
mmbuilder___ANoImport___module_name(val_t self
) {
858 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 349, LOCATE_mmbuilder___ANoImport___module_name
};
860 trace
.prev
= tracehead
; tracehead
= &trace
;
861 variable0
= NIT_NULL
/*null*/;
863 return_label46
: while(false);
864 tracehead
= trace
.prev
;
867 val_t
mmbuilder___PVisibility___level(val_t self
) {
868 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 356, LOCATE_mmbuilder___PVisibility___level
};
869 trace
.prev
= tracehead
; tracehead
= &trace
;
870 fprintf(stderr
, "Deferred method %s called");
871 fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_mmbuilder___ANoImport___module_name
, LOCATE_mmbuilder
, 356);
873 tracehead
= trace
.prev
;
876 val_t
mmbuilder___APublicVisibility___level(val_t self
) {
877 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 360, LOCATE_mmbuilder___APublicVisibility___level
};
879 trace
.prev
= tracehead
; tracehead
= &trace
;
880 variable0
= TAG_Int(1);
882 return_label47
: while(false);
883 tracehead
= trace
.prev
;
886 val_t
mmbuilder___AProtectedVisibility___level(val_t self
) {
887 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 363, LOCATE_mmbuilder___AProtectedVisibility___level
};
889 trace
.prev
= tracehead
; tracehead
= &trace
;
890 variable0
= TAG_Int(2);
892 return_label48
: while(false);
893 tracehead
= trace
.prev
;
896 val_t
mmbuilder___APrivateVisibility___level(val_t self
) {
897 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 366, LOCATE_mmbuilder___APrivateVisibility___level
};
899 trace
.prev
= tracehead
; tracehead
= &trace
;
900 variable0
= TAG_Int(3);
902 return_label49
: while(false);
903 tracehead
= trace
.prev
;
906 val_t
mmbuilder___AIntrudeVisibility___level(val_t self
) {
907 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 369, LOCATE_mmbuilder___AIntrudeVisibility___level
};
909 trace
.prev
= tracehead
; tracehead
= &trace
;
910 variable0
= TAG_Int(0);
912 return_label50
: while(false);
913 tracehead
= trace
.prev
;
916 val_t
mmbuilder___PClassdef___local_class(val_t self
) {
917 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 374, LOCATE_mmbuilder___PClassdef___local_class
};
918 trace
.prev
= tracehead
; tracehead
= &trace
;
919 tracehead
= trace
.prev
;
920 return ATTR_mmbuilder___PClassdef____local_class( self
) /*PClassdef::_local_class*/;
922 val_t
mmbuilder___PClassdef___name(val_t self
) {
923 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 376, LOCATE_mmbuilder___PClassdef___name
};
924 trace
.prev
= tracehead
; tracehead
= &trace
;
925 fprintf(stderr
, "Deferred method %s called");
926 fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_mmbuilder___AIntrudeVisibility___level
, LOCATE_mmbuilder
, 376);
928 tracehead
= trace
.prev
;
931 val_t
mmbuilder___PClassdef___arity(val_t self
) {
932 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 379, LOCATE_mmbuilder___PClassdef___arity
};
934 trace
.prev
= tracehead
; tracehead
= &trace
;
935 variable0
= TAG_Int(0);
937 return_label51
: while(false);
938 tracehead
= trace
.prev
;
941 val_t
mmbuilder___PClassdef___visibility_level(val_t self
) {
942 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 382, LOCATE_mmbuilder___PClassdef___visibility_level
};
944 trace
.prev
= tracehead
; tracehead
= &trace
;
945 variable0
= TAG_Int(1);
947 return_label52
: while(false);
948 tracehead
= trace
.prev
;
951 void mmbuilder___PClassdef___accept_class_builder(val_t self
, val_t param0
) {
952 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 385, LOCATE_mmbuilder___PClassdef___accept_class_builder
};
968 trace
.prev
= tracehead
; tracehead
= &trace
;
970 variable1
= NIT_NULL
/*decl variable local_class*/;
971 variable3
= ((syntax_base___AbsSyntaxVisitor___module_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___module
))( variable0
/*v*/) /*AbsSyntaxVisitor::module*/;
972 variable2
= variable3
;
973 variable4
= ((syntax_base___MMSrcModule___src_local_classes_t
)CALL( variable2
/*mod*/,COLOR_syntax_base___MMSrcModule___src_local_classes
))( variable2
/*mod*/) /*MMSrcModule::src_local_classes*/;
974 variable3
= variable4
;
975 variable4
= ((mmbuilder___PClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*PClassdef::name*/;
976 variable4
= ((abstract_collection___Map___has_key_t
)CALL( variable3
/*local_classes*/,COLOR_abstract_collection___Map___has_key
))( variable3
/*local_classes*/, variable4
) /*Map::has_key*/;
977 if (UNTAG_Bool(variable4
)) { /*if*/
978 variable4
= ((mmbuilder___PClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*PClassdef::name*/;
979 variable4
= ((abstract_collection___Map_____bra_t
)CALL( variable3
/*local_classes*/,COLOR_abstract_collection___Map_____bra
))( variable3
/*local_classes*/, variable4
) /*Map::[]*/;
980 variable1
= variable4
/*local_class=*/;
981 variable4
= TAG_Bool(( self
==NIT_NULL
) || VAL_ISA( self
, COLOR_AClassdef
, ID_AClassdef
)) /*cast AClassdef*/;
982 if (UNTAG_Bool(variable4
)) { /*if*/
983 variable4
= NEW_string___String___init(); /*new String*/
984 variable5
= NEW_string___String___with_native(BOX_NativeString("Error: A class "), TAG_Int(15)); /*new String*/
985 variable6
= variable5
;
986 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable6
) /*String::append*/;
987 variable7
= ((mmbuilder___PClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*PClassdef::name*/;
988 variable8
= variable7
;
989 variable8
= ((string___String___to_s_t
)CALL(variable8
,COLOR_string___Object___to_s
))(variable8
) /*String::to_s*/;
990 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable8
) /*String::append*/;
991 variable9
= NEW_string___String___with_native(BOX_NativeString(" is already defined at line "), TAG_Int(28)); /*new String*/
992 variable10
= variable9
;
993 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable10
) /*String::append*/;
994 variable11
= ((syntax_base___MMSrcLocalClass___nodes_t
)CALL( variable1
/*local_class*/,COLOR_syntax_base___MMSrcLocalClass___nodes
))( variable1
/*local_class*/) /*MMSrcLocalClass::nodes*/;
995 variable11
= ((abstract_collection___IndexedCollection___first_t
)CALL(variable11
,COLOR_abstract_collection___Collection___first
))(variable11
) /*IndexedCollection::first*/;
996 variable11
= ((parser_prod___Prod___first_token_t
)CALL(variable11
,COLOR_parser_prod___Prod___first_token
))(variable11
) /*Prod::first_token*/;
997 variable11
= ((lexer___Token___line_t
)CALL(variable11
,COLOR_lexer___Token___line
))(variable11
) /*Token::line*/;
998 variable12
= variable11
;
999 variable12
= ((string___String___to_s_t
)CALL(variable12
,COLOR_string___Object___to_s
))(variable12
) /*String::to_s*/;
1000 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable12
) /*String::append*/;
1001 variable13
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1002 variable14
= variable13
;
1003 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable14
) /*String::append*/;
1004 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable4
) /*AbsSyntaxVisitor::error*/;
1005 goto return_label53
;
1007 variable4
= ((syntax_base___MMSrcLocalClass___nodes_t
)CALL( variable1
/*local_class*/,COLOR_syntax_base___MMSrcLocalClass___nodes
))( variable1
/*local_class*/) /*MMSrcLocalClass::nodes*/;
1008 ((array___AbstractArray___add_t
)CALL(variable4
,COLOR_abstract_collection___SimpleCollection___add
))(variable4
, self
) /*AbstractArray::add*/;
1010 variable4
= ((mmbuilder___PClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*PClassdef::name*/;
1011 variable5
= ((mmbuilder___PClassdef___arity_t
)CALL( self
,COLOR_mmbuilder___PClassdef___arity
))( self
) /*PClassdef::arity*/;
1012 variable6
= NEW_syntax_base___MMSrcLocalClass___init(variable4
, self
, variable5
); /*new MMSrcLocalClass*/
1013 variable4
= variable6
;
1014 variable1
= variable4
/*local_class=*/;
1015 ((abstractmetamodel___MMModule___add_local_class_t
)CALL( variable2
/*mod*/,COLOR_abstractmetamodel___MMModule___add_local_class
))( variable2
/*mod*/, variable1
/*local_class*/) /*MMModule::add_local_class*/;
1016 variable4
= ((mmbuilder___PClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*PClassdef::name*/;
1017 ((abstract_collection___Map_____braeq_t
)CALL( variable3
/*local_classes*/,COLOR_abstract_collection___Map_____braeq
))( variable3
/*local_classes*/, variable4
, variable1
/*local_class*/) /*Map::[]=*/;
1018 variable5
= ((mmbuilder___PClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*PClassdef::name*/;
1019 variable5
= ((abstractmetamodel___MMModule___global_class_named_t
)CALL( variable2
/*mod*/,COLOR_abstractmetamodel___MMModule___global_class_named
))( variable2
/*mod*/, variable5
) /*MMModule::global_class_named*/;
1020 variable4
= variable5
;
1021 variable5
= TAG_Bool(( variable4
/*g*/ == NIT_NULL
/*null*/) || (( variable4
/*g*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable4
/*g*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable4
/*g*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable4
/*g*/,COLOR_kernel___Object_____eqeq
))( variable4
/*g*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1022 if (UNTAG_Bool(variable5
)) { /*if*/
1023 ((abstractmetamodel___MMLocalClass___new_global_t
)CALL( variable1
/*local_class*/,COLOR_abstractmetamodel___MMLocalClass___new_global
))( variable1
/*local_class*/) /*MMLocalClass::new_global*/;
1024 variable5
= ((abstractmetamodel___MMLocalClass___global_t
)CALL( variable1
/*local_class*/,COLOR_abstractmetamodel___MMLocalClass___global
))( variable1
/*local_class*/) /*MMLocalClass::global*/;
1025 variable4
= variable5
/*g=*/;
1027 ((abstractmetamodel___MMLocalClass___set_global_t
)CALL( variable1
/*local_class*/,COLOR_abstractmetamodel___MMLocalClass___set_global
))( variable1
/*local_class*/, variable4
/*g*/) /*MMLocalClass::set_global*/;
1030 ATTR_mmbuilder___PClassdef____local_class( self
) /*PClassdef::_local_class*/ = variable1
/*local_class*/;
1031 ((mmbuilder___ClassBuilderVisitor___local_class_arity__eq_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___ClassBuilderVisitor___local_class_arity__eq
))( variable0
/*v*/, TAG_Int(0)) /*ClassBuilderVisitor::local_class_arity=*/;
1032 variable4
= NEW_hash___HashMap___init(); /*new HashMap[K, V]*/
1033 ((mmbuilder___ClassBuilderVisitor___formals__eq_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___ClassBuilderVisitor___formals__eq
))( variable0
/*v*/, variable4
) /*ClassBuilderVisitor::formals=*/;
1034 ((mmbuilder___PClassdef___accept_class_builder_t
)CALL( self
,COLOR_SUPER_mmbuilder___PClassdef___accept_class_builder
))( self
, param0
) /*super PClassdef::accept_class_builder*/;
1035 variable4
= ATTR_mmbuilder___PClassdef____local_class( self
) /*PClassdef::_local_class*/;
1036 variable5
= ((mmbuilder___ClassBuilderVisitor___formals_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___ClassBuilderVisitor___formals
))( variable0
/*v*/) /*ClassBuilderVisitor::formals*/;
1037 ((syntax_base___MMSrcLocalClass___formal_dict__eq_t
)CALL(variable4
,COLOR_syntax_base___MMSrcLocalClass___formal_dict__eq
))(variable4
, variable5
) /*MMSrcLocalClass::formal_dict=*/;
1038 ((mmbuilder___ClassBuilderVisitor___formals__eq_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___ClassBuilderVisitor___formals__eq
))( variable0
/*v*/, NIT_NULL
/*null*/) /*ClassBuilderVisitor::formals=*/;
1039 return_label53
: while(false);
1040 tracehead
= trace
.prev
;
1043 void mmbuilder___PClassdef___accept_abs_syntax_visitor(val_t self
, val_t param0
) {
1044 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 424, LOCATE_mmbuilder___PClassdef___accept_abs_syntax_visitor
};
1047 trace
.prev
= tracehead
; tracehead
= &trace
;
1049 variable1
= ATTR_mmbuilder___PClassdef____local_class( self
) /*PClassdef::_local_class*/;
1050 ((syntax_base___AbsSyntaxVisitor___local_class__eq_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class__eq
))( variable0
/*v*/, variable1
) /*AbsSyntaxVisitor::local_class=*/;
1051 ((mmbuilder___PClassdef___accept_abs_syntax_visitor_t
)CALL( self
,COLOR_SUPER_mmbuilder___PClassdef___accept_abs_syntax_visitor
))( self
, param0
) /*super PClassdef::accept_abs_syntax_visitor*/;
1052 ((syntax_base___AbsSyntaxVisitor___local_class__eq_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class__eq
))( variable0
/*v*/, NIT_NULL
/*null*/) /*AbsSyntaxVisitor::local_class=*/;
1053 tracehead
= trace
.prev
;
1056 val_t
mmbuilder___PClasskind___is_interface(val_t self
) {
1057 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 433, LOCATE_mmbuilder___PClasskind___is_interface
};
1059 trace
.prev
= tracehead
; tracehead
= &trace
;
1060 variable0
= TAG_Bool(false);
1061 goto return_label55
;
1062 return_label55
: while(false);
1063 tracehead
= trace
.prev
;
1066 val_t
mmbuilder___PClasskind___is_universal(val_t self
) {
1067 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 434, LOCATE_mmbuilder___PClasskind___is_universal
};
1069 trace
.prev
= tracehead
; tracehead
= &trace
;
1070 variable0
= TAG_Bool(false);
1071 goto return_label56
;
1072 return_label56
: while(false);
1073 tracehead
= trace
.prev
;
1076 val_t
mmbuilder___PClasskind___is_abstract(val_t self
) {
1077 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 435, LOCATE_mmbuilder___PClasskind___is_abstract
};
1079 trace
.prev
= tracehead
; tracehead
= &trace
;
1080 variable0
= TAG_Bool(false);
1081 goto return_label57
;
1082 return_label57
: while(false);
1083 tracehead
= trace
.prev
;
1086 val_t
mmbuilder___AInterfaceClasskind___is_interface(val_t self
) {
1087 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 439, LOCATE_mmbuilder___AInterfaceClasskind___is_interface
};
1089 trace
.prev
= tracehead
; tracehead
= &trace
;
1090 variable0
= TAG_Bool(true);
1091 goto return_label58
;
1092 return_label58
: while(false);
1093 tracehead
= trace
.prev
;
1096 val_t
mmbuilder___AUniversalClasskind___is_universal(val_t self
) {
1097 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 442, LOCATE_mmbuilder___AUniversalClasskind___is_universal
};
1099 trace
.prev
= tracehead
; tracehead
= &trace
;
1100 variable0
= TAG_Bool(true);
1101 goto return_label59
;
1102 return_label59
: while(false);
1103 tracehead
= trace
.prev
;
1106 val_t
mmbuilder___AAbstractClasskind___is_abstract(val_t self
) {
1107 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 445, LOCATE_mmbuilder___AAbstractClasskind___is_abstract
};
1109 trace
.prev
= tracehead
; tracehead
= &trace
;
1110 variable0
= TAG_Bool(true);
1111 goto return_label60
;
1112 return_label60
: while(false);
1113 tracehead
= trace
.prev
;
1116 val_t
mmbuilder___AClassdef___name(val_t self
) {
1117 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 449, LOCATE_mmbuilder___AClassdef___name
};
1119 trace
.prev
= tracehead
; tracehead
= &trace
;
1120 variable0
= ((parser_nodes___AClassdef___n_id_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_id
))( self
) /*AClassdef::n_id*/;
1121 variable0
= ((syntax_base___Token___to_symbol_t
)CALL(variable0
,COLOR_syntax_base___Token___to_symbol
))(variable0
) /*Token::to_symbol*/;
1122 goto return_label61
;
1123 return_label61
: while(false);
1124 tracehead
= trace
.prev
;
1127 val_t
mmbuilder___AClassdef___arity(val_t self
) {
1128 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 453, LOCATE_mmbuilder___AClassdef___arity
};
1130 trace
.prev
= tracehead
; tracehead
= &trace
;
1131 variable0
= ((parser_nodes___AClassdef___n_formaldefs_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_formaldefs
))( self
) /*AClassdef::n_formaldefs*/;
1132 variable0
= ((list___List___length_t
)CALL(variable0
,COLOR_abstract_collection___Collection___length
))(variable0
) /*List::length*/;
1133 goto return_label62
;
1134 return_label62
: while(false);
1135 tracehead
= trace
.prev
;
1138 void mmbuilder___AClassdef___accept_class_verifier(val_t self
, val_t param0
) {
1139 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 457, LOCATE_mmbuilder___AClassdef___accept_class_verifier
};
1156 trace
.prev
= tracehead
; tracehead
= &trace
;
1158 ((mmbuilder___AClassdef___accept_class_verifier_t
)CALL( self
,COLOR_SUPER_mmbuilder___AClassdef___accept_class_verifier
))( self
, param0
) /*super AClassdef::accept_class_verifier*/;
1159 variable2
= ATTR_mmbuilder___PClassdef____local_class( self
) /*PClassdef::_local_class*/;
1160 variable2
= ((abstractmetamodel___MMLocalClass___global_t
)CALL(variable2
,COLOR_abstractmetamodel___MMLocalClass___global
))(variable2
) /*MMLocalClass::global*/;
1161 variable1
= variable2
;
1162 variable2
= ((abstractmetamodel___MMGlobalClass___intro_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___intro
))( variable1
/*glob*/) /*MMGlobalClass::intro*/;
1163 variable3
= ATTR_mmbuilder___PClassdef____local_class( self
) /*PClassdef::_local_class*/;
1164 variable2
= TAG_Bool((variable2
== variable3
) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
,variable3
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, variable3
) /*Object::==*/)))));
1165 if (UNTAG_Bool(variable2
)) { /*if*/
1166 variable2
= ((mmbuilder___AClassdef___visibility_level_t
)CALL( self
,COLOR_mmbuilder___PClassdef___visibility_level
))( self
) /*AClassdef::visibility_level*/;
1167 ((abstractmetamodel___MMGlobalClass___visibility_level__eq_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___visibility_level__eq
))( variable1
/*glob*/, variable2
) /*MMGlobalClass::visibility_level=*/;
1168 variable2
= ((parser_nodes___AClassdef___n_classkind_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_classkind
))( self
) /*AClassdef::n_classkind*/;
1169 variable2
= ((mmbuilder___PClasskind___is_interface_t
)CALL(variable2
,COLOR_mmbuilder___PClasskind___is_interface
))(variable2
) /*PClasskind::is_interface*/;
1170 ((abstractmetamodel___MMGlobalClass___is_interface__eq_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___is_interface__eq
))( variable1
/*glob*/, variable2
) /*MMGlobalClass::is_interface=*/;
1171 variable2
= ((parser_nodes___AClassdef___n_classkind_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_classkind
))( self
) /*AClassdef::n_classkind*/;
1172 variable2
= ((mmbuilder___PClasskind___is_abstract_t
)CALL(variable2
,COLOR_mmbuilder___PClasskind___is_abstract
))(variable2
) /*PClasskind::is_abstract*/;
1173 ((abstractmetamodel___MMGlobalClass___is_abstract__eq_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___is_abstract__eq
))( variable1
/*glob*/, variable2
) /*MMGlobalClass::is_abstract=*/;
1174 variable2
= ((parser_nodes___AClassdef___n_classkind_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_classkind
))( self
) /*AClassdef::n_classkind*/;
1175 variable2
= ((mmbuilder___PClasskind___is_universal_t
)CALL(variable2
,COLOR_mmbuilder___PClasskind___is_universal
))(variable2
) /*PClasskind::is_universal*/;
1176 ((abstractmetamodel___MMGlobalClass___is_universal__eq_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___is_universal__eq
))( variable1
/*glob*/, variable2
) /*MMGlobalClass::is_universal=*/;
1177 variable2
= ((parser_nodes___AClassdef___n_kwredef_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_kwredef
))( self
) /*AClassdef::n_kwredef*/;
1178 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2
== NIT_NULL
/*null*/) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, NIT_NULL
/*null*/) /*Object::==*/)))))));
1179 if (UNTAG_Bool(variable2
)) { /*if*/
1180 variable2
= NEW_string___String___init(); /*new String*/
1181 variable3
= NEW_string___String___with_native(BOX_NativeString("Redef error: No class "), TAG_Int(22)); /*new String*/
1182 variable4
= variable3
;
1183 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable4
) /*String::append*/;
1184 variable5
= ((mmbuilder___AClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*AClassdef::name*/;
1185 variable6
= variable5
;
1186 variable6
= ((string___String___to_s_t
)CALL(variable6
,COLOR_string___Object___to_s
))(variable6
) /*String::to_s*/;
1187 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable6
) /*String::append*/;
1188 variable7
= NEW_string___String___with_native(BOX_NativeString(" is imported. Remove the redef keyword to define a new class."), TAG_Int(61)); /*new String*/
1189 variable8
= variable7
;
1190 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable8
) /*String::append*/;
1191 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable2
) /*AbsSyntaxVisitor::error*/;
1193 variable2
= ATTR_mmbuilder___PClassdef____local_class( self
) /*PClassdef::_local_class*/;
1194 variable2
= ((abstractmetamodel___MMLocalClass___cshe_t
)CALL(variable2
,COLOR_abstractmetamodel___MMLocalClass___cshe
))(variable2
) /*MMLocalClass::cshe*/;
1195 variable2
= ((partial_order___PartialOrderElement___direct_greaters_t
)CALL(variable2
,COLOR_partial_order___PartialOrderElement___direct_greaters
))(variable2
) /*PartialOrderElement::direct_greaters*/;
1196 variable2
= ((array___AbstractArray___iterator_t
)CALL(variable2
,COLOR_abstract_collection___Collection___iterator
))(variable2
) /*AbstractArray::iterator*/;
1197 while (true) { /*for*/
1198 variable3
= ((array___ArrayIterator___is_ok_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___is_ok
))(variable2
) /*ArrayIterator::is_ok*/;
1199 if (!UNTAG_Bool(variable3
)) break; /*for*/
1200 variable3
= ((array___ArrayIterator___item_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___item
))(variable2
) /*ArrayIterator::item*/;
1201 variable5
= ((abstractmetamodel___MMLocalClass___global_t
)CALL( variable3
/*c*/,COLOR_abstractmetamodel___MMLocalClass___global
))( variable3
/*c*/) /*MMLocalClass::global*/;
1202 variable4
= variable5
;
1203 variable5
= ((abstractmetamodel___MMGlobalClass___is_interface_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___is_interface
))( variable1
/*glob*/) /*MMGlobalClass::is_interface*/;
1204 if (UNTAG_Bool(variable5
)) { /*if*/
1205 variable5
= ((abstractmetamodel___MMGlobalClass___is_universal_t
)CALL( variable4
/*cg*/,COLOR_abstractmetamodel___MMGlobalClass___is_universal
))( variable4
/*cg*/) /*MMGlobalClass::is_universal*/;
1206 if (UNTAG_Bool(variable5
)) { /*if*/
1207 variable5
= NEW_string___String___init(); /*new String*/
1208 variable6
= NEW_string___String___with_native(BOX_NativeString("Special error: Interface "), TAG_Int(25)); /*new String*/
1209 variable7
= variable6
;
1210 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
1211 variable8
= ((mmbuilder___AClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*AClassdef::name*/;
1212 variable9
= variable8
;
1213 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
1214 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable9
) /*String::append*/;
1215 variable10
= NEW_string___String___with_native(BOX_NativeString(" try to specialise universal class "), TAG_Int(35)); /*new String*/
1216 variable11
= variable10
;
1217 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable11
) /*String::append*/;
1218 variable12
= ((abstractmetamodel___MMLocalClass___name_t
)CALL( variable3
/*c*/,COLOR_abstractmetamodel___MMLocalClass___name
))( variable3
/*c*/) /*MMLocalClass::name*/;
1219 variable13
= variable12
;
1220 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
1221 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable13
) /*String::append*/;
1222 variable14
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1223 variable15
= variable14
;
1224 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable15
) /*String::append*/;
1225 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable5
) /*AbsSyntaxVisitor::error*/;
1227 variable5
= ((abstractmetamodel___MMGlobalClass___is_interface_t
)CALL( variable4
/*cg*/,COLOR_abstractmetamodel___MMGlobalClass___is_interface
))( variable4
/*cg*/) /*MMGlobalClass::is_interface*/;
1228 if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable5
)))) { /*if*/
1229 variable5
= NEW_string___String___init(); /*new String*/
1230 variable6
= NEW_string___String___with_native(BOX_NativeString("Special error: Interface "), TAG_Int(25)); /*new String*/
1231 variable7
= variable6
;
1232 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
1233 variable8
= ((mmbuilder___AClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*AClassdef::name*/;
1234 variable9
= variable8
;
1235 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
1236 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable9
) /*String::append*/;
1237 variable10
= NEW_string___String___with_native(BOX_NativeString(" try to specialise class "), TAG_Int(25)); /*new String*/
1238 variable11
= variable10
;
1239 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable11
) /*String::append*/;
1240 variable12
= ((abstractmetamodel___MMLocalClass___name_t
)CALL( variable3
/*c*/,COLOR_abstractmetamodel___MMLocalClass___name
))( variable3
/*c*/) /*MMLocalClass::name*/;
1241 variable13
= variable12
;
1242 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
1243 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable13
) /*String::append*/;
1244 variable14
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1245 variable15
= variable14
;
1246 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable15
) /*String::append*/;
1247 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable5
) /*AbsSyntaxVisitor::error*/;
1251 variable5
= ((abstractmetamodel___MMGlobalClass___is_universal_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___is_universal
))( variable1
/*glob*/) /*MMGlobalClass::is_universal*/;
1252 if (UNTAG_Bool(variable5
)) { /*if*/
1253 variable5
= ((abstractmetamodel___MMGlobalClass___is_interface_t
)CALL( variable4
/*cg*/,COLOR_abstractmetamodel___MMGlobalClass___is_interface
))( variable4
/*cg*/) /*MMGlobalClass::is_interface*/;
1254 variable5
= TAG_Bool(!UNTAG_Bool(variable5
));
1255 if (UNTAG_Bool(variable5
)) { /* and */
1256 variable5
= ((abstractmetamodel___MMGlobalClass___is_universal_t
)CALL( variable4
/*cg*/,COLOR_abstractmetamodel___MMGlobalClass___is_universal
))( variable4
/*cg*/) /*MMGlobalClass::is_universal*/;
1257 variable5
= TAG_Bool(!UNTAG_Bool(variable5
));
1259 if (UNTAG_Bool(variable5
)) { /*if*/
1260 variable5
= NEW_string___String___init(); /*new String*/
1261 variable6
= NEW_string___String___with_native(BOX_NativeString("Special error: Universal class "), TAG_Int(31)); /*new String*/
1262 variable7
= variable6
;
1263 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
1264 variable8
= ((mmbuilder___AClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*AClassdef::name*/;
1265 variable9
= variable8
;
1266 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
1267 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable9
) /*String::append*/;
1268 variable10
= NEW_string___String___with_native(BOX_NativeString(" try to specialise class "), TAG_Int(25)); /*new String*/
1269 variable11
= variable10
;
1270 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable11
) /*String::append*/;
1271 variable12
= ((abstractmetamodel___MMLocalClass___name_t
)CALL( variable3
/*c*/,COLOR_abstractmetamodel___MMLocalClass___name
))( variable3
/*c*/) /*MMLocalClass::name*/;
1272 variable13
= variable12
;
1273 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
1274 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable13
) /*String::append*/;
1275 variable14
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1276 variable15
= variable14
;
1277 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable15
) /*String::append*/;
1278 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable5
) /*AbsSyntaxVisitor::error*/;
1281 variable5
= ((abstractmetamodel___MMGlobalClass___is_universal_t
)CALL( variable4
/*cg*/,COLOR_abstractmetamodel___MMGlobalClass___is_universal
))( variable4
/*cg*/) /*MMGlobalClass::is_universal*/;
1282 if (UNTAG_Bool(variable5
)) { /*if*/
1283 variable5
= NEW_string___String___init(); /*new String*/
1284 variable6
= NEW_string___String___with_native(BOX_NativeString("Special error: Class "), TAG_Int(21)); /*new String*/
1285 variable7
= variable6
;
1286 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable7
) /*String::append*/;
1287 variable8
= ((mmbuilder___AClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*AClassdef::name*/;
1288 variable9
= variable8
;
1289 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
1290 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable9
) /*String::append*/;
1291 variable10
= NEW_string___String___with_native(BOX_NativeString(" try to specialise universal class "), TAG_Int(35)); /*new String*/
1292 variable11
= variable10
;
1293 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable11
) /*String::append*/;
1294 variable12
= ((abstractmetamodel___MMLocalClass___name_t
)CALL( variable3
/*c*/,COLOR_abstractmetamodel___MMLocalClass___name
))( variable3
/*c*/) /*MMLocalClass::name*/;
1295 variable13
= variable12
;
1296 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
1297 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable13
) /*String::append*/;
1298 variable14
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1299 variable15
= variable14
;
1300 ((string___String___append_t
)CALL(variable5
,COLOR_abstract_collection___IndexedCollection___append
))(variable5
, variable15
) /*String::append*/;
1301 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable5
) /*AbsSyntaxVisitor::error*/;
1305 continue_64
: while(0);
1306 ((array___ArrayIterator___next_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___next
))(variable2
) /*ArrayIterator::next*/;
1309 goto return_label63
;
1311 variable2
= ((syntax_base___AbsSyntaxVisitor___module_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___module
))( variable0
/*v*/) /*AbsSyntaxVisitor::module*/;
1312 ((syntax_base___MMGlobalClass___check_visibility_t
)CALL( variable1
/*glob*/,COLOR_syntax_base___MMGlobalClass___check_visibility
))( variable1
/*glob*/, variable0
/*v*/, self
, variable2
) /*MMGlobalClass::check_visibility*/;
1313 variable2
= ((parser_nodes___AClassdef___n_kwredef_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_kwredef
))( self
) /*AClassdef::n_kwredef*/;
1314 variable2
= TAG_Bool((variable2
== NIT_NULL
/*null*/) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, NIT_NULL
/*null*/) /*Object::==*/)))));
1315 if (UNTAG_Bool(variable2
)) { /*if*/
1316 variable2
= NEW_string___String___init(); /*new String*/
1317 variable3
= NEW_string___String___with_native(BOX_NativeString("Redef error: "), TAG_Int(13)); /*new String*/
1318 variable4
= variable3
;
1319 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable4
) /*String::append*/;
1320 variable5
= ((mmbuilder___AClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*AClassdef::name*/;
1321 variable6
= variable5
;
1322 variable6
= ((string___String___to_s_t
)CALL(variable6
,COLOR_string___Object___to_s
))(variable6
) /*String::to_s*/;
1323 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable6
) /*String::append*/;
1324 variable7
= NEW_string___String___with_native(BOX_NativeString(" is an imported class. Add the redef keyword to refine it."), TAG_Int(58)); /*new String*/
1325 variable8
= variable7
;
1326 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable8
) /*String::append*/;
1327 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable2
) /*AbsSyntaxVisitor::error*/;
1328 goto return_label63
;
1330 variable2
= ((abstractmetamodel___MMGlobalClass___intro_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___intro
))( variable1
/*glob*/) /*MMGlobalClass::intro*/;
1331 variable2
= ((abstractmetamodel___MMLocalClass___arity_t
)CALL(variable2
,COLOR_abstractmetamodel___MMLocalClass___arity
))(variable2
) /*MMLocalClass::arity*/;
1332 variable3
= ATTR_mmbuilder___PClassdef____local_class( self
) /*PClassdef::_local_class*/;
1333 variable3
= ((abstractmetamodel___MMLocalClass___arity_t
)CALL(variable3
,COLOR_abstractmetamodel___MMLocalClass___arity
))(variable3
) /*MMLocalClass::arity*/;
1334 variable2
= TAG_Bool((variable2
)!=(variable3
));
1335 if (UNTAG_Bool(variable2
)) { /*if*/
1336 variable2
= NEW_string___String___init(); /*new String*/
1337 variable3
= NEW_string___String___with_native(BOX_NativeString("Redef error: Formal parameter arity missmatch; got "), TAG_Int(51)); /*new String*/
1338 variable4
= variable3
;
1339 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable4
) /*String::append*/;
1340 variable5
= ATTR_mmbuilder___PClassdef____local_class( self
) /*PClassdef::_local_class*/;
1341 variable5
= ((abstractmetamodel___MMLocalClass___arity_t
)CALL(variable5
,COLOR_abstractmetamodel___MMLocalClass___arity
))(variable5
) /*MMLocalClass::arity*/;
1342 variable6
= variable5
;
1343 variable6
= ((string___String___to_s_t
)CALL(variable6
,COLOR_string___Object___to_s
))(variable6
) /*String::to_s*/;
1344 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable6
) /*String::append*/;
1345 variable7
= NEW_string___String___with_native(BOX_NativeString(", expected "), TAG_Int(11)); /*new String*/
1346 variable8
= variable7
;
1347 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable8
) /*String::append*/;
1348 variable9
= ((abstractmetamodel___MMGlobalClass___intro_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___intro
))( variable1
/*glob*/) /*MMGlobalClass::intro*/;
1349 variable9
= ((abstractmetamodel___MMLocalClass___arity_t
)CALL(variable9
,COLOR_abstractmetamodel___MMLocalClass___arity
))(variable9
) /*MMLocalClass::arity*/;
1350 variable10
= variable9
;
1351 variable10
= ((string___String___to_s_t
)CALL(variable10
,COLOR_string___Object___to_s
))(variable10
) /*String::to_s*/;
1352 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable10
) /*String::append*/;
1353 variable11
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1354 variable12
= variable11
;
1355 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable12
) /*String::append*/;
1356 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable2
) /*AbsSyntaxVisitor::error*/;
1358 variable2
= ((abstractmetamodel___MMGlobalClass___is_interface_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___is_interface
))( variable1
/*glob*/) /*MMGlobalClass::is_interface*/;
1359 variable2
= TAG_Bool(!UNTAG_Bool(variable2
));
1360 if (UNTAG_Bool(variable2
)) { /* and */
1361 variable2
= ((parser_nodes___AClassdef___n_classkind_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_classkind
))( self
) /*AClassdef::n_classkind*/;
1362 variable2
= ((mmbuilder___PClasskind___is_interface_t
)CALL(variable2
,COLOR_mmbuilder___PClasskind___is_interface
))(variable2
) /*PClasskind::is_interface*/;
1364 variable3
= variable2
;
1365 if (!UNTAG_Bool(variable3
)) { /* or */
1366 variable3
= ((abstractmetamodel___MMGlobalClass___is_abstract_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___is_abstract
))( variable1
/*glob*/) /*MMGlobalClass::is_abstract*/;
1367 variable3
= TAG_Bool(!UNTAG_Bool(variable3
));
1369 variable2
= variable3
;
1370 variable3
= variable2
;
1371 if (UNTAG_Bool(variable3
)) { /* and */
1372 variable3
= ((parser_nodes___AClassdef___n_classkind_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_classkind
))( self
) /*AClassdef::n_classkind*/;
1373 variable3
= ((mmbuilder___PClasskind___is_abstract_t
)CALL(variable3
,COLOR_mmbuilder___PClasskind___is_abstract
))(variable3
) /*PClasskind::is_abstract*/;
1375 variable2
= variable3
;
1376 variable3
= variable2
;
1377 if (!UNTAG_Bool(variable3
)) { /* or */
1378 variable3
= ((abstractmetamodel___MMGlobalClass___is_universal_t
)CALL( variable1
/*glob*/,COLOR_abstractmetamodel___MMGlobalClass___is_universal
))( variable1
/*glob*/) /*MMGlobalClass::is_universal*/;
1379 variable3
= TAG_Bool(!UNTAG_Bool(variable3
));
1381 variable2
= variable3
;
1382 variable3
= variable2
;
1383 if (UNTAG_Bool(variable3
)) { /* and */
1384 variable3
= ((parser_nodes___AClassdef___n_classkind_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_classkind
))( self
) /*AClassdef::n_classkind*/;
1385 variable3
= ((mmbuilder___PClasskind___is_universal_t
)CALL(variable3
,COLOR_mmbuilder___PClasskind___is_universal
))(variable3
) /*PClasskind::is_universal*/;
1387 variable2
= variable3
;
1388 if (UNTAG_Bool(variable2
)) { /*if*/
1389 variable2
= NEW_string___String___init(); /*new String*/
1390 variable3
= NEW_string___String___with_native(BOX_NativeString("Redef error: cannot change kind of class "), TAG_Int(41)); /*new String*/
1391 variable4
= variable3
;
1392 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable4
) /*String::append*/;
1393 variable5
= ((mmbuilder___AClassdef___name_t
)CALL( self
,COLOR_mmbuilder___PClassdef___name
))( self
) /*AClassdef::name*/;
1394 variable6
= variable5
;
1395 variable6
= ((string___String___to_s_t
)CALL(variable6
,COLOR_string___Object___to_s
))(variable6
) /*String::to_s*/;
1396 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable6
) /*String::append*/;
1397 variable7
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1398 variable8
= variable7
;
1399 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable8
) /*String::append*/;
1400 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable2
) /*AbsSyntaxVisitor::error*/;
1402 return_label63
: while(false);
1403 tracehead
= trace
.prev
;
1406 val_t
mmbuilder___AClassdef___visibility_level(val_t self
) {
1407 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 514, LOCATE_mmbuilder___AClassdef___visibility_level
};
1409 trace
.prev
= tracehead
; tracehead
= &trace
;
1410 variable0
= ((parser_nodes___AClassdef___n_visibility_t
)CALL( self
,COLOR_parser_nodes___AClassdef___n_visibility
))( self
) /*AClassdef::n_visibility*/;
1411 variable0
= ((mmbuilder___PVisibility___level_t
)CALL(variable0
,COLOR_mmbuilder___PVisibility___level
))(variable0
) /*PVisibility::level*/;
1412 goto return_label65
;
1413 return_label65
: while(false);
1414 tracehead
= trace
.prev
;
1417 val_t
mmbuilder___AMainClassdef___name(val_t self
) {
1418 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 521, LOCATE_mmbuilder___AMainClassdef___name
};
1420 static val_t once_value_variable0_67
; static int once_bool_variable0_67
;
1421 trace
.prev
= tracehead
; tracehead
= &trace
;
1422 if (once_bool_variable0_67
) variable0
= once_value_variable0_67
;
1424 variable0
= NEW_string___String___with_native(BOX_NativeString("Sys"), TAG_Int(3)); /*new String*/
1425 variable0
= ((symbol___String___to_symbol_t
)CALL(variable0
,COLOR_symbol___String___to_symbol
))(variable0
) /*String::to_symbol*/;
1426 once_value_variable0_67
= variable0
;
1427 once_bool_variable0_67
= true;
1429 goto return_label66
;
1430 return_label66
: while(false);
1431 tracehead
= trace
.prev
;
1434 val_t
mmbuilder___ATopClassdef___name(val_t self
) {
1435 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 528, LOCATE_mmbuilder___ATopClassdef___name
};
1437 static val_t once_value_variable0_69
; static int once_bool_variable0_69
;
1438 trace
.prev
= tracehead
; tracehead
= &trace
;
1439 if (once_bool_variable0_69
) variable0
= once_value_variable0_69
;
1441 variable0
= NEW_string___String___with_native(BOX_NativeString("Object"), TAG_Int(6)); /*new String*/
1442 variable0
= ((symbol___String___to_symbol_t
)CALL(variable0
,COLOR_symbol___String___to_symbol
))(variable0
) /*String::to_symbol*/;
1443 once_value_variable0_69
= variable0
;
1444 once_bool_variable0_69
= true;
1446 goto return_label68
;
1447 return_label68
: while(false);
1448 tracehead
= trace
.prev
;
1451 val_t
mmbuilder___MMSrcTypeFormalParameter___node(val_t self
) {
1452 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 536, LOCATE_mmbuilder___MMSrcTypeFormalParameter___node
};
1453 trace
.prev
= tracehead
; tracehead
= &trace
;
1454 tracehead
= trace
.prev
;
1455 return ATTR_mmbuilder___MMSrcTypeFormalParameter____node( self
) /*MMSrcTypeFormalParameter::_node*/;
1457 void mmbuilder___MMSrcTypeFormalParameter___init(val_t self
, val_t param0
, val_t param1
, val_t param2
, val_t param3
, int* init_table
) {
1458 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 539, LOCATE_mmbuilder___MMSrcTypeFormalParameter___init
};
1463 trace
.prev
= tracehead
; tracehead
= &trace
;
1468 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcTypeFormalParameter
].i
]) return;
1469 ((genericity___MMTypeFormalParameter___init_t
)CALL( self
,COLOR_genericity___MMTypeFormalParameter___init
))( self
, variable0
/*name*/, variable1
/*pos*/, variable2
/*local_class*/, init_table
/*YYY*/) /*MMTypeFormalParameter::init*/;
1470 ATTR_mmbuilder___MMSrcTypeFormalParameter____node( self
) /*MMSrcTypeFormalParameter::_node*/ = variable3
/*n*/;
1471 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MMSrcTypeFormalParameter
].i
] = 1;
1472 tracehead
= trace
.prev
;
1475 void mmbuilder___AFormaldef___accept_class_builder(val_t self
, val_t param0
) {
1476 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 550, LOCATE_mmbuilder___AFormaldef___accept_class_builder
};
1483 trace
.prev
= tracehead
; tracehead
= &trace
;
1485 variable2
= ((parser_nodes___AFormaldef___n_id_t
)CALL( self
,COLOR_parser_nodes___AFormaldef___n_id
))( self
) /*AFormaldef::n_id*/;
1486 variable2
= ((syntax_base___Token___to_symbol_t
)CALL(variable2
,COLOR_syntax_base___Token___to_symbol
))(variable2
) /*Token::to_symbol*/;
1487 variable1
= variable2
;
1488 variable3
= ((mmbuilder___ClassBuilderVisitor___local_class_arity_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___ClassBuilderVisitor___local_class_arity
))( variable0
/*v*/) /*ClassBuilderVisitor::local_class_arity*/;
1489 variable4
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
1490 variable5
= NEW_mmbuilder___MMSrcTypeFormalParameter___init( variable1
/*name*/, variable3
, variable4
, self
); /*new MMSrcTypeFormalParameter*/
1491 variable3
= variable5
;
1492 variable2
= variable3
;
1493 ATTR_mmbuilder___AFormaldef____formal( self
) /*AFormaldef::_formal*/ = variable2
/*formal_type*/;
1494 variable3
= ((mmbuilder___ClassBuilderVisitor___local_class_arity_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___ClassBuilderVisitor___local_class_arity
))( variable0
/*v*/) /*ClassBuilderVisitor::local_class_arity*/;
1495 variable3
= TAG_Int(UNTAG_Int(variable3
)+UNTAG_Int( TAG_Int(1)));
1496 ((mmbuilder___ClassBuilderVisitor___local_class_arity__eq_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___ClassBuilderVisitor___local_class_arity__eq
))( variable0
/*v*/, variable3
) /*ClassBuilderVisitor::local_class_arity=*/;
1497 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
1498 ((genericity___MMLocalClass___register_formal_t
)CALL(variable3
,COLOR_genericity___MMLocalClass___register_formal
))(variable3
, variable2
/*formal_type*/) /*MMLocalClass::register_formal*/;
1499 variable3
= ((mmbuilder___ClassBuilderVisitor___formals_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___ClassBuilderVisitor___formals
))( variable0
/*v*/) /*ClassBuilderVisitor::formals*/;
1500 ((abstract_collection___Map_____braeq_t
)CALL(variable3
,COLOR_abstract_collection___Map_____braeq
))(variable3
, variable1
/*name*/, variable2
/*formal_type*/) /*Map::[]=*/;
1501 ((mmbuilder___AFormaldef___accept_class_builder_t
)CALL( self
,COLOR_SUPER_mmbuilder___AFormaldef___accept_class_builder
))( self
, param0
) /*super AFormaldef::accept_class_builder*/;
1502 tracehead
= trace
.prev
;
1505 void mmbuilder___AFormaldef___accept_class_verifier(val_t self
, val_t param0
) {
1506 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 561, LOCATE_mmbuilder___AFormaldef___accept_class_verifier
};
1524 trace
.prev
= tracehead
; tracehead
= &trace
;
1526 ((mmbuilder___AFormaldef___accept_class_verifier_t
)CALL( self
,COLOR_SUPER_mmbuilder___AFormaldef___accept_class_verifier
))( self
, param0
) /*super AFormaldef::accept_class_verifier*/;
1527 variable2
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
1528 variable1
= variable2
;
1529 variable3
= ((abstractmetamodel___MMLocalClass___global_t
)CALL( variable1
/*c*/,COLOR_abstractmetamodel___MMLocalClass___global
))( variable1
/*c*/) /*MMLocalClass::global*/;
1530 variable3
= ((abstractmetamodel___MMGlobalClass___intro_t
)CALL(variable3
,COLOR_abstractmetamodel___MMGlobalClass___intro
))(variable3
) /*MMGlobalClass::intro*/;
1531 variable2
= variable3
;
1532 variable3
= TAG_Bool(( variable1
/*c*/ == variable2
/*o*/) || (( variable1
/*c*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable1
/*c*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable1
/*c*/, variable2
/*o*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable1
/*c*/,COLOR_kernel___Object_____eqeq
))( variable1
/*c*/, variable2
/*o*/) /*Object::==*/)))));
1533 if (UNTAG_Bool(variable3
)) { /*if*/
1534 variable3
= ((parser_nodes___AFormaldef___n_type_t
)CALL( self
,COLOR_parser_nodes___AFormaldef___n_type
))( self
) /*AFormaldef::n_type*/;
1535 variable3
= TAG_Bool((variable3
== NIT_NULL
/*null*/) || ((variable3
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable3
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))(variable3
, NIT_NULL
/*null*/) /*Object::==*/)))));
1536 if (UNTAG_Bool(variable3
)) { /*if*/
1537 variable3
= ATTR_mmbuilder___AFormaldef____formal( self
) /*AFormaldef::_formal*/;
1538 variable4
= ((syntax_base___AbsSyntaxVisitor___module_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___module
))( variable0
/*v*/) /*AbsSyntaxVisitor::module*/;
1539 variable4
= ((inheritance___MMModule___type_any_t
)CALL(variable4
,COLOR_inheritance___MMModule___type_any
))(variable4
) /*MMModule::type_any*/;
1540 ((genericity___MMTypeFormalParameter___bound__eq_t
)CALL(variable3
,COLOR_genericity___MMTypeFormalParameter___bound__eq
))(variable3
, variable4
) /*MMTypeFormalParameter::bound=*/;
1542 variable3
= ATTR_mmbuilder___AFormaldef____formal( self
) /*AFormaldef::_formal*/;
1543 variable4
= ((parser_nodes___AFormaldef___n_type_t
)CALL( self
,COLOR_parser_nodes___AFormaldef___n_type
))( self
) /*AFormaldef::n_type*/;
1544 variable4
= ((syntax_base___PType___get_stype_t
)CALL(variable4
,COLOR_syntax_base___PType___get_stype
))(variable4
, variable0
/*v*/) /*PType::get_stype*/;
1545 ((genericity___MMTypeFormalParameter___bound__eq_t
)CALL(variable3
,COLOR_genericity___MMTypeFormalParameter___bound__eq
))(variable3
, variable4
) /*MMTypeFormalParameter::bound=*/;
1548 variable4
= ATTR_mmbuilder___AFormaldef____formal( self
) /*AFormaldef::_formal*/;
1549 variable4
= ((genericity___MMTypeFormalParameter___position_t
)CALL(variable4
,COLOR_genericity___MMTypeFormalParameter___position
))(variable4
) /*MMTypeFormalParameter::position*/;
1550 variable4
= ((genericity___MMLocalClass___get_formal_t
)CALL( variable2
/*o*/,COLOR_genericity___MMLocalClass___get_formal
))( variable2
/*o*/, variable4
) /*MMLocalClass::get_formal*/;
1551 variable4
= ((type_formal___MMTypeFormal___bound_t
)CALL(variable4
,COLOR_type_formal___MMTypeFormal___bound
))(variable4
) /*MMTypeFormal::bound*/;
1552 variable5
= ((syntax_base___AbsSyntaxVisitor___module_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___module
))( variable0
/*v*/) /*AbsSyntaxVisitor::module*/;
1553 variable4
= ((static_type___MMType___for_module_t
)CALL(variable4
,COLOR_static_type___MMType___for_module
))(variable4
, variable5
) /*MMType::for_module*/;
1554 variable3
= variable4
;
1555 variable4
= ((parser_nodes___AFormaldef___n_type_t
)CALL( self
,COLOR_parser_nodes___AFormaldef___n_type
))( self
) /*AFormaldef::n_type*/;
1556 variable4
= 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*/) /*Object::==*/)))));
1557 if (UNTAG_Bool(variable4
)) { /*if*/
1558 variable4
= ATTR_mmbuilder___AFormaldef____formal( self
) /*AFormaldef::_formal*/;
1559 ((genericity___MMTypeFormalParameter___bound__eq_t
)CALL(variable4
,COLOR_genericity___MMTypeFormalParameter___bound__eq
))(variable4
, variable3
/*ob*/) /*MMTypeFormalParameter::bound=*/;
1561 variable4
= ATTR_mmbuilder___AFormaldef____formal( self
) /*AFormaldef::_formal*/;
1562 variable5
= ((parser_nodes___AFormaldef___n_type_t
)CALL( self
,COLOR_parser_nodes___AFormaldef___n_type
))( self
) /*AFormaldef::n_type*/;
1563 variable5
= ((syntax_base___PType___get_stype_t
)CALL(variable5
,COLOR_syntax_base___PType___get_stype
))(variable5
, variable0
/*v*/) /*PType::get_stype*/;
1564 ((genericity___MMTypeFormalParameter___bound__eq_t
)CALL(variable4
,COLOR_genericity___MMTypeFormalParameter___bound__eq
))(variable4
, variable5
) /*MMTypeFormalParameter::bound=*/;
1565 variable4
= ATTR_mmbuilder___AFormaldef____formal( self
) /*AFormaldef::_formal*/;
1566 variable4
= ((type_formal___MMTypeFormal___bound_t
)CALL(variable4
,COLOR_type_formal___MMTypeFormal___bound
))(variable4
) /*MMTypeFormal::bound*/;
1567 variable4
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable4
== variable3
/*ob*/) || ((variable4
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable4
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable4
, variable3
/*ob*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable4
,COLOR_kernel___Object_____eqeq
))(variable4
, variable3
/*ob*/) /*Object::==*/)))))));
1568 if (UNTAG_Bool(variable4
)) { /*if*/
1569 variable4
= NEW_string___String___init(); /*new String*/
1570 variable5
= NEW_string___String___with_native(BOX_NativeString("Redef error: Cannot change formal parameter type of class "), TAG_Int(58)); /*new String*/
1571 variable6
= variable5
;
1572 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable6
) /*String::append*/;
1573 variable7
= variable1
/*c*/;
1574 variable7
= ((string___String___to_s_t
)CALL(variable7
,COLOR_string___Object___to_s
))(variable7
) /*String::to_s*/;
1575 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable7
) /*String::append*/;
1576 variable8
= NEW_string___String___with_native(BOX_NativeString("; got "), TAG_Int(6)); /*new String*/
1577 variable9
= variable8
;
1578 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable9
) /*String::append*/;
1579 variable10
= ATTR_mmbuilder___AFormaldef____formal( self
) /*AFormaldef::_formal*/;
1580 variable10
= ((type_formal___MMTypeFormal___bound_t
)CALL(variable10
,COLOR_type_formal___MMTypeFormal___bound
))(variable10
) /*MMTypeFormal::bound*/;
1581 variable11
= variable10
;
1582 variable11
= ((string___String___to_s_t
)CALL(variable11
,COLOR_string___Object___to_s
))(variable11
) /*String::to_s*/;
1583 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable11
) /*String::append*/;
1584 variable12
= NEW_string___String___with_native(BOX_NativeString(", expected "), TAG_Int(11)); /*new String*/
1585 variable13
= variable12
;
1586 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable13
) /*String::append*/;
1587 variable14
= variable3
/*ob*/;
1588 variable14
= ((string___String___to_s_t
)CALL(variable14
,COLOR_string___Object___to_s
))(variable14
) /*String::to_s*/;
1589 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable14
) /*String::append*/;
1590 variable15
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1591 variable16
= variable15
;
1592 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable16
) /*String::append*/;
1593 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable4
) /*AbsSyntaxVisitor::error*/;
1597 tracehead
= trace
.prev
;
1600 val_t
mmbuilder___ASuperclass___ancestor(val_t self
) {
1601 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 587, LOCATE_mmbuilder___ASuperclass___ancestor
};
1602 trace
.prev
= tracehead
; tracehead
= &trace
;
1603 tracehead
= trace
.prev
;
1604 return ATTR_mmbuilder___ASuperclass____ancestor( self
) /*ASuperclass::_ancestor*/;
1606 void mmbuilder___ASuperclass___accept_class_specialization_builder(val_t self
, val_t param0
) {
1607 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 589, LOCATE_mmbuilder___ASuperclass___accept_class_specialization_builder
};
1612 trace
.prev
= tracehead
; tracehead
= &trace
;
1614 ((mmbuilder___ASuperclass___accept_class_specialization_builder_t
)CALL( self
,COLOR_SUPER_mmbuilder___ASuperclass___accept_class_specialization_builder
))( self
, param0
) /*super ASuperclass::accept_class_specialization_builder*/;
1615 variable2
= ((parser_nodes___ASuperclass___n_type_t
)CALL( self
,COLOR_parser_nodes___ASuperclass___n_type
))( self
) /*ASuperclass::n_type*/;
1616 variable2
= ((syntax_base___PType___get_local_class_t
)CALL(variable2
,COLOR_syntax_base___PType___get_local_class
))(variable2
, variable0
/*v*/) /*PType::get_local_class*/;
1617 variable1
= variable2
;
1618 variable3
= NEW_mmbuilder___MMSrcAncestor___init( self
, variable1
/*c*/); /*new MMSrcAncestor*/
1619 variable2
= variable3
;
1620 ATTR_mmbuilder___ASuperclass____ancestor( self
) /*ASuperclass::_ancestor*/ = variable2
/*ancestor*/;
1621 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
1622 ((inheritance___MMLocalClass___add_direct_parent_t
)CALL(variable3
,COLOR_inheritance___MMLocalClass___add_direct_parent
))(variable3
, variable2
/*ancestor*/) /*MMLocalClass::add_direct_parent*/;
1623 tracehead
= trace
.prev
;
1626 void mmbuilder___ASuperclass___accept_class_ancestor_builder(val_t self
, val_t param0
) {
1627 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 598, LOCATE_mmbuilder___ASuperclass___accept_class_ancestor_builder
};
1631 trace
.prev
= tracehead
; tracehead
= &trace
;
1633 ((mmbuilder___ASuperclass___accept_class_ancestor_builder_t
)CALL( self
,COLOR_SUPER_mmbuilder___ASuperclass___accept_class_ancestor_builder
))( self
, param0
) /*super ASuperclass::accept_class_ancestor_builder*/;
1634 variable1
= ATTR_mmbuilder___ASuperclass____ancestor( self
) /*ASuperclass::_ancestor*/;
1635 variable2
= ((parser_nodes___ASuperclass___n_type_t
)CALL( self
,COLOR_parser_nodes___ASuperclass___n_type
))( self
) /*ASuperclass::n_type*/;
1636 variable2
= ((syntax_base___PType___get_unchecked_stype_t
)CALL(variable2
,COLOR_syntax_base___PType___get_unchecked_stype
))(variable2
, variable0
/*v*/) /*PType::get_unchecked_stype*/;
1637 ((static_type___MMAncestor___stype__eq_t
)CALL(variable1
,COLOR_static_type___MMAncestor___stype__eq
))(variable1
, variable2
) /*MMAncestor::stype=*/;
1638 variable1
= ATTR_mmbuilder___ASuperclass____ancestor( self
) /*ASuperclass::_ancestor*/;
1639 variable2
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
1640 variable2
= ((genericity___MMLocalClass___get_type_t
)CALL(variable2
,COLOR_static_type___MMLocalClass___get_type
))(variable2
) /*MMLocalClass::get_type*/;
1641 ((static_type___MMAncestor___inheriter__eq_t
)CALL(variable1
,COLOR_static_type___MMAncestor___inheriter__eq
))(variable1
, variable2
) /*MMAncestor::inheriter=*/;
1642 tracehead
= trace
.prev
;
1645 void mmbuilder___ASuperclass___accept_class_verifier(val_t self
, val_t param0
) {
1646 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 605, LOCATE_mmbuilder___ASuperclass___accept_class_verifier
};
1649 trace
.prev
= tracehead
; tracehead
= &trace
;
1651 ((mmbuilder___ASuperclass___accept_class_verifier_t
)CALL( self
,COLOR_SUPER_mmbuilder___ASuperclass___accept_class_verifier
))( self
, param0
) /*super ASuperclass::accept_class_verifier*/;
1652 variable1
= ((parser_nodes___ASuperclass___n_type_t
)CALL( self
,COLOR_parser_nodes___ASuperclass___n_type
))( self
) /*ASuperclass::n_type*/;
1653 ((syntax_base___PType___check_conform_t
)CALL(variable1
,COLOR_syntax_base___PType___check_conform
))(variable1
, variable0
/*v*/) /*PType::check_conform*/;
1654 tracehead
= trace
.prev
;
1657 void mmbuilder___PPropdef___process_and_check(val_t self
, val_t param0
, val_t param1
, val_t param2
, val_t param3
) {
1658 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 613, LOCATE_mmbuilder___PPropdef___process_and_check
};
1664 trace
.prev
= tracehead
; tracehead
= &trace
;
1669 variable4
= ((abstractmetamodel___MMLocalProperty___global_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___global
))( variable1
/*prop*/) /*MMLocalProperty::global*/;
1670 variable4
= ((abstractmetamodel___MMGlobalProperty___intro_t
)CALL(variable4
,COLOR_abstractmetamodel___MMGlobalProperty___intro
))(variable4
) /*MMGlobalProperty::intro*/;
1671 variable4
= TAG_Bool((variable4
== variable1
/*prop*/) || ((variable4
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable4
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable4
, variable1
/*prop*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable4
,COLOR_kernel___Object_____eqeq
))(variable4
, variable1
/*prop*/) /*Object::==*/)))));
1672 if (UNTAG_Bool(variable4
)) { /*if*/
1673 ((mmbuilder___PPropdef___do_and_check_intro_t
)CALL( self
,COLOR_mmbuilder___PPropdef___do_and_check_intro
))( self
, variable0
/*v*/, variable1
/*prop*/, variable2
/*has_redef*/, variable3
/*visibility_level*/) /*PPropdef::do_and_check_intro*/;
1675 ((mmbuilder___PPropdef___do_and_check_redef_t
)CALL( self
,COLOR_mmbuilder___PPropdef___do_and_check_redef
))( self
, variable0
/*v*/, variable1
/*prop*/, variable2
/*has_redef*/, variable3
/*visibility_level*/) /*PPropdef::do_and_check_redef*/;
1677 tracehead
= trace
.prev
;
1680 void mmbuilder___PPropdef___do_and_check_intro(val_t self
, val_t param0
, val_t param1
, val_t param2
, val_t param3
) {
1681 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 628, LOCATE_mmbuilder___PPropdef___do_and_check_intro
};
1698 trace
.prev
= tracehead
; tracehead
= &trace
;
1703 variable5
= ((abstractmetamodel___MMLocalProperty___global_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___global
))( variable1
/*prop*/) /*MMLocalProperty::global*/;
1704 variable4
= variable5
;
1705 variable6
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
1706 variable6
= ((abstractmetamodel___MMLocalClass___global_t
)CALL(variable6
,COLOR_abstractmetamodel___MMLocalClass___global
))(variable6
) /*MMLocalClass::global*/;
1707 variable5
= variable6
;
1708 variable6
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
1709 variable6
= ((abstractmetamodel___MMLocalClass___global_t
)CALL(variable6
,COLOR_abstractmetamodel___MMLocalClass___global
))(variable6
) /*MMLocalClass::global*/;
1710 variable6
= ((abstractmetamodel___MMGlobalClass___visibility_level_t
)CALL(variable6
,COLOR_abstractmetamodel___MMGlobalClass___visibility_level
))(variable6
) /*MMGlobalClass::visibility_level*/;
1711 variable6
= TAG_Bool(UNTAG_Int(variable6
)>=UNTAG_Int( TAG_Int(3)));
1712 if (UNTAG_Bool(variable6
)) { /*if*/
1713 variable3
= TAG_Int(3) /*visibility_level=*/;
1715 ((abstractmetamodel___MMGlobalProperty___visibility_level__eq_t
)CALL( variable4
/*glob*/,COLOR_abstractmetamodel___MMGlobalProperty___visibility_level__eq
))( variable4
/*glob*/, variable3
/*visibility_level*/) /*MMGlobalProperty::visibility_level=*/;
1716 variable6
= variable2
/*has_redef*/;
1717 if (UNTAG_Bool(variable6
)) { /* and */
1718 variable6
= ((abstractmetamodel___MMGlobalProperty___is_init_t
)CALL( variable4
/*glob*/,COLOR_abstractmetamodel___MMGlobalProperty___is_init
))( variable4
/*glob*/) /*MMGlobalProperty::is_init*/;
1719 variable6
= TAG_Bool(!UNTAG_Bool(variable6
));
1721 if (UNTAG_Bool(variable6
)) { /*if*/
1722 variable6
= NEW_string___String___init(); /*new String*/
1723 variable7
= NEW_string___String___with_native(BOX_NativeString("Error: No property "), TAG_Int(19)); /*new String*/
1724 variable8
= variable7
;
1725 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
1726 variable9
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
1727 variable10
= variable9
;
1728 variable10
= ((string___String___to_s_t
)CALL(variable10
,COLOR_string___Object___to_s
))(variable10
) /*String::to_s*/;
1729 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable10
) /*String::append*/;
1730 variable11
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
1731 variable12
= variable11
;
1732 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable12
) /*String::append*/;
1733 variable13
= variable1
/*prop*/;
1734 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
1735 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable13
) /*String::append*/;
1736 variable14
= NEW_string___String___with_native(BOX_NativeString(" is inherited. Remove the redef keyword to define a new property."), TAG_Int(65)); /*new String*/
1737 variable15
= variable14
;
1738 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable15
) /*String::append*/;
1739 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable6
) /*AbsSyntaxVisitor::error*/;
1741 variable6
= ((abstractmetamodel___MMGlobalProperty___is_attribute_t
)CALL( variable4
/*glob*/,COLOR_abstractmetamodel___MMGlobalProperty___is_attribute
))( variable4
/*glob*/) /*MMGlobalProperty::is_attribute*/;
1742 if (UNTAG_Bool(variable6
)) { /*if*/
1743 variable6
= ((abstractmetamodel___MMGlobalClass___is_interface_t
)CALL( variable5
/*gbc*/,COLOR_abstractmetamodel___MMGlobalClass___is_interface
))( variable5
/*gbc*/) /*MMGlobalClass::is_interface*/;
1744 if (UNTAG_Bool(variable6
)) { /*if*/
1745 variable6
= NEW_string___String___init(); /*new String*/
1746 variable7
= NEW_string___String___with_native(BOX_NativeString("Error: Attempt to define attribute "), TAG_Int(35)); /*new String*/
1747 variable8
= variable7
;
1748 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
1749 variable9
= variable1
/*prop*/;
1750 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
1751 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable9
) /*String::append*/;
1752 variable10
= NEW_string___String___with_native(BOX_NativeString(" in the interface "), TAG_Int(18)); /*new String*/
1753 variable11
= variable10
;
1754 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable11
) /*String::append*/;
1755 variable12
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
1756 variable13
= variable12
;
1757 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
1758 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable13
) /*String::append*/;
1759 variable14
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1760 variable15
= variable14
;
1761 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable15
) /*String::append*/;
1762 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable6
) /*AbsSyntaxVisitor::error*/;
1764 variable6
= ((abstractmetamodel___MMGlobalClass___is_universal_t
)CALL( variable5
/*gbc*/,COLOR_abstractmetamodel___MMGlobalClass___is_universal
))( variable5
/*gbc*/) /*MMGlobalClass::is_universal*/;
1765 if (UNTAG_Bool(variable6
)) { /*if*/
1766 variable6
= NEW_string___String___init(); /*new String*/
1767 variable7
= NEW_string___String___with_native(BOX_NativeString("Error: Attempt to define attribute "), TAG_Int(35)); /*new String*/
1768 variable8
= variable7
;
1769 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
1770 variable9
= variable1
/*prop*/;
1771 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
1772 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable9
) /*String::append*/;
1773 variable10
= NEW_string___String___with_native(BOX_NativeString(" in the universal class "), TAG_Int(24)); /*new String*/
1774 variable11
= variable10
;
1775 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable11
) /*String::append*/;
1776 variable12
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
1777 variable13
= variable12
;
1778 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
1779 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable13
) /*String::append*/;
1780 variable14
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1781 variable15
= variable14
;
1782 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable15
) /*String::append*/;
1783 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable6
) /*AbsSyntaxVisitor::error*/;
1787 variable6
= ((abstractmetamodel___MMGlobalProperty___is_init_t
)CALL( variable4
/*glob*/,COLOR_abstractmetamodel___MMGlobalProperty___is_init
))( variable4
/*glob*/) /*MMGlobalProperty::is_init*/;
1788 if (UNTAG_Bool(variable6
)) { /*if*/
1789 variable6
= ((abstractmetamodel___MMGlobalClass___is_interface_t
)CALL( variable5
/*gbc*/,COLOR_abstractmetamodel___MMGlobalClass___is_interface
))( variable5
/*gbc*/) /*MMGlobalClass::is_interface*/;
1790 if (UNTAG_Bool(variable6
)) { /*if*/
1791 variable6
= NEW_string___String___init(); /*new String*/
1792 variable7
= NEW_string___String___with_native(BOX_NativeString("Error: Attempt to define a constructor "), TAG_Int(39)); /*new String*/
1793 variable8
= variable7
;
1794 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
1795 variable9
= variable1
/*prop*/;
1796 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
1797 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable9
) /*String::append*/;
1798 variable10
= NEW_string___String___with_native(BOX_NativeString(" in the class "), TAG_Int(14)); /*new String*/
1799 variable11
= variable10
;
1800 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable11
) /*String::append*/;
1801 variable12
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
1802 variable13
= variable12
;
1803 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
1804 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable13
) /*String::append*/;
1805 variable14
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1806 variable15
= variable14
;
1807 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable15
) /*String::append*/;
1808 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable6
) /*AbsSyntaxVisitor::error*/;
1810 variable6
= ((abstractmetamodel___MMGlobalClass___is_universal_t
)CALL( variable5
/*gbc*/,COLOR_abstractmetamodel___MMGlobalClass___is_universal
))( variable5
/*gbc*/) /*MMGlobalClass::is_universal*/;
1811 if (UNTAG_Bool(variable6
)) { /*if*/
1812 variable6
= NEW_string___String___init(); /*new String*/
1813 variable7
= NEW_string___String___with_native(BOX_NativeString("Error: Attempt to define a constructor "), TAG_Int(39)); /*new String*/
1814 variable8
= variable7
;
1815 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
1816 variable9
= variable1
/*prop*/;
1817 variable9
= ((string___String___to_s_t
)CALL(variable9
,COLOR_string___Object___to_s
))(variable9
) /*String::to_s*/;
1818 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable9
) /*String::append*/;
1819 variable10
= NEW_string___String___with_native(BOX_NativeString(" in the universal "), TAG_Int(18)); /*new String*/
1820 variable11
= variable10
;
1821 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable11
) /*String::append*/;
1822 variable12
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
1823 variable13
= variable12
;
1824 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
1825 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable13
) /*String::append*/;
1826 variable14
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
1827 variable15
= variable14
;
1828 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable15
) /*String::append*/;
1829 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable6
) /*AbsSyntaxVisitor::error*/;
1834 variable6
= ((static_type___MMLocalProperty___signature_t
)CALL( variable1
/*prop*/,COLOR_static_type___MMLocalProperty___signature
))( variable1
/*prop*/) /*MMLocalProperty::signature*/;
1835 variable6
= TAG_Bool((variable6
== NIT_NULL
/*null*/) || ((variable6
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable6
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable6
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable6
,COLOR_kernel___Object_____eqeq
))(variable6
, NIT_NULL
/*null*/) /*Object::==*/)))));
1836 if (UNTAG_Bool(variable6
)) { /*if*/
1837 variable6
= ((abstractmetamodel___MMGlobalProperty___is_init_t
)CALL( variable4
/*glob*/,COLOR_abstractmetamodel___MMGlobalProperty___is_init
))( variable4
/*glob*/) /*MMGlobalProperty::is_init*/;
1838 if (UNTAG_Bool(variable6
)) { /*if*/
1839 variable7
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
1840 variable8
= ((abstractmetamodel___MMLocalProperty___name_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___name
))( variable1
/*prop*/) /*MMLocalProperty::name*/;
1841 variable7
= ((abstractmetamodel___MMLocalClass___super_methods_named_t
)CALL(variable7
,COLOR_abstractmetamodel___MMLocalClass___super_methods_named
))(variable7
, variable8
) /*MMLocalClass::super_methods_named*/;
1842 variable6
= variable7
;
1843 ((mmbuilder___PPropdef___inherit_signature_t
)CALL( self
,COLOR_mmbuilder___PPropdef___inherit_signature
))( self
, variable0
/*v*/, variable1
/*prop*/, variable6
/*supers*/) /*PPropdef::inherit_signature*/;
1845 variable6
= ((static_type___MMLocalProperty___signature_t
)CALL( variable1
/*prop*/,COLOR_static_type___MMLocalProperty___signature
))( variable1
/*prop*/) /*MMLocalProperty::signature*/;
1846 variable6
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable6
== NIT_NULL
/*null*/) || ((variable6
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable6
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable6
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable6
,COLOR_kernel___Object_____eqeq
))(variable6
, NIT_NULL
/*null*/) /*Object::==*/)))))));
1847 if (UNTAG_Bool(variable6
)) { /*if*/
1849 variable6
= ((mmbuilder___PropertyVerifierVisitor___untyped_params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___untyped_params
))( variable0
/*v*/) /*PropertyVerifierVisitor::untyped_params*/;
1850 variable6
= ((array___AbstractArray___is_empty_t
)CALL(variable6
,COLOR_abstract_collection___Collection___is_empty
))(variable6
) /*AbstractArray::is_empty*/;
1851 if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable6
)))) { /*if*/
1852 variable6
= ((mmbuilder___PropertyVerifierVisitor___untyped_params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___untyped_params
))( variable0
/*v*/) /*PropertyVerifierVisitor::untyped_params*/;
1853 variable6
= ((abstract_collection___IndexedCollection___first_t
)CALL(variable6
,COLOR_abstract_collection___Collection___first
))(variable6
) /*IndexedCollection::first*/;
1854 variable7
= NEW_string___String___with_native(BOX_NativeString("Error: Untyped parameter."), TAG_Int(25)); /*new String*/
1855 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable6
, variable7
) /*AbsSyntaxVisitor::error*/;
1857 variable6
= NEW_array___Array___init(); /*new Array[E]*/
1858 variable7
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
1859 variable7
= ((genericity___MMLocalClass___get_type_t
)CALL(variable7
,COLOR_static_type___MMLocalClass___get_type
))(variable7
) /*MMLocalClass::get_type*/;
1860 variable8
= NEW_static_type___MMSignature___init(variable6
, NIT_NULL
/*null*/, variable7
); /*new MMSignature*/
1861 variable6
= variable8
;
1862 ((static_type___MMLocalProperty___signature__eq_t
)CALL( variable1
/*prop*/,COLOR_static_type___MMLocalProperty___signature__eq
))( variable1
/*prop*/, variable6
) /*MMLocalProperty::signature=*/;
1866 tracehead
= trace
.prev
;
1869 void mmbuilder___PPropdef___inherit_signature(val_t self
, val_t param0
, val_t param1
, val_t param2
) {
1870 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 669, LOCATE_mmbuilder___PPropdef___inherit_signature
};
1883 trace
.prev
= tracehead
; tracehead
= &trace
;
1887 variable4
= ((static_type___MMLocalProperty___signature_t
)CALL( variable1
/*prop*/,COLOR_static_type___MMLocalProperty___signature
))( variable1
/*prop*/) /*MMLocalProperty::signature*/;
1888 variable3
= variable4
;
1889 variable4
= ((array___AbstractArray___iterator_t
)CALL( variable2
/*supers*/,COLOR_abstract_collection___Collection___iterator
))( variable2
/*supers*/) /*AbstractArray::iterator*/;
1890 while (true) { /*for*/
1891 variable5
= ((array___ArrayIterator___is_ok_t
)CALL(variable4
,COLOR_abstract_collection___Iterator___is_ok
))(variable4
) /*ArrayIterator::is_ok*/;
1892 if (!UNTAG_Bool(variable5
)) break; /*for*/
1893 variable5
= ((array___ArrayIterator___item_t
)CALL(variable4
,COLOR_abstract_collection___Iterator___item
))(variable4
) /*ArrayIterator::item*/;
1894 variable7
= ((static_type___MMLocalProperty___signature_t
)CALL( variable5
/*ip*/,COLOR_static_type___MMLocalProperty___signature
))( variable5
/*ip*/) /*MMLocalProperty::signature*/;
1895 variable8
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
1896 variable8
= ((genericity___MMLocalClass___get_type_t
)CALL(variable8
,COLOR_static_type___MMLocalClass___get_type
))(variable8
) /*MMLocalClass::get_type*/;
1897 variable7
= ((vararg___MMSignature___adaptation_to_t
)CALL(variable7
,COLOR_static_type___MMSignature___adaptation_to
))(variable7
, variable8
) /*MMSignature::adaptation_to*/;
1898 variable6
= variable7
;
1899 variable7
= TAG_Bool(( variable3
/*s*/ == NIT_NULL
/*null*/) || (( variable3
/*s*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable3
/*s*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable3
/*s*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable3
/*s*/,COLOR_kernel___Object_____eqeq
))( variable3
/*s*/, NIT_NULL
/*null*/) /*Object::==*/)))));
1900 if (UNTAG_Bool(variable7
)) { /*if*/
1901 variable7
= ((mmbuilder___PropertyVerifierVisitor___params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___params
))( variable0
/*v*/) /*PropertyVerifierVisitor::params*/;
1902 variable7
= ((array___AbstractArray___length_t
)CALL(variable7
,COLOR_abstract_collection___Collection___length
))(variable7
) /*AbstractArray::length*/;
1903 variable8
= ((static_type___MMSignature___arity_t
)CALL( variable6
/*isig*/,COLOR_static_type___MMSignature___arity
))( variable6
/*isig*/) /*MMSignature::arity*/;
1904 variable7
= TAG_Bool((variable7
)!=(variable8
));
1905 if (UNTAG_Bool(variable7
)) { /*if*/
1906 goto return_label78
;
1908 variable7
= ((mmbuilder___PropertyVerifierVisitor___params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___params
))( variable0
/*v*/) /*PropertyVerifierVisitor::params*/;
1909 variable7
= ((array___AbstractArray___iterator_t
)CALL(variable7
,COLOR_abstract_collection___Collection___iterator
))(variable7
) /*AbstractArray::iterator*/;
1910 while (true) { /*for*/
1911 variable8
= ((array___ArrayIterator___is_ok_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___is_ok
))(variable7
) /*ArrayIterator::is_ok*/;
1912 if (!UNTAG_Bool(variable8
)) break; /*for*/
1913 variable8
= ((array___ArrayIterator___item_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___item
))(variable7
) /*ArrayIterator::item*/;
1914 variable10
= ((mmbuilder___PParam___position_t
)CALL( variable8
/*p*/,COLOR_syntax_base___PParam___position
))( variable8
/*p*/) /*PParam::position*/;
1915 variable10
= ((static_type___MMSignature_____bra_t
)CALL( variable6
/*isig*/,COLOR_static_type___MMSignature_____bra
))( variable6
/*isig*/, variable10
) /*MMSignature::[]*/;
1916 variable9
= variable10
;
1917 ((mmbuilder___PParam___stype__eq_t
)CALL( variable8
/*p*/,COLOR_mmbuilder___PParam___stype__eq
))( variable8
/*p*/, variable9
/*t*/) /*PParam::stype=*/;
1918 variable10
= ((mmbuilder___PParam___position_t
)CALL( variable8
/*p*/,COLOR_syntax_base___PParam___position
))( variable8
/*p*/) /*PParam::position*/;
1919 variable11
= ((vararg___MMSignature___vararg_rank_t
)CALL( variable6
/*isig*/,COLOR_vararg___MMSignature___vararg_rank
))( variable6
/*isig*/) /*MMSignature::vararg_rank*/;
1920 variable10
= TAG_Bool((variable10
)==(variable11
));
1921 if (UNTAG_Bool(variable10
)) { /*if*/
1922 variable10
= ((syntax_base___AbsSyntaxVisitor___type_array_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___type_array
))( variable0
/*v*/, variable9
/*t*/) /*AbsSyntaxVisitor::type_array*/;
1923 variable9
= variable10
/*t=*/;
1925 variable10
= ((mmbuilder___PParam___variable_t
)CALL( variable8
/*p*/,COLOR_syntax_base___PParam___variable
))( variable8
/*p*/) /*PParam::variable*/;
1926 ((syntax_base___Variable___stype__eq_t
)CALL(variable10
,COLOR_syntax_base___Variable___stype__eq
))(variable10
, variable9
/*t*/) /*Variable::stype=*/;
1927 continue_80
: while(0);
1928 ((array___ArrayIterator___next_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___next
))(variable7
) /*ArrayIterator::next*/;
1931 variable3
= variable6
/*isig*/ /*s=*/;
1932 ((static_type___MMLocalProperty___signature__eq_t
)CALL( variable1
/*prop*/,COLOR_static_type___MMLocalProperty___signature__eq
))( variable1
/*prop*/, variable3
/*s*/) /*MMLocalProperty::signature=*/;
1934 continue_79
: while(0);
1935 ((array___ArrayIterator___next_t
)CALL(variable4
,COLOR_abstract_collection___Iterator___next
))(variable4
) /*ArrayIterator::next*/;
1938 return_label78
: while(false);
1939 tracehead
= trace
.prev
;
1942 void mmbuilder___PPropdef___do_and_check_redef(val_t self
, val_t param0
, val_t param1
, val_t param2
, val_t param3
) {
1943 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 695, LOCATE_mmbuilder___PPropdef___do_and_check_redef
};
1952 static val_t once_value_variable7_82
; static int once_bool_variable7_82
;
1983 trace
.prev
= tracehead
; tracehead
= &trace
;
1988 variable5
= TAG_Bool(( self
==NIT_NULL
) || VAL_ISA( self
, COLOR_AConcreteInitPropdef
, ID_AConcreteInitPropdef
)) /*cast AConcreteInitPropdef*/;
1989 variable4
= variable5
;
1990 variable6
= ((abstractmetamodel___MMLocalProperty___global_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___global
))( variable1
/*prop*/) /*MMLocalProperty::global*/;
1991 variable5
= variable6
;
1992 variable6
= TAG_Bool(!UNTAG_Bool( variable2
/*has_redef*/));
1993 if (UNTAG_Bool(variable6
)) { /* and */
1994 variable6
= ((abstractmetamodel___MMLocalProperty___name_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___name
))( variable1
/*prop*/) /*MMLocalProperty::name*/;
1995 if (once_bool_variable7_82
) variable7
= once_value_variable7_82
;
1997 variable7
= NEW_string___String___with_native(BOX_NativeString("init"), TAG_Int(4)); /*new String*/
1998 variable7
= ((symbol___String___to_symbol_t
)CALL(variable7
,COLOR_symbol___String___to_symbol
))(variable7
) /*String::to_symbol*/;
1999 once_value_variable7_82
= variable7
;
2000 once_bool_variable7_82
= true;
2002 variable6
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable6
== variable7
) || ((variable6
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable6
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable6
,variable7
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable6
,COLOR_kernel___Object_____eqeq
))(variable6
, variable7
) /*Object::==*/)))))));
2004 if (UNTAG_Bool(variable6
)) { /*if*/
2005 variable6
= NEW_string___String___init(); /*new String*/
2006 variable7
= NEW_string___String___with_native(BOX_NativeString("Redef error: "), TAG_Int(13)); /*new String*/
2007 variable8
= variable7
;
2008 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
2009 variable9
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2010 variable10
= variable9
;
2011 variable10
= ((string___String___to_s_t
)CALL(variable10
,COLOR_string___Object___to_s
))(variable10
) /*String::to_s*/;
2012 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable10
) /*String::append*/;
2013 variable11
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2014 variable12
= variable11
;
2015 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable12
) /*String::append*/;
2016 variable13
= variable1
/*prop*/;
2017 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
2018 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable13
) /*String::append*/;
2019 variable14
= NEW_string___String___with_native(BOX_NativeString(" is an inherited property. To redefine it, add the redef keyword."), TAG_Int(65)); /*new String*/
2020 variable15
= variable14
;
2021 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable15
) /*String::append*/;
2022 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable6
) /*AbsSyntaxVisitor::error*/;
2023 goto return_label81
;
2025 variable6
= ((abstractmetamodel___MMGlobalProperty___is_init_t
)CALL( variable5
/*glob*/,COLOR_abstractmetamodel___MMGlobalProperty___is_init
))( variable5
/*glob*/) /*MMGlobalProperty::is_init*/;
2026 variable7
= variable6
;
2027 if (UNTAG_Bool(variable7
)) { /* and */
2028 variable7
= TAG_Bool(!UNTAG_Bool( variable4
/*is_init*/));
2030 variable6
= variable7
;
2031 if (UNTAG_Bool(variable6
)) { /*if*/
2032 variable6
= NEW_string___String___init(); /*new String*/
2033 variable7
= NEW_string___String___with_native(BOX_NativeString("Redef error: A method "), TAG_Int(22)); /*new String*/
2034 variable8
= variable7
;
2035 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
2036 variable9
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2037 variable10
= variable9
;
2038 variable10
= ((string___String___to_s_t
)CALL(variable10
,COLOR_string___Object___to_s
))(variable10
) /*String::to_s*/;
2039 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable10
) /*String::append*/;
2040 variable11
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2041 variable12
= variable11
;
2042 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable12
) /*String::append*/;
2043 variable13
= variable1
/*prop*/;
2044 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
2045 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable13
) /*String::append*/;
2046 variable14
= NEW_string___String___with_native(BOX_NativeString(" cannot redefine a constructor."), TAG_Int(31)); /*new String*/
2047 variable15
= variable14
;
2048 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable15
) /*String::append*/;
2049 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable6
) /*AbsSyntaxVisitor::error*/;
2051 variable6
= ((abstractmetamodel___MMGlobalProperty___is_init_t
)CALL( variable5
/*glob*/,COLOR_abstractmetamodel___MMGlobalProperty___is_init
))( variable5
/*glob*/) /*MMGlobalProperty::is_init*/;
2052 variable6
= TAG_Bool(!UNTAG_Bool(variable6
));
2053 if (UNTAG_Bool(variable6
)) { /* and */
2054 variable6
= variable4
/*is_init*/;
2056 if (UNTAG_Bool(variable6
)) { /*if*/
2057 variable6
= NEW_string___String___init(); /*new String*/
2058 variable7
= NEW_string___String___with_native(BOX_NativeString("Redef error: A constructor "), TAG_Int(27)); /*new String*/
2059 variable8
= variable7
;
2060 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable8
) /*String::append*/;
2061 variable9
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2062 variable10
= variable9
;
2063 variable10
= ((string___String___to_s_t
)CALL(variable10
,COLOR_string___Object___to_s
))(variable10
) /*String::to_s*/;
2064 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable10
) /*String::append*/;
2065 variable11
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2066 variable12
= variable11
;
2067 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable12
) /*String::append*/;
2068 variable13
= variable1
/*prop*/;
2069 variable13
= ((string___String___to_s_t
)CALL(variable13
,COLOR_string___Object___to_s
))(variable13
) /*String::to_s*/;
2070 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable13
) /*String::append*/;
2071 variable14
= NEW_string___String___with_native(BOX_NativeString(" cannot redefine a method."), TAG_Int(26)); /*new String*/
2072 variable15
= variable14
;
2073 ((string___String___append_t
)CALL(variable6
,COLOR_abstract_collection___IndexedCollection___append
))(variable6
, variable15
) /*String::append*/;
2074 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable6
) /*AbsSyntaxVisitor::error*/;
2077 variable7
= ((static_type___MMLocalProperty___signature_t
)CALL( variable1
/*prop*/,COLOR_static_type___MMLocalProperty___signature
))( variable1
/*prop*/) /*MMLocalProperty::signature*/;
2078 variable6
= variable7
;
2079 variable7
= ((abstractmetamodel___MMLocalProperty___prhe_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___prhe
))( variable1
/*prop*/) /*MMLocalProperty::prhe*/;
2080 variable7
= ((partial_order___PartialOrderElement___direct_greaters_t
)CALL(variable7
,COLOR_partial_order___PartialOrderElement___direct_greaters
))(variable7
) /*PartialOrderElement::direct_greaters*/;
2081 variable7
= ((array___AbstractArray___iterator_t
)CALL(variable7
,COLOR_abstract_collection___Collection___iterator
))(variable7
) /*AbstractArray::iterator*/;
2082 while (true) { /*for*/
2083 variable8
= ((array___ArrayIterator___is_ok_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___is_ok
))(variable7
) /*ArrayIterator::is_ok*/;
2084 if (!UNTAG_Bool(variable8
)) break; /*for*/
2085 variable8
= ((array___ArrayIterator___item_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___item
))(variable7
) /*ArrayIterator::item*/;
2086 variable10
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable8
/*i*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable8
/*i*/) /*MMLocalProperty::local_class*/;
2087 variable11
= ((abstractmetamodel___MMLocalProperty___global_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___global
))( variable1
/*prop*/) /*MMLocalProperty::global*/;
2088 variable10
= ((inheritance___MMLocalClass_____bra_t
)CALL(variable10
,COLOR_abstractmetamodel___MMLocalClass_____bra
))(variable10
, variable11
) /*MMLocalClass::[]*/;
2089 variable9
= variable10
;
2090 variable11
= ((static_type___MMLocalProperty___signature_t
)CALL( variable8
/*i*/,COLOR_static_type___MMLocalProperty___signature
))( variable8
/*i*/) /*MMLocalProperty::signature*/;
2091 variable12
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2092 variable12
= ((genericity___MMLocalClass___get_type_t
)CALL(variable12
,COLOR_static_type___MMLocalClass___get_type
))(variable12
) /*MMLocalClass::get_type*/;
2093 variable11
= ((vararg___MMSignature___adaptation_to_t
)CALL(variable11
,COLOR_static_type___MMSignature___adaptation_to
))(variable11
, variable12
) /*MMSignature::adaptation_to*/;
2094 variable10
= variable11
;
2095 variable11
= TAG_Bool(( variable6
/*s*/ == NIT_NULL
/*null*/) || (( variable6
/*s*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable6
/*s*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable6
/*s*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable6
/*s*/,COLOR_kernel___Object_____eqeq
))( variable6
/*s*/, NIT_NULL
/*null*/) /*Object::==*/)))));
2096 if (UNTAG_Bool(variable11
)) { /*if*/
2097 variable11
= ((mmbuilder___PropertyVerifierVisitor___params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___params
))( variable0
/*v*/) /*PropertyVerifierVisitor::params*/;
2098 variable11
= ((array___AbstractArray___length_t
)CALL(variable11
,COLOR_abstract_collection___Collection___length
))(variable11
) /*AbstractArray::length*/;
2099 variable12
= ((static_type___MMSignature___arity_t
)CALL( variable10
/*isig*/,COLOR_static_type___MMSignature___arity
))( variable10
/*isig*/) /*MMSignature::arity*/;
2100 variable11
= TAG_Bool((variable11
)!=(variable12
));
2101 if (UNTAG_Bool(variable11
)) { /*if*/
2102 variable11
= NEW_string___String___init(); /*new String*/
2103 variable12
= NEW_string___String___with_native(BOX_NativeString("Redef error: "), TAG_Int(13)); /*new String*/
2104 variable13
= variable12
;
2105 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable13
) /*String::append*/;
2106 variable14
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2107 variable15
= variable14
;
2108 variable15
= ((string___String___to_s_t
)CALL(variable15
,COLOR_string___Object___to_s
))(variable15
) /*String::to_s*/;
2109 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable15
) /*String::append*/;
2110 variable16
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2111 variable17
= variable16
;
2112 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable17
) /*String::append*/;
2113 variable18
= variable1
/*prop*/;
2114 variable18
= ((string___String___to_s_t
)CALL(variable18
,COLOR_string___Object___to_s
))(variable18
) /*String::to_s*/;
2115 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable18
) /*String::append*/;
2116 variable19
= NEW_string___String___with_native(BOX_NativeString(" redefines "), TAG_Int(11)); /*new String*/
2117 variable20
= variable19
;
2118 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable20
) /*String::append*/;
2119 variable21
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable9
/*ip*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable9
/*ip*/) /*MMLocalProperty::local_class*/;
2120 variable22
= variable21
;
2121 variable22
= ((string___String___to_s_t
)CALL(variable22
,COLOR_string___Object___to_s
))(variable22
) /*String::to_s*/;
2122 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable22
) /*String::append*/;
2123 variable23
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2124 variable24
= variable23
;
2125 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable24
) /*String::append*/;
2126 variable25
= variable9
/*ip*/;
2127 variable25
= ((string___String___to_s_t
)CALL(variable25
,COLOR_string___Object___to_s
))(variable25
) /*String::to_s*/;
2128 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable25
) /*String::append*/;
2129 variable26
= NEW_string___String___with_native(BOX_NativeString(" with "), TAG_Int(6)); /*new String*/
2130 variable27
= variable26
;
2131 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable27
) /*String::append*/;
2132 variable28
= ((static_type___MMSignature___arity_t
)CALL( variable10
/*isig*/,COLOR_static_type___MMSignature___arity
))( variable10
/*isig*/) /*MMSignature::arity*/;
2133 variable29
= variable28
;
2134 variable29
= ((string___String___to_s_t
)CALL(variable29
,COLOR_string___Object___to_s
))(variable29
) /*String::to_s*/;
2135 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable29
) /*String::append*/;
2136 variable30
= NEW_string___String___with_native(BOX_NativeString(" parameter(s)."), TAG_Int(14)); /*new String*/
2137 variable31
= variable30
;
2138 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable31
) /*String::append*/;
2139 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable11
) /*AbsSyntaxVisitor::error*/;
2140 goto return_label81
;
2142 variable11
= ((mmbuilder___PropertyVerifierVisitor___params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___params
))( variable0
/*v*/) /*PropertyVerifierVisitor::params*/;
2143 variable11
= ((array___AbstractArray___iterator_t
)CALL(variable11
,COLOR_abstract_collection___Collection___iterator
))(variable11
) /*AbstractArray::iterator*/;
2144 while (true) { /*for*/
2145 variable12
= ((array___ArrayIterator___is_ok_t
)CALL(variable11
,COLOR_abstract_collection___Iterator___is_ok
))(variable11
) /*ArrayIterator::is_ok*/;
2146 if (!UNTAG_Bool(variable12
)) break; /*for*/
2147 variable12
= ((array___ArrayIterator___item_t
)CALL(variable11
,COLOR_abstract_collection___Iterator___item
))(variable11
) /*ArrayIterator::item*/;
2148 variable14
= ((mmbuilder___PParam___position_t
)CALL( variable12
/*p*/,COLOR_syntax_base___PParam___position
))( variable12
/*p*/) /*PParam::position*/;
2149 variable14
= ((static_type___MMSignature_____bra_t
)CALL( variable10
/*isig*/,COLOR_static_type___MMSignature_____bra
))( variable10
/*isig*/, variable14
) /*MMSignature::[]*/;
2150 variable13
= variable14
;
2151 ((mmbuilder___PParam___stype__eq_t
)CALL( variable12
/*p*/,COLOR_mmbuilder___PParam___stype__eq
))( variable12
/*p*/, variable13
/*t*/) /*PParam::stype=*/;
2152 variable14
= ((mmbuilder___PParam___position_t
)CALL( variable12
/*p*/,COLOR_syntax_base___PParam___position
))( variable12
/*p*/) /*PParam::position*/;
2153 variable15
= ((vararg___MMSignature___vararg_rank_t
)CALL( variable10
/*isig*/,COLOR_vararg___MMSignature___vararg_rank
))( variable10
/*isig*/) /*MMSignature::vararg_rank*/;
2154 variable14
= TAG_Bool((variable14
)==(variable15
));
2155 if (UNTAG_Bool(variable14
)) { /*if*/
2156 variable14
= ((syntax_base___AbsSyntaxVisitor___type_array_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___type_array
))( variable0
/*v*/, variable13
/*t*/) /*AbsSyntaxVisitor::type_array*/;
2157 variable13
= variable14
/*t=*/;
2159 variable14
= ((mmbuilder___PParam___variable_t
)CALL( variable12
/*p*/,COLOR_syntax_base___PParam___variable
))( variable12
/*p*/) /*PParam::variable*/;
2160 ((syntax_base___Variable___stype__eq_t
)CALL(variable14
,COLOR_syntax_base___Variable___stype__eq
))(variable14
, variable13
/*t*/) /*Variable::stype=*/;
2161 continue_84
: while(0);
2162 ((array___ArrayIterator___next_t
)CALL(variable11
,COLOR_abstract_collection___Iterator___next
))(variable11
) /*ArrayIterator::next*/;
2165 variable6
= variable10
/*isig*/ /*s=*/;
2166 ((static_type___MMLocalProperty___signature__eq_t
)CALL( variable1
/*prop*/,COLOR_static_type___MMLocalProperty___signature__eq
))( variable1
/*prop*/, variable6
/*s*/) /*MMLocalProperty::signature=*/;
2168 variable11
= ((abstractmetamodel___MMGlobalProperty___is_init_t
)CALL( variable5
/*glob*/,COLOR_abstractmetamodel___MMGlobalProperty___is_init
))( variable5
/*glob*/) /*MMGlobalProperty::is_init*/;
2169 variable12
= variable11
;
2170 if (UNTAG_Bool(variable12
)) { /* and */
2171 variable12
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable8
/*i*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable8
/*i*/) /*MMLocalProperty::local_class*/;
2172 variable12
= ((abstractmetamodel___MMLocalClass___global_t
)CALL(variable12
,COLOR_abstractmetamodel___MMLocalClass___global
))(variable12
) /*MMLocalClass::global*/;
2173 variable13
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2174 variable13
= ((abstractmetamodel___MMLocalClass___global_t
)CALL(variable13
,COLOR_abstractmetamodel___MMLocalClass___global
))(variable13
) /*MMLocalClass::global*/;
2175 variable12
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable12
== variable13
) || ((variable12
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable12
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable12
,variable13
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable12
,COLOR_kernel___Object_____eqeq
))(variable12
, variable13
) /*Object::==*/)))))));
2177 variable11
= variable12
;
2178 if (UNTAG_Bool(variable11
)) { /*if*/
2180 variable11
= ((static_type___MMSignature___arity_t
)CALL( variable6
/*s*/,COLOR_static_type___MMSignature___arity
))( variable6
/*s*/) /*MMSignature::arity*/;
2181 variable12
= ((static_type___MMSignature___arity_t
)CALL( variable10
/*isig*/,COLOR_static_type___MMSignature___arity
))( variable10
/*isig*/) /*MMSignature::arity*/;
2182 variable11
= TAG_Bool((variable11
)!=(variable12
));
2183 if (UNTAG_Bool(variable11
)) { /*if*/
2184 variable11
= NEW_string___String___init(); /*new String*/
2185 variable12
= NEW_string___String___with_native(BOX_NativeString("Redef error: "), TAG_Int(13)); /*new String*/
2186 variable13
= variable12
;
2187 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable13
) /*String::append*/;
2188 variable14
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2189 variable15
= variable14
;
2190 variable15
= ((string___String___to_s_t
)CALL(variable15
,COLOR_string___Object___to_s
))(variable15
) /*String::to_s*/;
2191 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable15
) /*String::append*/;
2192 variable16
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2193 variable17
= variable16
;
2194 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable17
) /*String::append*/;
2195 variable18
= variable1
/*prop*/;
2196 variable18
= ((string___String___to_s_t
)CALL(variable18
,COLOR_string___Object___to_s
))(variable18
) /*String::to_s*/;
2197 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable18
) /*String::append*/;
2198 variable19
= NEW_string___String___with_native(BOX_NativeString(" redefines "), TAG_Int(11)); /*new String*/
2199 variable20
= variable19
;
2200 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable20
) /*String::append*/;
2201 variable21
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable9
/*ip*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable9
/*ip*/) /*MMLocalProperty::local_class*/;
2202 variable22
= variable21
;
2203 variable22
= ((string___String___to_s_t
)CALL(variable22
,COLOR_string___Object___to_s
))(variable22
) /*String::to_s*/;
2204 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable22
) /*String::append*/;
2205 variable23
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2206 variable24
= variable23
;
2207 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable24
) /*String::append*/;
2208 variable25
= variable9
/*ip*/;
2209 variable25
= ((string___String___to_s_t
)CALL(variable25
,COLOR_string___Object___to_s
))(variable25
) /*String::to_s*/;
2210 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable25
) /*String::append*/;
2211 variable26
= NEW_string___String___with_native(BOX_NativeString(" with "), TAG_Int(6)); /*new String*/
2212 variable27
= variable26
;
2213 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable27
) /*String::append*/;
2214 variable28
= ((static_type___MMSignature___arity_t
)CALL( variable10
/*isig*/,COLOR_static_type___MMSignature___arity
))( variable10
/*isig*/) /*MMSignature::arity*/;
2215 variable29
= variable28
;
2216 variable29
= ((string___String___to_s_t
)CALL(variable29
,COLOR_string___Object___to_s
))(variable29
) /*String::to_s*/;
2217 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable29
) /*String::append*/;
2218 variable30
= NEW_string___String___with_native(BOX_NativeString(" parameter(s)."), TAG_Int(14)); /*new String*/
2219 variable31
= variable30
;
2220 ((string___String___append_t
)CALL(variable11
,COLOR_abstract_collection___IndexedCollection___append
))(variable11
, variable31
) /*String::append*/;
2221 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable11
) /*AbsSyntaxVisitor::error*/;
2223 variable11
= ((static_type___MMSignature___arity_t
)CALL( variable6
/*s*/,COLOR_static_type___MMSignature___arity
))( variable6
/*s*/) /*MMSignature::arity*/;
2224 variable12
= NEW_range___Range___without_last( TAG_Int(0), variable11
); /*new Range[E]*/
2225 variable11
= variable12
;
2226 variable11
= ((range___Range___iterator_t
)CALL(variable11
,COLOR_abstract_collection___Collection___iterator
))(variable11
) /*Range::iterator*/;
2227 while (true) { /*for*/
2228 variable12
= ((abstract_collection___Iterator___is_ok_t
)CALL(variable11
,COLOR_abstract_collection___Iterator___is_ok
))(variable11
) /*Iterator::is_ok*/;
2229 if (!UNTAG_Bool(variable12
)) break; /*for*/
2230 variable12
= ((abstract_collection___Iterator___item_t
)CALL(variable11
,COLOR_abstract_collection___Iterator___item
))(variable11
) /*Iterator::item*/;
2231 variable13
= ((static_type___MMSignature_____bra_t
)CALL( variable6
/*s*/,COLOR_static_type___MMSignature_____bra
))( variable6
/*s*/, variable12
/*i*/) /*MMSignature::[]*/;
2232 variable14
= ((static_type___MMSignature_____bra_t
)CALL( variable10
/*isig*/,COLOR_static_type___MMSignature_____bra
))( variable10
/*isig*/, variable12
/*i*/) /*MMSignature::[]*/;
2233 variable13
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable13
== variable14
) || ((variable13
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable13
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable13
,variable14
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable13
,COLOR_kernel___Object_____eqeq
))(variable13
, variable14
) /*Object::==*/)))))));
2234 if (UNTAG_Bool(variable13
)) { /*if*/
2235 variable13
= NEW_string___String___init(); /*new String*/
2236 variable14
= NEW_string___String___with_native(BOX_NativeString("Redef error: Expected "), TAG_Int(22)); /*new String*/
2237 variable15
= variable14
;
2238 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable15
) /*String::append*/;
2239 variable16
= ((static_type___MMSignature_____bra_t
)CALL( variable10
/*isig*/,COLOR_static_type___MMSignature_____bra
))( variable10
/*isig*/, variable12
/*i*/) /*MMSignature::[]*/;
2240 variable17
= variable16
;
2241 variable17
= ((string___String___to_s_t
)CALL(variable17
,COLOR_string___Object___to_s
))(variable17
) /*String::to_s*/;
2242 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable17
) /*String::append*/;
2243 variable18
= NEW_string___String___with_native(BOX_NativeString(" (as in "), TAG_Int(8)); /*new String*/
2244 variable19
= variable18
;
2245 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable19
) /*String::append*/;
2246 variable20
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable9
/*ip*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable9
/*ip*/) /*MMLocalProperty::local_class*/;
2247 variable21
= variable20
;
2248 variable21
= ((string___String___to_s_t
)CALL(variable21
,COLOR_string___Object___to_s
))(variable21
) /*String::to_s*/;
2249 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable21
) /*String::append*/;
2250 variable22
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2251 variable23
= variable22
;
2252 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable23
) /*String::append*/;
2253 variable24
= variable9
/*ip*/;
2254 variable24
= ((string___String___to_s_t
)CALL(variable24
,COLOR_string___Object___to_s
))(variable24
) /*String::to_s*/;
2255 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable24
) /*String::append*/;
2256 variable25
= NEW_string___String___with_native(BOX_NativeString("), got "), TAG_Int(7)); /*new String*/
2257 variable26
= variable25
;
2258 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable26
) /*String::append*/;
2259 variable27
= ((static_type___MMSignature_____bra_t
)CALL( variable6
/*s*/,COLOR_static_type___MMSignature_____bra
))( variable6
/*s*/, variable12
/*i*/) /*MMSignature::[]*/;
2260 variable28
= variable27
;
2261 variable28
= ((string___String___to_s_t
)CALL(variable28
,COLOR_string___Object___to_s
))(variable28
) /*String::to_s*/;
2262 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable28
) /*String::append*/;
2263 variable29
= NEW_string___String___with_native(BOX_NativeString(" in "), TAG_Int(4)); /*new String*/
2264 variable30
= variable29
;
2265 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable30
) /*String::append*/;
2266 variable31
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2267 variable32
= variable31
;
2268 variable32
= ((string___String___to_s_t
)CALL(variable32
,COLOR_string___Object___to_s
))(variable32
) /*String::to_s*/;
2269 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable32
) /*String::append*/;
2270 variable33
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2271 variable34
= variable33
;
2272 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable34
) /*String::append*/;
2273 variable35
= variable1
/*prop*/;
2274 variable35
= ((string___String___to_s_t
)CALL(variable35
,COLOR_string___Object___to_s
))(variable35
) /*String::to_s*/;
2275 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable35
) /*String::append*/;
2276 variable36
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
2277 variable37
= variable36
;
2278 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable37
) /*String::append*/;
2279 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable13
) /*AbsSyntaxVisitor::error*/;
2281 continue_85
: while(0);
2282 ((abstract_collection___Iterator___next_t
)CALL(variable11
,COLOR_abstract_collection___Iterator___next
))(variable11
) /*Iterator::next*/;
2287 variable12
= ((static_type___MMSignature___return_type_t
)CALL( variable6
/*s*/,COLOR_static_type___MMSignature___return_type
))( variable6
/*s*/) /*MMSignature::return_type*/;
2288 variable11
= variable12
;
2289 variable13
= ((static_type___MMSignature___return_type_t
)CALL( variable10
/*isig*/,COLOR_static_type___MMSignature___return_type
))( variable10
/*isig*/) /*MMSignature::return_type*/;
2290 variable12
= variable13
;
2291 variable13
= TAG_Bool(( variable11
/*srt*/ == NIT_NULL
/*null*/) || (( variable11
/*srt*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable11
/*srt*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable11
/*srt*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable11
/*srt*/,COLOR_kernel___Object_____eqeq
))( variable11
/*srt*/, NIT_NULL
/*null*/) /*Object::==*/)))));
2292 variable14
= variable13
;
2293 if (UNTAG_Bool(variable14
)) { /* and */
2294 variable14
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12
/*isrt*/ == NIT_NULL
/*null*/) || (( variable12
/*isrt*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable12
/*isrt*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable12
/*isrt*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable12
/*isrt*/,COLOR_kernel___Object_____eqeq
))( variable12
/*isrt*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
2296 variable13
= variable14
;
2297 if (UNTAG_Bool(variable13
)) { /*if*/
2298 variable13
= NEW_string___String___init(); /*new String*/
2299 variable14
= NEW_string___String___with_native(BOX_NativeString("Redef error: The procedure "), TAG_Int(27)); /*new String*/
2300 variable15
= variable14
;
2301 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable15
) /*String::append*/;
2302 variable16
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2303 variable17
= variable16
;
2304 variable17
= ((string___String___to_s_t
)CALL(variable17
,COLOR_string___Object___to_s
))(variable17
) /*String::to_s*/;
2305 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable17
) /*String::append*/;
2306 variable18
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2307 variable19
= variable18
;
2308 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable19
) /*String::append*/;
2309 variable20
= variable1
/*prop*/;
2310 variable20
= ((string___String___to_s_t
)CALL(variable20
,COLOR_string___Object___to_s
))(variable20
) /*String::to_s*/;
2311 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable20
) /*String::append*/;
2312 variable21
= NEW_string___String___with_native(BOX_NativeString(" redefines the function "), TAG_Int(24)); /*new String*/
2313 variable22
= variable21
;
2314 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable22
) /*String::append*/;
2315 variable23
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable9
/*ip*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable9
/*ip*/) /*MMLocalProperty::local_class*/;
2316 variable24
= variable23
;
2317 variable24
= ((string___String___to_s_t
)CALL(variable24
,COLOR_string___Object___to_s
))(variable24
) /*String::to_s*/;
2318 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable24
) /*String::append*/;
2319 variable25
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2320 variable26
= variable25
;
2321 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable26
) /*String::append*/;
2322 variable27
= variable9
/*ip*/;
2323 variable27
= ((string___String___to_s_t
)CALL(variable27
,COLOR_string___Object___to_s
))(variable27
) /*String::to_s*/;
2324 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable27
) /*String::append*/;
2325 variable28
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
2326 variable29
= variable28
;
2327 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable29
) /*String::append*/;
2328 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable13
) /*AbsSyntaxVisitor::error*/;
2330 variable13
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11
/*srt*/ == NIT_NULL
/*null*/) || (( variable11
/*srt*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable11
/*srt*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable11
/*srt*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable11
/*srt*/,COLOR_kernel___Object_____eqeq
))( variable11
/*srt*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
2331 variable14
= variable13
;
2332 if (UNTAG_Bool(variable14
)) { /* and */
2333 variable14
= TAG_Bool(( variable12
/*isrt*/ == NIT_NULL
/*null*/) || (( variable12
/*isrt*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable12
/*isrt*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable12
/*isrt*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable12
/*isrt*/,COLOR_kernel___Object_____eqeq
))( variable12
/*isrt*/, NIT_NULL
/*null*/) /*Object::==*/)))));
2335 variable13
= variable14
;
2336 if (UNTAG_Bool(variable13
)) { /*if*/
2337 variable13
= NEW_string___String___init(); /*new String*/
2338 variable14
= NEW_string___String___with_native(BOX_NativeString("Redef error: The function "), TAG_Int(26)); /*new String*/
2339 variable15
= variable14
;
2340 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable15
) /*String::append*/;
2341 variable16
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2342 variable17
= variable16
;
2343 variable17
= ((string___String___to_s_t
)CALL(variable17
,COLOR_string___Object___to_s
))(variable17
) /*String::to_s*/;
2344 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable17
) /*String::append*/;
2345 variable18
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2346 variable19
= variable18
;
2347 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable19
) /*String::append*/;
2348 variable20
= variable1
/*prop*/;
2349 variable20
= ((string___String___to_s_t
)CALL(variable20
,COLOR_string___Object___to_s
))(variable20
) /*String::to_s*/;
2350 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable20
) /*String::append*/;
2351 variable21
= NEW_string___String___with_native(BOX_NativeString(" redefines the procedure "), TAG_Int(25)); /*new String*/
2352 variable22
= variable21
;
2353 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable22
) /*String::append*/;
2354 variable23
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable9
/*ip*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable9
/*ip*/) /*MMLocalProperty::local_class*/;
2355 variable24
= variable23
;
2356 variable24
= ((string___String___to_s_t
)CALL(variable24
,COLOR_string___Object___to_s
))(variable24
) /*String::to_s*/;
2357 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable24
) /*String::append*/;
2358 variable25
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2359 variable26
= variable25
;
2360 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable26
) /*String::append*/;
2361 variable27
= variable9
/*ip*/;
2362 variable27
= ((string___String___to_s_t
)CALL(variable27
,COLOR_string___Object___to_s
))(variable27
) /*String::to_s*/;
2363 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable27
) /*String::append*/;
2364 variable28
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
2365 variable29
= variable28
;
2366 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable29
) /*String::append*/;
2367 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable13
) /*AbsSyntaxVisitor::error*/;
2369 variable13
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11
/*srt*/ == NIT_NULL
/*null*/) || (( variable11
/*srt*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable11
/*srt*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable11
/*srt*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable11
/*srt*/,COLOR_kernel___Object_____eqeq
))( variable11
/*srt*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
2370 variable14
= variable13
;
2371 if (UNTAG_Bool(variable14
)) { /* and */
2372 variable14
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12
/*isrt*/ == NIT_NULL
/*null*/) || (( variable12
/*isrt*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable12
/*isrt*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable12
/*isrt*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable12
/*isrt*/,COLOR_kernel___Object_____eqeq
))( variable12
/*isrt*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
2374 variable13
= variable14
;
2375 variable14
= variable13
;
2376 if (UNTAG_Bool(variable14
)) { /* and */
2377 variable14
= ((static_type___MMType_____l_t
)CALL( variable11
/*srt*/,COLOR_static_type___MMType_____l
))( variable11
/*srt*/, variable12
/*isrt*/) /*MMType::<*/;
2378 variable14
= TAG_Bool(!UNTAG_Bool(variable14
));
2380 variable13
= variable14
;
2381 if (UNTAG_Bool(variable13
)) { /*if*/
2382 variable13
= NEW_string___String___init(); /*new String*/
2383 variable14
= NEW_string___String___with_native(BOX_NativeString("Redef error: Expected "), TAG_Int(22)); /*new String*/
2384 variable15
= variable14
;
2385 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable15
) /*String::append*/;
2386 variable16
= variable12
/*isrt*/;
2387 variable16
= ((string___String___to_s_t
)CALL(variable16
,COLOR_string___Object___to_s
))(variable16
) /*String::to_s*/;
2388 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable16
) /*String::append*/;
2389 variable17
= NEW_string___String___with_native(BOX_NativeString(" (as in "), TAG_Int(8)); /*new String*/
2390 variable18
= variable17
;
2391 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable18
) /*String::append*/;
2392 variable19
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable9
/*ip*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable9
/*ip*/) /*MMLocalProperty::local_class*/;
2393 variable20
= variable19
;
2394 variable20
= ((string___String___to_s_t
)CALL(variable20
,COLOR_string___Object___to_s
))(variable20
) /*String::to_s*/;
2395 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable20
) /*String::append*/;
2396 variable21
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2397 variable22
= variable21
;
2398 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable22
) /*String::append*/;
2399 variable23
= variable9
/*ip*/;
2400 variable23
= ((string___String___to_s_t
)CALL(variable23
,COLOR_string___Object___to_s
))(variable23
) /*String::to_s*/;
2401 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable23
) /*String::append*/;
2402 variable24
= NEW_string___String___with_native(BOX_NativeString("), got "), TAG_Int(7)); /*new String*/
2403 variable25
= variable24
;
2404 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable25
) /*String::append*/;
2405 variable26
= variable11
/*srt*/;
2406 variable26
= ((string___String___to_s_t
)CALL(variable26
,COLOR_string___Object___to_s
))(variable26
) /*String::to_s*/;
2407 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable26
) /*String::append*/;
2408 variable27
= NEW_string___String___with_native(BOX_NativeString(" in "), TAG_Int(4)); /*new String*/
2409 variable28
= variable27
;
2410 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable28
) /*String::append*/;
2411 variable29
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2412 variable30
= variable29
;
2413 variable30
= ((string___String___to_s_t
)CALL(variable30
,COLOR_string___Object___to_s
))(variable30
) /*String::to_s*/;
2414 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable30
) /*String::append*/;
2415 variable31
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2416 variable32
= variable31
;
2417 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable32
) /*String::append*/;
2418 variable33
= variable1
/*prop*/;
2419 variable33
= ((string___String___to_s_t
)CALL(variable33
,COLOR_string___Object___to_s
))(variable33
) /*String::to_s*/;
2420 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable33
) /*String::append*/;
2421 variable34
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
2422 variable35
= variable34
;
2423 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable35
) /*String::append*/;
2424 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable13
) /*AbsSyntaxVisitor::error*/;
2426 variable13
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11
/*srt*/ == NIT_NULL
/*null*/) || (( variable11
/*srt*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable11
/*srt*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable11
/*srt*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable11
/*srt*/,COLOR_kernel___Object_____eqeq
))( variable11
/*srt*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
2427 variable14
= variable13
;
2428 if (UNTAG_Bool(variable14
)) { /* and */
2429 variable14
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable12
/*isrt*/ == NIT_NULL
/*null*/) || (( variable12
/*isrt*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable12
/*isrt*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable12
/*isrt*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable12
/*isrt*/,COLOR_kernel___Object_____eqeq
))( variable12
/*isrt*/, NIT_NULL
/*null*/) /*Object::==*/)))))));
2431 variable13
= variable14
;
2432 variable14
= variable13
;
2433 if (UNTAG_Bool(variable14
)) { /* and */
2434 variable14
= TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable11
/*srt*/ == variable12
/*isrt*/) || (( variable11
/*srt*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable11
/*srt*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable11
/*srt*/, variable12
/*isrt*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable11
/*srt*/,COLOR_kernel___Object_____eqeq
))( variable11
/*srt*/, variable12
/*isrt*/) /*Object::==*/)))))));
2436 variable13
= variable14
;
2437 variable14
= variable13
;
2438 if (UNTAG_Bool(variable14
)) { /* and */
2439 variable14
= TAG_Bool(( variable1
/*prop*/==NIT_NULL
) || VAL_ISA( variable1
/*prop*/, COLOR_MMAttribute
, ID_MMAttribute
)) /*cast MMAttribute*/;
2441 variable13
= variable14
;
2442 if (UNTAG_Bool(variable13
)) { /*if*/
2443 variable13
= NEW_string___String___init(); /*new String*/
2444 variable14
= NEW_string___String___with_native(BOX_NativeString("Redef warning: Expected "), TAG_Int(24)); /*new String*/
2445 variable15
= variable14
;
2446 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable15
) /*String::append*/;
2447 variable16
= variable12
/*isrt*/;
2448 variable16
= ((string___String___to_s_t
)CALL(variable16
,COLOR_string___Object___to_s
))(variable16
) /*String::to_s*/;
2449 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable16
) /*String::append*/;
2450 variable17
= NEW_string___String___with_native(BOX_NativeString(" (as in "), TAG_Int(8)); /*new String*/
2451 variable18
= variable17
;
2452 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable18
) /*String::append*/;
2453 variable19
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable9
/*ip*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable9
/*ip*/) /*MMLocalProperty::local_class*/;
2454 variable20
= variable19
;
2455 variable20
= ((string___String___to_s_t
)CALL(variable20
,COLOR_string___Object___to_s
))(variable20
) /*String::to_s*/;
2456 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable20
) /*String::append*/;
2457 variable21
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2458 variable22
= variable21
;
2459 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable22
) /*String::append*/;
2460 variable23
= variable9
/*ip*/;
2461 variable23
= ((string___String___to_s_t
)CALL(variable23
,COLOR_string___Object___to_s
))(variable23
) /*String::to_s*/;
2462 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable23
) /*String::append*/;
2463 variable24
= NEW_string___String___with_native(BOX_NativeString("), got "), TAG_Int(7)); /*new String*/
2464 variable25
= variable24
;
2465 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable25
) /*String::append*/;
2466 variable26
= variable11
/*srt*/;
2467 variable26
= ((string___String___to_s_t
)CALL(variable26
,COLOR_string___Object___to_s
))(variable26
) /*String::to_s*/;
2468 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable26
) /*String::append*/;
2469 variable27
= NEW_string___String___with_native(BOX_NativeString(" in "), TAG_Int(4)); /*new String*/
2470 variable28
= variable27
;
2471 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable28
) /*String::append*/;
2472 variable29
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2473 variable30
= variable29
;
2474 variable30
= ((string___String___to_s_t
)CALL(variable30
,COLOR_string___Object___to_s
))(variable30
) /*String::to_s*/;
2475 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable30
) /*String::append*/;
2476 variable31
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2477 variable32
= variable31
;
2478 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable32
) /*String::append*/;
2479 variable33
= variable1
/*prop*/;
2480 variable33
= ((string___String___to_s_t
)CALL(variable33
,COLOR_string___Object___to_s
))(variable33
) /*String::to_s*/;
2481 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable33
) /*String::append*/;
2482 variable34
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
2483 variable35
= variable34
;
2484 ((string___String___append_t
)CALL(variable13
,COLOR_abstract_collection___IndexedCollection___append
))(variable13
, variable35
) /*String::append*/;
2485 ((syntax_base___AbsSyntaxVisitor___warning_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___warning
))( variable0
/*v*/, self
, variable13
) /*AbsSyntaxVisitor::warning*/;
2490 continue_83
: while(0);
2491 ((array___ArrayIterator___next_t
)CALL(variable7
,COLOR_abstract_collection___Iterator___next
))(variable7
) /*ArrayIterator::next*/;
2494 variable7
= TAG_Bool(( variable3
/*visibility_level*/)!=( TAG_Int(1)));
2495 variable8
= variable7
;
2496 if (UNTAG_Bool(variable8
)) { /* and */
2497 variable8
= ((abstractmetamodel___MMGlobalProperty___visibility_level_t
)CALL( variable5
/*glob*/,COLOR_abstractmetamodel___MMGlobalProperty___visibility_level
))( variable5
/*glob*/) /*MMGlobalProperty::visibility_level*/;
2498 variable8
= TAG_Bool((variable8
)!=( variable3
/*visibility_level*/));
2500 variable7
= variable8
;
2501 if (UNTAG_Bool(variable7
)) { /*if*/
2502 variable7
= NEW_string___String___init(); /*new String*/
2503 variable8
= NEW_string___String___with_native(BOX_NativeString("Redef error: "), TAG_Int(13)); /*new String*/
2504 variable9
= variable8
;
2505 ((string___String___append_t
)CALL(variable7
,COLOR_abstract_collection___IndexedCollection___append
))(variable7
, variable9
) /*String::append*/;
2506 variable10
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___local_class
))( variable1
/*prop*/) /*MMLocalProperty::local_class*/;
2507 variable11
= variable10
;
2508 variable11
= ((string___String___to_s_t
)CALL(variable11
,COLOR_string___Object___to_s
))(variable11
) /*String::to_s*/;
2509 ((string___String___append_t
)CALL(variable7
,COLOR_abstract_collection___IndexedCollection___append
))(variable7
, variable11
) /*String::append*/;
2510 variable12
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2511 variable13
= variable12
;
2512 ((string___String___append_t
)CALL(variable7
,COLOR_abstract_collection___IndexedCollection___append
))(variable7
, variable13
) /*String::append*/;
2513 variable14
= variable1
/*prop*/;
2514 variable14
= ((string___String___to_s_t
)CALL(variable14
,COLOR_string___Object___to_s
))(variable14
) /*String::to_s*/;
2515 ((string___String___append_t
)CALL(variable7
,COLOR_abstract_collection___IndexedCollection___append
))(variable7
, variable14
) /*String::append*/;
2516 variable15
= NEW_string___String___with_native(BOX_NativeString(" redefinition cannot change visibility."), TAG_Int(39)); /*new String*/
2517 variable16
= variable15
;
2518 ((string___String___append_t
)CALL(variable7
,COLOR_abstract_collection___IndexedCollection___append
))(variable7
, variable16
) /*String::append*/;
2519 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable7
) /*AbsSyntaxVisitor::error*/;
2521 variable7
= ((syntax_base___AbsSyntaxVisitor___module_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___module
))( variable0
/*v*/) /*AbsSyntaxVisitor::module*/;
2522 ((syntax_base___MMGlobalProperty___check_visibility_t
)CALL( variable5
/*glob*/,COLOR_syntax_base___MMGlobalProperty___check_visibility
))( variable5
/*glob*/, variable0
/*v*/, self
, variable7
, TAG_Bool(true)) /*MMGlobalProperty::check_visibility*/;
2523 return_label81
: while(false);
2524 tracehead
= trace
.prev
;
2527 val_t
mmbuilder___AAttrPropdef___readmethod(val_t self
) {
2528 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 773, LOCATE_mmbuilder___AAttrPropdef___readmethod
};
2529 trace
.prev
= tracehead
; tracehead
= &trace
;
2530 tracehead
= trace
.prev
;
2531 return ATTR_mmbuilder___AAttrPropdef____readmethod( self
) /*AAttrPropdef::_readmethod*/;
2533 val_t
mmbuilder___AAttrPropdef___writemethod(val_t self
) {
2534 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 774, LOCATE_mmbuilder___AAttrPropdef___writemethod
};
2535 trace
.prev
= tracehead
; tracehead
= &trace
;
2536 tracehead
= trace
.prev
;
2537 return ATTR_mmbuilder___AAttrPropdef____writemethod( self
) /*AAttrPropdef::_writemethod*/;
2539 val_t
mmbuilder___AAttrPropdef___prop(val_t self
) {
2540 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 775, LOCATE_mmbuilder___AAttrPropdef___prop
};
2541 trace
.prev
= tracehead
; tracehead
= &trace
;
2542 tracehead
= trace
.prev
;
2543 return ATTR_mmbuilder___AAttrPropdef____prop( self
) /*AAttrPropdef::_prop*/;
2545 void mmbuilder___AAttrPropdef___accept_property_builder(val_t self
, val_t param0
) {
2546 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 777, LOCATE_mmbuilder___AAttrPropdef___accept_property_builder
};
2552 trace
.prev
= tracehead
; tracehead
= &trace
;
2554 ((mmbuilder___AAttrPropdef___accept_property_builder_t
)CALL( self
,COLOR_SUPER_mmbuilder___AAttrPropdef___accept_property_builder
))( self
, param0
) /*super AAttrPropdef::accept_property_builder*/;
2555 variable2
= ((parser_nodes___AAttrPropdef___n_id_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_id
))( self
) /*AAttrPropdef::n_id*/;
2556 variable2
= ((syntax_base___Token___to_symbol_t
)CALL(variable2
,COLOR_syntax_base___Token___to_symbol
))(variable2
) /*Token::to_symbol*/;
2557 variable1
= variable2
;
2558 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2559 variable4
= NEW_syntax_base___MMSrcAttribute___init( variable1
/*name*/, variable3
, self
); /*new MMSrcAttribute*/
2560 variable3
= variable4
;
2561 variable2
= variable3
;
2562 ATTR_mmbuilder___AAttrPropdef____prop( self
) /*AAttrPropdef::_prop*/ = variable2
/*prop*/;
2563 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2564 ((mmbuilder___MMSrcLocalClass___add_src_local_property_t
)CALL(variable3
,COLOR_mmbuilder___MMSrcLocalClass___add_src_local_property
))(variable3
, variable0
/*v*/, variable2
/*prop*/) /*MMSrcLocalClass::add_src_local_property*/;
2565 variable3
= ((parser_nodes___AAttrPropdef___n_readable_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_readable
))( self
) /*AAttrPropdef::n_readable*/;
2566 variable3
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable3
== NIT_NULL
/*null*/) || ((variable3
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable3
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))(variable3
, NIT_NULL
/*null*/) /*Object::==*/)))))));
2567 if (UNTAG_Bool(variable3
)) { /*if*/
2568 variable3
= ((parser_nodes___AAttrPropdef___n_id_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_id
))( self
) /*AAttrPropdef::n_id*/;
2569 variable3
= ((lexer___Token___text_t
)CALL(variable3
,COLOR_lexer___Token___text
))(variable3
) /*Token::text*/;
2570 variable3
= ((string___String___substring_from_t
)CALL(variable3
,COLOR_string___String___substring_from
))(variable3
, TAG_Int(1)) /*String::substring_from*/;
2571 variable3
= ((symbol___String___to_symbol_t
)CALL(variable3
,COLOR_symbol___String___to_symbol
))(variable3
) /*String::to_symbol*/;
2572 variable1
= variable3
/*name=*/;
2573 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2574 variable4
= NEW_syntax_base___MMReadImplementationMethod___init( variable1
/*name*/, variable3
, self
); /*new MMReadImplementationMethod*/
2575 variable3
= variable4
;
2576 ATTR_mmbuilder___AAttrPropdef____readmethod( self
) /*AAttrPropdef::_readmethod*/ = variable3
;
2577 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2578 variable4
= ATTR_mmbuilder___AAttrPropdef____readmethod( self
) /*AAttrPropdef::_readmethod*/;
2579 ((mmbuilder___MMSrcLocalClass___add_src_local_property_t
)CALL(variable3
,COLOR_mmbuilder___MMSrcLocalClass___add_src_local_property
))(variable3
, variable0
/*v*/, variable4
) /*MMSrcLocalClass::add_src_local_property*/;
2581 variable3
= ((parser_nodes___AAttrPropdef___n_writable_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_writable
))( self
) /*AAttrPropdef::n_writable*/;
2582 variable3
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable3
== NIT_NULL
/*null*/) || ((variable3
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable3
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))(variable3
, NIT_NULL
/*null*/) /*Object::==*/)))))));
2583 if (UNTAG_Bool(variable3
)) { /*if*/
2584 variable3
= ((parser_nodes___AAttrPropdef___n_id_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_id
))( self
) /*AAttrPropdef::n_id*/;
2585 variable3
= ((lexer___Token___text_t
)CALL(variable3
,COLOR_lexer___Token___text
))(variable3
) /*Token::text*/;
2586 variable3
= ((string___String___substring_from_t
)CALL(variable3
,COLOR_string___String___substring_from
))(variable3
, TAG_Int(1)) /*String::substring_from*/;
2587 variable4
= NEW_string___String___with_native(BOX_NativeString("="), TAG_Int(1)); /*new String*/
2588 variable3
= ((string___String_____plus_t
)CALL(variable3
,COLOR_string___String_____plus
))(variable3
, variable4
) /*String::+*/;
2589 variable3
= ((symbol___String___to_symbol_t
)CALL(variable3
,COLOR_symbol___String___to_symbol
))(variable3
) /*String::to_symbol*/;
2590 variable1
= variable3
/*name=*/;
2591 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2592 variable4
= NEW_syntax_base___MMWriteImplementationMethod___init( variable1
/*name*/, variable3
, self
); /*new MMWriteImplementationMethod*/
2593 variable3
= variable4
;
2594 ATTR_mmbuilder___AAttrPropdef____writemethod( self
) /*AAttrPropdef::_writemethod*/ = variable3
;
2595 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2596 variable4
= ATTR_mmbuilder___AAttrPropdef____writemethod( self
) /*AAttrPropdef::_writemethod*/;
2597 ((mmbuilder___MMSrcLocalClass___add_src_local_property_t
)CALL(variable3
,COLOR_mmbuilder___MMSrcLocalClass___add_src_local_property
))(variable3
, variable0
/*v*/, variable4
) /*MMSrcLocalClass::add_src_local_property*/;
2599 tracehead
= trace
.prev
;
2602 void mmbuilder___AAttrPropdef___accept_property_verifier(val_t self
, val_t param0
) {
2603 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 797, LOCATE_mmbuilder___AAttrPropdef___accept_property_verifier
};
2617 trace
.prev
= tracehead
; tracehead
= &trace
;
2619 ((mmbuilder___AAttrPropdef___accept_property_verifier_t
)CALL( self
,COLOR_SUPER_mmbuilder___AAttrPropdef___accept_property_verifier
))( self
, param0
) /*super AAttrPropdef::accept_property_verifier*/;
2620 variable1
= NIT_NULL
/*decl variable t*/;
2621 variable2
= ((parser_nodes___AAttrPropdef___n_type_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_type
))( self
) /*AAttrPropdef::n_type*/;
2622 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2
== NIT_NULL
/*null*/) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, NIT_NULL
/*null*/) /*Object::==*/)))))));
2623 if (UNTAG_Bool(variable2
)) { /*if*/
2624 variable2
= ((parser_nodes___AAttrPropdef___n_type_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_type
))( self
) /*AAttrPropdef::n_type*/;
2625 variable2
= ((syntax_base___PType___get_stype_t
)CALL(variable2
,COLOR_syntax_base___PType___get_stype
))(variable2
, variable0
/*v*/) /*PType::get_stype*/;
2626 variable1
= variable2
/*t=*/;
2628 variable2
= NEW_string___String___init(); /*new String*/
2629 variable3
= NEW_string___String___with_native(BOX_NativeString("Not yet implemented: Attribute definition "), TAG_Int(42)); /*new String*/
2630 variable4
= variable3
;
2631 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable4
) /*String::append*/;
2632 variable5
= ATTR_mmbuilder___AAttrPropdef____prop( self
) /*AAttrPropdef::_prop*/;
2633 variable5
= ((abstractmetamodel___MMLocalProperty___local_class_t
)CALL(variable5
,COLOR_abstractmetamodel___MMLocalProperty___local_class
))(variable5
) /*MMLocalProperty::local_class*/;
2634 variable6
= variable5
;
2635 variable6
= ((string___String___to_s_t
)CALL(variable6
,COLOR_string___Object___to_s
))(variable6
) /*String::to_s*/;
2636 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable6
) /*String::append*/;
2637 variable7
= NEW_string___String___with_native(BOX_NativeString("::"), TAG_Int(2)); /*new String*/
2638 variable8
= variable7
;
2639 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable8
) /*String::append*/;
2640 variable9
= ATTR_mmbuilder___AAttrPropdef____prop( self
) /*AAttrPropdef::_prop*/;
2641 variable10
= variable9
;
2642 variable10
= ((string___String___to_s_t
)CALL(variable10
,COLOR_string___Object___to_s
))(variable10
) /*String::to_s*/;
2643 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable10
) /*String::append*/;
2644 variable11
= NEW_string___String___with_native(BOX_NativeString(" requires an explicit type."), TAG_Int(27)); /*new String*/
2645 variable12
= variable11
;
2646 ((string___String___append_t
)CALL(variable2
,COLOR_abstract_collection___IndexedCollection___append
))(variable2
, variable12
) /*String::append*/;
2647 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable2
) /*AbsSyntaxVisitor::error*/;
2648 goto return_label87
;
2650 variable3
= NEW_array___Array___init(); /*new Array[E]*/
2651 variable4
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2652 variable4
= ((genericity___MMLocalClass___get_type_t
)CALL(variable4
,COLOR_static_type___MMLocalClass___get_type
))(variable4
) /*MMLocalClass::get_type*/;
2653 variable5
= NEW_static_type___MMSignature___init(variable3
, variable1
/*t*/, variable4
); /*new MMSignature*/
2654 variable3
= variable5
;
2655 variable2
= variable3
;
2656 variable3
= ATTR_mmbuilder___AAttrPropdef____prop( self
) /*AAttrPropdef::_prop*/;
2657 ((static_type___MMLocalProperty___signature__eq_t
)CALL(variable3
,COLOR_static_type___MMLocalProperty___signature__eq
))(variable3
, variable2
/*signature*/) /*MMLocalProperty::signature=*/;
2658 variable4
= ((parser_nodes___AAttrPropdef___n_visibility_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_visibility
))( self
) /*AAttrPropdef::n_visibility*/;
2659 variable4
= ((mmbuilder___PVisibility___level_t
)CALL(variable4
,COLOR_mmbuilder___PVisibility___level
))(variable4
) /*PVisibility::level*/;
2660 variable3
= variable4
;
2661 variable4
= ATTR_mmbuilder___AAttrPropdef____prop( self
) /*AAttrPropdef::_prop*/;
2662 variable5
= ((parser_nodes___AAttrPropdef___n_kwredef_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_kwredef
))( self
) /*AAttrPropdef::n_kwredef*/;
2663 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*/) /*Object::==*/)))))));
2664 ((mmbuilder___PPropdef___process_and_check_t
)CALL( self
,COLOR_mmbuilder___PPropdef___process_and_check
))( self
, variable0
/*v*/, variable4
, variable5
, variable3
/*visibility_level*/) /*PPropdef::process_and_check*/;
2665 variable4
= ((parser_nodes___AAttrPropdef___n_readable_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_readable
))( self
) /*AAttrPropdef::n_readable*/;
2666 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*/) /*Object::==*/)))))));
2667 if (UNTAG_Bool(variable4
)) { /*if*/
2668 variable4
= ATTR_mmbuilder___AAttrPropdef____readmethod( self
) /*AAttrPropdef::_readmethod*/;
2669 ((static_type___MMLocalProperty___signature__eq_t
)CALL(variable4
,COLOR_static_type___MMLocalProperty___signature__eq
))(variable4
, variable2
/*signature*/) /*MMLocalProperty::signature=*/;
2670 variable4
= ATTR_mmbuilder___AAttrPropdef____readmethod( self
) /*AAttrPropdef::_readmethod*/;
2671 variable5
= ((parser_nodes___AAttrPropdef___n_readable_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_readable
))( self
) /*AAttrPropdef::n_readable*/;
2672 variable5
= ((parser_nodes___PAble___n_kwredef_t
)CALL(variable5
,COLOR_parser_nodes___PAble___n_kwredef
))(variable5
) /*PAble::n_kwredef*/;
2673 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*/) /*Object::==*/)))))));
2674 ((mmbuilder___PPropdef___process_and_check_t
)CALL( self
,COLOR_mmbuilder___PPropdef___process_and_check
))( self
, variable0
/*v*/, variable4
, variable5
, variable3
/*visibility_level*/) /*PPropdef::process_and_check*/;
2675 variable4
= ((parser_nodes___AAttrPropdef___n_type_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_type
))( self
) /*AAttrPropdef::n_type*/;
2676 variable5
= ATTR_mmbuilder___AAttrPropdef____readmethod( self
) /*AAttrPropdef::_readmethod*/;
2677 ((mmbuilder___PType___check_visibility_t
)CALL(variable4
,COLOR_mmbuilder___PType___check_visibility
))(variable4
, variable0
/*v*/, variable5
) /*PType::check_visibility*/;
2679 variable4
= ((parser_nodes___AAttrPropdef___n_writable_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_writable
))( self
) /*AAttrPropdef::n_writable*/;
2680 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*/) /*Object::==*/)))))));
2681 if (UNTAG_Bool(variable4
)) { /*if*/
2682 variable4
= ATTR_mmbuilder___AAttrPropdef____writemethod( self
) /*AAttrPropdef::_writemethod*/;
2683 variable5
= NEW_array___Array___with_capacity(TAG_Int(1)); /*new Array[E]*/
2684 ((array___AbstractArray___add_t
)CALL(variable5
,COLOR_abstract_collection___SimpleCollection___add
))(variable5
, variable1
/*t*/) /*AbstractArray::add*/;
2685 variable6
= NEW_array___Array___with(variable5
); /*new Array[E]*/
2686 variable5
= variable6
;
2687 variable6
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2688 variable6
= ((genericity___MMLocalClass___get_type_t
)CALL(variable6
,COLOR_static_type___MMLocalClass___get_type
))(variable6
) /*MMLocalClass::get_type*/;
2689 variable7
= NEW_static_type___MMSignature___init(variable5
, NIT_NULL
/*null*/, variable6
); /*new MMSignature*/
2690 variable5
= variable7
;
2691 ((static_type___MMLocalProperty___signature__eq_t
)CALL(variable4
,COLOR_static_type___MMLocalProperty___signature__eq
))(variable4
, variable5
) /*MMLocalProperty::signature=*/;
2692 variable4
= ATTR_mmbuilder___AAttrPropdef____writemethod( self
) /*AAttrPropdef::_writemethod*/;
2693 variable5
= ((parser_nodes___AAttrPropdef___n_writable_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_writable
))( self
) /*AAttrPropdef::n_writable*/;
2694 variable5
= ((parser_nodes___PAble___n_kwredef_t
)CALL(variable5
,COLOR_parser_nodes___PAble___n_kwredef
))(variable5
) /*PAble::n_kwredef*/;
2695 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*/) /*Object::==*/)))))));
2696 ((mmbuilder___PPropdef___process_and_check_t
)CALL( self
,COLOR_mmbuilder___PPropdef___process_and_check
))( self
, variable0
/*v*/, variable4
, variable5
, variable3
/*visibility_level*/) /*PPropdef::process_and_check*/;
2697 variable4
= ((parser_nodes___AAttrPropdef___n_type_t
)CALL( self
,COLOR_parser_nodes___AAttrPropdef___n_type
))( self
) /*AAttrPropdef::n_type*/;
2698 variable5
= ATTR_mmbuilder___AAttrPropdef____writemethod( self
) /*AAttrPropdef::_writemethod*/;
2699 ((mmbuilder___PType___check_visibility_t
)CALL(variable4
,COLOR_mmbuilder___PType___check_visibility
))(variable4
, variable0
/*v*/, variable5
) /*PType::check_visibility*/;
2701 return_label87
: while(false);
2702 tracehead
= trace
.prev
;
2705 void mmbuilder___AAttrPropdef___accept_abs_syntax_visitor(val_t self
, val_t param0
) {
2706 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 824, LOCATE_mmbuilder___AAttrPropdef___accept_abs_syntax_visitor
};
2709 trace
.prev
= tracehead
; tracehead
= &trace
;
2711 variable1
= ((mmbuilder___AAttrPropdef___prop_t
)CALL( self
,COLOR_syntax_base___AAttrPropdef___prop
))( self
) /*AAttrPropdef::prop*/;
2712 ((syntax_base___AbsSyntaxVisitor___local_property__eq_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_property__eq
))( variable0
/*v*/, variable1
) /*AbsSyntaxVisitor::local_property=*/;
2713 ((mmbuilder___AAttrPropdef___accept_abs_syntax_visitor_t
)CALL( self
,COLOR_SUPER_mmbuilder___AAttrPropdef___accept_abs_syntax_visitor
))( self
, param0
) /*super AAttrPropdef::accept_abs_syntax_visitor*/;
2714 ((syntax_base___AbsSyntaxVisitor___local_property__eq_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_property__eq
))( variable0
/*v*/, NIT_NULL
/*null*/) /*AbsSyntaxVisitor::local_property=*/;
2715 tracehead
= trace
.prev
;
2718 val_t
mmbuilder___AMethPropdef___name(val_t self
) {
2719 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 833, LOCATE_mmbuilder___AMethPropdef___name
};
2720 trace
.prev
= tracehead
; tracehead
= &trace
;
2721 tracehead
= trace
.prev
;
2722 return ATTR_mmbuilder___AMethPropdef____name( self
) /*AMethPropdef::_name*/;
2724 val_t
mmbuilder___AMethPropdef___method(val_t self
) {
2725 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 836, LOCATE_mmbuilder___AMethPropdef___method
};
2726 trace
.prev
= tracehead
; tracehead
= &trace
;
2727 tracehead
= trace
.prev
;
2728 return ATTR_mmbuilder___AMethPropdef____method( self
) /*AMethPropdef::_method*/;
2730 void mmbuilder___AMethPropdef___accept_property_builder(val_t self
, val_t param0
) {
2731 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 838, LOCATE_mmbuilder___AMethPropdef___accept_property_builder
};
2734 static val_t once_value_variable1_90
; static int once_bool_variable1_90
;
2735 static val_t once_value_variable1_91
; static int once_bool_variable1_91
;
2737 static val_t once_value_variable2_92
; static int once_bool_variable2_92
;
2739 static val_t once_value_variable2_93
; static int once_bool_variable2_93
;
2741 trace
.prev
= tracehead
; tracehead
= &trace
;
2743 ((mmbuilder___AMethPropdef___accept_property_builder_t
)CALL( self
,COLOR_SUPER_mmbuilder___AMethPropdef___accept_property_builder
))( self
, param0
) /*super AMethPropdef::accept_property_builder*/;
2744 variable1
= ((parser_nodes___AMethPropdef___n_methid_t
)CALL( self
,COLOR_parser_nodes___AMethPropdef___n_methid
))( self
) /*AMethPropdef::n_methid*/;
2745 variable1
= TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*Object::==*/)))));
2746 if (UNTAG_Bool(variable1
)) { /*if*/
2747 variable1
= TAG_Bool(( self
==NIT_NULL
) || VAL_ISA( self
, COLOR_AConcreteInitPropdef
, ID_AConcreteInitPropdef
)) /*cast AConcreteInitPropdef*/;
2748 if (UNTAG_Bool(variable1
)) { /*if*/
2749 if (once_bool_variable1_90
) variable1
= once_value_variable1_90
;
2751 variable1
= NEW_string___String___with_native(BOX_NativeString("init"), TAG_Int(4)); /*new String*/
2752 variable1
= ((symbol___String___to_symbol_t
)CALL(variable1
,COLOR_symbol___String___to_symbol
))(variable1
) /*String::to_symbol*/;
2753 once_value_variable1_90
= variable1
;
2754 once_bool_variable1_90
= true;
2756 ATTR_mmbuilder___AMethPropdef____name( self
) /*AMethPropdef::_name*/ = variable1
;
2758 if (once_bool_variable1_91
) variable1
= once_value_variable1_91
;
2760 variable1
= NEW_string___String___with_native(BOX_NativeString("main"), TAG_Int(4)); /*new String*/
2761 variable1
= ((symbol___String___to_symbol_t
)CALL(variable1
,COLOR_symbol___String___to_symbol
))(variable1
) /*String::to_symbol*/;
2762 once_value_variable1_91
= variable1
;
2763 once_bool_variable1_91
= true;
2765 ATTR_mmbuilder___AMethPropdef____name( self
) /*AMethPropdef::_name*/ = variable1
;
2768 variable1
= ((parser_nodes___AMethPropdef___n_methid_t
)CALL( self
,COLOR_parser_nodes___AMethPropdef___n_methid
))( self
) /*AMethPropdef::n_methid*/;
2769 variable1
= ((mmbuilder___PMethid___name_t
)CALL(variable1
,COLOR_mmbuilder___PMethid___name
))(variable1
) /*PMethid::name*/;
2770 ATTR_mmbuilder___AMethPropdef____name( self
) /*AMethPropdef::_name*/ = variable1
;
2771 variable1
= ((parser_nodes___AMethPropdef___n_methid_t
)CALL( self
,COLOR_parser_nodes___AMethPropdef___n_methid
))( self
) /*AMethPropdef::n_methid*/;
2772 variable1
= ((mmbuilder___PMethid___name_t
)CALL(variable1
,COLOR_mmbuilder___PMethid___name
))(variable1
) /*PMethid::name*/;
2773 if (once_bool_variable2_92
) variable2
= once_value_variable2_92
;
2775 variable2
= NEW_string___String___with_native(BOX_NativeString("-"), TAG_Int(1)); /*new String*/
2776 variable2
= ((symbol___String___to_symbol_t
)CALL(variable2
,COLOR_symbol___String___to_symbol
))(variable2
) /*String::to_symbol*/;
2777 once_value_variable2_92
= variable2
;
2778 once_bool_variable2_92
= true;
2780 variable1
= TAG_Bool((variable1
== variable2
) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
,variable2
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, variable2
) /*Object::==*/)))));
2781 if (UNTAG_Bool(variable1
)) { /*if*/
2782 variable2
= ((parser_nodes___AMethPropdef___n_signature_t
)CALL( self
,COLOR_parser_nodes___AMethPropdef___n_signature
))( self
) /*AMethPropdef::n_signature*/;
2783 variable1
= variable2
;
2784 variable2
= TAG_Bool(( variable1
/*ns*/==NIT_NULL
) || VAL_ISA( variable1
/*ns*/, COLOR_ASignature
, ID_ASignature
)) /*cast ASignature*/;
2785 variable3
= variable2
;
2786 if (UNTAG_Bool(variable3
)) { /* and */
2787 variable3
= ((parser_nodes___ASignature___n_params_t
)CALL( variable1
/*ns*/,COLOR_parser_nodes___ASignature___n_params
))( variable1
/*ns*/) /*ASignature::n_params*/;
2788 variable3
= ((list___List___length_t
)CALL(variable3
,COLOR_abstract_collection___Collection___length
))(variable3
) /*List::length*/;
2789 variable3
= TAG_Bool((variable3
)==( TAG_Int(0)));
2791 variable2
= variable3
;
2792 if (UNTAG_Bool(variable2
)) { /*if*/
2793 if (once_bool_variable2_93
) variable2
= once_value_variable2_93
;
2795 variable2
= NEW_string___String___with_native(BOX_NativeString("unary -"), TAG_Int(7)); /*new String*/
2796 variable2
= ((symbol___String___to_symbol_t
)CALL(variable2
,COLOR_symbol___String___to_symbol
))(variable2
) /*String::to_symbol*/;
2797 once_value_variable2_93
= variable2
;
2798 once_bool_variable2_93
= true;
2800 ATTR_mmbuilder___AMethPropdef____name( self
) /*AMethPropdef::_name*/ = variable2
;
2804 variable2
= ATTR_mmbuilder___AMethPropdef____name( self
) /*AMethPropdef::_name*/;
2805 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2806 variable4
= NEW_syntax_base___MMMethSrcMethod___init(variable2
, variable3
, self
); /*new MMMethSrcMethod*/
2807 variable2
= variable4
;
2808 variable1
= variable2
;
2809 ATTR_mmbuilder___AMethPropdef____method( self
) /*AMethPropdef::_method*/ = variable1
/*prop*/;
2810 variable2
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2811 ((mmbuilder___MMSrcLocalClass___add_src_local_property_t
)CALL(variable2
,COLOR_mmbuilder___MMSrcLocalClass___add_src_local_property
))(variable2
, variable0
/*v*/, variable1
/*prop*/) /*MMSrcLocalClass::add_src_local_property*/;
2812 tracehead
= trace
.prev
;
2815 void mmbuilder___AMethPropdef___accept_property_verifier(val_t self
, val_t param0
) {
2816 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 862, LOCATE_mmbuilder___AMethPropdef___accept_property_verifier
};
2821 trace
.prev
= tracehead
; tracehead
= &trace
;
2823 variable1
= NEW_array___Array___init(); /*new Array[E]*/
2824 ((mmbuilder___PropertyVerifierVisitor___params__eq_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___params__eq
))( variable0
/*v*/, variable1
) /*PropertyVerifierVisitor::params=*/;
2825 variable1
= NEW_array___Array___init(); /*new Array[E]*/
2826 ((mmbuilder___PropertyVerifierVisitor___untyped_params__eq_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___untyped_params__eq
))( variable0
/*v*/, variable1
) /*PropertyVerifierVisitor::untyped_params=*/;
2827 ((mmbuilder___PropertyVerifierVisitor___signature__eq_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___signature__eq
))( variable0
/*v*/, NIT_NULL
/*null*/) /*PropertyVerifierVisitor::signature=*/;
2828 variable1
= TAG_Int(-UNTAG_Int( TAG_Int(1)));
2829 ((mmbuilder___PropertyVerifierVisitor___vararg_rank__eq_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___vararg_rank__eq
))( variable0
/*v*/, variable1
) /*PropertyVerifierVisitor::vararg_rank=*/;
2830 ((mmbuilder___AMethPropdef___accept_property_verifier_t
)CALL( self
,COLOR_SUPER_mmbuilder___AMethPropdef___accept_property_verifier
))( self
, param0
) /*super AMethPropdef::accept_property_verifier*/;
2831 variable1
= ((mmbuilder___PropertyVerifierVisitor___signature_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___signature
))( variable0
/*v*/) /*PropertyVerifierVisitor::signature*/;
2832 variable1
= TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*Object::==*/)))));
2833 if (UNTAG_Bool(variable1
)) { /*if*/
2835 variable1
= ATTR_mmbuilder___AMethPropdef____method( self
) /*AMethPropdef::_method*/;
2836 variable2
= ((mmbuilder___PropertyVerifierVisitor___signature_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___signature
))( variable0
/*v*/) /*PropertyVerifierVisitor::signature*/;
2837 ((static_type___MMLocalProperty___signature__eq_t
)CALL(variable1
,COLOR_static_type___MMLocalProperty___signature__eq
))(variable1
, variable2
) /*MMLocalProperty::signature=*/;
2839 variable1
= TAG_Int(1);
2840 variable2
= ((parser_nodes___AMethPropdef___n_visibility_t
)CALL( self
,COLOR_parser_nodes___AMethPropdef___n_visibility
))( self
) /*AMethPropdef::n_visibility*/;
2841 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2
== NIT_NULL
/*null*/) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, NIT_NULL
/*null*/) /*Object::==*/)))))));
2842 variable3
= variable2
;
2843 if (UNTAG_Bool(variable3
)) { /* and */
2844 variable3
= ((parser_nodes___AMethPropdef___n_visibility_t
)CALL( self
,COLOR_parser_nodes___AMethPropdef___n_visibility
))( self
) /*AMethPropdef::n_visibility*/;
2845 variable3
= ((mmbuilder___PVisibility___level_t
)CALL(variable3
,COLOR_mmbuilder___PVisibility___level
))(variable3
) /*PVisibility::level*/;
2846 variable3
= TAG_Bool(UNTAG_Int(variable3
)>UNTAG_Int( TAG_Int(1)));
2848 variable2
= variable3
;
2849 if (UNTAG_Bool(variable2
)) { /*if*/
2850 variable2
= ((parser_nodes___AMethPropdef___n_visibility_t
)CALL( self
,COLOR_parser_nodes___AMethPropdef___n_visibility
))( self
) /*AMethPropdef::n_visibility*/;
2851 variable2
= ((mmbuilder___PVisibility___level_t
)CALL(variable2
,COLOR_mmbuilder___PVisibility___level
))(variable2
) /*PVisibility::level*/;
2852 variable1
= variable2
/*visibility_level=*/;
2854 variable2
= ATTR_mmbuilder___AMethPropdef____method( self
) /*AMethPropdef::_method*/;
2855 variable3
= ((parser_nodes___AMethPropdef___n_kwredef_t
)CALL( self
,COLOR_parser_nodes___AMethPropdef___n_kwredef
))( self
) /*AMethPropdef::n_kwredef*/;
2856 variable3
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable3
== NIT_NULL
/*null*/) || ((variable3
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable3
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))(variable3
, NIT_NULL
/*null*/) /*Object::==*/)))))));
2857 ((mmbuilder___PPropdef___process_and_check_t
)CALL( self
,COLOR_mmbuilder___PPropdef___process_and_check
))( self
, variable0
/*v*/, variable2
, variable3
, variable1
/*visibility_level*/) /*PPropdef::process_and_check*/;
2858 variable2
= ((parser_nodes___AMethPropdef___n_signature_t
)CALL( self
,COLOR_parser_nodes___AMethPropdef___n_signature
))( self
) /*AMethPropdef::n_signature*/;
2859 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2
== NIT_NULL
/*null*/) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, NIT_NULL
/*null*/) /*Object::==*/)))))));
2860 if (UNTAG_Bool(variable2
)) { /*if*/
2861 variable2
= ((parser_nodes___AMethPropdef___n_signature_t
)CALL( self
,COLOR_parser_nodes___AMethPropdef___n_signature
))( self
) /*AMethPropdef::n_signature*/;
2862 variable3
= ATTR_mmbuilder___AMethPropdef____method( self
) /*AMethPropdef::_method*/;
2863 ((mmbuilder___PSignature___check_visibility_t
)CALL(variable2
,COLOR_mmbuilder___PSignature___check_visibility
))(variable2
, variable0
/*v*/, variable3
) /*PSignature::check_visibility*/;
2865 tracehead
= trace
.prev
;
2868 void mmbuilder___AMethPropdef___accept_abs_syntax_visitor(val_t self
, val_t param0
) {
2869 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 884, LOCATE_mmbuilder___AMethPropdef___accept_abs_syntax_visitor
};
2872 trace
.prev
= tracehead
; tracehead
= &trace
;
2874 variable1
= ((mmbuilder___AMethPropdef___method_t
)CALL( self
,COLOR_syntax_base___AMethPropdef___method
))( self
) /*AMethPropdef::method*/;
2875 ((syntax_base___AbsSyntaxVisitor___local_property__eq_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_property__eq
))( variable0
/*v*/, variable1
) /*AbsSyntaxVisitor::local_property=*/;
2876 ((mmbuilder___AMethPropdef___accept_abs_syntax_visitor_t
)CALL( self
,COLOR_SUPER_mmbuilder___AMethPropdef___accept_abs_syntax_visitor
))( self
, param0
) /*super AMethPropdef::accept_abs_syntax_visitor*/;
2877 ((syntax_base___AbsSyntaxVisitor___local_property__eq_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_property__eq
))( variable0
/*v*/, NIT_NULL
/*null*/) /*AbsSyntaxVisitor::local_property=*/;
2878 tracehead
= trace
.prev
;
2881 void mmbuilder___AMainMethPropdef___process_and_check(val_t self
, val_t param0
, val_t param1
, val_t param2
, val_t param3
) {
2882 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 893, LOCATE_mmbuilder___AMainMethPropdef___process_and_check
};
2890 trace
.prev
= tracehead
; tracehead
= &trace
;
2895 variable4
= ((abstractmetamodel___MMLocalProperty___global_t
)CALL( variable1
/*prop*/,COLOR_abstractmetamodel___MMLocalProperty___global
))( variable1
/*prop*/) /*MMLocalProperty::global*/;
2896 ((abstractmetamodel___MMGlobalProperty___visibility_level__eq_t
)CALL(variable4
,COLOR_abstractmetamodel___MMGlobalProperty___visibility_level__eq
))(variable4
, variable3
/*visibility_level*/) /*MMGlobalProperty::visibility_level=*/;
2897 variable4
= NEW_array___Array___init(); /*new Array[E]*/
2898 variable5
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2899 variable5
= ((genericity___MMLocalClass___get_type_t
)CALL(variable5
,COLOR_static_type___MMLocalClass___get_type
))(variable5
) /*MMLocalClass::get_type*/;
2900 variable6
= NEW_static_type___MMSignature___init(variable4
, NIT_NULL
/*null*/, variable5
); /*new MMSignature*/
2901 variable4
= variable6
;
2902 ((static_type___MMLocalProperty___signature__eq_t
)CALL( variable1
/*prop*/,COLOR_static_type___MMLocalProperty___signature__eq
))( variable1
/*prop*/, variable4
) /*MMLocalProperty::signature=*/;
2903 tracehead
= trace
.prev
;
2906 val_t
mmbuilder___ATypePropdef___prop(val_t self
) {
2907 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 902, LOCATE_mmbuilder___ATypePropdef___prop
};
2908 trace
.prev
= tracehead
; tracehead
= &trace
;
2909 tracehead
= trace
.prev
;
2910 return ATTR_mmbuilder___ATypePropdef____prop( self
) /*ATypePropdef::_prop*/;
2912 void mmbuilder___ATypePropdef___accept_property_builder(val_t self
, val_t param0
) {
2913 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 904, LOCATE_mmbuilder___ATypePropdef___accept_property_builder
};
2919 trace
.prev
= tracehead
; tracehead
= &trace
;
2921 ((mmbuilder___ATypePropdef___accept_property_builder_t
)CALL( self
,COLOR_SUPER_mmbuilder___ATypePropdef___accept_property_builder
))( self
, param0
) /*super ATypePropdef::accept_property_builder*/;
2922 variable2
= ((parser_nodes___ATypePropdef___n_id_t
)CALL( self
,COLOR_parser_nodes___ATypePropdef___n_id
))( self
) /*ATypePropdef::n_id*/;
2923 variable2
= ((syntax_base___Token___to_symbol_t
)CALL(variable2
,COLOR_syntax_base___Token___to_symbol
))(variable2
) /*Token::to_symbol*/;
2924 variable1
= variable2
;
2925 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2926 variable4
= NEW_syntax_base___MMSrcTypeProperty___init( variable1
/*name*/, variable3
, self
); /*new MMSrcTypeProperty*/
2927 variable3
= variable4
;
2928 variable2
= variable3
;
2929 ATTR_mmbuilder___ATypePropdef____prop( self
) /*ATypePropdef::_prop*/ = variable2
/*prop*/;
2930 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2931 ((mmbuilder___MMSrcLocalClass___add_src_local_property_t
)CALL(variable3
,COLOR_mmbuilder___MMSrcLocalClass___add_src_local_property
))(variable3
, variable0
/*v*/, variable2
/*prop*/) /*MMSrcLocalClass::add_src_local_property*/;
2932 tracehead
= trace
.prev
;
2935 void mmbuilder___ATypePropdef___accept_property_verifier(val_t self
, val_t param0
) {
2936 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 913, LOCATE_mmbuilder___ATypePropdef___accept_property_verifier
};
2943 trace
.prev
= tracehead
; tracehead
= &trace
;
2945 ((mmbuilder___ATypePropdef___accept_property_verifier_t
)CALL( self
,COLOR_SUPER_mmbuilder___ATypePropdef___accept_property_verifier
))( self
, param0
) /*super ATypePropdef::accept_property_verifier*/;
2946 variable2
= NEW_array___Array___init(); /*new Array[E]*/
2947 variable3
= ((parser_nodes___ATypePropdef___n_type_t
)CALL( self
,COLOR_parser_nodes___ATypePropdef___n_type
))( self
) /*ATypePropdef::n_type*/;
2948 variable3
= ((syntax_base___PType___get_stype_t
)CALL(variable3
,COLOR_syntax_base___PType___get_stype
))(variable3
, variable0
/*v*/) /*PType::get_stype*/;
2949 variable4
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
2950 variable4
= ((genericity___MMLocalClass___get_type_t
)CALL(variable4
,COLOR_static_type___MMLocalClass___get_type
))(variable4
) /*MMLocalClass::get_type*/;
2951 variable5
= NEW_static_type___MMSignature___init(variable2
, variable3
, variable4
); /*new MMSignature*/
2952 variable2
= variable5
;
2953 variable1
= variable2
;
2954 variable2
= ATTR_mmbuilder___ATypePropdef____prop( self
) /*ATypePropdef::_prop*/;
2955 ((static_type___MMLocalProperty___signature__eq_t
)CALL(variable2
,COLOR_static_type___MMLocalProperty___signature__eq
))(variable2
, variable1
/*signature*/) /*MMLocalProperty::signature=*/;
2956 variable3
= ((parser_nodes___ATypePropdef___n_visibility_t
)CALL( self
,COLOR_parser_nodes___ATypePropdef___n_visibility
))( self
) /*ATypePropdef::n_visibility*/;
2957 variable3
= ((mmbuilder___PVisibility___level_t
)CALL(variable3
,COLOR_mmbuilder___PVisibility___level
))(variable3
) /*PVisibility::level*/;
2958 variable2
= variable3
;
2959 variable3
= ATTR_mmbuilder___ATypePropdef____prop( self
) /*ATypePropdef::_prop*/;
2960 variable4
= ((parser_nodes___ATypePropdef___n_kwredef_t
)CALL( self
,COLOR_parser_nodes___ATypePropdef___n_kwredef
))( self
) /*ATypePropdef::n_kwredef*/;
2961 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*/) /*Object::==*/)))))));
2962 ((mmbuilder___PPropdef___process_and_check_t
)CALL( self
,COLOR_mmbuilder___PPropdef___process_and_check
))( self
, variable0
/*v*/, variable3
, variable4
, variable2
/*visibility_level*/) /*PPropdef::process_and_check*/;
2963 tracehead
= trace
.prev
;
2966 void mmbuilder___ATypePropdef___accept_abs_syntax_visitor(val_t self
, val_t param0
) {
2967 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 922, LOCATE_mmbuilder___ATypePropdef___accept_abs_syntax_visitor
};
2970 trace
.prev
= tracehead
; tracehead
= &trace
;
2972 variable1
= ((mmbuilder___ATypePropdef___prop_t
)CALL( self
,COLOR_syntax_base___ATypePropdef___prop
))( self
) /*ATypePropdef::prop*/;
2973 ((syntax_base___AbsSyntaxVisitor___local_property__eq_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_property__eq
))( variable0
/*v*/, variable1
) /*AbsSyntaxVisitor::local_property=*/;
2974 ((mmbuilder___ATypePropdef___accept_abs_syntax_visitor_t
)CALL( self
,COLOR_SUPER_mmbuilder___ATypePropdef___accept_abs_syntax_visitor
))( self
, param0
) /*super ATypePropdef::accept_abs_syntax_visitor*/;
2975 ((syntax_base___AbsSyntaxVisitor___local_property__eq_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_property__eq
))( variable0
/*v*/, NIT_NULL
/*null*/) /*AbsSyntaxVisitor::local_property=*/;
2976 tracehead
= trace
.prev
;
2979 val_t
mmbuilder___MethidAccumulator___name(val_t self
) {
2980 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 933, LOCATE_mmbuilder___MethidAccumulator___name
};
2981 trace
.prev
= tracehead
; tracehead
= &trace
;
2982 tracehead
= trace
.prev
;
2983 return ATTR_mmbuilder___MethidAccumulator____name( self
) /*MethidAccumulator::_name*/;
2985 void mmbuilder___MethidAccumulator___visit(val_t self
, val_t param0
) {
2986 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 934, LOCATE_mmbuilder___MethidAccumulator___visit
};
2990 trace
.prev
= tracehead
; tracehead
= &trace
;
2992 variable1
= TAG_Bool(( variable0
/*n*/==NIT_NULL
) || VAL_ISA( variable0
/*n*/, COLOR_Token
, ID_Token
)) /*cast Token*/;
2993 if (UNTAG_Bool(variable1
)) { /*if*/
2994 variable1
= ATTR_mmbuilder___MethidAccumulator____name( self
) /*MethidAccumulator::_name*/;
2995 variable2
= ((lexer___Token___text_t
)CALL( variable0
/*n*/,COLOR_lexer___Token___text
))( variable0
/*n*/) /*Token::text*/;
2996 ((string___String___append_t
)CALL(variable1
,COLOR_abstract_collection___IndexedCollection___append
))(variable1
, variable2
) /*String::append*/;
2998 ((parser_prod___PNode___visit_all_t
)CALL( variable0
/*n*/,COLOR_parser_prod___PNode___visit_all
))( variable0
/*n*/, self
) /*PNode::visit_all*/;
3000 tracehead
= trace
.prev
;
3003 void mmbuilder___MethidAccumulator___init(val_t self
, int* init_table
) {
3004 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 943, LOCATE_mmbuilder___MethidAccumulator___init
};
3006 trace
.prev
= tracehead
; tracehead
= &trace
;
3007 if (init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MethidAccumulator
].i
]) return;
3008 variable0
= NEW_string___String___init(); /*new String*/
3009 ATTR_mmbuilder___MethidAccumulator____name( self
) /*MethidAccumulator::_name*/ = variable0
;
3010 init_table
[VAL2OBJ( self
)->vft
[INIT_TABLE_POS_MethidAccumulator
].i
] = 1;
3011 tracehead
= trace
.prev
;
3014 val_t
mmbuilder___PMethid___name(val_t self
) {
3015 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 950, LOCATE_mmbuilder___PMethid___name
};
3016 trace
.prev
= tracehead
; tracehead
= &trace
;
3017 tracehead
= trace
.prev
;
3018 return ATTR_mmbuilder___PMethid____name( self
) /*PMethid::_name*/;
3020 void mmbuilder___PMethid___accept_property_builder(val_t self
, val_t param0
) {
3021 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 953, LOCATE_mmbuilder___PMethid___accept_property_builder
};
3025 trace
.prev
= tracehead
; tracehead
= &trace
;
3027 variable2
= NEW_mmbuilder___MethidAccumulator___init(); /*new MethidAccumulator*/
3028 variable1
= variable2
;
3029 ((mmbuilder___MethidAccumulator___visit_t
)CALL( variable1
/*accumulator*/,COLOR_parser_prod___Visitor___visit
))( variable1
/*accumulator*/, self
) /*MethidAccumulator::visit*/;
3030 variable2
= ((mmbuilder___MethidAccumulator___name_t
)CALL( variable1
/*accumulator*/,COLOR_mmbuilder___MethidAccumulator___name
))( variable1
/*accumulator*/) /*MethidAccumulator::name*/;
3031 variable2
= ((symbol___String___to_symbol_t
)CALL(variable2
,COLOR_symbol___String___to_symbol
))(variable2
) /*String::to_symbol*/;
3032 ATTR_mmbuilder___PMethid____name( self
) /*PMethid::_name*/ = variable2
;
3033 ((mmbuilder___PMethid___accept_property_builder_t
)CALL( self
,COLOR_SUPER_mmbuilder___PMethid___accept_property_builder
))( self
, param0
) /*super PMethid::accept_property_builder*/;
3034 tracehead
= trace
.prev
;
3037 void mmbuilder___PSignature___check_visibility(val_t self
, val_t param0
, val_t param1
) {
3038 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 963, LOCATE_mmbuilder___PSignature___check_visibility
};
3039 trace
.prev
= tracehead
; tracehead
= &trace
;
3040 fprintf(stderr
, "Deferred method %s called");
3041 fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_mmbuilder___PMethid___accept_property_builder
, LOCATE_mmbuilder
, 963);
3043 tracehead
= trace
.prev
;
3046 void mmbuilder___ASignature___accept_property_verifier(val_t self
, val_t param0
) {
3047 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 968, LOCATE_mmbuilder___ASignature___accept_property_verifier
};
3053 trace
.prev
= tracehead
; tracehead
= &trace
;
3055 ((mmbuilder___ASignature___accept_property_verifier_t
)CALL( self
,COLOR_SUPER_mmbuilder___ASignature___accept_property_verifier
))( self
, param0
) /*super ASignature::accept_property_verifier*/;
3056 variable1
= ((mmbuilder___PropertyVerifierVisitor___untyped_params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___untyped_params
))( variable0
/*v*/) /*PropertyVerifierVisitor::untyped_params*/;
3057 variable1
= ((array___AbstractArray___is_empty_t
)CALL(variable1
,COLOR_abstract_collection___Collection___is_empty
))(variable1
) /*AbstractArray::is_empty*/;
3058 if (UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable1
)))) { /*if*/
3059 variable1
= ((mmbuilder___PropertyVerifierVisitor___untyped_params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___untyped_params
))( variable0
/*v*/) /*PropertyVerifierVisitor::untyped_params*/;
3060 variable1
= ((abstract_collection___IndexedCollection___first_t
)CALL(variable1
,COLOR_abstract_collection___Collection___first
))(variable1
) /*IndexedCollection::first*/;
3061 variable2
= ((mmbuilder___PropertyVerifierVisitor___params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___params
))( variable0
/*v*/) /*PropertyVerifierVisitor::params*/;
3062 variable2
= ((abstract_collection___IndexedCollection___first_t
)CALL(variable2
,COLOR_abstract_collection___Collection___first
))(variable2
) /*IndexedCollection::first*/;
3063 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== variable2
) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
,variable2
)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, variable2
) /*Object::==*/)))))));
3064 variable2
= variable1
;
3065 if (!UNTAG_Bool(variable2
)) { /* or */
3066 variable2
= ((parser_nodes___ASignature___n_type_t
)CALL( self
,COLOR_parser_nodes___ASignature___n_type
))( self
) /*ASignature::n_type*/;
3067 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2
== NIT_NULL
/*null*/) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, NIT_NULL
/*null*/) /*Object::==*/)))))));
3069 variable1
= variable2
;
3070 if (UNTAG_Bool(variable1
)) { /*if*/
3071 variable1
= ((mmbuilder___PropertyVerifierVisitor___untyped_params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___untyped_params
))( variable0
/*v*/) /*PropertyVerifierVisitor::untyped_params*/;
3072 variable1
= ((abstract_collection___IndexedCollection___first_t
)CALL(variable1
,COLOR_abstract_collection___Collection___first
))(variable1
) /*IndexedCollection::first*/;
3073 variable2
= NEW_string___String___with_native(BOX_NativeString("Syntax error: untyped parameter."), TAG_Int(32)); /*new String*/
3074 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, variable1
, variable2
) /*AbsSyntaxVisitor::error*/;
3075 goto return_label103
;
3078 variable1
= ((mmbuilder___PropertyVerifierVisitor___params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___params
))( variable0
/*v*/) /*PropertyVerifierVisitor::params*/;
3079 variable1
= ((array___AbstractArray___is_empty_t
)CALL(variable1
,COLOR_abstract_collection___Collection___is_empty
))(variable1
) /*AbstractArray::is_empty*/;
3080 variable1
= TAG_Bool(!UNTAG_Bool(variable1
));
3081 if (!UNTAG_Bool(variable1
)) { /* or */
3082 variable1
= ((parser_nodes___ASignature___n_type_t
)CALL( self
,COLOR_parser_nodes___ASignature___n_type
))( self
) /*ASignature::n_type*/;
3083 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*Object::==*/)))))));
3085 if (UNTAG_Bool(variable1
)) { /*if*/
3086 variable2
= NEW_array___Array___init(); /*new Array[E]*/
3087 variable1
= variable2
;
3088 variable2
= ((mmbuilder___PropertyVerifierVisitor___params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___params
))( variable0
/*v*/) /*PropertyVerifierVisitor::params*/;
3089 variable2
= ((array___AbstractArray___iterator_t
)CALL(variable2
,COLOR_abstract_collection___Collection___iterator
))(variable2
) /*AbstractArray::iterator*/;
3090 while (true) { /*for*/
3091 variable3
= ((array___ArrayIterator___is_ok_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___is_ok
))(variable2
) /*ArrayIterator::is_ok*/;
3092 if (!UNTAG_Bool(variable3
)) break; /*for*/
3093 variable3
= ((array___ArrayIterator___item_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___item
))(variable2
) /*ArrayIterator::item*/;
3094 variable4
= ((mmbuilder___PParam___stype_t
)CALL( variable3
/*p*/,COLOR_mmbuilder___PParam___stype
))( variable3
/*p*/) /*PParam::stype*/;
3095 ((array___AbstractArray___add_t
)CALL( variable1
/*pars*/,COLOR_abstract_collection___SimpleCollection___add
))( variable1
/*pars*/, variable4
) /*AbstractArray::add*/;
3096 continue_104
: while(0);
3097 ((array___ArrayIterator___next_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___next
))(variable2
) /*ArrayIterator::next*/;
3099 break_104
: while(0);
3100 variable2
= NIT_NULL
/*null*/;
3101 variable3
= ((parser_nodes___ASignature___n_type_t
)CALL( self
,COLOR_parser_nodes___ASignature___n_type
))( self
) /*ASignature::n_type*/;
3102 variable3
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable3
== NIT_NULL
/*null*/) || ((variable3
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable3
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable3
,COLOR_kernel___Object_____eqeq
))(variable3
, NIT_NULL
/*null*/) /*Object::==*/)))))));
3103 if (UNTAG_Bool(variable3
)) { /*if*/
3104 variable3
= ((parser_nodes___ASignature___n_type_t
)CALL( self
,COLOR_parser_nodes___ASignature___n_type
))( self
) /*ASignature::n_type*/;
3105 variable3
= ((syntax_base___PType___get_stype_t
)CALL(variable3
,COLOR_syntax_base___PType___get_stype
))(variable3
, variable0
/*v*/) /*PType::get_stype*/;
3106 variable2
= variable3
/*ret=*/;
3108 variable3
= ((syntax_base___AbsSyntaxVisitor___local_class_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___local_class
))( variable0
/*v*/) /*AbsSyntaxVisitor::local_class*/;
3109 variable3
= ((genericity___MMLocalClass___get_type_t
)CALL(variable3
,COLOR_static_type___MMLocalClass___get_type
))(variable3
) /*MMLocalClass::get_type*/;
3110 variable4
= NEW_static_type___MMSignature___init( variable1
/*pars*/, variable2
/*ret*/, variable3
); /*new MMSignature*/
3111 variable3
= variable4
;
3112 ((mmbuilder___PropertyVerifierVisitor___signature__eq_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___signature__eq
))( variable0
/*v*/, variable3
) /*PropertyVerifierVisitor::signature=*/;
3113 variable3
= ((mmbuilder___PropertyVerifierVisitor___vararg_rank_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___vararg_rank
))( variable0
/*v*/) /*PropertyVerifierVisitor::vararg_rank*/;
3114 variable3
= TAG_Bool(UNTAG_Int(variable3
)>=UNTAG_Int( TAG_Int(0)));
3115 if (UNTAG_Bool(variable3
)) { /*if*/
3116 variable3
= ((mmbuilder___PropertyVerifierVisitor___signature_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___signature
))( variable0
/*v*/) /*PropertyVerifierVisitor::signature*/;
3117 variable4
= ((mmbuilder___PropertyVerifierVisitor___vararg_rank_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___vararg_rank
))( variable0
/*v*/) /*PropertyVerifierVisitor::vararg_rank*/;
3118 ((vararg___MMSignature___vararg_rank__eq_t
)CALL(variable3
,COLOR_vararg___MMSignature___vararg_rank__eq
))(variable3
, variable4
) /*MMSignature::vararg_rank=*/;
3122 return_label103
: while(false);
3123 tracehead
= trace
.prev
;
3126 void mmbuilder___ASignature___check_visibility(val_t self
, val_t param0
, val_t param1
) {
3127 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 992, LOCATE_mmbuilder___ASignature___check_visibility
};
3133 trace
.prev
= tracehead
; tracehead
= &trace
;
3136 variable2
= ((abstractmetamodel___MMLocalProperty___global_t
)CALL( variable1
/*p*/,COLOR_abstractmetamodel___MMLocalProperty___global
))( variable1
/*p*/) /*MMLocalProperty::global*/;
3137 variable2
= ((abstractmetamodel___MMGlobalProperty___visibility_level_t
)CALL(variable2
,COLOR_abstractmetamodel___MMGlobalProperty___visibility_level
))(variable2
) /*MMGlobalProperty::visibility_level*/;
3138 variable2
= TAG_Bool(UNTAG_Int(variable2
)>=UNTAG_Int( TAG_Int(3)));
3139 if (UNTAG_Bool(variable2
)) { /*if*/
3140 goto return_label105
;
3142 variable2
= ((parser_nodes___ASignature___n_params_t
)CALL( self
,COLOR_parser_nodes___ASignature___n_params
))( self
) /*ASignature::n_params*/;
3143 variable2
= ((list___List___iterator_t
)CALL(variable2
,COLOR_abstract_collection___Collection___iterator
))(variable2
) /*List::iterator*/;
3144 while (true) { /*for*/
3145 variable3
= ((list___ListIterator___is_ok_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___is_ok
))(variable2
) /*ListIterator::is_ok*/;
3146 if (!UNTAG_Bool(variable3
)) break; /*for*/
3147 variable3
= ((list___ListIterator___item_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___item
))(variable2
) /*ListIterator::item*/;
3148 variable4
= ((parser_nodes___PParam___n_type_t
)CALL( variable3
/*n*/,COLOR_parser_nodes___PParam___n_type
))( variable3
/*n*/) /*PParam::n_type*/;
3149 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*/) /*Object::==*/)))))));
3150 if (UNTAG_Bool(variable4
)) { /*if*/
3151 variable4
= ((parser_nodes___PParam___n_type_t
)CALL( variable3
/*n*/,COLOR_parser_nodes___PParam___n_type
))( variable3
/*n*/) /*PParam::n_type*/;
3152 ((mmbuilder___PType___check_visibility_t
)CALL(variable4
,COLOR_mmbuilder___PType___check_visibility
))(variable4
, variable0
/*v*/, variable1
/*p*/) /*PType::check_visibility*/;
3154 continue_106
: while(0);
3155 ((list___ListIterator___next_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___next
))(variable2
) /*ListIterator::next*/;
3157 break_106
: while(0);
3158 variable2
= ((parser_nodes___ASignature___n_type_t
)CALL( self
,COLOR_parser_nodes___ASignature___n_type
))( self
) /*ASignature::n_type*/;
3159 variable2
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable2
== NIT_NULL
/*null*/) || ((variable2
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable2
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable2
,COLOR_kernel___Object_____eqeq
))(variable2
, NIT_NULL
/*null*/) /*Object::==*/)))))));
3160 if (UNTAG_Bool(variable2
)) { /*if*/
3161 variable2
= ((parser_nodes___ASignature___n_type_t
)CALL( self
,COLOR_parser_nodes___ASignature___n_type
))( self
) /*ASignature::n_type*/;
3162 ((mmbuilder___PType___check_visibility_t
)CALL(variable2
,COLOR_mmbuilder___PType___check_visibility
))(variable2
, variable0
/*v*/, variable1
/*p*/) /*PType::check_visibility*/;
3164 return_label105
: while(false);
3165 tracehead
= trace
.prev
;
3168 val_t
mmbuilder___PParam___position(val_t self
) {
3169 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1003, LOCATE_mmbuilder___PParam___position
};
3170 trace
.prev
= tracehead
; tracehead
= &trace
;
3171 tracehead
= trace
.prev
;
3172 return ATTR_mmbuilder___PParam____position( self
) /*PParam::_position*/;
3174 val_t
mmbuilder___PParam___variable(val_t self
) {
3175 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1005, LOCATE_mmbuilder___PParam___variable
};
3176 trace
.prev
= tracehead
; tracehead
= &trace
;
3177 tracehead
= trace
.prev
;
3178 return ATTR_mmbuilder___PParam____variable( self
) /*PParam::_variable*/;
3180 val_t
mmbuilder___PParam___stype(val_t self
) {
3181 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1007, LOCATE_mmbuilder___PParam___stype
};
3182 trace
.prev
= tracehead
; tracehead
= &trace
;
3183 tracehead
= trace
.prev
;
3184 return ATTR_mmbuilder___PParam____stype( self
) /*PParam::_stype*/;
3186 void mmbuilder___PParam___stype__eq(val_t self
, val_t param0
) {
3187 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1007, LOCATE_mmbuilder___PParam___stype__eq
};
3188 trace
.prev
= tracehead
; tracehead
= &trace
;
3189 ATTR_mmbuilder___PParam____stype( self
) /*PParam::_stype*/ = param0
;
3190 tracehead
= trace
.prev
;
3193 void mmbuilder___PParam___accept_property_verifier(val_t self
, val_t param0
) {
3194 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1010, LOCATE_mmbuilder___PParam___accept_property_verifier
};
3201 trace
.prev
= tracehead
; tracehead
= &trace
;
3203 ((mmbuilder___PParam___accept_property_verifier_t
)CALL( self
,COLOR_SUPER_mmbuilder___PParam___accept_property_verifier
))( self
, param0
) /*super PParam::accept_property_verifier*/;
3204 variable1
= ((mmbuilder___PropertyVerifierVisitor___params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___params
))( variable0
/*v*/) /*PropertyVerifierVisitor::params*/;
3205 variable1
= ((array___AbstractArray___length_t
)CALL(variable1
,COLOR_abstract_collection___Collection___length
))(variable1
) /*AbstractArray::length*/;
3206 ATTR_mmbuilder___PParam____position( self
) /*PParam::_position*/ = variable1
;
3207 variable1
= ((parser_nodes___PParam___n_id_t
)CALL( self
,COLOR_parser_nodes___PParam___n_id
))( self
) /*PParam::n_id*/;
3208 variable1
= ((syntax_base___Token___to_symbol_t
)CALL(variable1
,COLOR_syntax_base___Token___to_symbol
))(variable1
) /*Token::to_symbol*/;
3209 variable2
= NEW_syntax_base___Variable___init(variable1
, self
); /*new Variable*/
3210 variable1
= variable2
;
3211 ATTR_mmbuilder___PParam____variable( self
) /*PParam::_variable*/ = variable1
;
3212 variable1
= ((mmbuilder___PropertyVerifierVisitor___params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___params
))( variable0
/*v*/) /*PropertyVerifierVisitor::params*/;
3213 ((array___AbstractArray___add_t
)CALL(variable1
,COLOR_abstract_collection___SimpleCollection___add
))(variable1
, self
) /*AbstractArray::add*/;
3214 variable1
= ((mmbuilder___PropertyVerifierVisitor___untyped_params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___untyped_params
))( variable0
/*v*/) /*PropertyVerifierVisitor::untyped_params*/;
3215 ((array___AbstractArray___add_t
)CALL(variable1
,COLOR_abstract_collection___SimpleCollection___add
))(variable1
, self
) /*AbstractArray::add*/;
3216 variable1
= ((parser_nodes___PParam___n_type_t
)CALL( self
,COLOR_parser_nodes___PParam___n_type
))( self
) /*PParam::n_type*/;
3217 variable1
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable1
== NIT_NULL
/*null*/) || ((variable1
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable1
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable1
,COLOR_kernel___Object_____eqeq
))(variable1
, NIT_NULL
/*null*/) /*Object::==*/)))))));
3218 if (UNTAG_Bool(variable1
)) { /*if*/
3219 variable2
= ((parser_nodes___PParam___n_type_t
)CALL( self
,COLOR_parser_nodes___PParam___n_type
))( self
) /*PParam::n_type*/;
3220 variable2
= ((syntax_base___PType___get_stype_t
)CALL(variable2
,COLOR_syntax_base___PType___get_stype
))(variable2
, variable0
/*v*/) /*PType::get_stype*/;
3221 variable1
= variable2
;
3222 variable2
= ((mmbuilder___PropertyVerifierVisitor___untyped_params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___untyped_params
))( variable0
/*v*/) /*PropertyVerifierVisitor::untyped_params*/;
3223 variable2
= ((array___AbstractArray___iterator_t
)CALL(variable2
,COLOR_abstract_collection___Collection___iterator
))(variable2
) /*AbstractArray::iterator*/;
3224 while (true) { /*for*/
3225 variable3
= ((array___ArrayIterator___is_ok_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___is_ok
))(variable2
) /*ArrayIterator::is_ok*/;
3226 if (!UNTAG_Bool(variable3
)) break; /*for*/
3227 variable3
= ((array___ArrayIterator___item_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___item
))(variable2
) /*ArrayIterator::item*/;
3228 ((mmbuilder___PParam___stype__eq_t
)CALL( variable3
/*p*/,COLOR_mmbuilder___PParam___stype__eq
))( variable3
/*p*/, variable1
/*stype*/) /*PParam::stype=*/;
3229 variable4
= ((mmbuilder___PParam___is_vararg_t
)CALL( self
,COLOR_mmbuilder___PParam___is_vararg
))( self
) /*PParam::is_vararg*/;
3230 if (UNTAG_Bool(variable4
)) { /*if*/
3231 variable4
= ((mmbuilder___PropertyVerifierVisitor___vararg_rank_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___vararg_rank
))( variable0
/*v*/) /*PropertyVerifierVisitor::vararg_rank*/;
3232 variable5
= TAG_Int(-UNTAG_Int( TAG_Int(1)));
3233 variable4
= TAG_Bool((variable4
)==(variable5
));
3234 if (UNTAG_Bool(variable4
)) { /*if*/
3235 variable4
= ((mmbuilder___PParam___position_t
)CALL( variable3
/*p*/,COLOR_syntax_base___PParam___position
))( variable3
/*p*/) /*PParam::position*/;
3236 ((mmbuilder___PropertyVerifierVisitor___vararg_rank__eq_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___vararg_rank__eq
))( variable0
/*v*/, variable4
) /*PropertyVerifierVisitor::vararg_rank=*/;
3238 variable4
= NEW_string___String___with_native(BOX_NativeString("Error: A vararg parameter is already defined."), TAG_Int(45)); /*new String*/
3239 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable4
) /*AbsSyntaxVisitor::error*/;
3241 variable4
= ((syntax_base___AbsSyntaxVisitor___type_array_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___type_array
))( variable0
/*v*/, variable1
/*stype*/) /*AbsSyntaxVisitor::type_array*/;
3242 variable1
= variable4
/*stype=*/;
3244 variable4
= ((mmbuilder___PParam___variable_t
)CALL( variable3
/*p*/,COLOR_syntax_base___PParam___variable
))( variable3
/*p*/) /*PParam::variable*/;
3245 ((syntax_base___Variable___stype__eq_t
)CALL(variable4
,COLOR_syntax_base___Variable___stype__eq
))(variable4
, variable1
/*stype*/) /*Variable::stype=*/;
3246 continue_108
: while(0);
3247 ((array___ArrayIterator___next_t
)CALL(variable2
,COLOR_abstract_collection___Iterator___next
))(variable2
) /*ArrayIterator::next*/;
3249 break_108
: while(0);
3250 variable2
= ((mmbuilder___PropertyVerifierVisitor___untyped_params_t
)CALL( variable0
/*v*/,COLOR_mmbuilder___PropertyVerifierVisitor___untyped_params
))( variable0
/*v*/) /*PropertyVerifierVisitor::untyped_params*/;
3251 ((array___AbstractArray___clear_t
)CALL(variable2
,COLOR_abstract_collection___RemovableCollection___clear
))(variable2
) /*AbstractArray::clear*/;
3253 tracehead
= trace
.prev
;
3256 val_t
mmbuilder___PParam___is_vararg(val_t self
) {
3257 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1035, LOCATE_mmbuilder___PParam___is_vararg
};
3258 trace
.prev
= tracehead
; tracehead
= &trace
;
3259 fprintf(stderr
, "Deferred method %s called");
3260 fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_mmbuilder___PParam___accept_property_verifier
, LOCATE_mmbuilder
, 1035);
3262 tracehead
= trace
.prev
;
3265 val_t
mmbuilder___AParam___is_vararg(val_t self
) {
3266 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1039, LOCATE_mmbuilder___AParam___is_vararg
};
3268 trace
.prev
= tracehead
; tracehead
= &trace
;
3269 variable0
= ((parser_nodes___AParam___n_dotdotdot_t
)CALL( self
,COLOR_parser_nodes___AParam___n_dotdotdot
))( self
) /*AParam::n_dotdotdot*/;
3270 variable0
= TAG_Bool(!UNTAG_Bool(TAG_Bool((variable0
== NIT_NULL
/*null*/) || ((variable0
!= NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN(variable0
, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL(variable0
,COLOR_kernel___Object_____eqeq
))(variable0
, NIT_NULL
/*null*/) /*Object::==*/)))))));
3271 goto return_label109
;
3272 return_label109
: while(false);
3273 tracehead
= trace
.prev
;
3276 void mmbuilder___PType___check_visibility(val_t self
, val_t param0
, val_t param1
) {
3277 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1043, LOCATE_mmbuilder___PType___check_visibility
};
3278 trace
.prev
= tracehead
; tracehead
= &trace
;
3279 fprintf(stderr
, "Deferred method %s called");
3280 fprintf(stderr
, " in %s (%s:%d)\n", LOCATE_mmbuilder___AParam___is_vararg
, LOCATE_mmbuilder
, 1043);
3282 tracehead
= trace
.prev
;
3285 void mmbuilder___AType___check_visibility(val_t self
, val_t param0
, val_t param1
) {
3286 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1048, LOCATE_mmbuilder___AType___check_visibility
};
3300 trace
.prev
= tracehead
; tracehead
= &trace
;
3303 variable2
= ((abstractmetamodel___MMLocalProperty___global_t
)CALL( variable1
/*p*/,COLOR_abstractmetamodel___MMLocalProperty___global
))( variable1
/*p*/) /*MMLocalProperty::global*/;
3304 variable2
= ((abstractmetamodel___MMGlobalProperty___visibility_level_t
)CALL(variable2
,COLOR_abstractmetamodel___MMGlobalProperty___visibility_level
))(variable2
) /*MMGlobalProperty::visibility_level*/;
3305 variable2
= TAG_Bool(UNTAG_Int(variable2
)>=UNTAG_Int( TAG_Int(3)));
3306 if (UNTAG_Bool(variable2
)) { /*if*/
3307 goto return_label110
;
3309 variable3
= ((syntax_base___AType___get_stype_t
)CALL( self
,COLOR_syntax_base___PType___get_stype
))( self
, variable0
/*v*/) /*AType::get_stype*/;
3310 variable2
= variable3
;
3311 variable3
= TAG_Bool(( variable2
/*t*/ == NIT_NULL
/*null*/) || (( variable2
/*t*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable2
/*t*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable2
/*t*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable2
/*t*/,COLOR_kernel___Object_____eqeq
))( variable2
/*t*/, NIT_NULL
/*null*/) /*Object::==*/)))));
3312 if (UNTAG_Bool(variable3
)) { /*if*/
3313 goto return_label110
;
3315 variable4
= ((static_type___MMType___local_class_t
)CALL( variable2
/*t*/,COLOR_static_type___MMType___local_class
))( variable2
/*t*/) /*MMType::local_class*/;
3316 variable3
= variable4
;
3317 variable4
= TAG_Bool(( variable3
/*bc*/ == NIT_NULL
/*null*/) || (( variable3
/*bc*/ != NIT_NULL
) && ((((kernel___Object_____eqeq_t
)CALL( variable3
/*bc*/,COLOR_kernel___Object_____eqeq
))==kernel___Object_____eqeq
)?
(IS_EQUAL_NN( variable3
/*bc*/, NIT_NULL
/*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t
)CALL( variable3
/*bc*/,COLOR_kernel___Object_____eqeq
))( variable3
/*bc*/, NIT_NULL
/*null*/) /*Object::==*/)))));
3318 if (UNTAG_Bool(variable4
)) { /*if*/
3319 goto return_label110
;
3321 variable4
= ((abstractmetamodel___MMLocalClass___global_t
)CALL( variable3
/*bc*/,COLOR_abstractmetamodel___MMLocalClass___global
))( variable3
/*bc*/) /*MMLocalClass::global*/;
3322 variable4
= ((abstractmetamodel___MMGlobalClass___visibility_level_t
)CALL(variable4
,COLOR_abstractmetamodel___MMGlobalClass___visibility_level
))(variable4
) /*MMGlobalClass::visibility_level*/;
3323 variable4
= TAG_Bool(UNTAG_Int(variable4
)>=UNTAG_Int( TAG_Int(3)));
3324 if (UNTAG_Bool(variable4
)) { /*if*/
3325 variable4
= NEW_string___String___init(); /*new String*/
3326 variable5
= NEW_string___String___with_native(BOX_NativeString("Access error: Class "), TAG_Int(20)); /*new String*/
3327 variable6
= variable5
;
3328 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable6
) /*String::append*/;
3329 variable7
= variable3
/*bc*/;
3330 variable7
= ((string___String___to_s_t
)CALL(variable7
,COLOR_string___Object___to_s
))(variable7
) /*String::to_s*/;
3331 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable7
) /*String::append*/;
3332 variable8
= NEW_string___String___with_native(BOX_NativeString(" is private and cannot be used in the signature of the non-private property "), TAG_Int(76)); /*new String*/
3333 variable9
= variable8
;
3334 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable9
) /*String::append*/;
3335 variable10
= variable1
/*p*/;
3336 variable10
= ((string___String___to_s_t
)CALL(variable10
,COLOR_string___Object___to_s
))(variable10
) /*String::to_s*/;
3337 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable10
) /*String::append*/;
3338 variable11
= NEW_string___String___with_native(BOX_NativeString("."), TAG_Int(1)); /*new String*/
3339 variable12
= variable11
;
3340 ((string___String___append_t
)CALL(variable4
,COLOR_abstract_collection___IndexedCollection___append
))(variable4
, variable12
) /*String::append*/;
3341 ((syntax_base___AbsSyntaxVisitor___error_t
)CALL( variable0
/*v*/,COLOR_syntax_base___AbsSyntaxVisitor___error
))( variable0
/*v*/, self
, variable4
) /*AbsSyntaxVisitor::error*/;
3343 variable4
= ((parser_nodes___AType___n_types_t
)CALL( self
,COLOR_parser_nodes___AType___n_types
))( self
) /*AType::n_types*/;
3344 variable4
= ((list___List___iterator_t
)CALL(variable4
,COLOR_abstract_collection___Collection___iterator
))(variable4
) /*List::iterator*/;
3345 while (true) { /*for*/
3346 variable5
= ((list___ListIterator___is_ok_t
)CALL(variable4
,COLOR_abstract_collection___Iterator___is_ok
))(variable4
) /*ListIterator::is_ok*/;
3347 if (!UNTAG_Bool(variable5
)) break; /*for*/
3348 variable5
= ((list___ListIterator___item_t
)CALL(variable4
,COLOR_abstract_collection___Iterator___item
))(variable4
) /*ListIterator::item*/;
3349 ((mmbuilder___PType___check_visibility_t
)CALL( variable5
/*n*/,COLOR_mmbuilder___PType___check_visibility
))( variable5
/*n*/, variable0
/*v*/, variable1
/*p*/) /*PType::check_visibility*/;
3350 continue_111
: while(0);
3351 ((list___ListIterator___next_t
)CALL(variable4
,COLOR_abstract_collection___Iterator___next
))(variable4
) /*ListIterator::next*/;
3353 break_111
: while(0);
3354 return_label110
: while(false);
3355 tracehead
= trace
.prev
;
3358 void mmbuilder___PExpr___accept_class_builder(val_t self
, val_t param0
) {
3359 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1065, LOCATE_mmbuilder___PExpr___accept_class_builder
};
3361 trace
.prev
= tracehead
; tracehead
= &trace
;
3363 tracehead
= trace
.prev
;
3366 void mmbuilder___PExpr___accept_property_builder(val_t self
, val_t param0
) {
3367 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1066, LOCATE_mmbuilder___PExpr___accept_property_builder
};
3369 trace
.prev
= tracehead
; tracehead
= &trace
;
3371 tracehead
= trace
.prev
;
3374 void mmbuilder___PExpr___accept_property_verifier(val_t self
, val_t param0
) {
3375 struct trace_t trace
= {NULL
, LOCATE_mmbuilder
, 1067, LOCATE_mmbuilder___PExpr___accept_property_verifier
};
3377 trace
.prev
= tracehead
; tracehead
= &trace
;
3379 tracehead
= trace
.prev
;